x-tile-2.5/0000755000175200017520000000000012054530676011556 5ustar develdevelx-tile-2.5/glade/0000755000175200017520000000000012026051676012627 5ustar develdevelx-tile-2.5/glade/tile-custom-2-exe.svg0000644000175200017520000006714311777520730016552 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager 2 x-tile-2.5/glade/tile-triangle-left.svg0000644000175200017520000003667011777520730017060 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/checkbox_unchecked.svg0000644000175200017520000000053111777520730017152 0ustar develdevel x-tile-2.5/glade/x-tile.svg0000644000175200017520000004566711777520730014600 0ustar develdevel image/svg+xml x x-tile-2.5/glade/tile-custom-2-set.svg0000644000175200017520000032024511777520730016557 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager 2 x-tile-2.5/glade/x-tile.glade0000644000175200017520000025466712026045761015051 0ustar develdevel False 5 About X Tile False True center-on-parent True x-tile.svg dialog window X Tile Copyright © 2009-2012 Giuseppe Penone <giuspen@gmail.com> Chris Camacho <codifies@gmail.com> Tile the Windows Upon your X Desktop http://www.giuspen.com/x-tile/ http://www.giuspen.com/x-tile/ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Giuseppe Penone <giuspen@gmail.com> Chris Camacho <codifies@gmail.com> Chinese Simplified (zh_CN) Khiyuan Fan <Fan.Khiyuan@gmail.com> Chinese Traditional (zh_TW) Yan-ren Tsai <elleryq@gmail.com> Czech (cs) Pavel Fric <fripohled@blogspot.com Spanish (es_AR) MeloPixel <melopixel@gmail.com> French (fr) Ludovic Troisi <axalis@cegetel.net> German (de) Jöran Zeller <joeran@zeller.ws> Italian (it) Giuseppe Penone <giuspen@gmail.com> Polish (pl) Dominik Wójt <domin144@o2.pl> Russian (ru) Andriy Kovtun <kovtunos@yandex.ru> x-tile.svg True False 2 True False end False True end 0 1 99 2 1 10 10 10000 10 1 10 10 10000 10 1 10 1000 2 1 10 1000 30 1 10 10 10000 10 1 10 10 10000 10 1 10 10000 1 1 10 10000 1 1 10 10000 1 1 10 10000 1 1 10 False Preferences True center-on-parent True window True False True False 4 True True False Do Not List Minimized Windows True True False False True True False True 2 0 Only Current Workspace True True False False True True False True 2 1 True False False True 3 2 Enable System Tray Docking True True False False True True False True 3 Start Minimized in the System Tray True True False False True False True 4 Use AppIndicator for Docking True True False False True False True 5 True False False True 3 6 Show Toolbar True True False False True True False True 2 7 True False True False Language False False 2 0 True False on True True 1 False False 4 8 False True 3 0 True False Override Monitor 1 Tiling Area True True False False True False False 0 True False True False 0 none True False 3 3 6 6 True False True True False False True True adjustment_x1 True True 0 True False X True True 1 True True False False True True adjustment_y1 True True 2 True False Y True True 3 True False Position True True True 0 True False 0 none True False 3 3 6 6 True False True True False False True True adjustment_w1 True True 0 True False Width True True 1 True True False False True True adjustment_h1 True True 2 True False Height True True 3 True False Size True True True 1 False True 1 True False False True 3 2 Override Monitor 2 Tiling Area True True False False True False False 3 True False True False 0 none True False 3 3 6 6 True False True True True False False True True adjustment_x2 True True 0 True False X True True 1 True True True False False True True adjustment_y2 True True 2 True False Y True True 3 True False Position True True True 0 True False 0 none True False 3 3 6 6 True False True True True False False True True adjustment_w2 True True 0 True False Width True True 1 True True True False False True True adjustment_h2 True True 2 True False Height True True 3 True False Size True True True 1 False True 4 False True 3 1 True False 4 0 True False spread True True True False True False True False gtk-close True True 0 True False Close True True 1 False False 0 False True 1 False 5 True True normal window True False 2 True False center True True True False True False True False gtk-cancel True True 0 True False Cancel True True 1 False False 0 True True True False True False True False gtk-apply True True 0 True False OK True True 1 False False 1 False True end 0 True False True False 0 True False True False <b>Custom Tiling Layout</b> True True True 0 True False True False False False 20 0 True False 1) Tile Some Windows Manually False False 1 True False 2) Select Them in the X Tile Windows List False False 3 2 True False 3) Click the Update Button False False 3 True False False False 20 4 True True True False True False True False gtk-edit True True 0 True False Update True True 1 False False 5 False False 5 1 True True 1 button7 button8 False 5 Rows to Filter True 300 300 True normal window True False 2 True False center True True True False True False True False gtk-close True True 0 True False Close True True 1 False False 0 False True end 0 True False True True automatic automatic True True 0 True False start True True True Add an Application Filter False True False gtk-add False False 0 True True True Remove an Application Filter False True False gtk-remove False False 1 False False 1 True True 1 button5 True False gtk-about True False Reload Windows List True False gtk-about False 5 Add Row True 300 300 True normal window True False 2 True False center True True True False True False True False gtk-cancel True True 0 True False Cancel True True 1 False False 0 True True True False True False True False gtk-apply True True 0 True False OK True True 1 False False 1 False True end 0 True True automatic automatic True True 1 processadddialog_button_cancel processadddialog_button_ok False 5 Rows to be Selected by Default True 300 300 True normal window True False 2 True False center True True True False True False True False gtk-close True True 0 True False Close True True 1 False False 0 False True end 0 True False True True automatic automatic True True 0 True False start True True True False True False gtk-add False False 0 True True True False True False gtk-remove False False 1 False False 1 True True 1 button6 False X Tile 400 200 x-tile.svg True False True False 0 True True automatic automatic True True 2 True False Set Destination Workspace True True False False True False True 3 0 True True False False True True adjustment_dest_workspace False True 1 Exit After Tile True True False False True True True False True 3 2 False True 3 x-tile-2.5/glade/maximize-checked-windows.svg0000644000175200017520000002637711777520730020272 0ustar develdevel image/svg+xml View Fullscreen http://jimmac.musichall.cz Jakub Steiner window maximize fullscreen view x-tile-2.5/glade/help-contents.svg0000644000175200017520000001503011777520730016136 0ustar develdevel x-tile-2.5/glade/checkbox_checked.svg0000644000175200017520000000125011777520730016606 0ustar develdevel x-tile-2.5/glade/tile-triangle-right.svg0000644000175200017520000003710311777520730017233 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/tile-custom-1-set.svg0000644000175200017520000032024511777520730016556 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager 1 x-tile-2.5/glade/tile-triangle-down.svg0000644000175200017520000003702411777520730017067 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/tile-triangle-up.svg0000644000175200017520000003702311777520730016543 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/reload-windows-list.svg0000644000175200017520000004372711777520730017300 0ustar develdevel image/svg+xml x-tile-2.5/glade/tile-custom-1-exe.svg0000644000175200017520000007336611777520730016555 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager 1 x-tile-2.5/glade/invert-tiling.svg0000644000175200017520000063033411777520730016160 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/tile-quad.svg0000644000175200017520000004156011777520730015247 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/close-checked-windows.svg0000644000175200017520000006600011777520730017537 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/x-tile.glade.h0000644000175200017520000000552611777521044015270 0ustar develdevelchar *s = N_("About X Tile"); char *s = N_("Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho "); char *s = N_("Tile the Windows Upon your X Desktop"); char *s = N_("http://www.giuspen.com/x-tile/"); char *s = N_("\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA."); char *s = N_("Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun "); char *s = N_("Preferences"); char *s = N_(" Language "); char *s = N_("Do Not List Minimized Windows"); char *s = N_("Only Current Workspace"); char *s = N_("Enable System Tray Docking"); char *s = N_("Start Minimized in the System Tray"); char *s = N_("Show Toolbar"); char *s = N_("Override Monitor 1 Tiling Area"); char *s = N_("X"); char *s = N_("Y"); char *s = N_("Position"); char *s = N_("Width"); char *s = N_("Height"); char *s = N_("Size"); char *s = N_("Override Monitor 2 Tiling Area"); char *s = N_("Close"); char *s = N_("Cancel"); char *s = N_("OK"); char *s = N_("Custom Tiling Layout"); char *s = N_("1) Tile Some Windows Manually"); char *s = N_("2) Select Them in the X Tile Windows List"); char *s = N_("3) Click the Update Button"); char *s = N_("Update"); char *s = N_("Rows to Filter"); char *s = N_("Add an Application Filter"); char *s = N_("Remove an Application Filter"); char *s = N_("Add Row"); char *s = N_("Rows to be Selected by Default"); char *s = N_("X Tile"); char *s = N_("Set Destination Workspace"); char *s = N_("Exit After Tile"); x-tile-2.5/glade/quit-app.svg0000644000175200017520000001660411777520730015123 0ustar develdevel x-tile-2.5/glade/tile-vertically.svg0000644000175200017520000003043111777520730016466 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/unmaximize-checked-windows.svg0000644000175200017520000002664511777520730020633 0ustar develdevel image/svg+xml View Fullscreen http://jimmac.musichall.cz Jakub Steiner window maximize fullscreen view x-tile-2.5/glade/tile-grid.svg0000644000175200017520000005610111777520730015237 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/tile-horizontally.svg0000644000175200017520000003076511777520730017060 0ustar develdevel image/svg+xml Lapo Calamandrei Window Manager x-tile-2.5/glade/cycle-tiling.svg0000644000175200017520000012365411777520730015752 0ustar develdevel image/svg+xml Lapo Calamandrei x-tile-2.5/glade/toolbar.png0000644000175200017520000000043411777520730015004 0ustar develdevelPNG  IHDRabKGDWWWT pHYs  tIME4>CvtEXtCommentCreated with The GIMPd%nIDAT8ݒ @te* > Aa!^ߑv-۰{$ 9gZ0M>fNUpKEpHKKܝoرOk,bfnDKC=<"b#2IENDB`x-tile-2.5/modules/0000755000175200017520000000000012026051676013223 5ustar develdevelx-tile-2.5/modules/core.py0000644000175200017520000021056112026046522014524 0ustar develdevel# -*- coding: UTF-8 -*- # # core.py # # Copyright 2009-2012 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import gtk, gobject, gconf import os, sys, ctypes, webbrowser, time, subprocess try: import appindicator HAS_APPINDICATOR = True except: HAS_APPINDICATOR = False XDG_CURRENT_DESKTOP = 'XDG_CURRENT_DESKTOP' HAS_SYSTRAY = not (XDG_CURRENT_DESKTOP in os.environ and os.environ[XDG_CURRENT_DESKTOP] == "Unity") import cons, support, tilings class InfoModel: """Holds the information""" def __init__(self): """Sets up and populates the gtk.ListStore""" # 0:selected, 1:window ref, 2:title, 3:pixbuf of icon, 4:selected2, 5:cell_background self.gconf_client = gconf.client_get_default() self.liststore = gtk.ListStore(gobject.TYPE_BOOLEAN, gobject.TYPE_ULONG, gobject.TYPE_STRING, gobject.TYPE_PYOBJECT, gobject.TYPE_BOOLEAN, gobject.TYPE_STRING) self.process_picklist = set() self.process_blacklist = set() self.process_whitelist = set() def load_model(self, appletobj): """Populates the gtk.ListStore""" self.liststore.clear() clients = [] support.get_property("_NET_CLIENT_LIST", glob.root, glob.XA_WINDOW) for i in range(0, glob.num_items.value): clients.append(glob.ret_pointer[i]) rows_num = 0 support.get_property("_NET_CURRENT_DESKTOP", glob.root, glob.XA_CARDINAL) if bool(glob.ret_pointer) == False: curr_workspace_num = -2 print "DEBUG warning _NET_CURRENT_DESKTOP improperly set" else: curr_workspace_num = glob.ret_pointer[0] # the number of the current workspace screen = gtk.gdk.screen_get_default() for client in clients: if support.is_window_sticky(client): continue support.get_property("_NET_WM_DESKTOP", client, glob.XA_CARDINAL) if bool(glob.ret_pointer): workspace_num = glob.ret_pointer[0] else: print "DEBUG warning _NET_WM_DESKTOP improperly set" workspace_num = curr_workspace_num if self.gconf_client.get_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index) == cons.STR_TRUE\ and (workspace_num != curr_workspace_num or not support.is_window_in_curr_viewport(glob.desktop_width, glob.desktop_height, client)): continue if self.gconf_client.get_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index) == cons.STR_TRUE\ and support.is_window_hidden(client): continue support.get_property("_NET_WM_NAME", client, glob.str_atom) title="???" if bool(glob.ret_pointer)==False: print "DEBUG warning _NET_WM_NAME improperly set by application" support.get_property("WM_NAME", client, glob.str2_atom) if bool(glob.ret_pointer)==False: print "DEBUG warning WM_NAME not set by application" else: title = ctypes.string_at(glob.ret_pointer) print "class "+title else: title = ctypes.string_at(glob.ret_pointer) if title in cons.WINNAMES_BLACKLIST: continue pxb = support.get_icon(client) if pxb: pxb = pxb.scale_simple(24, 24, gtk.gdk.INTERP_BILINEAR) support.get_property("_NET_WM_PID", client, glob.XA_CARDINAL) pid=0 process_name="UNKNOWN" if bool(glob.ret_pointer)==False: print "DEBUG warning can't get PID _NET_WM_PID failed" else: pid = glob.ret_pointer[0] process_name = support.get_process_name(pid) # filter based on process name - NB beppie I'd like something better for this but dont know what! if len(process_name) > 6 and process_name[-6:] == "x-tile": continue if process_name in cons.PROCESSES_BLACKLIST: continue #print "win", pid, process_name #if pid > 0: #ppid = os.popen("ps -p %d -oppid=" % pid).read().strip() #pp_name = support.get_process_name(ppid) #print "pwin", ppid, pp_name #if pp_name in cons.PROCESSES_PARENT_BLACKLIST: continue if support.is_candidate_compiz_desktop(client): continue self.process_picklist.add(process_name) if process_name not in self.process_blacklist: # user filter win_curr_monitor = screen.get_monitor_at_window(gtk.gdk.window_foreign_new(client)) if win_curr_monitor == 0: cell_background = None else: cell_background = 'gray' if process_name not in self.process_whitelist: flagged = False else: flagged = True if win_curr_monitor == 0: self.liststore.prepend([flagged, client, title, pxb, False, cell_background]) else: self.liststore.append([flagged, client, title, pxb, False, cell_background]) rows_num += 1 if rows_num == 2: iter = self.liststore.get_iter_first() while iter != None: self.liststore[iter][0] = True iter = self.liststore.iter_next(iter) def flag_all_rows(self): """Flags All Rows""" if glob.num_monitors > 1: all_rows_flagged_on_monitor_1 = True iter = self.liststore.get_iter_first() while iter != None: if self.liststore[iter][0] == False: all_rows_flagged_on_monitor_1 = False break iter = self.liststore.iter_next(iter) else: all_rows_flagged_on_monitor_1 = False iter = self.liststore.get_iter_first() while iter != None: if not all_rows_flagged_on_monitor_1: self.liststore[iter][0] = True self.liststore[iter][4] = False else: self.liststore[iter][0] = False self.liststore[iter][4] = True iter = self.liststore.iter_next(iter) def unflag_all_rows(self): """Unflags All Rows""" iter = self.liststore.get_iter_first() while iter != None: self.liststore[iter][0] = False self.liststore[iter][4] = False iter = self.liststore.iter_next(iter) def get_checked_windows_list(self, undo_ready=False): """Returns the list of the checked windows""" checked_windows_list = [[],[]] if undo_ready: # undo_snap_vec is 0:win_id 1:is_maximized 2:x 3:y 4:width 5:height undo_snap_vec = [] tree_iter = self.liststore.get_iter_first() while tree_iter != None: win_id = self.liststore[tree_iter][1] if self.liststore[tree_iter][0] == True: checked_windows_list[0].append(win_id) elif self.liststore[tree_iter][4] == True: checked_windows_list[1].append(win_id) if undo_ready and (self.liststore[tree_iter][0] or self.liststore[tree_iter][4]): if support.is_window_Vmax(win_id) or support.is_window_Hmax(win_id): is_maximized = 1 else: is_maximized = 0 win_geom = support.get_geom(win_id) undo_snap_vec.append([ str(win_id), str(is_maximized), str(win_geom[0]), str(win_geom[1]), str(win_geom[2]), str(win_geom[3]) ]) tree_iter = self.liststore.iter_next(tree_iter) if undo_ready and undo_snap_vec: support.undo_snap_write(self.gconf_client, undo_snap_vec) return checked_windows_list def close_checked_windows(self): """Closes the checked windows and removes the rows from the model""" iter = self.liststore.get_iter_first() while iter != None: next_iter = self.liststore.iter_next(iter) if self.liststore[iter][0] == True or self.liststore[iter][4] == True: support.client_msg(self.liststore[iter][1],"_NET_CLOSE_WINDOW",0,0,0,0,0) glob.x11.XSync(glob.disp, False) self.liststore.remove(iter) iter = next_iter def row_up(self, iter): """Row up one position""" prev_iter = self.get_tree_iter_prev_sibling(iter) if prev_iter != None: self.liststore.swap(iter, prev_iter) def row_down(self, iter): """Row down one position""" subseq_iter = self.liststore.iter_next(iter) if subseq_iter != None: self.liststore.swap(iter, subseq_iter) def row_delete(self, iter): """Row remove""" self.liststore.remove(iter) def get_tree_iter_prev_sibling(self, node_iter): """Returns the previous sibling iter or None if the given iter is the first""" node_path = self.liststore.get_path(node_iter) sibling_index = len(node_path)-1 prev_iter = None while prev_iter == None and node_path[sibling_index] > 0: node_path_list = list(node_path) node_path_list[sibling_index] -= 1 prev_path = tuple(node_path_list) prev_iter = self.liststore.get_iter(prev_path) return prev_iter def get_model(self): """Returns the model""" return self.liststore class GladeWidgetsWrapper: """Handles the retrieval of glade widgets""" def __init__(self, glade_file_path, gui_instance): try: self.glade_widgets = gtk.Builder() self.glade_widgets.set_translation_domain(cons.APP_NAME) self.glade_widgets.add_from_file(glade_file_path) self.glade_widgets.connect_signals(gui_instance) except: print "Failed to load the glade file" def __getitem__(self, key): """Gives us the ability to do: wrapper['widget_name'].action()""" return self.glade_widgets.get_object(key) def __getattr__(self, attr): """Gives us the ability to do: wrapper.widget_name.action()""" new_widget = self.glade_widgets.get_object(attr) if new_widget is None: raise AttributeError, 'Widget %r not found' % attr setattr(self, attr, new_widget) return new_widget class XTile: """The application's main window""" def __init__(self, store): """Instantiate the Glade Widgets Wrapper, create the view, retrieves and stores the information about the running desktop self.geometry""" # create a variable pointing to the instance of the InfoModel class self.store = store # icons generation factory = gtk.IconFactory() for filename in cons.ICONS_FILENAMES: stock_name = filename[:-4] filepath = os.path.join(cons.GLADE_PATH, filename) pixbuf = gtk.gdk.pixbuf_new_from_file(filepath) iconset = gtk.IconSet(pixbuf) factory.add(stock_name, iconset) factory.add_default() # system settings try: gtk_settings = gtk.settings_get_default() gtk_settings.set_property("gtk-button-images", True) gtk_settings.set_property("gtk-menu-images", True) except: pass # older gtk do not have the property "gtk-menu-images" os.environ['UBUNTU_MENUPROXY'] = '0' # x-tile has custom stock icons not visible in appmenu self.cmd_line_only = False # instantiate the Glade Widgets Wrapper self.glade = GladeWidgetsWrapper(cons.GLADE_PATH + 'x-tile.glade', self) # ui manager actions = gtk.ActionGroup("Actions") actions.add_actions(cons.get_entries(self)) self.ui = gtk.UIManager() self.ui.insert_action_group(actions, 0) self.glade.window.add_accel_group(self.ui.get_accel_group()) self.ui.add_ui_from_string(cons.UI_INFO) # menubar add self.glade.vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False) self.glade.vbox_main.reorder_child(self.ui.get_widget("/MenuBar"), 0) # toolbar add self.glade.vbox_main.pack_start(self.ui.get_widget("/ToolBar"), False, False) self.glade.vbox_main.reorder_child(self.ui.get_widget("/ToolBar"), 1) self.ui.get_widget("/ToolBar").set_style(gtk.TOOLBAR_ICONS) # create the view self.view = gtk.TreeView(store.get_model()) self.view.set_headers_visible(False) self.renderer_checkbox = gtk.CellRendererToggle() self.renderer_checkbox.set_property('activatable', True) self.renderer_checkbox.connect('toggled', self.toggle_active, self.store.liststore) self.renderer_checkbox2 = gtk.CellRendererToggle() self.renderer_checkbox2.set_property('activatable', True) self.renderer_checkbox2.connect('toggled', self.toggle_active2, self.store.liststore) self.renderer_pixbuf = gtk.CellRendererPixbuf() self.renderer_text = gtk.CellRendererText() self.columns = [None]*4 self.columns[0] = gtk.TreeViewColumn("Tile", self.renderer_checkbox, active=0) # active=0 <> read from column 0 of model self.columns[0].add_attribute(self.renderer_checkbox, "cell-background", 5) self.columns[1] = gtk.TreeViewColumn("Tile", self.renderer_checkbox2, active=4) # active=4 <> read from column 4 of model self.columns[1].add_attribute(self.renderer_checkbox2, "cell-background", 5) self.columns[2] = gtk.TreeViewColumn("Logo", self.renderer_pixbuf) self.columns[2].set_cell_data_func(self.renderer_pixbuf, self.make_pixbuf) self.columns[2].add_attribute(self.renderer_pixbuf, "cell-background", 5) self.columns[3] = gtk.TreeViewColumn("Window Description", self.renderer_text, text=2) # text=2 <> read from column 2 of model self.columns[3].add_attribute(self.renderer_text, "cell-background", 5) for n in range(4): self.view.append_column(self.columns[n]) if glob.num_monitors < 2: self.columns[1].set_visible(False) self.view.set_reorderable(True) # allow drag and drop reordering of rows self.view.set_tooltip_text(_("Use Drag and Drop to Sort the Rows")) self.view.connect('button-press-event', self.on_mouse_button_clicked_list) self.no_toggling_signals = False self.viewselection = self.view.get_selection() self.glade.scrolledwindow.add(self.view) self.glade.processadddialog.connect('key_press_event', self.on_key_press_processadddialog) self.glade.aboutdialog.set_version(cons.VERSION) self.glade.window.set_title(self.glade.window.get_title() + " " + cons.VERSION) self.gconf_client = gconf.client_get_default() self.gconf_client.add_dir("/apps/x-tile/%s" % glob.screen_index, gconf.CLIENT_PRELOAD_NONE) self.combobox_country_lang_init() def combobox_country_lang_init(self): """Init The Programming Languages Syntax Highlighting""" combobox = self.glade.combobox_country_language self.country_lang_liststore = gtk.ListStore(str) combobox.set_model(self.country_lang_liststore) cell = gtk.CellRendererText() combobox.pack_start(cell, True) combobox.add_attribute(cell, 'text', 0) for country_lang in cons.AVAILABLE_LANGS: self.country_lang_liststore.append([country_lang]) combobox.set_active_iter(self.get_combobox_country_lang_iter(self.gconf_client.get_string(cons.GCONF_LANG))) self.glade.combobox_country_language.connect('changed', self.on_combobox_country_language_changed) def get_combobox_country_lang_iter(self, country_language): """Returns the Language iter Given the Language Name""" curr_iter = self.country_lang_liststore.get_iter_first() while curr_iter != None: if self.country_lang_liststore[curr_iter][0] == country_language: break else: curr_iter = self.country_lang_liststore.iter_next(curr_iter) else: return self.country_lang_liststore.get_iter_first() return curr_iter def on_combobox_country_language_changed(self, combobox): """New Country Language Choosed""" new_iter = self.glade.combobox_country_language.get_active_iter() new_lang = self.country_lang_liststore[new_iter][0] if new_lang != self.gconf_client.get_string(cons.GCONF_LANG): self.country_lang = new_lang support.dialog_info(_("The New Language will be Available Only After Restarting X Tile"), self.glade.window) self.gconf_client.set_string(cons.GCONF_LANG, new_lang) def status_icon_enable(self): """Creates the Stats Icon""" if self.use_appindicator(): self.ind = appindicator.Indicator("x-tile", "indicator-messages", appindicator.CATEGORY_APPLICATION_STATUS) self.ind.set_icon_theme_path(cons.GLADE_PATH) self.ind.set_status(appindicator.STATUS_ACTIVE) self.ind.set_attention_icon("indicator-messages-new") self.ind.set_icon("tile-quad") self.ind.set_menu(self.ui.get_widget("/SysTrayMenu")) else: self.status_icon = gtk.StatusIcon() self.status_icon.set_from_stock("tile-quad") self.status_icon.connect('button-press-event', self.on_mouse_button_clicked_systray) self.status_icon.set_tooltip(_("Tile the Windows Upon your X Desktop")) def on_mouse_button_clicked_systray(self, widget, event): """Catches mouse buttons clicks upon the system tray icon""" if event.button == 1: self.toggle_show_hide_main_window() elif event.button == 3: self.ui.get_widget("/SysTrayMenu").popup(None, None, None, event.button, event.time) def toggle_show_hide_main_window(self, *args): if self.win_on_screen: self.window_hide() else: self.window_position_restore() self.glade.window.show() self.reload_windows_list() self.win_on_screen = True def on_checkbutton_use_appind_toggled(self, checkbutton): """Use AppIndicator Toggled Handling""" if self.glade.checkbutton_systray_docking.get_active(): former_active = True self.glade.checkbutton_systray_docking.set_active(False) else: former_active = False if checkbutton.get_active(): self.gconf_client.set_string(cons.GCONF_USE_APPIND % glob.screen_index, cons.STR_TRUE) else: self.gconf_client.set_string(cons.GCONF_USE_APPIND % glob.screen_index, cons.STR_FALSE) if former_active: self.glade.checkbutton_systray_docking.set_active(True) def on_checkbutton_systray_docking_toggled(self, checkbutton): """SysTray Toggled Handling""" self.systray_on = checkbutton.get_active() if self.systray_on: if not self.use_appindicator(): if "status_icon" in dir(self): self.status_icon.set_property('visible', True) else: self.status_icon_enable() else: if "ind" in dir(self): self.ind.set_status(appindicator.STATUS_ACTIVE) else: self.status_icon_enable() self.ui.get_widget("/MenuBar/FileMenu/ExitApp").set_property('visible', True) self.glade.checkbutton_start_minimized.set_sensitive(True) if self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) != cons.STR_TRUE: self.gconf_client.set_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index, cons.STR_TRUE) else: if not self.use_appindicator(): if not "status_icon" in dir(self): self.status_icon_enable() self.status_icon.set_property('visible', False) else: if not "ind" in dir(self): self.status_icon_enable() self.ind.set_status(appindicator.STATUS_PASSIVE) self.ui.get_widget("/MenuBar/FileMenu/ExitApp").set_property('visible', False) self.glade.checkbutton_start_minimized.set_sensitive(False) if self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) != cons.STR_FALSE: self.gconf_client.set_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index, cons.STR_FALSE) def on_checkbutton_start_minimized_toggled(self, checkbutton): """Start Minimized on SysTray Toggled Handling""" if checkbutton.get_active(): if self.gconf_client.get_string(cons.GCONF_SYSTRAY_START % glob.screen_index) != cons.STR_TRUE: self.gconf_client.set_string(cons.GCONF_SYSTRAY_START % glob.screen_index, cons.STR_TRUE) else: if self.gconf_client.get_string(cons.GCONF_SYSTRAY_START % glob.screen_index) != cons.STR_FALSE: self.gconf_client.set_string(cons.GCONF_SYSTRAY_START % glob.screen_index, cons.STR_FALSE) def on_checkbutton_override_monitor_1_area_toggled(self, checkbutton): """Override Area 1 Checkbox was Toggled""" if checkbutton.get_active(): cons.OVERRIDE_1 = 1 else: cons.OVERRIDE_1 = 0 glob.read_monitors_areas() cons.X1 = glob.monitors_areas[0][0] cons.Y1 = glob.monitors_areas[0][1] cons.W1 = glob.monitors_areas[0][2] cons.H1 = glob.monitors_areas[0][3] self.glade.spinbutton_x1.set_value(cons.X1) self.glade.spinbutton_y1.set_value(cons.Y1) self.glade.spinbutton_w1.set_value(cons.W1) self.glade.spinbutton_h1.set_value(cons.H1) self.gconf_client.set_int(cons.GCONF_OVERRIDE_1 % glob.screen_index, cons.OVERRIDE_1) self.glade.vbox_override_area_1.set_sensitive(cons.OVERRIDE_1 == 1) def on_checkbutton_override_monitor_2_area_toggled(self, checkbutton): """Override Area 1 Checkbox was Toggled""" if checkbutton.get_active(): cons.OVERRIDE_2 = 1 else: cons.OVERRIDE_2 = 0 glob.read_monitors_areas() cons.X2 = glob.monitors_areas[1][0] cons.Y2 = glob.monitors_areas[1][1] cons.W2 = glob.monitors_areas[1][2] cons.H2 = glob.monitors_areas[1][3] self.glade.spinbutton_x2.set_value(cons.X2) self.glade.spinbutton_y2.set_value(cons.Y2) self.glade.spinbutton_w2.set_value(cons.W2) self.glade.spinbutton_h2.set_value(cons.H2) self.gconf_client.set_int(cons.GCONF_OVERRIDE_2 % glob.screen_index, cons.OVERRIDE_2) self.glade.vbox_override_area_2.set_sensitive(cons.OVERRIDE_2 == 1) def init_from_gconf(self): """Init the geometry and the spinbuttons""" glob.read_monitors_areas() self.glade.drawingarea.set_property("width-request", glob.drawing_rect.width) self.glade.drawingarea.set_property("height-request", glob.drawing_rect.height) self.custom_geoms_1 = [] custom_geoms_str = self.gconf_client.get_string(cons.GCONF_CUSTOM_1 % glob.screen_index) if custom_geoms_str: custom_geoms_vec = custom_geoms_str.split(" ") for custom_geom in custom_geoms_vec: x, y, width, height = custom_geom.split(",") self.custom_geoms_1.append([int(x), int(y), int(width), int(height)]) self.custom_geoms_2 = [] custom_geoms_str = self.gconf_client.get_string(cons.GCONF_CUSTOM_2 % glob.screen_index) if custom_geoms_str: custom_geoms_vec = custom_geoms_str.split(" ") for custom_geom in custom_geoms_vec: x, y, width, height = custom_geom.split(",") self.custom_geoms_2.append([int(x), int(y), int(width), int(height)]) if self.gconf_client.get_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index) == None: self.gconf_client.set_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index, cons.STR_TRUE) if self.gconf_client.get_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index) == None: self.gconf_client.set_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index, cons.STR_FALSE) if self.gconf_client.get_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index) == None: self.gconf_client.set_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index, cons.STR_FALSE) # systray handling if not HAS_SYSTRAY: self.gconf_client.set_string(cons.GCONF_USE_APPIND % glob.screen_index, cons.STR_TRUE) elif not HAS_APPINDICATOR: self.gconf_client.set_string(cons.GCONF_USE_APPIND % glob.screen_index, cons.STR_FALSE) if self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) == None: self.gconf_client.set_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index, cons.STR_TRUE) if self.gconf_client.get_string(cons.GCONF_SYSTRAY_START % glob.screen_index) == None: self.gconf_client.set_string(cons.GCONF_SYSTRAY_START % glob.screen_index, cons.STR_FALSE) if self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) == cons.STR_TRUE: self.status_icon_enable() self.systray_on = True self.ui.get_widget("/MenuBar/FileMenu/ExitApp").set_property('visible', True) else: self.systray_on = False self.ui.get_widget("/MenuBar/FileMenu/ExitApp").set_property('visible', False) # exit after tile self.glade.exit_after_tile_checkbutton.set_active(self.gconf_client.get_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index) == cons.STR_TRUE) # monitor 1 handling if self.gconf_client.get_int(cons.GCONF_OVERRIDE_1 % glob.screen_index) == 1: cons.OVERRIDE_1 = 1 cons.X1 = self.gconf_client.get_int(cons.GCONF_X1 % glob.screen_index) cons.Y1 = self.gconf_client.get_int(cons.GCONF_Y1 % glob.screen_index) cons.W1 = self.gconf_client.get_int(cons.GCONF_W1 % glob.screen_index) cons.H1 = self.gconf_client.get_int(cons.GCONF_H1 % glob.screen_index) glob.monitors_areas[0] = [cons.X1, cons.Y1, cons.W1, cons.H1] else: cons.X1 = glob.monitors_areas[0][0] cons.Y1 = glob.monitors_areas[0][1] cons.W1 = glob.monitors_areas[0][2] cons.H1 = glob.monitors_areas[0][3] # monitor 2 handling if glob.num_monitors > 1: if self.gconf_client.get_int(cons.GCONF_OVERRIDE_2 % glob.screen_index) == 1: cons.OVERRIDE_2 = 1 cons.X2 = self.gconf_client.get_int(cons.GCONF_X2 % glob.screen_index) cons.Y2 = self.gconf_client.get_int(cons.GCONF_Y2 % glob.screen_index) cons.W2 = self.gconf_client.get_int(cons.GCONF_W2 % glob.screen_index) cons.H2 = self.gconf_client.get_int(cons.GCONF_H2 % glob.screen_index) glob.monitors_areas[1] = [cons.X2, cons.Y2, cons.W2, cons.H2] else: cons.X2 = glob.monitors_areas[1][0] cons.Y2 = glob.monitors_areas[1][1] cons.W2 = glob.monitors_areas[1][2] cons.H2 = glob.monitors_areas[1][3] # grid parameters grid_rows = self.gconf_client.get_int(cons.GCONF_GRID_ROWS % glob.screen_index) if grid_rows: cons.GRID_ROWS = grid_rows grid_cols = self.gconf_client.get_int(cons.GCONF_GRID_COLS % glob.screen_index) if grid_cols: cons.GRID_COLS = grid_cols key = self.gconf_client.get_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index) if key not in cons.ICONS_SIZE: self.gconf_client.set_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index, 3) self.ui.get_widget("/ToolBar").set_property("icon-size", cons.ICONS_SIZE[self.gconf_client.get_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index)]) blacklist = self.gconf_client.get_string(cons.GCONF_PROCESS_BLACKLIST % glob.screen_index) if blacklist not in [None, ""]: for element in blacklist.split(): self.store.process_blacklist.add(element) whitelist = self.gconf_client.get_string(cons.GCONF_PROCESS_WHITELIST % glob.screen_index) if whitelist not in [None, ""]: for element in whitelist.split(): self.store.process_whitelist.add(element) self.glade.checkbutton_override_monitor_1_area.set_active(cons.OVERRIDE_1 == 1) self.glade.checkbutton_override_monitor_2_area.set_active(cons.OVERRIDE_2 == 1) self.glade.spinbutton_x1.set_value(cons.X1) self.glade.spinbutton_y1.set_value(cons.Y1) self.glade.spinbutton_w1.set_value(cons.W1) self.glade.spinbutton_h1.set_value(cons.H1) self.glade.spinbutton_x2.set_value(cons.X2) self.glade.spinbutton_y2.set_value(cons.Y2) self.glade.spinbutton_w2.set_value(cons.W2) self.glade.spinbutton_h2.set_value(cons.H2) self.glade.vbox_override_area_1.set_sensitive(cons.OVERRIDE_1 == 1) self.glade.vbox_override_area_2.set_sensitive(cons.OVERRIDE_2 == 1) self.glade.checkbutton_override_monitor_2_area.set_sensitive(glob.num_monitors > 1) self.win_size_n_pos = {} self.win_size_n_pos['win_size'] = [self.gconf_client.get_int(cons.GCONF_WIN_SIZE_W % glob.screen_index), self.gconf_client.get_int(cons.GCONF_WIN_SIZE_H % glob.screen_index)] if 0 not in self.win_size_n_pos['win_size']: self.glade.window.resize(self.win_size_n_pos['win_size'][0], self.win_size_n_pos['win_size'][1]) def window_position_restore(self): """Restore window size and position""" self.win_size_n_pos['win_position'] = [self.gconf_client.get_int(cons.GCONF_WIN_POSITION_X % glob.screen_index), self.gconf_client.get_int(cons.GCONF_WIN_POSITION_Y % glob.screen_index)] self.glade.window.move(self.win_size_n_pos['win_position'][0], self.win_size_n_pos['win_position'][1]) def toolbar_icons_size_increase(self, *args): """Increase the Size of the Toolbar Icons""" toolbar_icon_size = self.gconf_client.get_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index) if toolbar_icon_size == 5: support.dialog_info(_("The Size of the Toolbar Icons is already at the Maximum Value"), self.glade.window) return toolbar_icon_size += 1 self.gconf_client.set_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index, toolbar_icon_size) self.ui.get_widget("/ToolBar").set_property("icon-size", cons.ICONS_SIZE[toolbar_icon_size]) def toolbar_icons_size_decrease(self, *args): """Decrease the Size of the Toolbar Icons""" toolbar_icon_size = self.gconf_client.get_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index) if toolbar_icon_size == 1: support.dialog_info(_("The Size of the Toolbar Icons is already at the Minimum Value"), self.glade.window) return toolbar_icon_size -= 1 self.gconf_client.set_int(cons.GCONF_TOOLBAR_ICON_SIZE % glob.screen_index, toolbar_icon_size) self.ui.get_widget("/ToolBar").set_property("icon-size", cons.ICONS_SIZE[toolbar_icon_size]) def toggle_active(self, cell, path, model): """Toggles the Active state""" model[path][0] = not model[path][0] model[path][4] = False def toggle_active2(self, cell, path, model): """Toggles the Active state""" model[path][4] = not model[path][4] model[path][0] = False def toggle_exit_after_tile(self, *args): """Toggles the flag Exit After Tile""" if not self.no_toggling_signals: if self.gconf_client.get_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index) == cons.STR_TRUE: self.gconf_client.set_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index, cons.STR_FALSE) else: self.gconf_client.set_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index, cons.STR_TRUE) def toggle_do_not_list_minimized(self, *args): """Toggles the flag Do Not List Minimized Windows in List""" if not self.no_toggling_signals: if self.gconf_client.get_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index) == cons.STR_TRUE: self.gconf_client.set_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index, cons.STR_FALSE) else: self.gconf_client.set_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index, cons.STR_TRUE) self.store.load_model(self) def toggle_only_curr_workspace(self, *args): """Toggles the flag Only Current Workspace Windows in List""" if not self.no_toggling_signals: if self.gconf_client.get_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index) == cons.STR_TRUE: self.gconf_client.set_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index, cons.STR_FALSE) else: self.gconf_client.set_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index, cons.STR_TRUE) self.store.load_model(self) def is_window_visible(self): """Returns True if the window is visible, False otherwise""" return self.glade.window.get_property("visible") def flag_all_rows(self, *args): """Flags All Rows""" self.store.flag_all_rows() def unflag_all_rows(self, *args): """Unflags All Rows""" self.store.unflag_all_rows() def make_pixbuf(self, treeviewcolumn, cell, model, iter): """Function to associate the pixbuf to the cell renderer""" pixbuf = model[iter][3] cell.set_property('pixbuf', pixbuf) def on_window_delete_event(self, widget, event, data=None): """Before close the application: no checks needed""" self.quit_application() return True # do not propogate the delete event def on_configwindow_delete_event(self, widget, event, data=None): """Destroy the config window""" self.on_configwin_close_button_clicked() return True # do not propogate the delete event def dialog_preferences(self, *args): """Open the Config Window""" if self.glade.configwindow.get_property("visible") == True: return self.no_toggling_signals = True self.glade.current_workspace_checkbutton.set_active(self.gconf_client.get_string(cons.GCONF_ONLY_CURR_DESK % glob.screen_index) == cons.STR_TRUE) self.glade.do_not_list_minimized_checkbutton.set_active(self.gconf_client.get_string(cons.GCONF_NOT_MINIMIZED % glob.screen_index) == cons.STR_TRUE) self.glade.checkbutton_systray_docking.set_active(self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) == cons.STR_TRUE) self.glade.checkbutton_start_minimized.set_active(self.gconf_client.get_string(cons.GCONF_SYSTRAY_START % glob.screen_index) == cons.STR_TRUE) self.glade.checkbutton_use_appind.set_active(self.gconf_client.get_string(cons.GCONF_USE_APPIND % glob.screen_index) == cons.STR_TRUE) if not HAS_APPINDICATOR or not HAS_SYSTRAY: self.glade.checkbutton_use_appind.set_sensitive(False) self.glade.show_toolbar_checkbutton.set_active(self.gconf_client.get_string(cons.GCONF_SHOW_TOOLBAR % glob.screen_index) == cons.STR_TRUE) self.no_toggling_signals = False self.glade.configwindow.show_all() def on_configwin_close_button_clicked(self, *args): """Hide the Dialog""" self.glade.configwindow.hide() cons.X1 = int(self.glade.spinbutton_x1.get_value()) cons.Y1 = int(self.glade.spinbutton_y1.get_value()) cons.W1 = int(self.glade.spinbutton_w1.get_value()) cons.H1 = int(self.glade.spinbutton_h1.get_value()) if cons.OVERRIDE_1 == 1: glob.monitors_areas[0] = [cons.X1, cons.Y1, cons.W1, cons.H1] self.gconf_client.set_int(cons.GCONF_X1 % glob.screen_index, cons.X1) self.gconf_client.set_int(cons.GCONF_Y1 % glob.screen_index, cons.Y1) self.gconf_client.set_int(cons.GCONF_W1 % glob.screen_index, cons.W1) self.gconf_client.set_int(cons.GCONF_H1 % glob.screen_index, cons.H1) if glob.num_monitors > 1: cons.X2 = int(self.glade.spinbutton_x2.get_value()) cons.Y2 = int(self.glade.spinbutton_y2.get_value()) cons.W2 = int(self.glade.spinbutton_w2.get_value()) cons.H2 = int(self.glade.spinbutton_h2.get_value()) if cons.OVERRIDE_2 == 1: glob.monitors_areas[1] = [cons.X2, cons.Y2, cons.W2, cons.H2] self.gconf_client.set_int(cons.GCONF_X2 % glob.screen_index, cons.X2) self.gconf_client.set_int(cons.GCONF_Y2 % glob.screen_index, cons.Y2) self.gconf_client.set_int(cons.GCONF_W2 % glob.screen_index, cons.W2) self.gconf_client.set_int(cons.GCONF_H2 % glob.screen_index, cons.H2) def on_button_row_up_clicked(self, *args): """Move the selected row up of one position""" model, iter = self.viewselection.get_selected() if iter == None: support.dialog_warning(_("No Row is Selected"), self.glade.window) return self.store.row_up(iter) def on_button_row_down_clicked(self, *args): """Move the selected row up of one position""" model, iter = self.viewselection.get_selected() if iter == None: support.dialog_warning(_("No Row is Selected"), self.glade.window) return self.store.row_down(iter) def on_button_row_delete_clicked(self, *args): """Remove the selected row""" model, iter = self.viewselection.get_selected() if iter == None: support.dialog_warning(_("No Row is Selected"), self.glade.window) return self.store.row_delete(iter) def on_button_add_filter_clicked(self, *args): """Application Filter Add""" self.process_add_list_exist_or_create() self.process_add_liststore.clear() for element in self.store.process_picklist: self.process_add_liststore.append([element]) response = self.glade.processadddialog.run() self.glade.processadddialog.hide() if response != 1: return model, iter = self.process_add_treeviewselection.get_selected() if iter == None: return self.store.process_blacklist.add(model[iter][0]) self.filter_list_update() def on_button_remove_filter_clicked(self, *args): """Application Filter Remove""" model, iter = self.filter_treeviewselection.get_selected() if iter == None: support.dialog_warning(_("No Application Selected!"), self.glade.window) return self.store.process_blacklist.remove(model[iter][0]) self.filter_list_update() def dialog_filter(self, action): """Application's Filter Dialog""" self.filter_list_exist_or_create() self.filter_list_update() self.glade.filterdialog.run() self.glade.filterdialog.hide() if len(self.store.process_blacklist) > 0: self.gconf_client.set_string(cons.GCONF_PROCESS_BLACKLIST % glob.screen_index, " ".join(self.store.process_blacklist)) else: self.gconf_client.set_string(cons.GCONF_PROCESS_BLACKLIST % glob.screen_index, "") self.reload_windows_list() def on_button_add_white_clicked(self, *args): """Application Whitelist Add""" self.process_add_list_exist_or_create() self.process_add_liststore.clear() for element in self.store.process_picklist: self.process_add_liststore.append([element]) response = self.glade.processadddialog.run() self.glade.processadddialog.hide() if response != 1: return model, iter = self.process_add_treeviewselection.get_selected() if iter == None: return self.store.process_whitelist.add(model[iter][0]) self.white_list_update() def on_button_remove_white_clicked(self, *args): """Application Whitelist Remove""" model, iter = self.white_treeviewselection.get_selected() if iter == None: support.dialog_warning(_("No Application Selected!"), self.glade.window) return self.store.process_whitelist.remove(model[iter][0]) self.white_list_update() def dialog_selected_by_default(self, action): """Dialog to select a list of windows to be flagged by Default""" self.white_list_exist_or_create() self.white_list_update() self.glade.whitedialog.run() self.glade.whitedialog.hide() if len(self.store.process_whitelist) > 0: self.gconf_client.set_string(cons.GCONF_PROCESS_WHITELIST % glob.screen_index, " ".join(self.store.process_whitelist)) else: self.gconf_client.set_string(cons.GCONF_PROCESS_WHITELIST % glob.screen_index, "") self.reload_windows_list() def filter_list_update(self): """Updates the Process Filter List""" self.filter_liststore.clear() for element in self.store.process_blacklist: self.filter_liststore.append([element]) def white_list_update(self): """Updates the Process White List""" self.white_liststore.clear() for element in self.store.process_whitelist: self.white_liststore.append([element]) def filter_list_exist_or_create(self): """If The List Was Never Used, this will Create It""" if not "filter_liststore" in dir(self): self.filter_liststore = gtk.ListStore(str) self.filter_treeview = gtk.TreeView(self.filter_liststore) self.filter_treeview.set_headers_visible(False) self.filter_renderer_text = gtk.CellRendererText() self.filter_column = gtk.TreeViewColumn("Application", self.filter_renderer_text, text=0) self.filter_treeview.append_column(self.filter_column) self.filter_treeviewselection = self.filter_treeview.get_selection() self.glade.scrolledwindow_filter.add(self.filter_treeview) self.glade.scrolledwindow_filter.show_all() def white_list_exist_or_create(self): """If The List Was Never Used, this will Create It""" if not "white_liststore" in dir(self): self.white_liststore = gtk.ListStore(str) self.white_treeview = gtk.TreeView(self.white_liststore) self.white_treeview.set_headers_visible(False) self.white_renderer_text = gtk.CellRendererText() self.white_column = gtk.TreeViewColumn("Application", self.white_renderer_text, text=0) self.white_treeview.append_column(self.white_column) self.white_treeviewselection = self.white_treeview.get_selection() self.glade.scrolledwindow_white.add(self.white_treeview) self.glade.scrolledwindow_white.show_all() def process_add_list_exist_or_create(self): """If The List Was Never Used, this will Create It""" if not "process_add_liststore" in dir(self): self.process_add_liststore = gtk.ListStore(str) self.process_add_treeview = gtk.TreeView(self.process_add_liststore) self.process_add_treeview.set_headers_visible(False) self.process_add_renderer_text = gtk.CellRendererText() self.process_add_column = gtk.TreeViewColumn("Application", self.process_add_renderer_text, text=0) self.process_add_treeview.append_column(self.process_add_column) self.process_add_treeviewselection = self.process_add_treeview.get_selection() self.process_add_treeview.connect('button-press-event', self.on_mouse_button_clicked_process_add) self.glade.scrolledwindow_process_add.add(self.process_add_treeview) self.glade.scrolledwindow_process_add.show_all() def on_mouse_button_clicked_process_add(self, widget, event): """Catches mouse buttons clicks""" if event.button != 1: return if event.type == gtk.gdk._2BUTTON_PRESS: self.glade.processadddialog_button_ok.clicked() def on_key_press_processadddialog(self, widget, event): """Catches AnchorHandle Dialog key presses""" keyname = gtk.gdk.keyval_name(event.keyval) if keyname == "Return": self.glade.processadddialog_button_ok.clicked() def dialog_grid(self, *args): """Open the Grid Dialog""" dialog = gtk.Dialog(title=_("Grid Details"), parent=self.glade.window, flags=gtk.DIALOG_MODAL|gtk.DIALOG_DESTROY_WITH_PARENT, buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT, gtk.STOCK_OK, gtk.RESPONSE_ACCEPT) ) dialog.set_position(gtk.WIN_POS_CENTER_ON_PARENT) content_area = dialog.get_content_area() hbox_rows = gtk.HBox() label_rows = gtk.Label(_("Rows")) spinbutton_rows = gtk.SpinButton() adj_rows = spinbutton_rows.get_adjustment() adj_rows.set_all(cons.GRID_ROWS, 1, 100, 1, 0, 0) hbox_rows.pack_start(label_rows) hbox_rows.pack_start(spinbutton_rows) hbox_cols = gtk.HBox() label_cols = gtk.Label(_("Columns")) spinbutton_cols = gtk.SpinButton() adj_cols = spinbutton_cols.get_adjustment() adj_cols.set_all(cons.GRID_COLS, 1, 100, 1, 0, 0) hbox_cols.pack_start(label_cols) hbox_cols.pack_start(spinbutton_cols) content_area.pack_start(hbox_rows) content_area.pack_start(hbox_cols) def on_key_press_enter_password_dialog(widget, event): if gtk.gdk.keyval_name(event.keyval) == "Return": button_box = dialog.get_action_area() buttons = button_box.get_children() buttons[0].clicked() # first is the ok button dialog.connect("key_press_event", on_key_press_enter_password_dialog) dialog.show_all() response = dialog.run() cons.GRID_ROWS = int(spinbutton_rows.get_value()) cons.GRID_COLS = int(spinbutton_cols.get_value()) dialog.destroy() if response != gtk.RESPONSE_ACCEPT: return self.gconf_client.set_int(cons.GCONF_GRID_ROWS % glob.screen_index, cons.GRID_ROWS) self.gconf_client.set_int(cons.GCONF_GRID_COLS % glob.screen_index, cons.GRID_COLS) self.tile_grid() def use_appindicator(self): """Will we use AppIndicator?""" return self.gconf_client.get_string(cons.GCONF_USE_APPIND % glob.screen_index) == cons.STR_TRUE def quit_application_totally(self, *args): """The process is Shut Down""" if not self.use_appindicator() and "status_icon" in dir(self): self.status_icon.set_visible(False) self.save_win_pos_n_size() self.glade.window.destroy() gtk.main_quit() def save_win_pos_n_size(self): """Destroy the window""" actual_win_size = list(self.glade.window.get_size()) actual_win_pos = list(self.glade.window.get_position()) if actual_win_size != self.win_size_n_pos['win_size']: self.win_size_n_pos['win_size'] = actual_win_size self.gconf_client.set_int(cons.GCONF_WIN_SIZE_W % glob.screen_index, self.win_size_n_pos['win_size'][0]) self.gconf_client.set_int(cons.GCONF_WIN_SIZE_H % glob.screen_index, self.win_size_n_pos['win_size'][1]) if actual_win_pos != self.win_size_n_pos['win_position']: self.win_size_n_pos['win_position'] = actual_win_pos self.gconf_client.set_int(cons.GCONF_WIN_POSITION_X % glob.screen_index, self.win_size_n_pos['win_position'][0]) self.gconf_client.set_int(cons.GCONF_WIN_POSITION_Y % glob.screen_index, self.win_size_n_pos['win_position'][1]) def window_hide(self): """Hide the Window""" self.save_win_pos_n_size() self.glade.window.hide() self.win_on_screen = False def quit_application(self, *args): """Hide the window""" if not self.systray_on: self.quit_application_totally() else: self.window_hide() def launch_application(self): """Show the main window and all child widgets""" self.init_from_gconf() self.window_position_restore() self.glade.window.show_all() if glob.is_compiz_running: self.glade.checkbutton_dest_workspace.set_active(False) self.glade.checkbutton_dest_workspace.hide() self.glade.spinbutton_dest_workspace.hide() show_toolbar = self.gconf_client.get_string(cons.GCONF_SHOW_TOOLBAR % glob.screen_index) if show_toolbar == None: self.gconf_client.set_string(cons.GCONF_SHOW_TOOLBAR % glob.screen_index, cons.STR_TRUE) elif show_toolbar == cons.STR_FALSE: self.ui.get_widget("/ToolBar").hide() self.win_on_screen = True if self.gconf_client.get_string(cons.GCONF_SYSTRAY_ENABLE % glob.screen_index) == cons.STR_FALSE: self.ui.get_widget("/MenuBar/FileMenu/ExitApp").set_property('visible', False) elif self.gconf_client.get_string(cons.GCONF_SYSTRAY_START % glob.screen_index) == cons.STR_TRUE: self.glade.window.hide() self.win_on_screen = False def reload_windows_list(self, *args): """Reloads the Windows List""" self.store.load_model(self) def close_checked_windows(self, *args): """Closes the Checked Windows""" number_of_windows = len(self.store.get_checked_windows_list()) if number_of_windows < 1: support.dialog_warning(_('No Windows Checked'), self.glade.window) else: self.store.close_checked_windows() def maximize_checked_windows(self, *args): """Maximizes the Checked Windows""" checked_windows_lists = self.store.get_checked_windows_list(True) checked_windows_list = checked_windows_lists[0] + checked_windows_lists[1] number_of_windows = len(checked_windows_list) if number_of_windows < 1: support.dialog_warning(_('No Windows Checked'), self.glade.window) else: for checked_window in checked_windows_list: support.maximize(checked_window) self.check_exit_after_tile() def unmaximize_checked_windows(self, *args): """Unmaximizes the Checked Windows""" checked_windows_lists = self.store.get_checked_windows_list(True) checked_windows_list = checked_windows_lists[0] + checked_windows_lists[1] number_of_windows = len(checked_windows_list) if number_of_windows < 1: support.dialog_warning(_('No Windows Checked'), self.glade.window) else: for checked_window in checked_windows_list: support.unmaximize(checked_window) self.check_exit_after_tile() def tile_vertically(self, *args): """Tile the Checked Windows Vertically""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "v") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_vertically(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_horizontally(self, *args): """Tile the Checked Windows Horizontally""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "h") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_horizontally(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_quad(self, *args): """Tile the Checked Windows Quad""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "q") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_quad(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_grid(self): """Tile the Checked Windows in a rows by cols grid""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "g") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_grid(cons.GRID_ROWS, cons.GRID_COLS, checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_custom_1_set(self, *args): """The User Wants to Set/Update the Custom Tiling""" self.last_custom = 1 self.glade.customsetdialog.set_title(_("Edit Custom Tile Settings") + " 1") response = self.glade.customsetdialog.run() self.glade.customsetdialog.hide() if response != 1: return custom_geoms_str = "" for win_geom in self.custom_geoms_1: custom_geoms_str += " %s,%s,%s,%s" % (win_geom[0], win_geom[1], win_geom[2], win_geom[3]) if custom_geoms_str != "": custom_geoms_str = custom_geoms_str[1:] self.gconf_client.set_string(cons.GCONF_CUSTOM_1 % glob.screen_index, custom_geoms_str) def tile_custom_2_set(self, *args): """The User Wants to Set/Update the Custom Tiling""" self.last_custom = 2 self.glade.customsetdialog.set_title(_("Edit Custom Tile Settings") + " 2") response = self.glade.customsetdialog.run() self.glade.customsetdialog.hide() if response != 1: return custom_geoms_str = "" for win_geom in self.custom_geoms_2: custom_geoms_str += " %s,%s,%s,%s" % (win_geom[0], win_geom[1], win_geom[2], win_geom[3]) if custom_geoms_str != "": custom_geoms_str = custom_geoms_str[1:] self.gconf_client.set_string(cons.GCONF_CUSTOM_2 % glob.screen_index, custom_geoms_str) def on_drawingarea_expose_event(self, widget, event): """Drawing Area was Exposed""" if self.last_custom == 1: if self.custom_geoms_1: self.custom_geoms_draw(self.custom_geoms_1) elif self.last_custom == 2: if self.custom_geoms_2: self.custom_geoms_draw(self.custom_geoms_2) def on_mouse_button_clicked_list(self, widget, event): """Catches mouse buttons clicks""" if event.button == 3: self.ui.get_widget("/ListMenu").popup(None, None, None, event.button, event.time) def on_button_update_custom_tiling_clicked(self, button): """Let's Get Positions and Size of the Flagged Windows""" checked_windows_list = self.store.get_checked_windows_list() if self.last_custom == 1: self.custom_geoms_1 = [] for win_id in checked_windows_list[0] + checked_windows_list[1]: win_geom = support.get_geom(win_id) self.custom_geoms_1.append([win_geom[0], win_geom[1], win_geom[2], win_geom[3]]) self.custom_geoms_draw(self.custom_geoms_1) elif self.last_custom == 2: self.custom_geoms_2 = [] for win_id in checked_windows_list[0] + checked_windows_list[1]: win_geom = support.get_geom(win_id) self.custom_geoms_2.append([win_geom[0], win_geom[1], win_geom[2], win_geom[3]]) self.custom_geoms_draw(self.custom_geoms_2) def custom_geoms_draw(self, custom_geoms): """Draw Custom Geometries""" cr = self.glade.drawingarea.window.cairo_create() rgb_idx = 0 for i, win_geom in enumerate(custom_geoms): cr.set_source_rgb(*cons.DRAW_RGBS[rgb_idx]) cr.rectangle(win_geom[0]/cons.DRAW_SCALE, win_geom[1]/cons.DRAW_SCALE, win_geom[2]/cons.DRAW_SCALE, win_geom[3]/cons.DRAW_SCALE) cr.fill() cr.set_source_rgb(0, 0, 0) cr.set_font_size(13) cr.move_to(win_geom[0]/cons.DRAW_SCALE + win_geom[2]/(2*cons.DRAW_SCALE), win_geom[1]/cons.DRAW_SCALE + win_geom[3]/(2*cons.DRAW_SCALE)) cr.show_text(str(i+1)) if rgb_idx + 1 < len(cons.DRAW_RGBS): rgb_idx += 1 else: rgb_idx = 0 def get_dest_ws(self): """Get Destination Desktop""" if self.glade.checkbutton_dest_workspace.get_active(): return int(self.glade.spinbutton_dest_workspace.get_value()-1) return -1 def invert_tiling(self, *args): """Invert the order of the latest tiling operation""" # get the win_id and win_geom of the latest tiled windows latest_tiling_geoms = [] undo_snap_str = self.gconf_client.get_string(cons.GCONF_UNDO % glob.screen_index) if not undo_snap_str: return undo_snap_vec = undo_snap_str.split(" ") doubleundo_snap_vec = [] for element in undo_snap_vec: win_id, is_maximized, x, y, width, height = element.split(",") win_geom = support.get_geom(int(win_id)) latest_tiling_geoms.append({'win_id': win_id, 'win_geom': win_geom}) #print "latest_tiling_geoms", latest_tiling_geoms # generate the win_id and win_geom of the next tiled windows next_tiling_geoms = [] for i, element in enumerate(latest_tiling_geoms): next_tiling_geoms.append({'win_id': element['win_id'], 'win_geom': latest_tiling_geoms[-1-i]['win_geom']}) #print "next_tiling_geoms", next_tiling_geoms # tile the windows for element in next_tiling_geoms: doubleundo_snap_vec.append(support.get_undo_element_from_win_id(int(element['win_id']))) support.moveresize(int(element['win_id']), int(element['win_geom'][0]), int(element['win_geom'][1]), int(element['win_geom'][2]), int(element['win_geom'][3]), self.get_dest_ws()) if doubleundo_snap_vec: support.undo_snap_write(self.gconf_client, doubleundo_snap_vec) self.check_exit_after_tile() def cycle_tiling(self, *args): """Cycle the order of the latest tiling operation""" # get the win_id and win_geom of the latest tiled windows latest_tiling_geoms = [] undo_snap_str = self.gconf_client.get_string(cons.GCONF_UNDO % glob.screen_index) if not undo_snap_str: return undo_snap_vec = undo_snap_str.split(" ") doubleundo_snap_vec = [] for element in undo_snap_vec: win_id, is_maximized, x, y, width, height = element.split(",") win_geom = support.get_geom(int(win_id)) latest_tiling_geoms.append({'win_id': win_id, 'win_geom': win_geom}) #print "latest_tiling_geoms", latest_tiling_geoms # generate the win_id and win_geom of the next tiled windows next_tiling_geoms = [] for i, element in enumerate(latest_tiling_geoms): next_tiling_geoms.append({'win_id': element['win_id'], 'win_geom': latest_tiling_geoms[(i+1)%len(latest_tiling_geoms)]['win_geom']}) #print "next_tiling_geoms", next_tiling_geoms # tile the windows for element in next_tiling_geoms: doubleundo_snap_vec.append(support.get_undo_element_from_win_id(int(element['win_id']))) support.moveresize(int(element['win_id']), int(element['win_geom'][0]), int(element['win_geom'][1]), int(element['win_geom'][2]), int(element['win_geom'][3]), self.get_dest_ws()) if doubleundo_snap_vec: support.undo_snap_write(self.gconf_client, doubleundo_snap_vec) self.check_exit_after_tile() def undo_tiling(self, *args): """Undo the Latest Tiling Operation""" undo_snap_str = self.gconf_client.get_string(cons.GCONF_UNDO % glob.screen_index) if not undo_snap_str: return undo_snap_vec = undo_snap_str.split(" ") doubleundo_snap_vec = [] for element in undo_snap_vec: win_id, is_maximized, x, y, width, height = element.split(",") # save current state for eventual undo of the undo win_id_int = int(win_id) doubleundo_snap_vec.append(support.get_undo_element_from_win_id(win_id_int)) # proceed with the undo if int(is_maximized) == 1: support.maximize(win_id_int) else: support.moveresize(win_id_int, int(x), int(y), int(width), int(height), self.get_dest_ws()) if doubleundo_snap_vec: support.undo_snap_write(self.gconf_client, doubleundo_snap_vec) self.check_exit_after_tile() def tile_custom_1_run(self, *args): """Tile N Windows According to the User Defined Tiling""" custom_geoms_str = self.gconf_client.get_string(cons.GCONF_CUSTOM_1 % glob.screen_index) if not custom_geoms_str: support.dialog_info(_("The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'"), self.glade.window) return self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "1") custom_geoms_vec = custom_geoms_str.split(" ") windows_list = self.store.get_checked_windows_list(True) windows_list = windows_list[0] + windows_list[1] win_num = 0 for checked_window in windows_list: x, y, width, height = custom_geoms_vec[win_num].split(",") support.moveresize(checked_window, int(x), int(y), int(width), int(height), self.get_dest_ws()) if win_num + 1 < len(custom_geoms_vec): win_num += 1 else: break self.check_exit_after_tile() def tile_custom_2_run(self, *args): """Tile N Windows According to the User Defined Tiling""" custom_geoms_str = self.gconf_client.get_string(cons.GCONF_CUSTOM_2 % glob.screen_index) if not custom_geoms_str: support.dialog_info(_("The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'"), self.glade.window) return self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "2") custom_geoms_vec = custom_geoms_str.split(" ") windows_list = self.store.get_checked_windows_list(True) windows_list = windows_list[0] + windows_list[1] win_num = 0 for checked_window in windows_list: x, y, width, height = custom_geoms_vec[win_num].split(",") support.moveresize(checked_window, int(x), int(y), int(width), int(height), self.get_dest_ws()) if win_num + 1 < len(custom_geoms_vec): win_num += 1 else: break self.check_exit_after_tile() def tile_triangle_up(self, *args): """Tile 3 Windows in Triangle Up Scheme""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "u") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_triangle_up(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_triangle_down(self, *args): """Tile 3 Windows in Triangle Down Scheme""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "d") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_triangle_down(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_triangle_left(self, *args): """Tile 3 Windows in Triangle Left Scheme""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "l") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_triangle_left(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def tile_triangle_right(self, *args): """Tile 3 Windows in Triangle Right Scheme""" self.gconf_client.set_string(cons.GCONF_LATEST_TILING % glob.screen_index, "r") checked_windows_list = self.store.get_checked_windows_list(True) tilings.tile_triangle_right(checked_windows_list, glob.monitors_areas, self.get_dest_ws()) self.check_exit_after_tile() def show_hide_toolbar(self, menuitem, data=None): """Show/Hide the Toolbar""" if not self.no_toggling_signals: if self.ui.get_widget("/ToolBar").get_property('visible') == True: self.ui.get_widget("/ToolBar").hide() self.gconf_client.set_string(cons.GCONF_SHOW_TOOLBAR % glob.screen_index, cons.STR_FALSE) else: self.ui.get_widget("/ToolBar").show() self.gconf_client.set_string(cons.GCONF_SHOW_TOOLBAR % glob.screen_index, cons.STR_TRUE) def check_exit_after_tile(self): """Check if the Exit After Tile is Active and Eventually Quit""" if self.cmd_line_only: return if self.gconf_client.get_string(cons.GCONF_EXIT_AFTER_TILE % glob.screen_index) == cons.STR_TRUE: self.quit_application() def dialog_about(self, menuitem, data=None): """Show the About Dialog and hide it when a button is pressed""" self.glade.aboutdialog.run() self.glade.aboutdialog.hide() def on_help_menu_item_activated(self, menuitem, data=None): """Show the application's Instructions""" webbrowser.open("http://www.giuspen.com/x-tile/") def hide_and_process(self, command_str): """Hide the X Tile Window if Visible, then Process the Command""" if self.win_on_screen: self.window_hide() subprocess.call(command_str, shell=True) def undo_tiling_all(self, *args): """Just Undo the Latest Tiling Operation""" self.hide_and_process("x-tile z &") def invert_tiling_all(self, *args): """Invert the Order of the Latest Tiling Operation""" self.hide_and_process("x-tile i &") def cycle_tiling_all(self, *args): """Cycle the Order of the Latest Tiling Operation""" self.hide_and_process("x-tile y &") def tile_all_vertically(self, *args): """Just tile Vertically all opened windows""" self.hide_and_process("x-tile v &") def tile_all_horizontally(self, *args): """Just tile Horizontally all opened windows""" self.hide_and_process("x-tile h &") def tile_all_triangle_up(self, *args): """Just tile Triangle Up all opened windows""" self.hide_and_process("x-tile u &") def tile_all_triangle_down(self, *args): """Just tile Triangle Down all opened windows""" self.hide_and_process("x-tile d &") def tile_all_triangle_left(self, *args): """Just tile Triangle Left all opened windows""" self.hide_and_process("x-tile l &") def tile_all_triangle_right(self, *args): """Just tile Triangle Right all opened windows""" self.hide_and_process("x-tile r &") def tile_all_quad(self, *args): """Just tile Quad all opened windows""" self.hide_and_process("x-tile q &") def tile_all_grid(self, *args): """Just tile Grid all opened windows""" self.hide_and_process("x-tile g &") def tile_all_custom_1(self, *args): """Just tile Custom 1 all opened windows""" self.hide_and_process("x-tile 1 &") def tile_all_custom_2(self, *args): """Just tile Custom 2 all opened windows""" self.hide_and_process("x-tile 2 &") def maximize_all(self, *args): """Maximize all opened windows""" self.hide_and_process("x-tile m &") def unmaximize_all(self, *args): """Unmaximize all opened windows""" self.hide_and_process("x-tile M &") def close_all(self, *args): """Close all opened windows""" self.hide_and_process("x-tile c &") def dialog_about_all(self, *args): """Show the About Dialog and hide it when a button is pressed""" glade = GladeWidgetsWrapper(cons.GLADE_PATH + 'x-tile.glade', self) glade.aboutdialog.set_version(cons.VERSION) glade.aboutdialog.run() glade.aboutdialog.destroy() del glade x-tile-2.5/modules/core.pyc0000644000175200017520000015740512026046526014702 0ustar develdevel RMXPc@sddlZddlZddlZddlZddlZddlZddlZddlZddlZyddl Z e Z Wn e Z nXdZ e ejkoeje dk ZddlZddlZddlZdd dYZdd dYZdd d YZdS( iNtXDG_CURRENT_DESKTOPtUnityt InfoModelcBsteZdZdZdZdZdZedZdZ dZ dZ d Z d Z d ZRS( sHolds the informationcCsjtj|_tjtjtjtjtj tjtj|_ t |_ t |_ t |_dS(s'Sets up and populates the gtk.ListStoreN(tgconftclient_get_defaultt gconf_clienttgtkt ListStoretgobjectt TYPE_BOOLEANt TYPE_ULONGt TYPE_STRINGt TYPE_PYOBJECTt liststoretsettprocess_picklisttprocess_blacklisttprocess_whitelist(tself((smodules/core.pyt__init__)s   c Csj|jjg}tjdtjtjx1tdtjj D]}|j tj |qBWd}tjdtjtj t tj tkrd}dGHn tj d}tjj}xQ|D]I}tj|rqntjd|tj t tj rtj d}n dGH|}|jjtjtjtjkrs||kstjtjtj| rsqn|jjtjtjtjkrtj|rqntjd|tjd } t tj tkr4d GHtjd |tjt tj tkrd GHqFt j!tj } d | GHnt j!tj } | tj"kr[qntj#|} | r| j$ddtjj%} ntjd|tj d} d} t tj tkrdGHntj d} tj&| } t'| dkr| ddkrqn| tj(kr&qntj)|r;qn|j*j+| | |j,kr|j-tjj.|} | dkrd}nd}| |j0krt}nt1}| dkr|jj2||| | t|gn"|jj ||| | t|g|d7}qqW|dkrf|jj3}x6|dkrbt1|j|d<|jj4|}q0WndS(sPopulates the gtk.ListStoret_NET_CLIENT_LISTit_NET_CURRENT_DESKTOPis1DEBUG warning _NET_CURRENT_DESKTOP improperly sett_NET_WM_DESKTOPs,DEBUG warning _NET_WM_DESKTOP improperly sett _NET_WM_NAMEs???s8DEBUG warning _NET_WM_NAME improperly set by applicationtWM_NAMEs,DEBUG warning WM_NAME not set by applicationsclass it _NET_WM_PIDtUNKNOWNs.DEBUG warning can't get PID _NET_WM_PID failediisx-tiletgrayiiN(5R tcleartsupportt get_propertytglobtroott XA_WINDOWtranget num_itemstvaluetappendt ret_pointert XA_CARDINALtbooltFalseRtgdktscreen_get_defaulttis_window_stickyRt get_stringtconstGCONF_ONLY_CURR_DESKt screen_indextSTR_TRUEtis_window_in_curr_viewportt desktop_widthtdesktop_heighttGCONF_NOT_MINIMIZEDtis_window_hiddentstr_atomt str2_atomtctypest string_attWINNAMES_BLACKLISTtget_icont scale_simpletINTERP_BILINEARtget_process_nametlentPROCESSES_BLACKLISTtis_candidate_compiz_desktopRtaddRtget_monitor_at_windowtwindow_foreign_newtNoneRtTruetprependtget_iter_firstt iter_next(Rt appletobjtclientstitrows_numtcurr_workspace_numtscreentclientt workspace_numttitletpxbtpidt process_nametwin_curr_monitortcell_backgroundtflaggedtiter((smodules/core.pyt load_model7s   %(%  "   %" cCstjdkrmt}|jj}xL|dkri|j|dtkrTt}Pn|jj|}q'Wnt}|jj}xo|dkr|st|j|dCloses the checked windows and removes the rows from the modeliiit_NET_CLOSE_WINDOWN( R RIRFRJRGRt client_msgRtx11tXSynctdispR)tremove(RRZt next_iter((smodules/core.pytclose_checked_windowss.*cCs5|j|}|dkr1|jj||ndS(sRow up one positionN(tget_tree_iter_prev_siblingRFR tswap(RRZt prev_iter((smodules/core.pytrow_ups cCs8|jj|}|dkr4|jj||ndS(sRow down one positionN(R RJRFRv(RRZt subseq_iter((smodules/core.pytrow_downs cCs|jj|dS(s Row removeN(R Rr(RRZ((smodules/core.pyt row_deletescCs|jj|}t|d}d}xZ|dkr||dkrt|}||cd8d<Z?d=Z@d>ZAd?ZBd@ZCdAZDdBZEdCZFdDZGdEZHdFZIdGZJdHZKdIZLdJZMdKZNdLZOdcdMZPdNZQdcdOZRdcdPZSdQZTdRZUdSZVdTZWdUZXdVZYdWZZdXZ[dYZ\dZZ]d[Z^d\Z_d]Z`d^Zad_Zbd`ZcdaZddbZeRS(dsThe application's main windowc CsN||_tj}xdtjD]Y}|d }tjjtj|}tj j |}tj |}|j ||qW|j y0tj}|jdt|jdtWnnXdtjdj?dkrN|j7d j@tn|j)jAt|j)jBtCd|j)j-d|jDt|_E|j)jF|_G|jjHj |j)|jjIj-d|jJ|jjKjLtjM|jjjN|jjjOdtjMtPjQ|_R|jRjSdt>jTtPjU|jVdS(sInstantiate the Glade Widgets Wrapper, create the view, retrieves and stores the information about the running desktop self.geometryisgtk-button-imagessgtk-menu-imagest0tUBUNTU_MENUPROXYs x-tile.gladetActionsis/MenuBars/ToolBarit activatablettoggleditTiletactivescell-backgrounditLogoisWindow Descriptionttextis"Use Drag and Drop to Sort the Rowssbutton-press-eventtkey_press_eventt s/apps/x-tile/%sN(WtstoreRt IconFactoryR.tICONS_FILENAMEStostpathtjoint GLADE_PATHR*tpixbuf_new_from_filetIconSetRCt add_defaulttsettings_get_defaultt set_propertyRGtenvironR)t cmd_line_onlyRtgladet ActionGroupt add_actionst get_entriest UIManagertuitinsert_action_grouptwindowtadd_accel_grouptget_accel_grouptadd_ui_from_stringtUI_INFOt vbox_maint pack_startt get_widgett reorder_childt set_stylet TOOLBAR_ICONStTreeViewRtviewtset_headers_visibletCellRendererToggletrenderer_checkboxtconnectt toggle_activeR trenderer_checkbox2ttoggle_active2tCellRendererPixbuftrenderer_pixbuftCellRendererTextt renderer_textRFtcolumnstTreeViewColumnt add_attributetset_cell_data_funct make_pixbufR"t append_columnRR\t set_visibletset_reorderabletset_tooltip_textt_ton_mouse_button_clicked_listtno_toggling_signalst get_selectiont viewselectiontscrolledwindowtprocessadddialogton_key_press_processadddialogt aboutdialogt set_versiontVERSIONt set_titlet get_titleRRRtadd_dirR0tCLIENT_PRELOAD_NONEtcombobox_country_lang_init( RRtfactorytfilenamet stock_nametfilepathtpixbufticonsett gtk_settingstactionstn((smodules/core.pyRs       %"%"""" *cCs|jj}tjt|_|j|jtj}|j|t |j |ddx$t j D]}|jj |gqgW|j|j|jjt j|jjjd|jdS(s2Init The Programming Languages Syntax HighlightingRitchangedN(Rtcombobox_country_languageRRRctcountry_lang_liststoret set_modelRRRGRR.tAVAILABLE_LANGSR%tset_active_itertget_combobox_country_lang_iterRR-t GCONF_LANGRt$on_combobox_country_language_changed(Rtcomboboxtcellt country_lang((smodules/core.pyRIs  %cCs`|jj}xJ|dkrN|j|d|kr9Pq|jj|}qW|jjS|S(s1Returns the Language iter Given the Language NameiN(RRIRFRJ(Rtcountry_languaget curr_iter((smodules/core.pyRVs cCs|jjj}|j|d}||jjtjkr|||_t j t d|jj |jj tj|ndS(sNew Country Language Choosedis?The New Language will be Available Only After Restarting X TileN(RRtget_active_iterRRR-R.RRRt dialog_infoRRt set_string(RRtnew_itertnew_lang((smodules/core.pyR_s  cCs|jrtjddtj|_|jjtj|jjtj |jj d|jj d|jj |j jdnKtj|_|jjd|jjd|j|jjtddS( sCreates the Stats Iconsx-tilesindicator-messagessindicator-messages-news tile-quads /SysTrayMenusbutton-press-events$Tile the Windows Upon your X DesktopN(tuse_appindicatort appindicatort IndicatortCATEGORY_APPLICATION_STATUStindtset_icon_theme_pathR.Rt set_statust STATUS_ACTIVEtset_attention_icontset_icontset_menuRRRt StatusIcont status_icontset_from_stockRton_mouse_button_clicked_systrayt set_tooltipR(R((smodules/core.pytstatus_icon_enablehs cCs]|jdkr|jn=|jdkrY|jjdjddd|j|jndS(s6Catches mouse buttons clicks upon the system tray iconiis /SysTrayMenuN(tbuttonttoggle_show_hide_main_windowRRtpopupRFttime(Rtwidgettevent((smodules/core.pyRws cGsG|jr|jn-|j|jjj|jt|_dS(N(t win_on_screent window_hidetwindow_position_restoreRRtshowtreload_windows_listRG(Rtargs((smodules/core.pyR|s    cCs|jjjr.t}|jjjtnt}|jrc|jjtj t j tj n |jjtj t j tj |r|jjjtndS(s!Use AppIndicator Toggled HandlingN(Rtcheckbutton_systray_dockingt get_activeRGt set_activeR)RRR.tGCONF_USE_APPINDRR0R1t STR_FALSE(Rt checkbuttont former_active((smodules/core.pyt!on_checkbutton_use_appind_toggleds # cCs|j|_|jr|jsYdt|krL|jjdtq|jn2dt|kr|jj t j n |j|j j djdt|jjjt|jjtjtjtjkr|jjtjtjtjqn|jsFdt|kr0|jn|jjdtn2dt|kre|jn|jj t j|j j djdt|jjjt|jjtjtjtjkr|jjtjtjtjndS(sSysTray Toggled HandlingRtvisibleR s/MenuBar/FileMenu/ExitAppN(R&t systray_onRtdirRRRGRR RR RRRRtcheckbutton_start_minimizedt set_sensitiveRR-R.tGCONF_SYSTRAY_ENABLERR0R1RR)tSTATUS_PASSIVER)(RR*((smodules/core.pyt&on_checkbutton_systray_docking_toggleds0    %&   %cCs|jrW|jjtjtjtjkr|jjtjtjtjqnH|jjtjtjtj kr|jjtjtjtj ndS(s+Start Minimized on SysTray Toggled HandlingN( R&RR-R.tGCONF_SYSTRAY_STARTRR0R1RR)(RR*((smodules/core.pyt&on_checkbutton_start_minimized_toggleds  %&%cCs|jrdt_ndt_tjtjddt_tjddt_tjddt_tjddt_ |j j j tj|j j j tj|j jj tj|j jj tj |jjtjtjtj|j jjtjdkdS(s$Override Area 1 Checkbox was TogglediiiiN(R&R.t OVERRIDE_1Rtread_monitors_areastmonitors_areastX1tY1tW1tH1Rt spinbutton_x1t set_valuet spinbutton_y1t spinbutton_w1t spinbutton_h1Rtset_inttGCONF_OVERRIDE_1R0tvbox_override_area_1R1(RR*((smodules/core.pyt.on_checkbutton_override_monitor_1_area_toggleds    cCs|jrdt_ndt_tjtjddt_tjddt_tjddt_tjddt_ |j j j tj|j j j tj|j jj tj|j jj tj |jjtjtjtj|j jjtjdkdS(s$Override Area 1 Checkbox was TogglediiiiN(R&R.t OVERRIDE_2RR8R9tX2tY2tW2tH2Rt spinbutton_x2R?t spinbutton_y2t spinbutton_w2t spinbutton_h2RRCtGCONF_OVERRIDE_2R0tvbox_override_area_2R1(RR*((smodules/core.pyt.on_checkbutton_override_monitor_2_area_toggleds    cCsy tj|jjjdtjj|jjjdtjjg|_|j j t j tj }|r|jd}x`|D]U}|jd\}}}}|jjt|t|t|t|gqWng|_|j j t jtj }|r||jd}x`|D]U}|jd\}}}}|jjt|t|t|t|gq Wn|j j t jtj dkr|j jt jtj t jn|j j t jtj dkr|j jt jtj t jn|j j t jtj dkrK|j jt jtj t jntst|j jt jtj t jn)ts|j jt jtj t jn|j j t jtj dkr|j jt jtj t jn|j j t jtj dkr'|j jt jtj t jn|j j t jtj t jkr~|jt |_!|j"j#djdt n%t$|_!|j"j#djdt$|jj%j&|j j t jtj t jk|j j't j(tj dkrdt _)|j j't j*tj t _+|j j't j,tj t _-|j j't j.tj t _/|j j't j0tj t _1t j+t j-t j/t j1gtj2dtj }|rS|t _?n|j j't j@tj } | r| t _An|j j't jBtj } | t jCkr|j jDt jBtj d n|j"j#d jd t jC|j j't jBtj |j j t jEtj } | dkrZx*| jD]} |jFjGjH| q:Wn|j j t jItj } | dkrx*| jD]} |jFjJjH| qWn|jjKj&t j)dk|jjLj&t j5dk|jjMjNt j+|jjOjNt j-|jjPjNt j/|jjQjNt j1|jjRjNt j7|jjSjNt j9|jjTjNt j;|jjUjNt j=|jjVjWt j)dk|jjXjWt j5dk|jjLjWtj3dki|_Y|j j't jZtj |j j't j[tj g|jYdR?R@RARBRLRMRNRORER1RQtwin_size_n_postGCONF_WIN_SIZE_WtGCONF_WIN_SIZE_HRtresize(Rtcustom_geoms_strtcustom_geoms_vect custom_geomtxtyRXRYt grid_rowst grid_colsRt blacklisttelementt whitelist((smodules/core.pytinit_from_gconfs   ;  ;"#"#"###"#"#%   2" (" (   $   &cCso|jjtjtj|jjtjtjg|jd<|jj j |jdd|jdddS(s Restore window size and positiont win_positioniiN( RRdR.tGCONF_WIN_POSITION_XRR0tGCONF_WIN_POSITION_YRwRRtmove(R((smodules/core.pyR!As&cGs|jjtjtj}|dkrHtjtd|j j dS|d7}|jj tjtj||j j djdtj|dS(s&Increase the Size of the Toolbar Iconsis=The Size of the Toolbar Icons is already at the Maximum ValueNis/ToolBars icon-size(RRdR.RqRR0RRRRRRCRRRRr(RR$ttoolbar_icon_size((smodules/core.pyttoolbar_icons_size_increaseGs  cGs|jjtjtj}|dkrHtjtd|j j dS|d8}|jj tjtj||j j djdtj|dS(s&Decrease the Size of the Toolbar Iconsis=The Size of the Toolbar Icons is already at the Minimum ValueNs/ToolBars icon-size(RRdR.RqRR0RRRRRRCRRRRr(RR$R((smodules/core.pyttoolbar_icons_size_decreaseQs  cCs)||d ||dt get_valueR.R:R@R;RAR<RBR=R7RR9RRCReR0RfRgRhR\RLRHRMRIRNRJRORKRGRiRjRkRl(RR$((smodules/core.pyRs,%   #%   cGsU|jj\}}|dkrAtjtd|jjdS|jj |dS(s(Move the selected row up of one positionsNo Row is SelectedN( Rt get_selectedRFRtdialog_warningRRRRRx(RR$RRZ((smodules/core.pyton_button_row_up_clickeds  cGsU|jj\}}|dkrAtjtd|jjdS|jj |dS(s(Move the selected row up of one positionsNo Row is SelectedN( RRRFRRRRRRRz(RR$RRZ((smodules/core.pyton_button_row_down_clickeds  cGsU|jj\}}|dkrAtjtd|jjdS|jj |dS(sRemove the selected rowsNo Row is SelectedN( RRRFRRRRRRR{(RR$RRZ((smodules/core.pyton_button_row_delete_clickeds  cGs|j|jjx'|jjD]}|jj|gq$W|jjj}|jjj |dkrsdS|j j \}}|dkrdS|jj j||d|jdS(sApplication Filter AddiNi(t process_add_list_exist_or_createtprocess_add_liststoreRRRR%RRtrunRtprocess_add_treeviewselectionRRFRRCtfilter_list_update(RR$RtresponseRRZ((smodules/core.pyton_button_add_filter_clickeds    cGsj|jj\}}|dkrAtjtd|jjdS|jj j ||d|j dS(sApplication Filter RemovesNo Application Selected!Ni( tfilter_treeviewselectionRRFRRRRRRRRrR(RR$RRZ((smodules/core.pyton_button_remove_filter_clickeds  cCs|j|j|jjj|jjjt|jjdkr{|j j t j t jdj|jjn|j j t j t jd|jdS(sApplication's Filter DialogiRRTN(tfilter_list_exist_or_createRRt filterdialogRRR@RRRRR.RsRR0RR#(Rtaction((smodules/core.pyt dialog_filters  /cGs|j|jjx'|jjD]}|jj|gq$W|jjj}|jjj |dkrsdS|j j \}}|dkrdS|jj j||d|jdS(sApplication Whitelist AddiNi(RRRRRR%RRRRRRRFRRCtwhite_list_update(RR$RRRRZ((smodules/core.pyton_button_add_white_clickeds    cGsj|jj\}}|dkrAtjtd|jjdS|jj j ||d|j dS(sApplication Whitelist RemovesNo Application Selected!Ni( twhite_treeviewselectionRRFRRRRRRRRrR(RR$RRZ((smodules/core.pyton_button_remove_white_clickeds  cCs|j|j|jjj|jjjt|jjdkr{|j j t j t jdj|jjn|j j t j t jd|jdS(s;Dialog to select a list of windows to be flagged by DefaultiRRTN(twhite_list_exist_or_createRRt whitedialogRRR@RRRRR.RtRR0RR#(RR((smodules/core.pytdialog_selected_by_defaults  /cCs;|jjx'|jjD]}|jj|gqWdS(sUpdates the Process Filter ListN(tfilter_liststoreRRRR%(RR((smodules/core.pyRs cCs;|jjx'|jjD]}|jj|gqWdS(sUpdates the Process White ListN(twhite_liststoreRRRR%(RR((smodules/core.pyR!s cCsdt|krtjt|_tj|j|_|jjttj |_ tj d|j dd|_ |jj |j |jj|_|jjj|j|jjjndS(s/If The List Was Never Used, this will Create ItRt ApplicationRiN(R/RRRcRRtfilter_treeviewRR)Rtfilter_renderer_textRt filter_columnRRRRtscrolledwindow_filterRCR(R((smodules/core.pyR'scCsdt|krtjt|_tj|j|_|jjttj |_ tj d|j dd|_ |jj |j |jj|_|jjj|j|jjjndS(s/If The List Was Never Used, this will Create ItRRRiN(R/RRRcRRtwhite_treeviewRR)Rtwhite_renderer_textRt white_columnRRRRtscrolledwindow_whiteRCR(R((smodules/core.pyR4scCsdt|krtjt|_tj|j|_|jjttj |_ tj d|j dd|_ |jj |j |jj|_|jjd|j|jjj|j|jjjndS(s/If The List Was Never Used, this will Create ItRRRisbutton-press-eventN(R/RRRcRRtprocess_add_treeviewRR)Rtprocess_add_renderer_textRtprocess_add_columnRRRRt#on_mouse_button_clicked_process_addRtscrolledwindow_process_addRCR(R((smodules/core.pyRAscCs?|jdkrdS|jtjjkr;|jjjndS(sCatches mouse buttons clicksiN(RttypeRR*t_2BUTTON_PRESSRtprocessadddialog_button_oktclicked(RRR((smodules/core.pyROscCs8tjj|j}|dkr4|jjjndS(s'Catches AnchorHandle Dialog key pressestReturnN(RR*t keyval_nametkeyvalRRR(RRRtkeyname((smodules/core.pyRTs c s6tjdtdd|jjdtjtjBdtjtjtj tj fj tj j }tj}tjtd}tj}|j}|jtjdddd d |j||j|tj}tjtd }tj} | j} | jtjdddd d |j||j| |j||j|fd } jd | jj} t|jt_t| jt_j| tj krd S|jjtjt j!tj|jjtj"t j!tj|j#d S(sOpen the Grid DialogRSs Grid DetailstparenttflagstbuttonstRowsiiditColumnscsHtjj|jdkrDj}|j}|djndS(NRi(RR*RRtget_action_areat get_childrenR(RRt button_boxR(tdialog(smodules/core.pyt"on_key_press_enter_password_dialogrs  RN($RtDialogRRRt DIALOG_MODALtDIALOG_DESTROY_WITH_PARENTt STOCK_CANCELtRESPONSE_REJECTtSTOCK_OKtRESPONSE_ACCEPTt set_positiontWIN_POS_CENTER_ON_PARENTtget_content_areatHBoxtLabelt SpinButtontget_adjustmenttset_allR.RnRRpRRRR]RtdestroyRRCRmRR0Rot tile_grid( RR$t content_areat hbox_rowst label_rowstspinbutton_rowstadj_rowst hbox_colst label_colstspinbutton_colstadj_colsRR((Rsmodules/core.pyt dialog_gridYsF                    cCs#|jjtjtjtjkS(sWill we use AppIndicator?(RR-R.R(RR0R1(R((smodules/core.pyRscGsZ|j r2dt|kr2|jjtn|j|jjjt j dS(sThe process is Shut DownRN( RR/RRR)tsave_win_pos_n_sizeRRRRt main_quit(RR$((smodules/core.pytquit_application_totallys  cCst|jjj}t|jjj}||jdkr||jd<|jjtj t j |jdd|jjtj t j |jddn||jdkr||jd<|jjtj t j |jdd|jjtjt j |jddndS(sDestroy the windowRUiiRN(R}RRtget_sizet get_positionRwRRCR.RxRR0RyRR(Rtactual_win_sizetactual_win_pos((smodules/core.pyRs (+ (cCs'|j|jjjt|_dS(sHide the WindowN(RRRRR)R(R((smodules/core.pyR s cGs$|js|jn |jdS(sHide the windowN(R.RR (RR$((smodules/core.pyRs cCsh|j|j|jjjtjrc|jjjt |jjj |jj j n|j j tjtj}|dkr|j jtjtjtjn(|tjkr|jjdj nt|_|j j tjtjtjkr#|jjdjdt nA|j j tjtjtjkrd|jjj t |_ndS(s*Show the main window and all child widgetss/ToolBars/MenuBar/FileMenu/ExitAppR-N(RR!RRRRtis_compiz_runningtcheckbutton_dest_workspaceR'R)Rtspinbutton_dest_workspaceRR-R.RR0RFRR1R)RRRGRR2RR5(Rt show_toolbar((smodules/core.pytlaunch_applications$    # %%cGs|jj|dS(sReloads the Windows ListN(RR[(RR$((smodules/core.pyR#scGsQt|jj}|dkr@tjtd|jjn |jjdS(sCloses the Checked WindowsisNo Windows CheckedN( R@RRlRRRRRRt(RR$tnumber_of_windows((smodules/core.pyRts cGs|jjt}|d|d}t|}|dkr[tjtd|jjn(x|D]}tj |qbW|j dS(sMaximizes the Checked WindowsiisNo Windows CheckedN( RRlRGR@RRRRRtmaximizetcheck_exit_after_tile(RR$tchecked_windows_listsRfRtchecked_window((smodules/core.pytmaximize_checked_windowss   cGs|jjt}|d|d}t|}|dkr[tjtd|jjn(x|D]}tj |qbW|j dS(sUnmaximizes the Checked WindowsiisNo Windows CheckedN( RRlRGR@RRRRRt unmaximizeR(RR$RRfRR((smodules/core.pytunmaximize_checked_windowss   cGsY|jjtjtjd|jjt}t j |tj |j |j dS(s#Tile the Checked Windows VerticallytvN(RRR.tGCONF_LATEST_TILINGRR0RRlRGttilingsttile_verticallyR9t get_dest_wsR(RR$Rf((smodules/core.pyRscGsY|jjtjtjd|jjt}t j |tj |j |j dS(s%Tile the Checked Windows HorizontallythN(RRR.R RR0RRlRGRttile_horizontallyR9RR(RR$Rf((smodules/core.pyRscGsY|jjtjtjd|jjt}t j |tj |j |j dS(sTile the Checked Windows QuadtqN(RRR.R RR0RRlRGRt tile_quadR9RR(RR$Rf((smodules/core.pyRscCse|jjtjtjd|jjt}t j tj tj |tj |j|jdS(s/Tile the Checked Windows in a rows by cols gridtgN(RRR.R RR0RRlRGRRRnRpR9RR(RRf((smodules/core.pyRs  cGsd|_|jjjtdd|jjj}|jjj|dkrXdSd}x;|jD]0}|d|d|d|d|d f7}qhW|dkr|d}n|jj t j t j |dS( s.The User Wants to Set/Update the Custom TilingisEdit Custom Tile Settingss 1NRTs %s,%s,%s,%siii(t last_customRtcustomsetdialogRRRRRZRRR.R[RR0(RR$RR{Rk((smodules/core.pyttile_custom_1_sets  . cGsd|_|jjjtdd|jjj}|jjj|dkrXdSd}x;|jD]0}|d|d|d|d|d f7}qhW|dkr|d}n|jj t j t j |dS( s.The User Wants to Set/Update the Custom TilingisEdit Custom Tile Settingss 2iNRTs %s,%s,%s,%sii(RRRRRRRR^RRR.R_RR0(RR$RR{Rk((smodules/core.pyttile_custom_2_sets  . cCs`|jdkr.|jr\|j|jq\n.|jdkr\|jr\|j|jq\ndS(sDrawing Area was ExposediiN(RRZtcustom_geoms_drawR^(RRR((smodules/core.pyton_drawingarea_expose_events   cCsA|jdkr=|jjdjddd|j|jndS(sCatches mouse buttons clicksis /ListMenuN(RRRRRFR(RRR((smodules/core.pyRscCs|jj}|jdkrg|_xU|d|dD]A}tj|}|jj|d|d|d|dgq:W|j|jn|jdkrg|_xU|d|dD]A}tj|}|jj|d|d|d|dgqW|j|jndS(s3Let's Get Positions and Size of the Flagged WindowsiiiiN( RRlRRZRRbR%RR^(RRRfRiRk((smodules/core.pyt&on_button_update_custom_tiling_clickeds 0 0cCsK|jjjj}d}x)t|D]\}}|jtj||j|dtj |dtj |dtj |dtj |j |jddd|j d|j |dtj |ddtj |dtj |ddtj |j t|d|dttjkr=|d7}q(d}q(WdS(sDraw Custom Geometriesiiiii N(RRVRt cairo_createt enumeratetset_source_rgbR.t DRAW_RGBSt rectanglet DRAW_SCALEtfillt set_font_sizetmove_tot show_textRcR@(Rt custom_geomstcrtrgb_idxRMRk((smodules/core.pyR-s"   '% cCs0|jjjr,t|jjjdSdS(sGet Destination Desktopii(RRR&R]RR(R((smodules/core.pyR>sc Gsg}|jjtjtj}|s,dS|jd}g}x_|D]W}|jd\}}} } } } tjt |} |j i|d6| d6qHWg}xEt |D]7\}}|j i|dd6|d|dd6qWx|D]}|j tj t |dtj t |dt |ddt |ddt |dd t |dd |jqW|rtj|j|n|jdS( s/Invert the order of the latest tiling operationNRRSRiRkiiiii(RR-R.t GCONF_UNDORR0R\RRbR]R%Rtget_undo_element_from_win_idt moveresizeRRdR(RR$tlatest_tiling_geomst undo_snap_strRgtdoubleundo_snap_vecRRiRjR~RRXRYRktnext_tiling_geomsRM((smodules/core.pyt invert_tilingDs2 !  c Gsg}|jjtjtj}|s,dS|jd}g}x_|D]W}|jd\}}} } } } tjt |} |j i|d6| d6qHWg}xOt |D]A\}}|j i|dd6||dt |dd6qWx|D]}|j tj t |dtjt |dt |ddt |ddt |ddt |dd |jqW|rtj|j|n|jdS( s.Cycle the order of the latest tiling operationNRRSRiRkiiii(RR-R.R*RR0R\RRbR]R%RR@R+R,RRdR(RR$R-R.RgR/RRiRjR~RRXRYRkR0RM((smodules/core.pyt cycle_tilingds2 !%  c Gs|jjtjtj}|s&dS|jd}g}x|D]}|jd\}}}} } } t|} |jt j | t|dkrt j | qBt j | t|t| t| t| |j qBW|rt j|j|n|jdS(s Undo the Latest Tiling OperationNRRSi(RR-R.R*RR0R\R]R%RR+RR,RRdR( RR$R.RgR/RRiRjR~RRXRYt win_id_int((smodules/core.pyt undo_tilings ! >c Gs4|jjtjtj}|sBtjtd|j j dS|jj tj tjd|j d}|jjt}|d|d}d}x|D]}||j d\}}} } tj|t|t|t| t| |j|dt|kr!|d7}qPqW|jdS(s3Tile N Windows According to the User Defined TilingsPThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'Nt1RiiRS(RR-R.R[RR0RRRRRRR R\RRlRGR,R]RR@R( RR$R{R|t windows_listtwin_numRR~RRXRY((smodules/core.pyttile_custom_1_runs  : c Gs4|jjtjtj}|sBtjtd|j j dS|jj tj tjd|j d}|jjt}|d|d}d}x|D]}||j d\}}} } tj|t|t|t| t| |j|dt|kr!|d7}qPqW|jdS(s3Tile N Windows According to the User Defined TilingsPThe Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'Nt2RiiRS(RR-R.R_RR0RRRRRRR R\RRlRGR,R]RR@R( RR$R{R|R6R7RR~RRXRY((smodules/core.pyttile_custom_2_runs  : cGsY|jjtjtjd|jjt}t j |tj |j |j dS(s$Tile 3 Windows in Triangle Up SchemetuN(RRR.R RR0RRlRGRttile_triangle_upR9RR(RR$Rf((smodules/core.pyR<scGsY|jjtjtjd|jjt}t j |tj |j |j dS(s&Tile 3 Windows in Triangle Down SchemetdN(RRR.R RR0RRlRGRttile_triangle_downR9RR(RR$Rf((smodules/core.pyR>scGsY|jjtjtjd|jjt}t j |tj |j |j dS(s&Tile 3 Windows in Triangle Left SchemetlN(RRR.R RR0RRlRGRttile_triangle_leftR9RR(RR$Rf((smodules/core.pyR@scGsY|jjtjtjd|jjt}t j |tj |j |j dS(s'Tile 3 Windows in Triangle Right SchemetrN(RRR.R RR0RRlRGRttile_triangle_rightR9RR(RR$Rf((smodules/core.pyRBscCs|js|jjdjdtkrc|jjdj|jjtj t j tj q|jjdj |jjtj t j tjndS(sShow/Hide the Toolbars/ToolBarR-N(RRRRRGRRRR.RRR0R)R"R1(RtmenuitemR((smodules/core.pytshow_hide_toolbars  !#cCsC|jr dS|jjtjtjtjkr?|jndS(s:Check if the Exit After Tile is Active and Eventually QuitN( RRR-R.R`RR0R1R(R((smodules/core.pyRs %cCs$|jjj|jjjdS(s:Show the About Dialog and hide it when a button is pressedN(RRRR(RRCR((smodules/core.pyt dialog_aboutscCstjddS(s#Show the application's Instructionsshttp://www.giuspen.com/x-tile/N(t webbrowsertopen(RRCR((smodules/core.pyton_help_menu_item_activatedscCs-|jr|jntj|dtdS(s;Hide the X Tile Window if Visible, then Process the CommandtshellN(RR t subprocesstcallRG(Rt command_str((smodules/core.pythide_and_processs cGs|jddS(s%Just Undo the Latest Tiling Operations x-tile z &N(RM(RR$((smodules/core.pytundo_tiling_allscGs|jddS(s/Invert the Order of the Latest Tiling Operations x-tile i &N(RM(RR$((smodules/core.pytinvert_tiling_allscGs|jddS(s.Cycle the Order of the Latest Tiling Operations x-tile y &N(RM(RR$((smodules/core.pytcycle_tiling_allscGs|jddS(s'Just tile Vertically all opened windowss x-tile v &N(RM(RR$((smodules/core.pyttile_all_verticallyscGs|jddS(s)Just tile Horizontally all opened windowss x-tile h &N(RM(RR$((smodules/core.pyttile_all_horizontallyscGs|jddS(s(Just tile Triangle Up all opened windowss x-tile u &N(RM(RR$((smodules/core.pyttile_all_triangle_upscGs|jddS(s*Just tile Triangle Down all opened windowss x-tile d &N(RM(RR$((smodules/core.pyttile_all_triangle_down scGs|jddS(s*Just tile Triangle Left all opened windowss x-tile l &N(RM(RR$((smodules/core.pyttile_all_triangle_leftscGs|jddS(s+Just tile Triangle Right all opened windowss x-tile r &N(RM(RR$((smodules/core.pyttile_all_triangle_rightscGs|jddS(s!Just tile Quad all opened windowss x-tile q &N(RM(RR$((smodules/core.pyt tile_all_quadscGs|jddS(s!Just tile Grid all opened windowss x-tile g &N(RM(RR$((smodules/core.pyt tile_all_gridscGs|jddS(s%Just tile Custom 1 all opened windowss x-tile 1 &N(RM(RR$((smodules/core.pyttile_all_custom_1 scGs|jddS(s%Just tile Custom 2 all opened windowss x-tile 2 &N(RM(RR$((smodules/core.pyttile_all_custom_2$scGs|jddS(sMaximize all opened windowss x-tile m &N(RM(RR$((smodules/core.pyt maximize_all(scGs|jddS(sUnmaximize all opened windowss x-tile M &N(RM(RR$((smodules/core.pytunmaximize_all,scGs|jddS(sClose all opened windowss x-tile c &N(RM(RR$((smodules/core.pyt close_all0scGsJttjd|}|jjtj|jj|jj~dS(s:Show the About Dialog and hide it when a button is presseds x-tile.gladeN(RR.RRRRRR(RR$R((smodules/core.pytdialog_about_all4s   N(fRRRRRRRRRRR,R4R6RFRRRR!RRRRRRRRR^R_RRFRRRRRRRRRRRRRRRRRRRRRRRRR RRR#RtR R RRRRRRRRRRRR1R2R4R8R:R<R>R@RBRDRRERHRMRNRORPRQRRRSRTRURVRWRXRYRZR[R\R]R^(((smodules/core.pyRs J       k                         )                                          ((((RRRRtsysR9RFRRJR RGRbR)RRRaR.RRRRR(((smodules/core.pyts$H   #$x-tile-2.5/modules/support.pyc0000644000175200017520000003535412026046114015455 0ustar develdevel KXPc@s]ddlZddlZddlZddlZddlZddlZddlZddlZdZdZ dZ dZ dZ dZ dZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdZdZdZ ddZ"ddZ#dS(iNcCsptdtjtjttjr=tjdtjdfSdGHtjj}|j d}|j |j fS(sGet Desktop Width and Heightt _NET_WORKAREAiisHThe WM does not set _NET_WORKAREA properly, x-tile may not work properlyi( t get_propertytglobtroott XA_CARDINALtboolt ret_pointertgtktgdktscreen_get_defaulttget_monitor_geometrytwidththeight(tscreentrect((smodules/support.pytget_desktop_width_n_height scCsWt|\}}}}}|dksK||ksK|dksK||krOtStSdS(sICheck the Window to be in the Current Viewport assuming Compiz is RunningiN(tget_geomtFalsetTrue(t desktop_widthtdesktop_heighttwin_idtxtyR R R((smodules/support.pytis_window_in_curr_viewport)s0cCsxtdtjtjttjtkrotdtjtjttjtkr_dGHtStjd}n tjd}td|tjttjtkrtd|tj ttjtkrdGHtSnd}t }d}xn|rZtj|}xJt dD]<}|d|?d@}|dkr;t}Pn|d |7}q W|d 7}qWd G|GH|d krtt StS( s Return True if Compiz is runningt_NET_SUPPORTING_WM_CHECKsno 1!it _NET_WM_NAMEsno 2!tiis%cisWM =tCompiz( RRRt XA_WINDOWRRRRtstr_atomt XA_STRINGRtrange(t sup_windowtbufft keep_goingtit eightcharstjt curr_char((smodules/support.pytis_compiz_running/s<      cCsxtjs tSt|\}}}}}|tjddkrt|tjddkrtt| rtt| rttStS(s)Is this a candidate Compiz Desktop windowiii(RR(RRtmonitors_areastis_window_Hmaxtis_window_VmaxR(twinRRtwthtr((smodules/support.pytis_candidate_compiz_desktopQs   c Csptj}tj}tj}tj}tjjtj|tj|tj|tj|tj|tj|j kr|}nt j }tjj tj|tj|t d|tjttjtkrd\}}}} n:tjdtjdtjdtjdf\}}}} |j||j||j|||j|| |jfS(s Status XQueryTree(display, w, root_return, parent_return, children_return, nchildren_return) Display *display; Window w; Window *root_return; Window *parent_return; Window **children_return; unsigned int *nchildren_return; t_NET_FRAME_EXTENTSiiii(iiii(tctypestc_ulongtc_uintRtx11t XQueryTreetdisptbyrefRtvaluetglobstXWindowAttributestXGetWindowAttributesRRRRRRRR R ( R,t root_returnt parent_returntchildren_returntnchildren_returntxwatlR/tttb((smodules/support.pyR\s    *  ":cCstjjtj|t}tjjtj||ddt|tjtjtjtj tjtj tjtj tjtj  dS(so gets an x property puts in global return variables property name, window, return data type atom iiiNi( RR5t XInternAtomR7RtXGetWindowPropertyR2R8tret_typet ret_formatt num_itemst bytes_afterR(t prop_nametwindowt data_typet prop_atom((smodules/support.pyR}s!-c Cstd|tjtjs d Stjd}tjd}||}d}d}x||krtj|d}|d7}|d|d?d@}|d|d ?d@}|d|d@}|d|d ?d@}qSWtjj|tjjt d |||d }|S( sh this returns a gtk.gdk.pixbuf of the windows icon converts argb into rgba in the process t _NET_WM_ICONiiRis%ciiiiiN( RRRRtNoneRRtpixbuf_new_from_datatCOLORSPACE_RGBR(R,R-R.tsR"R$targbtpxbuf((smodules/support.pytget_icons"     .cCsDtjd}tjjtj|tjtjtj|dS(s: returns the minimum window size and its resize increment iN(R2tc_longRR5tXGetWMNormalHintsR7R8tsize_hints_return(R,tsupplied_return((smodules/support.pyt get_min_sizes!cCstj}d|_d|_t|_tjjtj |t |_ ||_ d|_ ||_||_||_||_||_tjjtj tjt d d Btj|sdG|GHndS( sC sends a client message event used to change window properties i!ii iiiscan't send message Nii(R:tXClientMessageEventttypetserialRtsendRR5RER7RtmsgtypeRLtformattdata0tdata1tdata2tdata3tdata4t XSendEventRR2R8(R,tmsgtd0td1td2td3td4tevent((smodules/support.pyt client_msgs           1c Cstjjtjttd|tjttjtkrSd \}}}} n:tjdtjdtjdtjdf\}}}} |dkrtdtj tjtjd}nt tj d|ddddt |d|ddddt |ddtj dddt |ddtj tj ddt |d dddddtjjtj|tjjtjttjjtj||||||||| tjjtjtd S( s moves window to the users current desktop removes states like maximised and fullscreen activates the window, raises it then finally! moves and resizes it R1iiiit_NET_CURRENT_DESKTOPt_NET_WM_DESKTOPt _NET_WM_STATEt_NET_ACTIVE_WINDOWN(iiii(RR5tXSyncR7RRRRRRRot fscreen_atomt maxv_atomt maxh_atomt XMapRaisedtXMoveResizeWindow( R,RRR-R.tdest_workspaceRBR/RCRD((smodules/support.pyt moveresizes": "2cCs{tdtjtjtjd}t|d|ddddt|ddtjtjddtjj tj t dS(s8 moves a window to the current desktop and maximises it RpiRqRriN( RRRRRRoRvRwR5RtR7R(R,tcdt((smodules/support.pytmaximizes  "cCs{tdtjtjtjd}t|d|ddddt|ddtjtjddtjj tj t dS(s< moves a window to the current desktop and 'unmaximises' it RpiRqRrN( RRRRRRoRvRwR5RtR7R(R,R|((smodules/support.pyt unmaximizes  "cCsRtdtjtjtjjrNtjdtjdtjdtjdfSdS(s5 gets the "work area" usually space between panels Riiii(iiii(RRRRRIR9R(((smodules/support.pyt desktop_sizes ,cCs*||d|ko)||d||kS(s6Returns True if p <---> p+dim is between a <---> a+dimi((tptpdimtatadim((smodules/support.pyt is_insidescCsEt|d|d|d|d sLt|d|d|d|d rP|S|d|ddkr|d|ddkr|S|d|dkr|d|dkr|dc|d7<|dc|d8td |}z|jjt d}Wd|j X|d}n|S( Nit?s /proc/%s/exes /proc/%s/statt it(Rt)itpythons/proc/%s/cmdline( tostreadlinktOSErrortpathtexiststopentreadtsplittreplacetclosetisabstchr(Rt_exetfRtnametcmdp((smodules/support.pytget_process_name<s,  5  cCsQtd|tjx7tdtjjD] }tj|tjkr)tSq)Wt S(s% is a window hidden ie "minimised" ? Rri( RRtXA_ATOMR RIR9Rt hidden_atomRR(R,R$((smodules/support.pytis_window_hidden]s cCsQtd|tjx7tdtjjD] }tj|tjkr)tSq)Wt S(s is a window sticky ? Rri( RRRR RIR9Rt sticky_atomRR(R,R$((smodules/support.pytis_window_stickyds cCsQtd|tjx7tdtjjD] }tj|tjkr)tSq)Wt S(s$ is a window vertically maximised ? Rri( RRRR RIR9RRvRR(R,R$((smodules/support.pyR+ks cCsQtd|tjx7tdtjjD] }tj|tjkr)tSq)Wt S(s& is a window horizontally maximised ? Rri( RRRR RIR9RRwRR(R,R$((smodules/support.pyR*rs c Cs}t|st|r!d}nd}t|}t|t|t|dt|dt|dt|dgS(s From win_id to Undo Snap Elementiiii(R+R*Rtstr(Rt is_maximizedtwin_geom((smodules/support.pytget_undo_element_from_win_idys       cCsVd}x%|D]}|dj|d7}q W|d }|jtjtj|dS(sWrite Undo Snap to DiskRt,RiN(tjoint set_stringtconst GCONF_UNDORR(t gconf_clientt undo_snap_vect undo_snap_strtelement((smodules/support.pytundo_snap_writes   c Cs{tjdtjtjBdtjdtjd|}|dkrP|j|n|jt d|j |j dS(sThe Info dialogtflagsR]tbuttonstmessage_formattInfoN( Rt MessageDialogt DIALOG_MODALtDIALOG_DESTROY_WITH_PARENTt MESSAGE_INFOt BUTTONS_OKRPtset_transient_fort set_titlet_truntdestroy(tmessageRtdialog((smodules/support.pyt dialog_infos     c Cs{tjdtjtjBdtjdtjd|}|dkrP|j|n|jt d|j |j dS(sThe Warning dialogRR]RRtWarningN( RRRRtMESSAGE_WARNINGRRPRRRRR(RRR((smodules/support.pytdialog_warnings     ($RtgobjectRt subprocessR2treR:RRRR(R0RRRVR[RoR{R}R~RRRRRRRRRR+R*RRRPRR(((smodules/support.pyts:0  " !          !    !      x-tile-2.5/modules/cons.py0000644000175200017520000004202412026045761014537 0ustar develdevel# -*- coding: UTF-8 -*- # # cons.py # # Copyright 2009-2012 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import gtk, os APP_NAME = "x-tile" VERSION = "2.5" if os.path.isdir("glade"): GLADE_PATH = os.path.join(os.getcwd(), "glade/") LOCALE_PATH = "locale/" else: GLADE_PATH = "/usr/share/x-tile/glade/" LOCALE_PATH = "/usr/share/locale/" AVAILABLE_LANGS = ['default', 'cs', 'de', 'en', 'es_AR', 'fr', 'it', 'pl', 'ru', 'zh_CN', 'zh_TW'] CMD_LINE_ACTIONS = ["z", "i", "y", "v", "h", "u", "d", "l", "r", "1", "2", "q", "g", "m", "M", "c"] OVERRIDE_1 = 0 OVERRIDE_2 = 0 X1 = 0 Y1 = 0 W1 = 10 H1 = 10 X2 = 0 Y2 = 0 W2 = 10 H2 = 10 GRID_ROWS = 2 GRID_COLS = 2 WINNAMES_BLACKLIST = ["x-nautilus-desktop", "pcmanfm"] PROCESSES_BLACKLIST = ["lxpanel"] #PROCESSES_PARENT_BLACKLIST = ["gnome-session"] STR_TRUE = "True" STR_FALSE = "False" DRAW_SCALE = 4 DRAW_RGBS = ( (1, 0, 0), # red (0, 1, 0), # green (0, 0, 1), # blue (1, 1, 0), # yellow (0, 1, 1), # cyan (1, 0, 1), # red violet (0.5, 0.5, 0.5), # grey (1, 1, 1), # white #(0, 0, 0), # black (1, 0.65, 0), # orange yellow (0.25, 1, 0), # yellow green (1, 0, 0.25), # red wine ) ICONS_SIZE = {1: gtk.ICON_SIZE_MENU, 2: gtk.ICON_SIZE_SMALL_TOOLBAR, 3: gtk.ICON_SIZE_LARGE_TOOLBAR, 4: gtk.ICON_SIZE_DND, 5: gtk.ICON_SIZE_DIALOG} ICONS_FILENAMES = ['tile-vertically.svg', 'tile-horizontally.svg', 'tile-quad.svg', 'tile-grid.svg', 'tile-custom-1-set.svg', 'tile-custom-1-exe.svg', 'tile-custom-2-set.svg', 'tile-custom-2-exe.svg', 'tile-triangle-up.svg', 'tile-triangle-down.svg', 'tile-triangle-left.svg', 'tile-triangle-right.svg', 'reload-windows-list.svg', 'maximize-checked-windows.svg', 'unmaximize-checked-windows.svg', 'close-checked-windows.svg', 'invert-tiling.svg', 'cycle-tiling.svg', 'toolbar.png', 'quit-app.svg', 'help-contents.svg', 'checkbox_checked.svg', 'checkbox_unchecked.svg'] GCONF_DIR = "/apps/x-tile" GCONF_LANG = "/apps/x-tile/language" GCONF_UNDO = "/apps/x-tile/%s/undo" GCONF_LATEST_TILING = "/apps/x-tile/%s/latest_tiling" GCONF_CUSTOM_1 = "/apps/x-tile/%s/custom" GCONF_CUSTOM_2 = "/apps/x-tile/%s/custom_2" GCONF_EXIT_AFTER_TILE = "/apps/x-tile/%s/exit_after_tile" GCONF_ONLY_CURR_DESK = "/apps/x-tile/%s/only_curr_desk" GCONF_NOT_MINIMIZED = "/apps/x-tile/%s/not_minimized" GCONF_TOOLBAR_ICON_SIZE = "/apps/x-tile/%s/toolbar_icon_size" GCONF_PROCESS_BLACKLIST = "/apps/x-tile/%s/process_blacklist" GCONF_PROCESS_WHITELIST = "/apps/x-tile/%s/process_whitelist" GCONF_WIN_SIZE_W = "/apps/x-tile/%s/win_size_w" GCONF_WIN_SIZE_H = "/apps/x-tile/%s/win_size_h" GCONF_WIN_POSITION_X = "/apps/x-tile/%s/win_position_x" GCONF_WIN_POSITION_Y = "/apps/x-tile/%s/win_position_y" GCONF_SHOW_TOOLBAR = "/apps/x-tile/%s/show_toolbar" GCONF_X1 = "/apps/x-tile/%s/x_1" GCONF_Y1 = "/apps/x-tile/%s/y_1" GCONF_W1 = "/apps/x-tile/%s/w_1" GCONF_H1 = "/apps/x-tile/%s/h_1" GCONF_X2 = "/apps/x-tile/%s/x_2" GCONF_Y2 = "/apps/x-tile/%s/y_2" GCONF_W2 = "/apps/x-tile/%s/w_2" GCONF_H2 = "/apps/x-tile/%s/h_2" GCONF_OVERRIDE_1 = "/apps/x-tile/%s/override_1" GCONF_OVERRIDE_2 = "/apps/x-tile/%s/override_2" GCONF_GRID_ROWS = "/apps/x-tile/%s/grid_rows" GCONF_GRID_COLS = "/apps/x-tile/%s/grid_cols" GCONF_SYSTRAY_ENABLE = "/apps/x-tile/%s/systray_enable" GCONF_USE_APPIND = "/apps/x-tile/%s/use_appind" GCONF_SYSTRAY_START = "/apps/x-tile/%s/systray_start" UI_INFO = """ """ def get_entries(inst): """Returns the Menu Entries Given the Class Instance""" return [ # name, stock id, label ( "FileMenu", None, _("_File") ), ( "EditMenu", None, _("_Edit") ), ( "RowMenu", None, _("_Row") ), ( "TileMenu", None, _("_Tile") ), ( "ViewMenu", None, _("_View") ), ( "HelpMenu", None, _("_Help") ), # name, stock id, label, accelerator, tooltip, callback ( "Filter", "gtk-properties", _("_Filter"), "F", _("Filter Rows"), inst.dialog_filter), ( "DefaultSel", "gtk-properties", _("Selected by _Default"), "D", _("Rows to be Selected by Default"), inst.dialog_selected_by_default), ( "Reload", "reload-windows-list", _("_Reload"), "F5", _("Reload the Windows List"), inst.reload_windows_list), ( "QuitApp", "quit-app", _("_Quit"), "Q", _("Quit the Application"), inst.quit_application), ( "ExitApp", "quit-app", _("_Exit X Tile"), "Q", _("Exit from X Tile"), inst.quit_application_totally), ( "ShowHideMainWin", "tile-quad", _("Show/Hide _X Tile"), None, _("Toggle Show/Hide X Tile"), inst.toggle_show_hide_main_window), ( "Preferences", "gtk-preferences", _("_Preferences"), "P", _("Open the Preferences Window"), inst.dialog_preferences), ( "SelectAll", "checkbox_checked", _("Select _All"), "A", _("Select All the Windows in the List"), inst.flag_all_rows), ( "DeselectAll", "checkbox_unchecked", _("Deselect A_ll"), "A", _("Deselect All the Windows in the List"), inst.unflag_all_rows), ( "Vertically", "tile-vertically", _("Tile _Vertically"), "V", _("Tile Vertically The Checked Windows"), inst.tile_vertically), ( "Horizontally", "tile-horizontally", _("Tile _Horizontally"), "H", _("Tile Horizontally The Checked Windows"), inst.tile_horizontally), ( "TriangleUp", "tile-triangle-up", _("_Triangle Up"), "Up", _("Tile Triangle Up The Checked Windows"), inst.tile_triangle_up), ( "TriangleDown", "tile-triangle-down", _("Triangle _Down"), "Down", _("Tile Triangle Down The Checked Windows"), inst.tile_triangle_down), ( "TriangleLeft", "tile-triangle-left", _("Triangle _Left"), "Left", _("Tile Triangle Left The Checked Windows"), inst.tile_triangle_left), ( "TriangleRight", "tile-triangle-right", _("Triangle _Right"), "Right", _("Tile Triangle Right The Checked Windows"), inst.tile_triangle_right), ( "Quad", "tile-quad", _("Tile _Quad"), "4", _("Tile into 4 quadrants The Checked Windows"), inst.tile_quad), ( "Grid", "tile-grid", _("Tile _Grid"), "G", _("Tile into an Arbitrary Grid The Checked Windows"), inst.dialog_grid), ( "Custom1Set", "tile-custom-1-set", _("Custom Tile 1 _Set"), "1", _("Edit Custom Tile 1 Settings"), inst.tile_custom_1_set), ( "Custom1Exe", "tile-custom-1-exe", _("Custom Tile _1 Run"), "1", _("Execute Custom Tile 1"), inst.tile_custom_1_run), ( "Custom2Set", "tile-custom-2-set", _("Custom Tile 2 S_et"), "2", _("Edit Custom Tile 2 Settings"), inst.tile_custom_2_set), ( "Custom2Exe", "tile-custom-2-exe", _("Custom Tile _2 Run"), "2", _("Execute Custom Tile 2"), inst.tile_custom_2_run), ( "UnTile", "gtk-undo", _("U_ndo Tiling"), "Z", _("Undo the Latest Tiling Operation"), inst.undo_tiling), ( "InverTile", "invert-tiling", _("_Invert Tiling Order"), "I", _("Invert the Order of the Latest Tiling Operation"), inst.invert_tiling), ( "CycleTile", "cycle-tiling", _("C_ycle Tiling Order"), "Y", _("Cycle the Order of the Latest Tiling Operation"), inst.cycle_tiling), ( "Maximize", "maximize-checked-windows", _("_Maximize Windows"), "M", _("Maximize The Checked Windows"), inst.maximize_checked_windows), ( "Unmaximize", "unmaximize-checked-windows", _("_Unmaximize Windows"), "U", _("Unmaximize The Checked Windows"), inst.unmaximize_checked_windows), ( "Close", "close-checked-windows", _("_Close Windows"), "C", _("Close The Checked Windows"), inst.close_checked_windows), ( "RowUp", "gtk-go-up", _("Move _Up"), "Up", _("Move the Selected Row Up"), inst.on_button_row_up_clicked), ( "RowDown", "gtk-go-down", _("Move _Down"), "Down", _("Move the Selected Row Down"), inst.on_button_row_down_clicked), ( "RowDelete", "gtk-remove", _("_Remove"), "Delete", _("Remove the Selected Row"), inst.on_button_row_delete_clicked), ( "ShowHideToolbar", "toolbar", _("Show/Hide _Toolbar"), None, _("Toggle Show/Hide Toolbar"), inst.show_hide_toolbar), ( "IncreaseToolbarIconsSize", "gtk-zoom-in", _("_Increase Toolbar Icons Size"), None, _("Increase the Size of the Toolbar Icons"), inst.toolbar_icons_size_increase), ( "DecreaseToolbarIconsSize", "gtk-zoom-out", _("_Decrease Toolbar Icons Size"), None, _("Decrease the Size of the Toolbar Icons"), inst.toolbar_icons_size_decrease), ( "Help", "help-contents", _("_Help"), None, _("X Tile Project Home Page"), inst.on_help_menu_item_activated), ( "About", "gtk-about", _("_About"), None, _("About X Tile"), inst.dialog_about), ( "All_About", "gtk-about", _("_About"), None, _("About X Tile"), inst.dialog_about_all), ( "All_C", "close-checked-windows", _("_Close All"), None, _("Close All Windows"), inst.close_all), ( "All_U", "unmaximize-checked-windows", _("_Unmaximize All"), None, _("Unmaximize All Windows"), inst.unmaximize_all), ( "All_M", "maximize-checked-windows", _("_Maximize All"), None, _("Maximize All Windows"), inst.maximize_all), ( "All_4", "tile-quad", _("Tile All _Quad"), None, _("Tile All Windows Quad"), inst.tile_all_quad), ( "All_TD", "tile-triangle-down", _("Tile All Triangle _Down"), None, _("Tile All Windows Triangle Down"), inst.tile_all_triangle_down), ( "All_TU", "tile-triangle-up", _("Tile All Triangle _Up"), None, _("Tile All Windows Triangle Up"), inst.tile_all_triangle_up), ( "All_TR", "tile-triangle-right", _("Tile All Triangle _Right"), None, _("Tile All Windows Triangle Right"), inst.tile_all_triangle_right), ( "All_TL", "tile-triangle-left", _("Tile All Triangle _Left"), None, _("Tile All Windows Triangle Left"), inst.tile_all_triangle_left), ( "All_C2", "tile-custom-2-exe", _("Tile All Custom _2"), None, _("Tile All Windows Custom 2"), inst.tile_all_custom_2), ( "All_C1", "tile-custom-1-exe", _("Tile All Custom _1"), None, _("Tile All Windows Custom 1"), inst.tile_all_custom_1), ( "All_G", "tile-grid", _("Tile All _Grid"), None, _("Tile All Windows Grid"), inst.tile_all_grid), ( "All_H", "tile-horizontally", _("Tile All _Horizontally"), None, _("Tile All Windows Horizontally"), inst.tile_all_horizontally), ( "All_V", "tile-vertically", _("Tile All _Vertically"), None, _("Tile All Windows Vertically"), inst.tile_all_vertically), ( "All_Invert", "invert-tiling", _("_Invert Tiling Order"), None, _("Invert the Order of the Latest Tiling Operation"), inst.invert_tiling_all), ( "All_Undo", "gtk-undo", _("U_ndo Tiling"), None, _("Undo the Latest Tiling Operation"), inst.undo_tiling_all), ( "All_Cycle", "cycle-tiling", _("C_ycle Tiling Order"), None, _("Cycle the Order of the Latest Tiling Operation"), inst.cycle_tiling_all), ] HELP_TEXT = """ NAME X Tile - Tile the Windows upon your Desktop SYNOPSIS x-tile OPTION DESCRIPTION This manual page briefly documents the command line arguments OPTIONS w => open the x-tile main window without using the panel z => undo the latest tiling operation v => tile all opened windows vertically h => tile all opened windows horizontally u => tile all opened windows triangle-up d => tile all opened windows triangle-down l => tile all opened windows triangle-left r => tile all opened windows triangle-right q => quad tile all opened windows g = g 0 = g 0 0 => tile all opened windows in a grid with automatic rows and columns g rows = g rows 0 => tile all opened windows in a grid with given rows and automatic columns g 0 cols => tile all opened windows in a grid with automatic rows and given columns g rows cols => tile all opened windows in a grid with given rows and columns 1 => custom tile 1 all opened windows 2 => custom tile 2 all opened windows i => invert the order of the latest tiling operation y => cycle the order of the latest tiling operation m => maximize all opened windows M => unmaximize all opened windows c => close all opened windows SEE ALSO http://www.giuspen.com/x-tile AUTHORS Giuseppe Penone (aka giuspen) and Chris Camacho (aka Chris_C) """ x-tile-2.5/modules/tilings.py0000644000175200017520000002437012000777537015257 0ustar develdevel# -*- coding: UTF-8 -*- # # core.py # # Copyright 2009-2012 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import support, cons def tile_vertically(windows_list, monitors_areas, dws): """Tile the Checked Windows Vertically""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_vertically_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_vertically_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_horizontally(windows_list, monitors_areas, dws): """Tile the Checked Windows Horizontally""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_horizontally_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_horizontally_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_quad(windows_list, monitors_areas, dws): """Tile the Given Windows Quad""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_quad_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_quad_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_grid(rows, cols, windows_list, monitors_areas, dws): """Tile the Given Windows in a rows by cols grid""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_grid_on_area(rows, cols, windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_grid_on_area(rows, cols, windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_triangle_up(windows_list, monitors_areas, dws): """Tile 3 Windows in Triangle Up Scheme""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_triangle_up_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_triangle_up_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_triangle_down(windows_list, monitors_areas, dws): """Tile 3 Windows in Triangle Up Scheme""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_triangle_down_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_triangle_down_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_triangle_left(windows_list, monitors_areas, dws): """Tile 3 Windows in Triangle Up Scheme""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_triangle_left_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_triangle_left_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_triangle_right(windows_list, monitors_areas, dws): """Tile 3 Windows in Triangle Up Scheme""" number_of_windows = len(windows_list[0]) number_of_windows2 = len(windows_list[1]) if number_of_windows >= 2: tile_triangle_right_on_area(windows_list[0], monitors_areas[0][0], monitors_areas[0][1], monitors_areas[0][2], monitors_areas[0][3], dws) if number_of_windows2 >= 2: tile_triangle_right_on_area(windows_list[1], monitors_areas[1][0], monitors_areas[1][1], monitors_areas[1][2], monitors_areas[1][3], dws) def tile_vertically_on_area(windows_list, x, y, w, h, dws): """Tile the Given Windows Vertically on the Given Area""" step = (h / len(windows_list)) win_num = 0 for checked_window in windows_list: support.moveresize(checked_window, x, y+win_num*step, w , step, dws) win_num += 1 def tile_horizontally_on_area(windows_list, x, y, w, h, dws): """Tile the Given Windows Horizontally on the Given Area""" step = (w / len(windows_list)) win_num = 0 for checked_window in windows_list: support.moveresize(checked_window, x + win_num*step, y, step, h, dws) win_num += 1 def tile_quad_on_area(windows_list, x, y, w, h, dws): """Tile the Given Windows Quad on the Given Area""" if len(windows_list) > 4: windows_list = windows_list[0:4] for index,checked_window in enumerate(windows_list): if index in [1, 3]: xo = w/2 else: xo = 0 if index > 1: yo = h/2 else: yo = 0 support.moveresize(checked_window, (x + xo), (y + yo), w/2 , h/2, dws) def tile_grid_on_area(rows, cols, windows_list, x, y, w, h, dws): """Tile the Given Windows Grid on the Given Area""" if len(windows_list) > rows*cols: windows_list = windows_list[0:rows*cols] step_h = (h / rows) step_w = (w / cols) for index,checked_window in enumerate(windows_list): xo = step_w*(index%cols) yo = step_h*(index/cols) support.moveresize(checked_window, x+xo, y+yo, step_w , step_h, dws) def tile_triangle_up_on_area(windows_list, x, y, w, h, dws): """Tile 3 Windows in Triangle Up Scheme on the Given Area""" if len(windows_list) > 3: windows_list = windows_list[0:3] for index,checked_window in enumerate(windows_list): if index == 2: xo = w/2 else: xo = 0 if index > 0: yo = h/2 else: yo = 0 if index == 0: width = w else: width = w/2 support.moveresize(checked_window, (x + xo), (y + yo), width, h/2, dws) def tile_triangle_down_on_area(windows_list, x, y, w, h, dws): """Tile 3 Windows in Triangle Down Scheme on the Given Area""" if len(windows_list) > 3: windows_list = windows_list[0:3] for index,checked_window in enumerate(windows_list): if index == 1: xo = w/2 else: xo = 0 if index == 2: yo = h/2 else: yo = 0 if index == 2: width = w else: width = w/2 support.moveresize(checked_window, (x + xo), (y + yo), width, h/2, dws) def tile_triangle_left_on_area(windows_list, x, y, w, h, dws): """Tile 3 Windows in Triangle Left Scheme on the Given Area""" if len(windows_list) > 3: windows_list = windows_list[0:3] for index,checked_window in enumerate(windows_list): if index > 0: xo = w/2 else: xo = 0 if index == 2: yo = h/2 else: yo = 0 if index == 0: height = h else: height = h/2 support.moveresize(checked_window, (x + xo), (y + yo), w/2 , height, dws) def tile_triangle_right_on_area(windows_list, x, y, w, h, dws): """Tile 3 Windows in Triangle Right Scheme on the Given Area""" if len(windows_list) > 3: windows_list = windows_list[0:3] for index,checked_window in enumerate(windows_list): if index == 1: xo = w/2 else: xo = 0 if index == 2: yo = h/2 else: yo = 0 if index == 1: height = h else: height = h/2 support.moveresize(checked_window, (x + xo), (y + yo), w/2 , height, dws) x-tile-2.5/modules/support.py0000644000175200017520000004017412026045761015315 0ustar develdevel# -*- coding: UTF-8 -*- # # support.py # # Copyright 2009-2012 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import gtk, gobject import os, subprocess, ctypes, re import globs, cons def get_desktop_width_n_height(): """Get Desktop Width and Height""" get_property("_NET_WORKAREA", glob.root, glob.XA_CARDINAL) if bool(glob.ret_pointer): return glob.ret_pointer[2], glob.ret_pointer[3] print "The WM does not set _NET_WORKAREA properly, x-tile may not work properly" screen = gtk.gdk.screen_get_default() rect = screen.get_monitor_geometry(0) return rect.width, rect.height def is_window_in_curr_viewport(desktop_width, desktop_height, win_id): """Check the Window to be in the Current Viewport assuming Compiz is Running""" x, y, width, height, root = get_geom(win_id) if x < 0 or x >= desktop_width or y < 0 or y >= desktop_height: return False else: return True def is_compiz_running(): """Return True if Compiz is running""" get_property("_NET_SUPPORTING_WM_CHECK", glob.root, glob.XA_WINDOW) if bool(glob.ret_pointer) == False: get_property("_NET_SUPPORTING_WM_CHECK", glob.root, glob.XA_CARDINAL) if bool(glob.ret_pointer) == False: print "no 1!" return False else: sup_window = glob.ret_pointer[0] else: sup_window = glob.ret_pointer[0] get_property("_NET_WM_NAME", sup_window, glob.str_atom) if bool(glob.ret_pointer) == False: get_property("_NET_WM_NAME", sup_window, glob.XA_STRING) if bool(glob.ret_pointer) == False: print "no 2!" return False buff = "" keep_going = True i = 0 while keep_going: eightchars = glob.ret_pointer[i] for j in range(8): curr_char = ((eightchars >> 8*j) & 0xff) if curr_char == 0: keep_going = False break buff += "%c" % curr_char i += 1 print "WM =", buff if buff == "Compiz": return True return False def is_candidate_compiz_desktop(win): """Is this a candidate Compiz Desktop window""" if not glob.is_compiz_running: return False x, y, w, h, r = get_geom(win) if w > glob.monitors_areas[0][2] \ and h > glob.monitors_areas[0][3] \ and not is_window_Hmax(win) \ and not is_window_Vmax(win): return True return False def get_geom(win): """ Status XQueryTree(display, w, root_return, parent_return, children_return, nchildren_return) Display *display; Window w; Window *root_return; Window *parent_return; Window **children_return; unsigned int *nchildren_return; """ root_return = ctypes.c_ulong() parent_return = ctypes.c_ulong() children_return = ctypes.c_ulong() nchildren_return = ctypes.c_uint() glob.x11.XQueryTree(glob.disp,win,ctypes.byref(root_return),ctypes.byref(parent_return), ctypes.byref(children_return),ctypes.byref(nchildren_return)) # undecorated windows have root as parent... if (glob.root!=parent_return.value): win=parent_return xwa = globs.XWindowAttributes() glob.x11.XGetWindowAttributes(glob.disp, win,ctypes.byref(xwa)) get_property("_NET_FRAME_EXTENTS",win,glob.XA_CARDINAL) if bool(glob.ret_pointer)==False: l,r,t,b = (0,0,0,0) else: l,r,t,b = glob.ret_pointer[0], glob.ret_pointer[1], glob.ret_pointer[2], glob.ret_pointer[3] return xwa.x-l,xwa.y-t,xwa.width+(l+r),xwa.height+(t+b),xwa.root def get_property(prop_name, window, data_type): #128*256 longs (128kb) should be good enough... """ gets an x property puts in global return variables property name, window, return data type atom """ prop_atom = glob.x11.XInternAtom(glob.disp, prop_name, False) glob.x11.XGetWindowProperty(glob.disp, window, prop_atom, 0, 128*256, False, data_type, ctypes.byref(glob.ret_type), ctypes.byref(glob.ret_format), ctypes.byref(glob.num_items), ctypes.byref(glob.bytes_after), ctypes.byref(glob.ret_pointer)) def get_icon(win): """ this returns a gtk.gdk.pixbuf of the windows icon converts argb into rgba in the process """ get_property("_NET_WM_ICON", win, glob.XA_CARDINAL) if not glob.ret_pointer : return None w = glob.ret_pointer[0] h = glob.ret_pointer[1] s = w*h buff = "" i = 0 while i> 16) & 0xff)) buff = buff + ("%c" % ((argb >> 8) & 0xff)) buff = buff + ("%c" % (argb & 0xff)) buff = buff + ("%c" % ((argb >> 24) & 0xff)) pxbuf = gtk.gdk.pixbuf_new_from_data(buff, gtk.gdk.COLORSPACE_RGB, True, 8, w, h, w*4) return pxbuf def get_min_size(win): """ returns the minimum window size and its resize increment """ supplied_return = ctypes.c_long(0) glob.x11.XGetWMNormalHints(glob.disp, win, ctypes.byref(glob.size_hints_return), ctypes.byref(supplied_return)) def client_msg(win, msg, d0, d1, d2, d3, d4): """ sends a client message event used to change window properties """ event = globs.XClientMessageEvent() event.type = 33 #ClientMessage event.serial = 0 event.send = True event.msgtype = glob.x11.XInternAtom(glob.disp, msg, False) event.window = win event.format = 32 event.data0 = d0 event.data1 = d1 event.data2 = d2 event.data3 = d3 event.data4 = d4 # mask is SubstructureRedirectMask | SubstructureNotifyMask (20&19) if not glob.x11.XSendEvent(glob.disp,glob.root,False, 1<<20 | 1<<19,ctypes.byref(event)): print "can't send message ", msg # DEBUG def moveresize(win, x, y, w, h, dest_workspace): """ moves window to the users current desktop removes states like maximised and fullscreen activates the window, raises it then finally! moves and resizes it """ glob.x11.XSync(glob.disp, False) get_property("_NET_FRAME_EXTENTS", win, glob.XA_CARDINAL) if bool(glob.ret_pointer) == False: l,r,t,b = (0, 0, 0, 0) else: l,r,t,b = glob.ret_pointer[0], glob.ret_pointer[1], glob.ret_pointer[2], glob.ret_pointer[3] if dest_workspace < 0: get_property("_NET_CURRENT_DESKTOP", glob.root, glob.XA_CARDINAL) dest_workspace = glob.ret_pointer[0] ### # move myself to desktop client_msg(glob.root, "_NET_CURRENT_DESKTOP", dest_workspace, 0, 0, 0, 0) # move window to desktop client_msg(win, "_NET_WM_DESKTOP", dest_workspace, 0, 0, 0, 0) ### client_msg(win,"_NET_WM_STATE", 0, glob.fscreen_atom, 0, 0, 0) client_msg(win,"_NET_WM_STATE", 0, glob.maxv_atom,glob.maxh_atom, 0, 0) client_msg(win,"_NET_ACTIVE_WINDOW", 0, 0, 0, 0, 0) glob.x11.XMapRaised(glob.disp, win) glob.x11.XSync(glob.disp, False) glob.x11.XMoveResizeWindow(glob.disp, win, x, y, w-(l+r), h-(t+b)) # only interior size needs deco subtracting not position glob.x11.XSync(glob.disp, False) def maximize(win): """ moves a window to the current desktop and maximises it """ get_property("_NET_CURRENT_DESKTOP",glob.root,glob.XA_CARDINAL) cdt = glob.ret_pointer[0] client_msg(win, "_NET_WM_DESKTOP", cdt, 0, 0, 0, 0) client_msg(win, "_NET_WM_STATE", 1, glob.maxv_atom, glob.maxh_atom, 0, 0) # 1 = add glob.x11.XSync(glob.disp, False) def unmaximize(win): """ moves a window to the current desktop and 'unmaximises' it """ get_property("_NET_CURRENT_DESKTOP", glob.root, glob.XA_CARDINAL) cdt = glob.ret_pointer[0] client_msg(win, "_NET_WM_DESKTOP", cdt, 0, 0, 0, 0) client_msg(win,"_NET_WM_STATE", 0, glob.maxv_atom, glob.maxh_atom, 0, 0) # 0 = remove glob.x11.XSync(glob.disp, False) def desktop_size(): """ gets the "work area" usually space between panels """ get_property("_NET_WORKAREA", glob.root, glob.XA_CARDINAL) if glob.num_items.value: return glob.ret_pointer[0], glob.ret_pointer[1], glob.ret_pointer[2], glob.ret_pointer[3] return 0,0,0,0 def is_inside(p, pdim, a, adim): """Returns True if p <---> p+dim is between a <---> a+dim""" return ( (p+pdim/2 > a) and (p+pdim/2 < a+adim) ) def subtract_areas(white_area, black_area): """Returns the white_area without the black_area""" #print "white_area", white_area #print "black_area", black_area if not is_inside(black_area[0], black_area[2], white_area[0], white_area[2])\ or not is_inside(black_area[1], black_area[3], white_area[1], white_area[3]): #print "not is_inside" return white_area # ignore the desktop strut if black_area[2] > white_area[2]/2 and black_area[3] > white_area[3]/2: #print "strut ignored" return white_area # we have to understand whether the panel is top, bottom, left or right if black_area[2] < black_area[3]: # width < height => this is a left or right panel if black_area[0] == white_area[0]: #print "left panel" white_area[0] += black_area[2] white_area[2] -= black_area[2] else: #print "right panel" white_area[2] -= black_area[2] else: # width > height => this is a top or bottom panel if black_area[1] == white_area[1]: #print "top panel" white_area[1] += black_area[3] white_area[3] -= black_area[3] else: #print "bottom panel" white_area[3] -= black_area[3] return white_area def translate_coords(win, x, y): """ Bool XTranslateCoordinates(display, src_w, dest_w, src_x, src_y, dest_x_return, dest_y_return, child_return) Display *display; Window src_w, dest_w; int src_x, src_y; int *dest_x_return, *dest_y_return; Window *child_return; """ child_return = ctypes.c_ulong() dest_x_return = ctypes.c_int() dest_y_return = ctypes.c_int() glob.x11.XTranslateCoordinates(glob.disp, win, glob.root, x, y, ctypes.byref(dest_x_return), ctypes.byref(dest_y_return), ctypes.byref(child_return)) return dest_x_return.value, dest_y_return.value def enumerate_strut_windows(display, rootwindow): """Retrieve the Strut Windows (the panels)""" strut_windows = [] rootr = ctypes.c_ulong() parent = ctypes.c_ulong() children = ctypes.pointer(ctypes.c_ulong()) noOfChildren = ctypes.c_int() x_return = ctypes.c_int() y_return = ctypes.c_int() width_return = ctypes.c_int() height_return = ctypes.c_int() dummy = ctypes.c_int() get_property("_NET_WM_STRUT_PARTIAL", rootwindow, glob.XA_CARDINAL) if glob.num_items.value: glob.x11.XGetGeometry(display, rootwindow, ctypes.byref(dummy), ctypes.byref(x_return), ctypes.byref(y_return), ctypes.byref(width_return), ctypes.byref(height_return), ctypes.byref(dummy), ctypes.byref(dummy) ) struct_origin = translate_coords(rootwindow, x_return.value, y_return.value) strut_windows.append([struct_origin[0], struct_origin[1], width_return.value, height_return.value]) status = glob.x11.XQueryTree(display, rootwindow, ctypes.byref(rootr), ctypes.byref(parent), ctypes.byref(children), ctypes.byref(noOfChildren) ) if noOfChildren.value: for i in range(0, noOfChildren.value): ptr = ctypes.cast(children[i], ctypes.POINTER(ctypes.c_uint) ) strut_windows.extend(enumerate_strut_windows(display, children[i])) glob.x11.XFree(children) return strut_windows def get_root_screen_index(): """Get Screen Index""" xwa = globs.XWindowAttributes() glob.x11.XGetWindowAttributes(glob.disp, glob.root,ctypes.byref(xwa)) screen_index = glob.x11.XScreenNumberOfScreen(xwa.screen) return screen_index def get_process_name(p): # determine executable # we were only using just this routine from psutils so I # "borrowed" ahem it.... if p == 0: return "?" try: _exe = os.readlink("/proc/%s/exe" % p) except OSError: if not os.path.exists("/proc/%s/stat" % p): return "?" f = open("/proc/%s/stat" % p) try: _exe = f.read().split(' ')[1].replace('(', '').replace(')', '') finally: f.close() # determine name and path if os.path.isabs(_exe): path, name = os.path.split(_exe) else: path = '' name = _exe if name[0:6]=="python": f=open("/proc/%s/cmdline" % p) try: cmdp=f.read().split(chr(0)) finally: f.close() name=cmdp[1] return name # these could be replaced by one general purpose routine but make # code eleswhere easier to read... def is_window_hidden(win): """ is a window hidden ie "minimised" ? """ get_property("_NET_WM_STATE", win, glob.XA_ATOM) for i in range(0, glob.num_items.value): if glob.ret_pointer[i] == glob.hidden_atom: return True return False def is_window_sticky(win): """ is a window sticky ? """ get_property("_NET_WM_STATE", win, glob.XA_ATOM) for i in range(0, glob.num_items.value): if glob.ret_pointer[i] == glob.sticky_atom: return True return False def is_window_Vmax(win): """ is a window vertically maximised ? """ get_property("_NET_WM_STATE", win, glob.XA_ATOM) for i in range(0, glob.num_items.value): if glob.ret_pointer[i] == glob.maxv_atom: return True return False def is_window_Hmax(win): """ is a window horizontally maximised ? """ get_property("_NET_WM_STATE", win, glob.XA_ATOM) for i in range(0, glob.num_items.value): if glob.ret_pointer[i] == glob.maxh_atom: return True return False def get_undo_element_from_win_id(win_id): """From win_id to Undo Snap Element""" if is_window_Vmax(win_id) or is_window_Hmax(win_id): is_maximized = 1 else: is_maximized = 0 win_geom = get_geom(win_id) return [str(win_id), str(is_maximized), str(win_geom[0]), str(win_geom[1]), str(win_geom[2]), str(win_geom[3])] def undo_snap_write(gconf_client, undo_snap_vec): """Write Undo Snap to Disk""" undo_snap_str = "" for element in undo_snap_vec: undo_snap_str += ",".join(element) + " " undo_snap_str = undo_snap_str[:-1] gconf_client.set_string(cons.GCONF_UNDO % glob.screen_index, undo_snap_str) def dialog_info(message, parent=None): """The Info dialog""" dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL|gtk.DIALOG_DESTROY_WITH_PARENT, type=gtk.MESSAGE_INFO, buttons=gtk.BUTTONS_OK, message_format=message) if parent != None: dialog.set_transient_for(parent) dialog.set_title(_("Info")) dialog.run() dialog.destroy() def dialog_warning(message, parent=None): """The Warning dialog""" dialog = gtk.MessageDialog(flags=gtk.DIALOG_MODAL|gtk.DIALOG_DESTROY_WITH_PARENT, type=gtk.MESSAGE_WARNING, buttons=gtk.BUTTONS_OK, message_format=message) if parent != None: dialog.set_transient_for(parent) dialog.set_title(_("Warning")) dialog.run() dialog.destroy() x-tile-2.5/modules/globs.py0000644000175200017520000001601012023373714014676 0ustar develdevel# -*- coding: UTF-8 -*- # # globs.py # # Copyright 2009-2012 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import gtk import ctypes, ctypes.util import cons, support, core class XSizeHints(ctypes.Structure): """ XSizeHints structure (xlib) """ _fields_ = [("flags",ctypes.c_long), ("x",ctypes.c_int), # Obsolete ("y",ctypes.c_int), # Obsolete ("width",ctypes.c_int), # Obsolete ("height",ctypes.c_int), # Obsolete ("min_width",ctypes.c_int), ("min_height",ctypes.c_int), ("max_width",ctypes.c_int), ("max_height",ctypes.c_int), ("width_inc",ctypes.c_int), ("height_inc",ctypes.c_int), ("min_asp_width",ctypes.c_int), ("min_asp_height",ctypes.c_int), ("max_asp_width",ctypes.c_int), ("max_asp_height",ctypes.c_int), ("base_width",ctypes.c_int), ("base_height",ctypes.c_int), ("win_gravity",ctypes.c_int)] class XWindowAttributes(ctypes.Structure): """ XWindowAttributes structure (xlib) """ _fields_ = [ ("x", ctypes.c_int32), ("y", ctypes.c_int32), ("width", ctypes.c_int32), ("height", ctypes.c_int32), ("border_width", ctypes.c_int32), ("depth", ctypes.c_int32), ("visual", ctypes.c_ulong), ("root", ctypes.c_ulong), ("class", ctypes.c_int32), ("bit_gravity", ctypes.c_int32), ("win_gravity", ctypes.c_int32), ("backing_store", ctypes.c_int32), ("backing_planes", ctypes.c_ulong), ("backing_pixel", ctypes.c_ulong), ("save_under", ctypes.c_int32), ("colourmap", ctypes.c_ulong), ("mapinstalled", ctypes.c_uint32), ("map_state", ctypes.c_uint32), ("all_event_masks", ctypes.c_ulong), ("your_event_mask", ctypes.c_ulong), ("do_not_propagate_mask", ctypes.c_ulong), ("override_redirect", ctypes.c_int32), ("screen", ctypes.c_ulong) ] class XClientMessageEvent(ctypes.Structure): """ XClientMessageEvent structure (xlib) """ _fields_ = [("type", ctypes.c_int), ("serial", ctypes.c_long), ("send", ctypes.c_byte), ("display",ctypes.c_long), ("window",ctypes.c_long), ("msgtype",ctypes.c_long), ("format",ctypes.c_int), ("data0",ctypes.c_long), ("data1",ctypes.c_long), ("data2",ctypes.c_long), ("data3",ctypes.c_long), ("data4",ctypes.c_long)] class GlobalsObject(object): """Global Variables""" def __init__(self): """Instantiate global vars""" support.glob = self # x11 reference to xlib library display and root window globals self.x11 = ctypes.CDLL(ctypes.util.find_library("X11")) self.disp = self.x11.XOpenDisplay(0) self.root = self.x11.XDefaultRootWindow(self.disp) # property atoms for moveresize # assigned once here so they are not recreated # every time moveresize is called self.fscreen_atom = self.x11.XInternAtom(self.disp, "_NET_WM_STATE_FULLSCREEN", False) self.maxv_atom = self.x11.XInternAtom(self.disp, "_NET_WM_STATE_MAXIMIZED_VERT", False) self.maxh_atom = self.x11.XInternAtom(self.disp, "_NET_WM_STATE_MAXIMIZED_HORZ", False) self.hidden_atom = self.x11.XInternAtom(self.disp, "_NET_WM_STATE_HIDDEN", False) self.sticky_atom = self.x11.XInternAtom(self.disp, "_NET_WM_STATE_STICKY", False) self.str_atom = self.x11.XInternAtom(self.disp, "UTF8_STRING", False) # GLOBAL returns for getwindowproperty self.ret_type = ctypes.c_long() self.ret_format = ctypes.c_long() self.num_items = ctypes.c_long() self.bytes_after = ctypes.c_long() self.ret_pointer = ctypes.pointer(ctypes.c_long()) # xlib global "defines" for some standard atoms self.XA_CARDINAL = 6 self.XA_WINDOW = 33 self.XA_STRING = 31 self.XA_ATOM = 4 # GLOBAL size hints return self.size_hints_return = XSizeHints() self.screen_index = support.get_root_screen_index() self.str2_atom = self.x11.XInternAtom(self.disp, "STRING", False) self.num_monitors = gtk.gdk.screen_get_default().get_n_monitors() self.is_compiz_running = support.is_compiz_running() self.desktop_width, self.desktop_height = support.get_desktop_width_n_height() def read_monitors_areas(self): """Read Monitor(s) Area(s)""" strut_windows = support.enumerate_strut_windows(self.disp, self.root) #print strut_windows screen = gtk.gdk.screen_get_default() self.num_monitors = screen.get_n_monitors() self.monitors_areas = [] drawing_area_size = [0, 0] for num_monitor in range(self.num_monitors): rect = screen.get_monitor_geometry(num_monitor) self.monitors_areas.append([rect.x, rect.y, rect.width, rect.height]) if rect.x + rect.width > drawing_area_size[0]: drawing_area_size[0] = rect.x + rect.width if rect.y + rect.height > drawing_area_size[1]: drawing_area_size[1] = rect.y + rect.height for strut_win in strut_windows: self.monitors_areas[-1] = support.subtract_areas(self.monitors_areas[-1], strut_win) #print self.monitors_areas self.drawing_rect = gtk.gdk.Rectangle(0, 0, drawing_area_size[0]/cons.DRAW_SCALE, drawing_area_size[1]/cons.DRAW_SCALE) x-tile-2.5/modules/globs.pyc0000644000175200017520000001167512026046114015047 0ustar develdevel MPc@sddlZddlZddlZddlZddlZddlZdejfdYZdejfdYZdejfdYZ de fd YZ dS( iNt XSizeHintscBseZdZdejfdejfdejfdejfdejfdejfdejfdejfd ejfd ejfd ejfd ejfd ejfdejfdejfdejfdejfdejfgZRS(s XSizeHints structure (xlib) tflagstxtytwidththeightt min_widtht min_heightt max_widtht max_heightt width_inct height_inct min_asp_widthtmin_asp_heightt max_asp_widthtmax_asp_heightt base_widtht base_heightt win_gravity(t__name__t __module__t__doc__tctypestc_longtc_intt_fields_(((smodules/globs.pyR s&                 tXWindowAttributescBs(eZdZdejfdejfdejfdejfdejfdejfdejfdejfd ejfd ejfd ejfd ejfd ejfdejfdejfdejfdejfdejfdejfdejfdejfdejfdejfgZRS(s$ XWindowAttributes structure (xlib) RRRRt border_widthtdepthtvisualtroottclasst bit_gravityRt backing_storetbacking_planest backing_pixelt save_undert colourmapt mapinstalledt map_statetall_event_maskstyour_event_masktdo_not_propagate_masktoverride_redirecttscreen(RRRRtc_int32tc_ulongtc_uint32R(((smodules/globs.pyR5s0                      tXClientMessageEventc BseZdZdejfdejfdejfdejfdejfdejfdejfdejfd ejfd ejfd ejfd ejfg ZRS( s& XClientMessageEvent structure (xlib) ttypetserialtsendtdisplaytwindowtmsgtypetformattdata0tdata1tdata2tdata3tdata4(RRRRRRtc_byteR(((smodules/globs.pyR0Os           t GlobalsObjectcBs eZdZdZdZRS(sGlobal VariablescCs|t_tjtjjd|_|jjd|_|jj |j|_ |jj |jdt |_ |jj |jdt |_|jj |jdt |_|jj |jdt |_|jj |jdt |_|jj |jdt |_tj|_tj|_tj|_tj|_tjtj|_d |_d |_d |_d |_t|_tj |_!|jj |jd t |_"t#j$j%j&|_'tj(|_(tj)\|_*|_+dS(sInstantiate global varstX11it_NET_WM_STATE_FULLSCREENt_NET_WM_STATE_MAXIMIZED_VERTt_NET_WM_STATE_MAXIMIZED_HORZt_NET_WM_STATE_HIDDENt_NET_WM_STATE_STICKYt UTF8_STRINGii!iitSTRINGN(,tsupporttglobRtCDLLtutilt find_librarytx11t XOpenDisplaytdisptXDefaultRootWindowRt XInternAtomtFalset fscreen_atomt maxv_atomt maxh_atomt hidden_atomt sticky_atomtstr_atomRtret_typet ret_formatt num_itemst bytes_aftertpointert ret_pointert XA_CARDINALt XA_WINDOWt XA_STRINGtXA_ATOMRtsize_hints_returntget_root_screen_indext screen_indext str2_atomtgtktgdktscreen_get_defaulttget_n_monitorst num_monitorstis_compiz_runningtget_desktop_width_n_heightt desktop_widthtdesktop_height(tself((smodules/globs.pyt__init__bs2      cCsgtj|j|j}tjj}|j|_g|_ ddg}xt |jD]}|j |}|j j |j |j|j|jg|j |j|dkr|j |j|d_s #( RfRt ctypes.utilRxRGtcoret StructureRRR0tobjectR>(((smodules/globs.pyts $x-tile-2.5/modules/tilings.pyc0000644000175200017520000001630012001533666015406 0ustar develdevel _Pc@sddlZddlZdZdZdZdZdZdZdZd Z d Z d Z d Z d Z dZdZdZdZdS(iNcCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s#Tile the Checked Windows VerticallyiiiiN(tlenttile_vertically_on_area(t windows_listtmonitors_areastdwstnumber_of_windowstnumber_of_windows2((smodules/tilings.pyttile_verticallys     cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s%Tile the Checked Windows HorizontallyiiiiN(Rttile_horizontally_on_area(RRRRR((smodules/tilings.pyttile_horizontally-s     cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(sTile the Given Windows QuadiiiiN(Rttile_quad_on_area(RRRRR((smodules/tilings.pyt tile_quad<s     c Cst|d}t|d}|dkrrt|||d|dd|dd|dd|dd|n|dkrt|||d|dd|dd|dd|dd|ndS(s-Tile the Given Windows in a rows by cols gridiiiiN(Rttile_grid_on_area(trowstcolsRRRRR((smodules/tilings.pyt tile_gridKs   cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s$Tile 3 Windows in Triangle Up SchemeiiiiN(Rttile_triangle_up_on_area(RRRRR((smodules/tilings.pyttile_triangle_upZs     cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s$Tile 3 Windows in Triangle Up SchemeiiiiN(Rttile_triangle_down_on_area(RRRRR((smodules/tilings.pyttile_triangle_downis     cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s$Tile 3 Windows in Triangle Up SchemeiiiiN(Rttile_triangle_left_on_area(RRRRR((smodules/tilings.pyttile_triangle_leftxs     cCst|d}t|d}|dkrlt|d|dd|dd|dd|dd|n|dkrt|d|dd|dd|dd|dd|ndS(s$Tile 3 Windows in Triangle Up SchemeiiiiN(Rttile_triangle_right_on_area(RRRRR((smodules/tilings.pyttile_triangle_rights     c CsY|t|}d}x<|D]4}tj|||||||||d7}qWdS(s3Tile the Given Windows Vertically on the Given AreaiiN(Rtsupportt moveresize( RtxtytwthRtsteptwin_numtchecked_window((smodules/tilings.pyRs  $c CsY|t|}d}x<|D]4}tj|||||||||d7}qWdS(s5Tile the Given Windows Horizontally on the Given AreaiiN(RRR( RRRRRRRRR ((smodules/tilings.pyRs  $c Cst|dkr"|dd!}nxt|D]v\}}|dkrT|d}nd}|dkrs|d} nd} tj||||| |d|d|q/WdS(s-Tile the Given Windows Quad on the Given AreaiiiiiN(ii(Rt enumerateRR( RRRRRRtindexR txotyo((smodules/tilings.pyR s  cCst|||kr*|d||!}n||}||} xZt|D]L\} } | | |} || |} tj| || || | ||qKWdS(s-Tile the Given Windows Grid on the Given AreaiN(RR!RR(R RRRRRRRtstep_htstep_wR"R R#R$((smodules/tilings.pyR s  c Cst|dkr"|dd!}nxt|D]\}}|dkrT|d}nd}|dkrs|d} nd} |dkr|} n |d} tj||||| | |d|q/WdS(s6Tile 3 Windows in Triangle Up Scheme on the Given AreaiiiN(RR!RR( RRRRRRR"R R#R$twidth((smodules/tilings.pyRs    c Cst|dkr"|dd!}nxt|D]\}}|dkrT|d}nd}|dkrs|d} nd} |dkr|} n |d} tj||||| | |d|q/WdS(s8Tile 3 Windows in Triangle Down Scheme on the Given AreaiiiiN(RR!RR( RRRRRRR"R R#R$R'((smodules/tilings.pyRs    c Cst|dkr"|dd!}nxt|D]\}}|dkrT|d}nd}|dkrs|d} nd} |dkr|} n |d} tj||||| |d| |q/WdS(s8Tile 3 Windows in Triangle Left Scheme on the Given AreaiiiN(RR!RR( RRRRRRR"R R#R$theight((smodules/tilings.pyRs    c Cst|dkr"|dd!}nxt|D]\}}|dkrT|d}nd}|dkrs|d} nd} |dkr|} n |d} tj||||| |d| |q/WdS(s9Tile 3 Windows in Triangle Right Scheme on the Given AreaiiiiN(RR!RR( RRRRRRR"R R#R$R(((smodules/tilings.pyRs    (RtconsRR R RRRRRRRR R RRRR(((smodules/tilings.pyts            x-tile-2.5/modules/cons.pyc0000644000175200017520000004215712026046114014702 0ustar develdevel KXPc@sddlZddlZdZdZejjdrZejjejdZdZ n dZdZ d d d d d ddddddg Z ddddddddddddd d!d"d#gZ d$Z d$Z d$Zd$Zd%Zd%Zd$Zd$Zd%Zd%Zd&Zd&Zd'd(gZd)gZd*Zd+Zd,Zdmdndodpdqdrdsdtdudvdwf Ziejd-6ejd&6ej d16ej!d,6ej"d26Z#d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIgZ$dJZ%dKZ&dLZ'dMZ(dNZ)dOZ*dPZ+dQZ,dRZ-dSZ.dTZ/dUZ0dVZ1dWZ2dXZ3dYZ4dZZ5d[Z6d\Z7d]Z8d^Z9d_Z:d`Z;daZ<dbZ=dcZ>ddZ?deZ@dfZAdgZBdhZCdiZDdjZEdkZFdlZGdS(xiNsx-tiles2.5tgladesglade/slocale/s/usr/share/x-tile/glade/s/usr/share/locale/tdefaulttcstdetentes_ARtfrtittpltrutzh_CNtzh_TWtztitytvthtutdtltrt1t2tqtgtmtMtcii isx-nautilus-desktoptpcmanfmtlxpaneltTruetFalseiig?g?g?iistile-vertically.svgstile-horizontally.svgs tile-quad.svgs tile-grid.svgstile-custom-1-set.svgstile-custom-1-exe.svgstile-custom-2-set.svgstile-custom-2-exe.svgstile-triangle-up.svgstile-triangle-down.svgstile-triangle-left.svgstile-triangle-right.svgsreload-windows-list.svgsmaximize-checked-windows.svgsunmaximize-checked-windows.svgsclose-checked-windows.svgsinvert-tiling.svgscycle-tiling.svgs toolbar.pngs quit-app.svgshelp-contents.svgscheckbox_checked.svgscheckbox_unchecked.svgs /apps/x-tiles/apps/x-tile/languages/apps/x-tile/%s/undos/apps/x-tile/%s/latest_tilings/apps/x-tile/%s/customs/apps/x-tile/%s/custom_2s/apps/x-tile/%s/exit_after_tiles/apps/x-tile/%s/only_curr_desks/apps/x-tile/%s/not_minimizeds!/apps/x-tile/%s/toolbar_icon_sizes!/apps/x-tile/%s/process_blacklists!/apps/x-tile/%s/process_whitelists/apps/x-tile/%s/win_size_ws/apps/x-tile/%s/win_size_hs/apps/x-tile/%s/win_position_xs/apps/x-tile/%s/win_position_ys/apps/x-tile/%s/show_toolbars/apps/x-tile/%s/x_1s/apps/x-tile/%s/y_1s/apps/x-tile/%s/w_1s/apps/x-tile/%s/h_1s/apps/x-tile/%s/x_2s/apps/x-tile/%s/y_2s/apps/x-tile/%s/w_2s/apps/x-tile/%s/h_2s/apps/x-tile/%s/override_1s/apps/x-tile/%s/override_2s/apps/x-tile/%s/grid_rowss/apps/x-tile/%s/grid_colss/apps/x-tile/%s/systray_enables/apps/x-tile/%s/use_appinds/apps/x-tile/%s/systray_starts c?Csddtdfddtdfddtdfddtdfd dtd fd dtd fd dtddtd|jfddtddtd|jfddtddtd|jfddtddtd|jfd dtd!d"td#|jfd$d%td&dtd'|jfd(d)td*d+td,|jfd-d.td/d0td1|j fd2d3td4d5td6|j fd7d8td9d:td;|j fd<d=td>d?td@|j fdAdBtdCdDtdE|j fdFdGtdHdItdJ|jfdKdLtdMdNtdO|jfdPdQtdRdStdT|jfdUd%tdVdWtdX|jfdYdZtd[d\td]|jfd^d_td`datdb|jfdcddtdedftdg|jfdhditdjdktdl|jfdmdntdodptdq|jfdrdstdtdutdv|jfdwdxtdydztd{|jfd|d}td~dtd|jfddtddtd|jfddtddtd|jfddtddtd|jfddtddtd|jfddtddtd|jfddtddtd|jfddtddtd|j fddtddtd|j!fddtddtd|j"fddtd dtd|j#fddtddtd|j$fddtddtd|j%fddtddtd|j&fddtddtd|j'fddtddtd|j(fdd%tddtd|j)fddGtddtd|j*fddBtddtd|j+fddQtddtd|j,fddLtddtd|j-fddntddtd|j.fdddtddtd|j/fddZtddtd|j0fdd=tddtd|j1fdd8tddtd|j2fddxtdydtd{|j3fddstdtdtdv|j4fdd}td~dtd|j5fg:S(s1Returns the Menu Entries Given the Class InstancetFileMenut_FiletEditMenut_EdittRowMenut_RowtTileMenut_TiletViewMenut_ViewtHelpMenut_HelptFiltersgtk-propertiest_Filters Fs Filter Rowst DefaultSelsSelected by _Defaults DsRows to be Selected by DefaulttReloadsreload-windows-listt_ReloadtF5sReload the Windows ListtQuitAppsquit-appt_Quits QsQuit the ApplicationtExitApps _Exit X TilesQsExit from X TiletShowHideMainWins tile-quadsShow/Hide _X TilesToggle Show/Hide X Tilet Preferencessgtk-preferencest _PreferencessPsOpen the Preferences Windowt SelectAlltcheckbox_checkeds Select _Alls As"Select All the Windows in the Listt DeselectAlltcheckbox_uncheckeds Deselect A_llsAs$Deselect All the Windows in the Listt Verticallystile-verticallysTile _Verticallys Vs#Tile Vertically The Checked Windowst Horizontallystile-horizontallysTile _Horizontallys Hs%Tile Horizontally The Checked Windowst TriangleUpstile-triangle-ups _Triangle Ups Ups$Tile Triangle Up The Checked Windowst TriangleDownstile-triangle-downsTriangle _Downs Downs&Tile Triangle Down The Checked Windowst TriangleLeftstile-triangle-leftsTriangle _Lefts Lefts&Tile Triangle Left The Checked Windowst TriangleRightstile-triangle-rightsTriangle _RightsRights'Tile Triangle Right The Checked WindowstQuads Tile _Quads 4s)Tile into 4 quadrants The Checked WindowstGrids tile-grids Tile _Grids Gs/Tile into an Arbitrary Grid The Checked Windowst Custom1Setstile-custom-1-setsCustom Tile 1 _Sets1sEdit Custom Tile 1 Settingst Custom1Exestile-custom-1-exesCustom Tile _1 Runs 1sExecute Custom Tile 1t Custom2Setstile-custom-2-setsCustom Tile 2 S_ets2sEdit Custom Tile 2 Settingst Custom2Exestile-custom-2-exesCustom Tile _2 Runs 2sExecute Custom Tile 2tUnTilesgtk-undos U_ndo Tilings Zs Undo the Latest Tiling Operationt InverTiles invert-tilings_Invert Tiling Orders Is/Invert the Order of the Latest Tiling Operationt CycleTiles cycle-tilingsC_ycle Tiling Orders Ys.Cycle the Order of the Latest Tiling OperationtMaximizesmaximize-checked-windowss_Maximize Windowss MsMaximize The Checked Windowst Unmaximizesunmaximize-checked-windowss_Unmaximize Windowss UsUnmaximize The Checked WindowstClosesclose-checked-windowss_Close Windowss CsClose The Checked WindowstRowUps gtk-go-upsMove _UpsUpsMove the Selected Row UptRowDowns gtk-go-downs Move _Downs DownsMove the Selected Row Downt RowDeletes gtk-removet_RemovetDeletesRemove the Selected RowtShowHideToolbarttoolbarsShow/Hide _ToolbarsToggle Show/Hide ToolbartIncreaseToolbarIconsSizes gtk-zoom-ins_Increase Toolbar Icons Sizes&Increase the Size of the Toolbar IconstDecreaseToolbarIconsSizes gtk-zoom-outs_Decrease Toolbar Icons Sizes&Decrease the Size of the Toolbar IconstHelps help-contentssX Tile Project Home PagetAbouts gtk-aboutt_Abouts About X Tilet All_AbouttAll_Cs _Close AllsClose All WindowstAll_Us_Unmaximize AllsUnmaximize All WindowstAll_Ms _Maximize AllsMaximize All WindowstAll_4sTile All _QuadsTile All Windows QuadtAll_TDsTile All Triangle _DownsTile All Windows Triangle DowntAll_TUsTile All Triangle _UpsTile All Windows Triangle UptAll_TRsTile All Triangle _RightsTile All Windows Triangle RighttAll_TLsTile All Triangle _LeftsTile All Windows Triangle LefttAll_C2sTile All Custom _2sTile All Windows Custom 2tAll_C1sTile All Custom _1sTile All Windows Custom 1tAll_GsTile All _GridsTile All Windows GridtAll_HsTile All _HorizontallysTile All Windows HorizontallytAll_VsTile All _VerticallysTile All Windows Verticallyt All_InverttAll_Undot All_CycleN(6tNonet_t dialog_filtertdialog_selected_by_defaulttreload_windows_listtquit_applicationtquit_application_totallyttoggle_show_hide_main_windowtdialog_preferencest flag_all_rowstunflag_all_rowsttile_verticallyttile_horizontallyttile_triangle_upttile_triangle_downttile_triangle_leftttile_triangle_rightt tile_quadt dialog_gridttile_custom_1_setttile_custom_1_runttile_custom_2_setttile_custom_2_runt undo_tilingt invert_tilingt cycle_tilingtmaximize_checked_windowstunmaximize_checked_windowstclose_checked_windowston_button_row_up_clickedton_button_row_down_clickedton_button_row_delete_clickedtshow_hide_toolbarttoolbar_icons_size_increasettoolbar_icons_size_decreaseton_help_menu_item_activatedt dialog_abouttdialog_about_allt close_alltunmaximize_allt maximize_allt tile_all_quadttile_all_triangle_downttile_all_triangle_upttile_all_triangle_rightttile_all_triangle_leftttile_all_custom_2ttile_all_custom_1t tile_all_gridttile_all_horizontallyttile_all_verticallytinvert_tiling_alltundo_tiling_alltcycle_tiling_all(tinst((smodules/cons.pyt get_entriesst$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$sd NAME X Tile - Tile the Windows upon your Desktop SYNOPSIS x-tile OPTION DESCRIPTION This manual page briefly documents the command line arguments OPTIONS w => open the x-tile main window without using the panel z => undo the latest tiling operation v => tile all opened windows vertically h => tile all opened windows horizontally u => tile all opened windows triangle-up d => tile all opened windows triangle-down l => tile all opened windows triangle-left r => tile all opened windows triangle-right q => quad tile all opened windows g = g 0 = g 0 0 => tile all opened windows in a grid with automatic rows and columns g rows = g rows 0 => tile all opened windows in a grid with given rows and automatic columns g 0 cols => tile all opened windows in a grid with automatic rows and given columns g rows cols => tile all opened windows in a grid with given rows and columns 1 => custom tile 1 all opened windows 2 => custom tile 2 all opened windows i => invert the order of the latest tiling operation y => cycle the order of the latest tiling operation m => maximize all opened windows M => unmaximize all opened windows c => close all opened windows SEE ALSO http://www.giuspen.com/x-tile AUTHORS Giuseppe Penone (aka giuspen) and Chris Camacho (aka Chris_C) (iii(iii(iii(iii(iii(iii(g?g?g?(iii(ig?i(g?ii(iig?(HtgtktostAPP_NAMEtVERSIONtpathtisdirtjointgetcwdt GLADE_PATHt LOCALE_PATHtAVAILABLE_LANGStCMD_LINE_ACTIONSt OVERRIDE_1t OVERRIDE_2tX1tY1tW1tH1tX2tY2tW2tH2t GRID_ROWSt GRID_COLStWINNAMES_BLACKLISTtPROCESSES_BLACKLISTtSTR_TRUEt STR_FALSEt DRAW_SCALEt DRAW_RGBStICON_SIZE_MENUtICON_SIZE_SMALL_TOOLBARtICON_SIZE_LARGE_TOOLBARt ICON_SIZE_DNDtICON_SIZE_DIALOGt ICONS_SIZEtICONS_FILENAMESt GCONF_DIRt GCONF_LANGt GCONF_UNDOtGCONF_LATEST_TILINGtGCONF_CUSTOM_1tGCONF_CUSTOM_2tGCONF_EXIT_AFTER_TILEtGCONF_ONLY_CURR_DESKtGCONF_NOT_MINIMIZEDtGCONF_TOOLBAR_ICON_SIZEtGCONF_PROCESS_BLACKLISTtGCONF_PROCESS_WHITELISTtGCONF_WIN_SIZE_WtGCONF_WIN_SIZE_HtGCONF_WIN_POSITION_XtGCONF_WIN_POSITION_YtGCONF_SHOW_TOOLBARtGCONF_X1tGCONF_Y1tGCONF_W1tGCONF_H1tGCONF_X2tGCONF_Y2tGCONF_W2tGCONF_H2tGCONF_OVERRIDE_1tGCONF_OVERRIDE_2tGCONF_GRID_ROWStGCONF_GRID_COLStGCONF_SYSTRAY_ENABLEtGCONF_USE_APPINDtGCONF_SYSTRAY_STARTtUI_INFORt HELP_TEXT(((smodules/cons.pyts '6   ! } yx-tile-2.5/setup.py0000644000175200017520000001362712023373714013273 0ustar develdevel#!/usr/bin/env python # for linux install: "python setup.py install --prefix=/usr --exec-prefix=/usr -f" from distutils.core import setup from distutils.dist import Distribution from distutils.cmd import Command from distutils.command.install_data import install_data from distutils.command.install import install from distutils.command.build import build from distutils.dep_util import newer from distutils.log import warn, info, error from distutils.errors import DistutilsFileError import os, glob, sys, subprocess import __builtin__ def _(transl_str): return transl_str __builtin__._ = _ sys.path.append(os.path.join(os.getcwd(), "modules")) import cons PO_DIR = 'locale' MO_DIR = os.path.join('build', 'mo') class XTileDist(Distribution): global_options = Distribution.global_options + [ ("without-gettext", None, "Don't build/install gettext .mo files") ] def __init__ (self, *args): self.without_gettext = False Distribution.__init__(self, *args) class BuildData(build): def run(self): build.run(self) xtile_man_file = "linux/x-tile.1" xtile_man_file_gz = xtile_man_file + ".gz" if newer(xtile_man_file, xtile_man_file_gz): if os.path.isfile(xtile_man_file_gz): os.remove(xtile_man_file_gz) import gzip f_in = open(xtile_man_file, 'rb') f_out = gzip.open(xtile_man_file_gz, 'wb') f_out.writelines(f_in) f_out.close() f_in.close() if self.distribution.without_gettext: return for po in glob.glob(os.path.join (PO_DIR, '*.po')): lang = os.path.basename(po[:-3]) mo = os.path.join(MO_DIR, lang, 'x-tile.mo') directory = os.path.dirname(mo) if not os.path.exists(directory): info('creating %s' % directory) os.makedirs(directory) if newer(po, mo): info('compiling %s -> %s' % (po, mo)) try: rc = subprocess.call(['msgfmt', '-o', mo, po]) if rc != 0: raise Warning, "msgfmt returned %d" % rc except Exception, e: error("Building gettext files failed. Try setup.py --without-gettext [build|install]") error("Error: %s" % str(e)) sys.exit(1) class Uninstall(Command): description = "Attempt an uninstall from an install --record file" user_options = [('manifest=', None, 'Installation record filename')] def initialize_options(self): self.manifest = None def finalize_options(self): pass def get_command_name(self): return 'uninstall' def run(self): f = None self.ensure_filename('manifest') try: try: if not self.manifest: raise DistutilsFileError("Pass manifest with --manifest=file") f = open(self.manifest) files = [file.strip() for file in f] except IOError, e: raise DistutilsFileError("unable to open install manifest: %s", str(e)) finally: if f: f.close() for file in files: if os.path.isfile(file) or os.path.islink(file): info("removing %s" % repr(file)) if not self.dry_run: try: os.unlink(file) except OSError, e: warn("could not delete: %s" % repr(file)) elif not os.path.isdir(file): info("skipping %s" % repr(file)) dirs = set() for file in reversed(sorted(files)): dir = os.path.dirname(file) if dir not in dirs and os.path.isdir(dir) and len(os.listdir(dir)) == 0: dirs.add(dir) # Only nuke empty Python library directories, else we could destroy # e.g. locale directories we're the only app with a .mo installed for. if dir.find("site-packages/") > 0: info("removing %s" % repr(dir)) if not self.dry_run: try: os.rmdir(dir) except OSError, e: warn("could not remove directory: %s" % str(e)) else: info("skipping empty directory %s" % repr(dir)) class Install(install): def run(self): self.distribution.scripts=['x-tile'] install.run(self) class InstallData(install_data): def run(self): self.data_files.extend(self._find_mo_files()) self.data_files.extend(self._find_desktop_file()) install_data.run(self) def _find_desktop_file(self): return [("share/applications", ["linux/x-tile.desktop"] )] def _find_mo_files (self): data_files = [] if not self.distribution.without_gettext: for mo in glob.glob(os.path.join (MO_DIR, '*', 'x-tile.mo')): lang = os.path.basename(os.path.dirname(mo)) dest = os.path.join('share', 'locale', lang, 'LC_MESSAGES') data_files.append((dest, [mo])) return data_files setup( name = "X Tile", description = "Tile the Windows Upon Your X Desktop", long_description = "Allows you to select a number of windows and tile them in different ways", version = cons.VERSION, author = "Giuseppe Penone & Chris Camacho", author_email = "giuspen@gmail.com & codifies@gmail.com", url = "http://www.giuspen.com/x-tile/", license = "GPL", data_files = [ ("share/icons/hicolor/scalable/apps", ["glade/x-tile.svg"] ), ("share/x-tile/glade", glob.glob("glade/*.*") ), ("share/x-tile/modules", glob.glob("modules/*.py") ), ("share/man/man1", ["linux/x-tile.1.gz"]) ], cmdclass={ 'build': BuildData, 'install_data': InstallData, 'install': Install, 'uninstall': Uninstall }, distclass=XTileDist ) x-tile-2.5/linux/0000755000175200017520000000000012026051676012712 5ustar develdevelx-tile-2.5/linux/x-tile.desktop0000644000175200017520000000030012000772036015470 0ustar develdevel [Desktop Entry] Name=X Tile Comment=Tile the Windows Upon your X Desktop Exec=x-tile Icon=x-tile Terminal=false Type=Application StartupNotify=true Categories=GTK;Utility; Name[en_US]=x-tile x-tile-2.5/linux/x-tile.10000644000175200017520000000363712023373714014204 0ustar develdevel.TH X-TILE "1" "July 2012" "x-tile 2.4" .SH NAME X-Tile \- an application that allows you to select a number of windows and tile them in different ways .SH SYNOPSIS \fBx-tile [option]\fP .SH DESCRIPTION X-Tile works on any X desktop (gnome, kde, xfce, lxde…). The main features are: many tiling geometries, undo tiling, invert tiling order, cycle tiling order, optional system tray docking and menu, filter to avoid listing some windows, filter to check some windows by default, command line interface. .SH OPTIONS .IP \fBw\fP open the x-tile main window without using the panel .IP \fBz\fP undo the latest tiling operation .IP \fBf\fP tile all opened windows vertically .IP \fBh\fP tile all opened windows horizontally .IP \fBu\fP tile all opened windows triangle-up .IP \fBd\fP tile all opened windows triangle-down .IP \fBl\fP tile all opened windows triangle-left .IP \fBr\fP tile all opened windows triangle-right .IP \fBq\fP quad tile all opened windows .TP .B \fBg = g 0 = g 0 0\fP tile all opened windows in a grid with automatic rows and columns .TP .B \fBg rows = g rows 0\fP tile all opened windows in a grid with given rows and automatic columns .TP .B \fBg 0 cols\fP tile all opened windows in a grid with automatic rows and given columns .TP .B \fBg rows cols\fP tile all opened windows in a grid with given rows and columns .IP \fB1\fP custom tile 1 all opened windows .IP \fB2\fP custom tile 2 all opened windows .IP \fBi\fP invert the order of the latest tiling operation .IP \fBy\fP cycle the order of the latest tiling operation .IP \fBm\fP maximize all opened windows .IP \fBM\fP unmaximize all opened windows .IP \fBc\fP close all opened windows .SH AUTHORS X-Tile was written by Giuseppe Penone and and Chris Camacho . .SH SEE ALSO http://www.giuspen.com/x-tile .PP This manual page was written by Giuseppe Penone , for the Debian project (and may be used by others). x-tile-2.5/linux/x-tile.1.gz0000644000175200017520000000143412026051577014617 0ustar develdevelSXPx-tile.1Un0+>FOAZ4qF)hi%H(ʩ_t)YΣ9;%z>9Qho8aat ~zL+Kcf`sf *r` HW,PJ2&h QZXmzї,DuzUطt@Nd6L/:fKD ALLqw Msu}T 2p9>8ZjOoQtq=k36m5!QcJׇ KZ|V7# {sOfaAy1eNXb''&H\)(e1zF('3 +*ax#KlgE8mb x-tile-2.5/license0000644000175200017520000000131711777520730013126 0ustar develdevel This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. x-tile-2.5/x-tile0000755000175200017520000000774412026045761012715 0ustar develdevel#!/usr/bin/env python # -*- coding: UTF-8 -*- """X Tile main module""" # x-tile # # Copyright 2009-2011 # Giuseppe Penone , # Chris Camacho (chris_c) . # # plus many thanks to http://tronche.com/gui/x/xlib/ # and http://tripie.sweb.cz/utils/wmctrl/ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. import sys, os, gettext, ctypes, ctypes.util, locale import gtk, gconf import __builtin__ if os.path.isfile('modules/globs.py'): MODULES_PATH = 'modules/' else: MODULES_PATH = '/usr/share/x-tile/modules/' sys.path.append(MODULES_PATH) import cons, globs, core # language installation gconf_client = gconf.client_get_default() gconf_client.add_dir(cons.GCONF_DIR, gconf.CLIENT_PRELOAD_NONE) lang_str = gconf_client.get_string(cons.GCONF_LANG) if lang_str == None: gconf_client.set_string(cons.GCONF_LANG, "default") lang_str = "default" if lang_str != "default": os.environ["LANGUAGE"] = lang_str try: locale.bindtextdomain(cons.APP_NAME, cons.LOCALE_PATH) gettext.translation(cons.APP_NAME, cons.LOCALE_PATH).install() except: def _(transl_str): return transl_str __builtin__._ = _ __builtin__.glob = globs.GlobalsObject() try: libc = ctypes.cdll.LoadLibrary(ctypes.util.find_library("libc")) libc.prctl(15, cons.APP_NAME, 0, 0, 0) except: print "libc.prctl not available, the process name will be python and not x-tile" if len(sys.argv) < 2: sys.argv.append("w") arg = sys.argv[1] if arg == "w": x = core.XTile(core.InfoModel()) x.launch_application() x.reload_windows_list() gtk.main() elif arg in cons.CMD_LINE_ACTIONS: x = core.XTile(core.InfoModel()) x.launch_application() x.cmd_line_only = True if arg not in ["z", "i", "y"]: x.reload_windows_list() x.flag_all_rows() if arg == "z": x.undo_tiling() elif arg == "i": x.invert_tiling() elif arg == "y": x.cycle_tiling() elif arg == "v": x.tile_vertically() elif arg == "h": x.tile_horizontally() elif arg == "u": x.tile_triangle_up() elif arg == "d": x.tile_triangle_down() elif arg == "l": x.tile_triangle_left() elif arg == "r": x.tile_triangle_right() elif arg == "q": x.tile_quad() elif arg == "g": wins = len(x.store.get_checked_windows_list(True)[0]) if wins == 1: x.maximize_checked_windows() elif wins: try: rows, cols = ([max(0, min(wins, int(a))) for a in sys.argv[2:4]] + [0, 0])[:2] except: print "bad arguments" exit(1) if not rows and not cols: for rows, cols in ((r, c) for r in xrange(1, 100) for c in [r, r + 1]): if rows * cols >= wins: break elif not rows: rows = (wins + cols - 1) // cols elif not cols: cols = (wins + rows - 1) // rows cons.GRID_ROWS, cons.GRID_COLS = rows, cols x.tile_grid() elif arg == "1": x.tile_custom_1_run() elif arg == "2": x.tile_custom_2_run() elif arg == "m": x.maximize_checked_windows() elif arg == "M": x.unmaximize_checked_windows() elif arg == "c": x.close_checked_windows() else: # -h print cons.HELP_TEXT x-tile-2.5/locale/0000755000175200017520000000000012026051676013012 5ustar develdevelx-tile-2.5/locale/i18n_po_to_mo.py0000755000175200017520000000132711777520730016050 0ustar develdevel#!/usr/bin/env python import os, subprocess APP_NAME = "x-tile" LOCALE_DIR = os.getcwd() for dirpath, dirnames, filenames in os.walk(LOCALE_DIR): for filename in filenames: if dirpath == LOCALE_DIR: nation, ext = os.path.splitext(filename) if ext != ".po": continue nation_dir = os.path.join(LOCALE_DIR, nation) if not os.path.isdir(nation_dir): os.mkdir(nation_dir) messages_dir = os.path.join(nation_dir, "LC_MESSAGES") if not os.path.isdir(messages_dir): os.mkdir(messages_dir) bash_string = "msgfmt --output-file=%s/LC_MESSAGES/%s.mo %s.po" % (nation, APP_NAME, nation) subprocess.call(bash_string, shell=True) x-tile-2.5/locale/it/0000755000175200017520000000000012026051676013426 5ustar develdevelx-tile-2.5/locale/it/LC_MESSAGES/0000755000175200017520000000000012026051676015213 5ustar develdevelx-tile-2.5/locale/it/LC_MESSAGES/x-tile.mo0000644000175200017520000003334112026045774016760 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{c ")"0# C#2d## #"###$%%% &]&)r&)&(&(&9'2R'')'!'6'6(4R("('('(() )*);)/C);s))") ) )*$*$A*f****!*+*++ :+ D+O+ f++++++'+#,4,L,j,y,, , ,,g-A-3:.2n.".". .$/"-/P/-o/-/$/,/!0+?0/k0-0)0*01!81Z1q12121513-22a20222231 3<R3(333334 4.94h4$44!4*4 5 55535 55C5\51m5 55555055616 F6R6 X6b6k6 q6 }666 666jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: x-tile 2.5 Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-07 22:44+0100 Last-Translator: Giuseppe Penone Language-Team: Italian Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n != 1); Questo programma e' software libero; puoi ridistribuirlo e/o modificarlo nei termini della GNU General Public License come pubblicato dalla Free Software Foundation; nella versione 2 della Licenza, o (a tua scelta) qualsiasi versione successiva. Questo programma e' distribuito nella speranza che sara' utile, ma SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita di COMMERCIABILITA' o IDONEITA' PER UN PARTICOLARE SCOPO. Leggi la GNU General Public License per maggiori dettagli. Dovresti avere ricevuto una copia della GNU General Public License insieme a questo programma; in caso contrario, scrivi a Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.Lingua1) Piastrella Alcune Finestre Manualmente2) Selezionale nella Lista di Finestre di X Tile3) Clicca il il Bottone AggiornaDisposizione Piastrellamento PersonalizzatoInformazioni su X TileAggiungi RigaAggiungi un Filtro ad ApplicazioneCic_la Ordine PiastrellamentoAnnullaChinese Semplificato (zh_CN) Khiyuan Fan Cinese Tradizionale (zh_TW) Yan-ren Tsai Ceco (cs) Pavel Fric Francese (fr) Ludovic Troisi Tedesco (de) Jöran Zeller Italiano (it) Giuseppe Penone Polacco (pl) Dominik Wójt Russo (ru) Andriy Kovtun ChiudiChiudi Tutte le FinestreChiudi le Finestre SelezionateColonneCopyright © 2009-2012 Giuseppe Penone Chris Camacho Imposta Piastrellamento Personali_zzato 1Impos_ta Piastrellamento Personalizzato 2Esegui Piastrellamento Personalizzato _1Esegui Piastrellamento Personalizzato _2Cicla l'Ordine dell' Ultima Operazione di PiastrellamentoDiminuisci la Dimensione delle Icone della ToolbarDese_leziona TuttoDeseleziona Tutte le Finestre nella ListaNon Elencare Finestre MinimizzateModifica Impostazioni Piastrellamento Personalizzato 1Modifica Impostazioni Piastrellamento Personalizzato 2Modifica Impostazioni Piastrellamento PersonalizzatoAbilita l'Ancoraggio a System TrayEsegui Piastrellamento Personalizzato 1Esegui Piastrellamento Personalizzato 2Esci Dopo il TilingEsci da X TileFiltra RigheDettagli GrigliaAltezzaAumenta la Dimensione delle Icone della ToolbarInverti l'Ordine dell' Ultima Operazione di PiastrellamentoMassimizza Tutte le FinestreMassimizza le finestre SelezionateMuovi _Giu'Muovi S_uMuovi Giu' la Riga SelezionataMuovi Su la Riga SelezionataNessuna Applicazione e' Selezionata!Nessuna Riga e' SelezionataNessuna finestra e' SelezionataOKSolo il Workspace CorrenteApri la finestra delle PreferenzeArea di Tiling del Monitor 1 PersonalizzataArea di Tiling del Monitor 2 PersonalizzataPosizionePreferenzeEsci dall'ApplicazioneRicarica la Lista delle FinestreRimuovi un Filtro ApplicazioneRimuovi le Righe SelezionateRigheRighe da FiltrareRighe da Selezionare di DefaultSeleziona Tutte le Finestre nella ListaSelezion_a TuttoSelezionate di _DefaultSpazio di Lavoro DestinatarioMostra ToolbarMostra/Nascondi _ToolbarMostra/Nascondi _X TileDimensioneAvvia Minimizzato su System TrayIl Piastrellamento Personalizzato 1 Non e' Ancora Stato Impostato: Clicca la Voce di Menu 'Piastrella->Imposta Piastrellamento Personalizzato 1'Il Piastrellamento Personalizzato 2 Non e' Ancora Stato Impostato: Clicca la Voce di Menu 'Piastrella->Imposta Piastrellamento Personalizzato 2'La Nuova Lingua Sara' Disponibile Solo Dopo Aver Riavviato X TileLa Dimensione del Toolbar e' gia' al Massimo ValoreLa Dimensione del Toolbar e' gia' al Minimo ValorePiastrella Tutte Personalizzato _1Piastrella Tutte Personalizzato _2Piastrella Tutte Triangolo _Giu'Piastrella Tutte Triangolo _SinistraPiastrella Tutte Triangolo _DestraPiastrella Tutte Triangolo S_uPiastrella Tutte le Finestre Personalizzato 1Piastrella Tutte le Finestre Personalizzato 2Piastrella Tutte le Finestre GrigliaPiastrella Tutte le Finestre OrizzontalmentePiastrella Tutte le Finestre QuadPiastrella Tutte le Finestre Triangolo Giu'Piastrella Tutte le Finestre Triangolo SinistraPiastrella le Finestre Tutte Triangolo DestraPiastrella Tutte le Finestre Triangolo SuPiastrella Tutte le Finestre VerticalmentePiastrella Tutte _GrigliaPiastrella Tutte _OrizzontalmentePiastrella Tutte _QuadPiastrella Tutte _VerticalmentePiastrella Orizzontalmente le finestre SelezionatePiastrella Triangolo Sotto le finestre SelezionatePiastrella Triangolo Sinistra le finestre SelezionatePiastrella Triangolo Destra le finestre SelezionatePiastrella Triangolo Sopra le finestre SelezionatePiastrella Verticalmente le finestre SelezionatePiastrella _GrigliaPiastrella _OrizzontalmentePiastrella Qua_dPiastrella _VerticalmentePiastrella in 4 Quadranti le finestre SelezionatePiastrella in una Griglia arbitraria le finestre SelezionatePiastrella le finestre sul tuo Desktop XMostra/Nascondi il ToolbarMostra/Nascondi X TileTriangolo _Giu'Triangolo _SinistraTriangolo _Destra_Annulla PiastrellamentoAnnulla l'Ultima Operazione di PiastrellamentoDemassimizza Tutte le FinestreDemassimizza le Finestre SelezionateAggiornaUsa AppIndicator per l'AncoraggioUsa il Drag and Drop per Ordinare le RigheLarghezzaXX TileHome Page del Progetto X TileY_InformazioniChiudi Tutte le Finestre_Chiudi Finestre_Diminuisci la Dimensione delle Icone del Toolbar_Modifica_Esci da X Tile_File_Filtro_Aiuto_Aumenta la Dimensione delle Icone della Toolbar_Inverti Ordine Piastrellamento_Massimizza Tutte_Massimizza Finestre_Preferenze_Esci_Ricarica_Rimuovi_Riga_PiastrellaTriangolo S_u_Demassimizza TutteD_emassimizza Finestre_Visualizzahttp://www.giuspen.com/x-tile/x-tile-2.5/locale/pl/0000755000175200017520000000000012026051676013425 5ustar develdevelx-tile-2.5/locale/pl/LC_MESSAGES/0000755000175200017520000000000012026051676015212 5ustar develdevelx-tile-2.5/locale/pl/LC_MESSAGES/x-tile.mo0000644000175200017520000003305112026045774016755 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{WI # # ## $&$ /$;$+Q$}$$U&]&t&&]&&'"0'"S'=v'%''!'#(,3(,`('(%(!(!()4)C)R) e)%p)2)))) *!*"@*$c* ***!**(+(0+Y+ a+m++++++,+!,4,G,&[,,,,,+,s-st-E-5..:d.,.,.$.#/$B/%g/0/0//0 +0(L0'u0(0)00 1(1A1^1w1)1(1)1*2?2_2g2x22!2!2 2'3)3H3Y3i3z3%3#3%3 334)<4 f4r4t4{44 44 4&444555&5 E5f55 55 55555556 66jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: X Tile Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-13 23:50+0100 Last-Translator: Dominik Wójt Language-Team: Polish Language: pl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2) Niniejszy program jest wolnym oprogramowaniem; możesz go rozprowadzać dalej i/lub modyfikować na warunkach Powszechnej Licencji Publicznej GNU, wydanej przez Fundację Wolnego Oprogramowania - według wersji 2 tej Licencji lub (według Twojego wyboru) którejś z późniejszych wersji. Niniejszy program rozpowszechniany jest z nadzieją, iż będzie on użyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyślnej gwarancji PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ. W celu uzyskania bliższych informacji sięgnij do Powszechnej Licencji Publicznej GNU. Z pewnością wraz z niniejszym programem otrzymałeś też egzemplarz Powszechnej Licencji Publicznej GNU (GNU General Public License); jeśli nie - napisz do Free Software Foundation, Inc., 59 Temple Place, Fifth Floor, Boston, MA 02110-1301 USAJęzyk1) Ułóż jakieś okna ręcznie2) Zaznacz je na liście okien X3) Kliknij przycisk aktualizujNiestandardowy układO X TileDodaj rządDodaj filtr aplikacjiPrzesuń c_yklicznie kolejność układaniaAnulujChiński uproszczony (zh_CN) Khiyuan Fan Chiński tradycyjny (zh_TW) Yan-ren Tsai Czeski (cs) Pavel Fric Francuski (fr) Ludovic Troisi Niemiecki (de) Jöran Zeller Włoski (it) Giuseppe Penone Polski (pl) Dominik Wójt Rosyjski (ru) Andriy Kovtun ZamknijZamknij wszystkie oknaZamknij zaznaczone oknaKolumnyCopyright © 2009-2012 Giuseppe Penone Chris Camacho Ustaw _niestandardowy układ 1Ustaw n_iestandardowy układ 2Ułóż w niestandardowy układ _1Ułóż w niestandardowy układ _2Przesuń cyklicznie kolejność ostatniej operacji układaniaZmniejsz rozmiar ikon paska narzędzi_Odznacz wszystkieOdznacz wszystkie okna na liścieNie wypisuj zminimalizowanych okienEdytuj ustawienia niestandardowego układu 1Edytuj ustawienia niestandardowego układu 2Ustaw niestandardowe ustawienia układuWłącz dokowanie na pasku systemowymUłóż w niestandardowy układ 1Ułóż w niestandardowy układ 2Wyjdź po ułożeniuZamknij X tileFiltruj RzędySzczegóły siatkiWysokośćZwiększ rozmiar ikon paska narzędziOdwróć kolejność ostatniej operacji układaniaZmaksymalizuj wszystkie oknaZmaksymalizuj oknaPrzesuń w _dółPrzesuń do _góryPrzesuń zaznaczony rząd w dółPrzesuń zaznaczony rząd do góryŻadna aplikacja nie jest zaznaczonaŻaden rząd nie jest zaznaczonyŻadne okno nie jest zaznaczoneOKTylko aktywna przestrzeń roboczaOtwórz okno preferencjiNadpisz obszar układania na monitorze 1Nadpisz obszar układania na monitorze 2PozycjaPreferencjeWyjdź z aplikacjiOdśwież listę okienUsuń filtr aplikacjiUsuń zaznaczony rządRzędyRzędy do przefiltrowaniaRzędy, które mają być wybrane domyślnieZaznacz wszystkie okna na liścieZaznacz _wszystkieWybrane _domyślnieWyznacz docelową przestrzeń robocząPokaż pasek narzędziPokaż/ukryj pasek _narzędziPokaż/ukryj _X TileRozmiarZaczynaj zminimalizowany w pasku systemowymNiestandardowy układ 1 nie został jeszcze ustawiony: Kliknij element menu 'Układ->Ustaw niestandardowy układ 1'Niestandardowy układ 2 nie został jeszcze ustawiony: Kliknij element menu 'Układ->Ustaw niestandardowy układ 2'Nowy język będzie dostępny dopiero po ponownym uruchomieniu X TileRozmiar paska narzędzi ma już maksymalną wartośćRozmiar ikon paska narzędzi ma już maksymalną wartośćUłóż wszystkie w układ niestandardowy _1Ułóż wszystkie w układ niestandardowy _2Ułóż wszystkie w trójkąt _dolnyUłóż wszystkie w trójkąt _lewyUłóż wszystkie w trójkąt _prawyUłóż wszystkie w trójkąt _górnyUłóż wszystkie okna w układ niestandardowy 1Ułóż wszystkie okna w układ niestandardowy 2Ustaw wszystkie okna w siatkęUstaw wszystkie okna poziomoUłóż wszystkie okna w kwadratUłóż wszystkie okna w trójkąt dolnyUłóż wszystkie okna w trójkąt lewyUłóż wszystkie okna w trójkąt prawyUłóż wszystkie okna w trójkąt górnyUstaw wszystkie okna pionowoUstaw wszystkie w _siatkęUstaw wszystkie po_ziomoUłóż wszystkie w _kwadratUstaw wszystkie pio_nowoUłóż poziomo zaznaczone oknaUłóż zaznaczone okna w trójkąt dolnyUłóż zaznaczone okna w trójkąt lewyUłóż zaznaczone okna w trójkąt prawyUłóż zaznaczone okna w trójkąt górnyUłóż pionowo zaznaczone okna_SiatkaUłóż po_ziomoUłóż w _kwadratUłóż _pionowoUłóż zaznaczone okna w kwadratUłóż zaznaczone okna w siatkęUłóż okna na twoim pulpicie XPrzełącz pokaż/ukryj pasek narzędziPrzełącz pokaż/ukryj X TileTrójkąt _dolnyTrójkąt _lewyTrójkąt _prawyCo_fnij układanieCofnij ostatnią operację układaniaPrzywróć rozmiar wszystkich okienPrzywróć rozmiar zaznaczonych okienAktualizujUżywaj obszaru wskaźników aplikacji do dokowaniaUżyj przeciągania, aby sortować rzędySzerokośćXX TileStrona domowa projektu X TileY_O programie_Zamknij wszystkie_Zamknij oknaZ_mniejsz rozmiar ikon paska narzędzi_Edycja_Zamknij X Tile_Plik_Filtruj_Pomoc_Zwiększ rozmiar ikon paska narzędzi_Odwróć kolejność układania_Zmaksymalizuj wszystkieZ_maksymalizuj okna_Preferencje_Wyjdź_Odśwież_Usuń_Rząd_UłóżTrójkąt _górny_Przywróć wszystkiePrz_ywróć okna_Widokhttp://www.giuspen.com/x-tile/x-tile-2.5/locale/cs/0000755000175200017520000000000012026051676013417 5ustar develdevelx-tile-2.5/locale/cs/LC_MESSAGES/0000755000175200017520000000000012026051676015204 5ustar develdevelx-tile-2.5/locale/cs/LC_MESSAGES/x-tile.mo0000644000175200017520000003357512026045774016762 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{F #&##B#(f#(##### $$%&!&?&]G&%&%&2&2$'-W',''''#',(,E((r(*(-(-(")=)L)^)v)-~)/)))**!/*"Q*t******(+(9+b+ i+t+++++ +)+, 7,D,"S,v,!,,,/,--J.G_.F.).)/)B/)l/*/*/8/8%0%^0$0%010112312f1 11112$,21Q2122222 3<3U3m33-313%3 4A4W4l444+4!4%4 51,5=^555555 555-5!6*6:6B6 I6.U6666 6 66 66 677<7V7^76jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: x-tile 1.5 Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-07 23:52+0200 Last-Translator: Pavel Fric Language-Team: Czech Language: cs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n != 1); X-Generator: Lokalize 1.5 Tento program je svobodným softwarem; můžete jej rozdávat a/nebo upravovat za podmínek GNU General Public License (GPL), jak jsou zveřejněny Free Software Foundation; buď ve verzi 2 licence, nebo (podle své volby) v kterékoli pozdější verzi. Tento program je šířen v naději, že bude užitečný, ale BEZ JAKÉKOLI ZÁRUKY; také bez předpokládané záruky PRODEJNOSTI nebo POUŽITELNOSTI PRO NĚJAKÝ URČITÝ ÚČEL: Více podrobností naleznete v GNU Library General Public License. Kopii GNU Library General Public License byste měl obdržet společně s tímto balíkem; a pokud ne, napište Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Jazyk 1) Vydlážděte určitá okna ručně2) Vyberte je v seznamu oken X Tile3) Klepněte na tlačítko Nahrát znovuVlastní rozvržení dlážděníO X TilePřidat řádekPřidat programový filtr_Točit pořadí dlážděníZrušitZjednodušená čínština (zh_CN) Khiyuan Fan Tradiční čínština (zh_TW) Yan-ren Tsai Čeština (cs) Pavel Fric Španělština (es_AR) MeloPixel Francouzština (fr) Ludovic Troisi Němčina (de) Jöran Zeller Italština (it) Giuseppe Penone Polština (pl) Dominik Wójt Ruština (ru) Andriy Kovtun ZavřítZavřít všechna oknaZavřít všechna označená oknaSloupceCopyright © 2009-2012 Giuseppe Penone Chris Camacho Vlastní _nastavení dláždění (1)Vlastní na_stavení dláždění (2)Provedení vlastního nastavení dláždění (_1)Provedení vlastního nastavení dláždění (_2)Točit pořadí poslední dláždicí operaceZmenšit velikost ikon v nástrojovém pruhuZrušit výběr u _všehoZrušit výběr u všech oken v seznamuNeukazovat žádná zmenšená oknaUpravit vlastní nastavení dláždění (1)Upravit vlastní nastavení dláždění (2)Upravit vlastní nastavení dlážděníPovolit ikonu v oznamovací oblasti paneluProvést vlastní nastavení dláždění (1)Provést vlastní nastavení dláždění (2)Ukončit po vydlážděníOpustit X TileFiltrovat řádkyPodrobnosti k mřížceVýškaZvětšit velikost ikon v nástrojovém pruhuObrátit pořadí poslední dláždicí operaceZvětšit všechna oknaZvětšit označená oknaPosunout _dolůPosunout _nahoruPosunout označený řádek dolůPosunout označený řádek nahoruNení vybrán žádný program!Není vybrán žádný řádekNení vybráno žádné oknoOKJen současná pracovní oblastOtevřít okno s nastavenímPřepsat oblast dláždění obrazovka 1Přepsat oblast dláždění obrazovka 2PolohaNastaveníUkončit programNahrát seznam oken znovuOdstranit programový filtrOdstranit označený řádekŘádkyPřidat filtrŘádky, které mají být vybrány vždyVybrat všechna okna v seznamuVybrat vš_eVybráno vždyNastavit cílovou pracovní oblastUkázat nástrojový pruhUkázat/Skrýt _nástrojový pruhUkázat/Skrýt _X TileVelikostSpustit zmenšené v oznamovací oblasti paneluVlastní nastavení dláždění (1) ještě nebylo převzato: Klepněte v nabídce na 'Dlaždice->Vlastní nastavení dláždění (1)'Vlastní nastavení dláždění (2) ještě nebylo převzato: Klepněte v nabídce na 'Dlaždice->Vlastní nastavení dláždění (2)'Nové jazykové nastavení bude dostupné až po novém spuštění X TileIkony v nástrojovém pruhu jsou již tak velké, jak jen je to možnéIkony v nástrojovém pruhu jsou již tak malé, jak jen je to možnéVydláždit všechno podle rozvržení _1Vydláždit všechno podle rozvržení _2Vydláždit vše trojúhelníkově _dolůVydláždit vše trojúhelníkově v_levoVydláždit vše trojúhelníkově v_pravoVydláždit vše trojúhelníkově _nahoruVydláždit všechna okna podle vlastního rozvržení 1Vydláždit všechna okna podle vlastního rozvržení 2Vydláždit všechna okna v mřížceVydláždit všechna okna vodorovněVydláždit všechna okna čtvercověVydláždit všechna okna trojúhelníkově dolůVydláždit všechna okna trojúhelníkově vlevoVydláždit všechna okna trojúhelníkově vpravoVydláždit všechna okna trojúhelníkově nahoruVydláždit všechna okna svisleVydláždit vše v _mřížceVydláždit vše _vodorovněVydláždit vše _čtvercověVydláždit vše _svisleVydláždit vybraná okna vodorovněVydláždit vybraná okna trojúhelníkově dolůVydláždit vybraná okna trojúhelníkově vlevoVydláždit vybraná okna trojúhelníkově vpravoVydláždit vybraná okna trojúhelníkově nahoruVydláždit vybraná okna svisleVydláždit v _mřížceVydláždit _vodorovněVydláždit _čtvercověVydláždit _svisleVydláždit vybraná okna do čtyř čtvercůVydláždit vybraná okna do libovolné mřížkyVydlážděte okna na vaší ploše XUkázat/Skrýt nástrojový pruhUkázat/Skrýt X TileTrojúhelník _dolůTrojúhelník _vlevoTrojúhelník v_pravoDláždění _zpětVrátit poslední dláždicí operaci zpětZrušit zvětšení u všech okenZrušit zvětšení označených okenAktualizovatPoužít ukazatel programu pro ukotvení v paneluPro roztřídění řádků položku přetáhněte a upusťteŠířkaXX TileStránky projektu X TileY_O programu_Zavřít vše_Zavřít oknaZ_menšit velikost ikon v nástrojovém pruhuÚ_pravy_Opustit X Tile_Soubor_Filtr_NápovědaZ_většit velikost ikon v nástrojovém pruhu_Obrátit pořadí dláždění_Zvětšit vše_Zvětšit okna_Nastavení_Ukončit_Nahrát znovu_OdstranitŘá_dek_Dlaždice_Trojúhelník nahoruZ_rušit zvětšení u všehoZ_rušit zvětšení oken_Pohledhttp://www.giuspen.com/x-tile/x-tile-2.5/locale/de.po0000644000175200017520000004127112023373714013744 0ustar develdevel# German translations for x-tile package. # Copyright (C) 2010 THE x-tile'S COPYRIGHT HOLDER # This file is distributed under the same license as the x-tile package. # maul , 2010. # msgid "" msgstr "" "Project-Id-Version: x-tile 1.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-09 17:26+0100\n" "Last-Translator: Jöran Zeller \n" "Language-Team: German\n" "Language: German (Deutsch)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Benutze Drag and Drop um Zeilen zu sortieren" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "Neue Spracheinstellung erst nach Neustart von X Tile verfügbar" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Tile Fenster auf deinem X Desktop" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "Werkzeugleisten Icons sind schon maximal" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "Werkzeugleisten Icons sind schon minimal" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Keine Zeile ausgewählt" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Keine Anwendung ausgewählt!" #: modules/core.py:855 msgid "Grid Details" msgstr "Grid Details" #: modules/core.py:863 msgid "Rows" msgstr "_Zeile" #: modules/core.py:870 msgid "Columns" msgstr "Spalten" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Keine Fenster ausgewählt" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Persönliche Tiling Schema bearbeiten" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "Das persönliche tiling Schema (1) wurde noch nicht übernommen: Im Menü 'Tile-" ">Eigenes Schema (1) setzen anklicken'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "Das persönliche tiling Schema wurde noch nicht übernommen: Im Menü 'Tile-" ">Eigenes Schema (2) setzen anklicken'" #: modules/cons.py:268 msgid "_File" msgstr "_Datei" #: modules/cons.py:269 msgid "_Edit" msgstr "_Bearbeiten" #: modules/cons.py:270 msgid "_Row" msgstr "_Zeile" #: modules/cons.py:271 msgid "_Tile" msgstr "_Tile" #: modules/cons.py:272 msgid "_View" msgstr "_Ansicht" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "_Hilfe" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filter" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtere Zeilen" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Immer selektiert" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Zeilen die immer selektiert sein sollen" #: modules/cons.py:277 msgid "_Reload" msgstr "_Neu Laden" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Neu laden" #: modules/cons.py:278 msgid "_Quit" msgstr "_Beenden" #: modules/cons.py:278 msgid "Quit the Application" msgstr "_Beenden der Anwendung" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "_Verlasse X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Verlasse X Tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Zeige/Verstecke X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Schalte Zeige/Verstecke X Tile um" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Voreinstellungen" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Öffnen der Voreinstellungen" #: modules/cons.py:282 msgid "Select _All" msgstr "_Alles auswählen" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Alles markieren" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "A_lles abwählen" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Alle Fenster in der Liste abwählen" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "_Vertikal Tilen" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Tile vertikal" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "_Horizontal Tilen" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Tile horizontal" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "_Triangel oben" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Tile Triangel oben" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Triangel _unten" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Tile Triangel unten" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Triangel _links" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Tile Triangel links" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Triangel _rechts" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Tile Triangle rechts" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Tile _quadratisch" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Tile quadratisch" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Tile _Raster" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Tile die markierten Fenster in ein beliebiges Raster" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Eigenes _Schema (1) setzen" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Eigenes Schema (1) bearbeiten" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Eigenes Tiling Schema (_1) ausführen" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Eigenes Tiling Schema (1) ausführen" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Eigenes Schema (2) s_etzen" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Eigenes Schema (2) bearbeiten" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Eigenes Tiling Schema (_2) ausführen" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Eigenes Tiling Schema (2) ausführen" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "Tiling rückgä_ngig machen" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Mache die letzte tiling Operation rückgängig" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Invertiere die tiling Reihenfolge" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Invertiere die Reihenfolge der letzten tiling Operation" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "_Durchlaufe Tiling Reihenfolge" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Durchlaufe die Reihenfolge der letzten tiling Aktion" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "Fenster maximieren" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Markierte Fenster maximieren" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "Maximierung der Fenster aufheben" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Maximierung markierter Fenster aufheben" #: modules/cons.py:301 msgid "_Close Windows" msgstr "Fenster schliessen" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Schliesse alle markierten Fenster" #: modules/cons.py:302 msgid "Move _Up" msgstr "Verschiebe nach _oben" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Verschiebe die ausgewählte Zeile nach oben" #: modules/cons.py:303 msgid "Move _Down" msgstr "Verschiebe nach _unten" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Verschiebe die ausgewählte Zeile nach unten" #: modules/cons.py:304 msgid "_Remove" msgstr "_Entferne" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Entferne die markierte Zeile" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Zeige/Verstecke Werkzeugleiste" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Schalte Zeige/Verstecke Werkzeugleiste um" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "_Vergrössere Icons der Werkzeugleiste" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Vergrössere Icons der Werkzeugleiste" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "_Verkleinere Icons der Werkzeugleiste" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Verkleinere Icons der Werkzeugleiste" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "X Tile Projekt Home Page" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "_Über" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "Über X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "_Alle schliessen" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Alle Fenster schliessen" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "Alles _demaximieren" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Maximierung aller Fenster aufheben" #: modules/cons.py:313 msgid "_Maximize All" msgstr "_Maximiere Alles" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Alle Fenster maximieren" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Tile _Quadratisch" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Tile alle Fenster Quadratisch" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Tile Triangel _unten" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Tile alle Fenster Triangel unten" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Tile Triangel _oben" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Tile alle Fenster Triangel oben" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Tile Triangel _rechts" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Tile alle Fenster Triangel rechts" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Tile Triangel _links" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Tile alle Fenster Triangel links" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Tile Schema _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Tile alle Fenster Schema 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Tile Schema _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Tile alle Fenster Schema 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Tile alle in _Raster" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Tile alle Fenster in Raster" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Tile _horizontal" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Tile alle Fenster horizontal" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Tile _vertikal" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Tile alle Fenster vertikal" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Dieses Programm ist freie Software. Sie können es unter den\n" "Bedingungen der GNU General Public License, wie von der Free Software\n" "Foundation veröffentlicht, weitergeben und/oder modifizieren,\n" "entweder gemäß Version 3 der Lizenz oder (nach Ihrer Option) jeder\n" "späteren Version.\n" "\n" "Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß\n" "es Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar\n" "ohne die implizite Garantie der MARKTREIFE oder der\n" "VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. Details finden Sie in der\n" "GNU General Public License.\n" "Sie sollten ein Exemplar der GNU General Public License zusammen mit\n" "diesem Programm erhalten haben. Falls nicht, siehe\n" "." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chinesisch vereinfacht (zh_CN) Khiyuan Fan \n" "Chinesisch traditionell (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Russian (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Einstellungen" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Zeige keine minimierten Fenster an" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Nur momentanen Arbeitsbereich" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Docken zu System Tray" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Starte minimiert im System Tray" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "Benutze AppIndicator zum Andocken" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Zeige Werkzeugleiste" #: glade/x-tile.glade.h:38 msgid " Language " msgstr " Sprache " #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Tiling Areal Monitor 1 überschreiben" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Position" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Breite" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Höhe" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Grösse" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Tiling Areal Monitor 2 überschreiben" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Schliessen" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Abbrechen" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Persönliches Tiling Schema" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Tile bestimmte Fenster manuell" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Wähle sie in der X Tile Fenster Liste aus" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Klicke auf den neuladen Knopf" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Update" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Filter hinzufügen" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Einen Anwendungsfilter hinzufügen" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Einen Anwendungsfilter entfernen" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Zeile hinzufügen" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Setze Ziel Arbeitsfläche" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Schliessen nach tiling" x-tile-2.5/locale/fr/0000755000175200017520000000000012026051676013421 5ustar develdevelx-tile-2.5/locale/fr/LC_MESSAGES/0000755000175200017520000000000012026051676015206 5ustar develdevelx-tile-2.5/locale/fr/LC_MESSAGES/x-tile.mo0000644000175200017520000003447212026045774016761 0ustar develdevel|  s~)  ,@G "<]D.& D$Rw.> O [h&o/  '@Yl 5Rjo~"  -"2PUP?=7=u "8Rl1M\s%&&' $3#X | )/$5Nfu  ""(*1JL S^m   &+ 1>Nbhh"+"%+#'Q#"y# ## #!#$$%%#&)&]2&,&,&'&''::'&u''0'''1 (1>(&p($(*(*()-)<)N)d)'l):))&)*-*,E*-r*#*%*(*+&+"B+3e+3++ +++ ,2:,m,t,),-,,,+-:-#U-y--1-|-|H.9.?.??/#/#/,/2/2'0-Z03030(0.1,H1<u1B1B1=82,v2222273JP3P3P3K=4544445> 5@_5*5 55'6-*6-X66.66&672"7U7]7_7f77 7 77(7 77778) 8!48V8f888 8 88 8(888 996jYHN1=uXp0Jog!L;TUv`9a@x t3}ylf[$+2b,/i - >d~8IQV?%kq(m]{5erGM| R)ZD W_AOBPsF7* :wSczn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2011-03-03 11:05+0100 Last-Translator: Ludovic Troisi Language-Team: X Tile Language: fr MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n > 1); Ce programme est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier au titre des clauses de la Licence Publique Générale GNU, telle que publiée par la Free Software Foundation ; soit la version 2 de la Licence, ou (à votre discrétion) une version ultérieure quelconque. Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans même une garantie implicite de COMMERCIABILITE ou DE CONFORMITE A UNE UTILISATION PARTICULIERE. Voir la Licence Publique Générale GNU pour plus de détails. Vous devriez avoir reçu un exemplaire de la Licence Publique Générale GNU avec ce programme ; si ce n'est pas le cas, écrivez à la Free Software Foundation Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Langue1) Disposez quelques fenêtres manuellement2) Cochez-les dans la liste de X Tile3) Cliquez sur le bouton Mettre à jourMise en page personnaliséeInformations à propos de X TileAjouter une ligneAjoute une application au filtre_Alterner l'ordre de répartitionAnnulerChinese Simplified (zh_CN) Khiyuan Fan Chinois traditionnel (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric Français (fr) Ludovic Troisi Allemand (de) Jöran Zeller Italien (it) Giuseppe Penone Polish (pl) Dominik Wójt Russe (ru) Andriy Kovtun FermerFermer toutes les fenêtresFerme les fenêtres sélectionnéesColonnesCopyright © 2009-2012 Giuseppe Penone Chris Camacho _Configurer la répartition personnalisée 1C_onfigurer la répartition personnalisée 2Lancer la répartition personnalisée 1Lancer la répartition personnalisée 2Alterne l'ordre de la dernière opération de répartitionDiminue la taille de la barre d'outilsTout _désélectionnerDésélectionne toutes les fenêtres de la listeNe pas lister les fenêtres minimiséesParamétrages de la répartition personnalisée 1Paramétrages de la répartition personnalisée 1Éditer la répartition personnaliséeActiver dans la zone de notificationExécuter la répartition personnalisée 1Exécuter la répartition personnalisée 2Fermer après répartitionQuitter X TileFiltre les lignesDétails de la grilleHauteurAugmente la taille de la barre d'outilsInverse l'ordre de la dernière opération de répartition_Maximiser toutes les fenêtresMaximise les fenêtres sélectionnéesDéplacer vers le _basDéplacer vers le _hautDéplace la ligne sélectionnée vers le basDéplace la ligne sélectionnée vers le hautAucune application sélectionnée !Aucune ligne n'a été sélectionnéeAucune fenêtre n'a été sélectionnéeValiderUniquement l'espace de travail courantOuvre la fenêtre de préférencesZone de répartition personnalisée pour l'écran 1Zone de répartition personnalisée pour l'écran 2PositionPréférencesQuitte l'applicationRecharge la liste des fenêtresRetire une application du filtreSupprime la ligne sélectionnée (Retour arrière)LignesLignes à filtrerLignes à être sélectionné par défautSélectionne toutes les fenêtres de la liste_Tout sélectionnerSélectionnée par _défautDéfinir l'Espace de travail de destinationAfficher la barre d'outilsAfficher/Masquer la barre d'_outilsAfficher/Masquer _X TileTailleLancer dans la zone de notification au démarrageLa répartition personnalisée 1 n'est pas définie: Cliquez sur le menu 'Tile->Configurer la répartition personnalisée 1'La répartition personnalisée 2 n'est pas définie: Cliquez sur le menu 'Tile->Configurer la répartition personnalisée 2'La nouvelle langue sera chargée une fois X Tile relancéLa taille de la barre d'outils est déjà à sa valeur maximaleLa taille de la barre d'outils est déjà à sa valeur minimaleTout répartir en personnalisée _1Tout répartir en personnalisée _2Tout répartir en triangle à partir du _basTout répartir en triangle à partir de la _gaucheTout répartir en triangle à partir de la dr_oiteTout répartir en triangle à partir du h_autRépartir toutes les fenêtres en personnalisée _1Répartir toutes les fenêtres en personnalisée _2Répartir toutes les fenêtres en GrilleRépartir toutes les fenêtres horizontalementRépartir toutes les fenêtres en _quartiersRépartir toutes les fenêtres en triangle à partir du _basRépartir toutes les fenêtres en triangle à partir de la _gaucheRépartir toutes les fenêtres en triangle à partir de la dr_oiteRépartir toutes les fenêtres en triangle à partir du h_autRépartir toutes les fenêtres verticalementTout répartir en _GrilleTout répartir _horizontalementTout répartir en _quartiersTout répartir ve_rticalementRépartit horizontalement les fenêtres sélectionnéesRépartit selon un triangle les fenêtres sélectionnées à partir du basRépartit selon un triangle les fenêtres sélectionnées à partir de la gaucheRépartit selon un triangle les fenêtres sélectionnées à partir de la droiteRépartit selon un triangle les fenêtres sélectionnées à partir du hautRépartit verticalement les fenêtres sélectionnéesRépartir en _GrilleRépartir _horizontalementRépartir en _quartiersRépartir _verticalementRépartit selon quatre quartiers les fenêtres sélectionnéesRépartit arbitrairement en grille les fenêtres sélectionnéesRépartit vos fenêtres sur votre Bureau XAffiche/Masque la barre d'outilsAffiche/Masque X TileRépartir en triangle à partir du _basRépartir en triangle à partir de la _gaucheRépartir en triangle à partir de la dr_oiteA_nnuler la répartitionAnnule la dernière opération de répartitionDiminuer toutes les fenêtresRestaure les fenêtres sélectionnéesMettre à jourUtilisez le glisser-déposer pour trier les lignesLargeurXX TilePage d'accueil de X TileYÀ _propos_Tout Fermer_Fermer les fenêtres_Diminuer la taille de la barre d'outilsÉ_dition_Quitter X Tile_Fichier_FiltrerAid_e_Augmenter la taille de la barre d'outils_Inverser l'ordre de répartitionTout _maximiser_Maximiser les fenêtres_Préférences_Quitter_Recharger_Supprimer_Ligne_RépartirRépartir en triangle à partir du h_autTout _Diminuer_Restaurer les fenêtres_Affichagehttp://www.giuspen.com/x-tile/x-tile-2.5/locale/es_AR/0000755000175200017520000000000012026051676014003 5ustar develdevelx-tile-2.5/locale/es_AR/LC_MESSAGES/0000755000175200017520000000000012026051676015570 5ustar develdevelx-tile-2.5/locale/es_AR/LC_MESSAGES/x-tile.mo0000644000175200017520000002734712026045774017346 0ustar develdevel< P Q )$Ni .&A h$v &<Rb s &/ '0Kd} ,AYv"  ,?Q"VPyP?=[=-F\v8Uq%&&'/$W#|  )/$4Yr  "#FLNUnp w   '4:BJO UbrqH 'Q 2y  '  !-!6!=! M!n!w!!!!;!")"!?"2a"2"."/"-&#-T### ###9#*$E$#X$|$$ $!$($$%/%%2%!X%(z%(% % %%%&1&N& S&"a&%& &&*&&'('A',I'`v'`'?8(Qx(Q()-)>)P)f)z))) ) ) ))))** "* .* :* F*/P*3*:*8*4(+.]+++++'+',((,)Q,{,,,, ,#,,# - 1-1<-n-t-v-}-- - -------.../.?. S.a. h. t.~.......INO]V5cmqSk'Lx!n`+Chl7)-|ATR=p\&2;v,@}M YX 9 {#zJ/8td .ZWPF1i4("~^?<G_$*06KfarjgeU > ybos3%w[u:EQHBD This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterCancelCloseClose All WindowsClose The Checked WindowsColumnsCustom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-05-25 14:46-0300 Last-Translator: melopixel Language-Team: Spanish Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n != 1); X-Poedit-Language: Spanish X-Poedit-Country: ARGENTINA X-Poedit-SourceCharset: utf-8 Este programa es software libre, puede redistribuirlo y/o modificarlo bajo los términos de la GNU General Public License publicada por la Free Software Foundation, bien de la versión 2 de la Licencia, o (a su elección) cualquier versión posterior. Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA, incluso sin la garantía implícita de COMERCIALIZACIÓN o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Véase la Licencia Pública General GNU para más detalles. Debería haber recibido una copia de la Licencia Pública General GNU junto con este programa, si no, escriba a la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, EE.UU.Lenguaje1) Dimensionar las Ventanas Manualmente2) Selecciona Las Ventanas Dimensionadas en X Tile3) Haz Clic en ActualizarDiseño Personalizado de MosaicoAcerca de X TileAgregar FilaAgregar un Filtro de AplicaciónCancelarCerrarCerrar VentanasCierra las Ventanas SeleccionadaColumnasAjuste Per_sonalizado 1Ajuste P_ersonalizado 2Personalizado _1Personalizado _2Disminuye tamaño de los Iconos de la Barra de HerramientasDesmarcar _todoDes-tilda Todas las Ventanas de la Lista No lista las ventanas MinimizadasEdita la configuración de Mosaico Personalizado 1Edita la configuración de Mosaico Personalizado 2Editar configuración Personalizada de MosaicoHabilitar el Sistema de acoplamiento de bandejaEjecuta el ajuste del Mosaico Personalizado 1Ejecuta el ajuste del Mosaico Personalizado 2Salir Después de MosaicoSalir Después del MosaicoFiltrar FilasDetallar CuadriculaAlturaAumenta tamaño de los Iconos de la Barra de HerramientasInvertir el orden de la última operaciónMaximizar VentanasMaximiza las ventanas SeleccionadasB_ajarS_ubirMueve la Fila Seleccionada AbajoMueve la Fila Seleccionada ArribaNo hay ninguna Aplicación Seleccionada!No hay Filas SeleccionadasNo hay Ventanas SeleccionadasOKSólo en el actual Espacio de TrabajoAbre las Preferencias de VentanasÁrea de monitor 1 Mosaico PersonalizadoÁrea de monitor 2 Mosaico PersonalizadoPosiciónPreferenciasSalir de AplicaciónActualiza la Lista de VentanasQuitar un Filtro aplicadoElimina la Fila SeleccionadaFilaFiltrar FilasFilas para seleccionar por defectoTilda Todas las Ventanas de la Lista M_arcar TodoSeleccionar por _DefectoEstablecer el destino del Área de TrabajoBarra de HerramientasBarra de _HerramientasMuestra y Oculta _X TileTamañoIniciar Minimizado en la Bandeja del SistemaEl Mosaico Personalizado 1 No de ha establecido: Haz Clic en el Menú -> Mosaico Personalizado 1El Mosaico Personalizado 2 No de ha establecido: Haz Clic en el Menú -> Mosaico Personalizado 2El nuevo idioma no estará disponible hasta que Reinicie X TileEl tamaño de los Iconos de la Barra de Herramientas ya está en su Valor MáximoEl tamaño de los Iconos de la Barra de Herramientas ya está en su Valor MínimoPersonalizado _1Personalizado _2Triangular A_bajoTriangular _IzquierdaTriangular _DerechaTriangular _ArribaPersonalizado 1Personalizado 2CuadriculaHorizontalCuadriculaTriangular AbajoTriangular IzquierdaTriangular DerechaTriangular ArribaVertical_Cuadricula_Horizontal_Cuadricula_VerticalMuestra las Ventanas en modo Mosaico HorizontalMuestra las Ventanas en Modo Triangular hacia AbajoMuestra las Ventanas en Modo Triangular hacia la IzquierdaMuestra las Ventanas en Modo Triangular hacia la DerechaMuestra las Ventanas en Modo Triangular hacia ArribaMuestra las Ventanas en modo Mosaico VerticalMosaico CuadriculaMosaico _HorizontalMosaico CuadriculaMosaico _VerticalMuestra las Ventanas en Modo CuadriculaMuestra las Ventanas en Modo CuadriculaMosaico de Windows Sobre su escritorio XMuestra y Oculta la Barra de HerramientasMuestra y Oculta X TileTriangulo _AbajoTriangulo _IzquierdaTriangulo _Derecha_DeshacerDeshacer el Ultimo Mosaico AplicadoRestaurar VentanasRestaura las Ventanas SeleccionadasActualizarUtilice Arrastrar y Soltar para ordenar las FilasAnchoXX TilePagina del Proyecto X TileY_Acerca de_Cerrar Todo_Cerrar VentanasA_chicar Iconos_EditarSalir D_espués de Mosaico_Archivo_Filtro_Ayuda_Agrandar Iconos_Invertir Orden_Maximizar Todo_Maximizar Ventanas_Preferencias_Salir_Actualizar_Eliminar_Fila_Mosaico_Triangulo Arriba_Restaurar TodoResta_urar Ventanas_Verhttp://www.giuspen.com/x-tile/x-tile-2.5/locale/zh_TW.po0000644000175200017520000004131412023373714014405 0ustar develdevel# Chinese translations for PACKAGE package # traditional Chinese translation for PACKAGE. # Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Automatically generated, 2010. # Yan-ren Tsai , 2010, 2011, 2012. # msgid "" msgstr "" "Project-Id-Version: 2.3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-08 05:53+0800\n" "Last-Translator: Yan-ren Tsai \n" "Language-Team: 漢語 \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bits\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "使用拖拉來排序列" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "新的語言在重新啟動 X Tile 後才會生效。" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "在你的X桌面上排列視窗" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "工具列圖示的尺寸已經是最大的了。" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "工具列圖示的尺寸已經是最小的了。" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "沒有選定任何列" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "沒有選擇任何應用程式!" #: modules/core.py:855 msgid "Grid Details" msgstr "格框詳情" #: modules/core.py:863 msgid "Rows" msgstr "列" #: modules/core.py:870 msgid "Columns" msgstr "欄" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "沒選擇視窗" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "編輯自訂排列設定" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "自訂排列1尚未設定:點擊選單項目 '排列->自訂排列1' 進行設定。" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "自訂排列2尚未設定:點擊選單項目 '排列->自訂排列2' 進行設定。" #: modules/cons.py:268 msgid "_File" msgstr "檔案 (_F)" #: modules/cons.py:269 msgid "_Edit" msgstr "編輯 (_E)" #: modules/cons.py:270 msgid "_Row" msgstr "列(_R)" #: modules/cons.py:271 msgid "_Tile" msgstr "排列 (_T)" #: modules/cons.py:272 msgid "_View" msgstr "檢視 (_V)" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "求助 (_H)" #: modules/cons.py:275 msgid "_Filter" msgstr "篩選 (_F)" #: modules/cons.py:275 msgid "Filter Rows" msgstr "篩選列" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "預設選定的" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "預設選定的列" #: modules/cons.py:277 msgid "_Reload" msgstr "重新載入" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "重新載入視窗列表" #: modules/cons.py:278 msgid "_Quit" msgstr "離開 (_Q)" #: modules/cons.py:278 msgid "Quit the Application" msgstr "離開應用程式" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "離開X Tile(_E)" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "從X Tile離開" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "顯示/隱藏 X Tile (_X)" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "切換顯示/隱藏 X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "偏好設定 (_P)" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "開啟偏好設定視窗" #: modules/cons.py:282 msgid "Select _All" msgstr "選擇全部 (_A)" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "選擇列表內所有視窗" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "取消選擇全部 (_l)" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "取消選擇列表上所有視窗" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "垂直鋪排 (_V)" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "垂直鋪排選定的視窗" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "水平鋪排 (_H)" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "水平鋪排選定的視窗" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "三等份,最大的在上 (_T)" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "平舖選定視窗為三等份,最大的在上" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "三等份,最大的在下 (_D)" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "平舖選定視窗為三等份,最大的在下" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "三等份,最大的在左 (_L)" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "平舖選定視窗為三等份,最大的在左" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "三等份,最大的在右 (_R)" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "平舖選定視窗為三等份,最大的在右" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "平鋪為4個 (_Q)" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "將選定的視窗平鋪到四個象限" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "平鋪為格框 (_G)" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "平鋪選定的視窗為一個任意格框" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "自訂鋪排1設定 (_S)" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "編輯自訂鋪排1設定" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "執行自訂鋪排1 (_1)" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "執行自訂鋪排1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "自訂鋪排2設定 (_e)" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "編輯自訂鋪排2設定" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "執行自訂鋪排2 (_2)" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "執行自訂鋪排2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "復原鋪排" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "復原最後一次鋪排的動作" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "將鋪排順序顛倒 (_I)" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "將最後一次鋪排的動作顛倒" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "循環切換鋪排順序 (_C)" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "循環順序到最後一次鋪排的動作" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "最大化視窗 (_M)" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "最大化選定的視窗" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "不最大化視窗 (_U)" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "不最大化選定的視窗" #: modules/cons.py:301 msgid "_Close Windows" msgstr "關閉視窗 (_C)" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "關閉選定視窗" #: modules/cons.py:302 msgid "Move _Up" msgstr "往上移 (_U)" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "將選定列移上去" #: modules/cons.py:303 msgid "Move _Down" msgstr "往下移 (_D)" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "將選定列移下來" #: modules/cons.py:304 msgid "_Remove" msgstr "移除 (_R)" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "移除選定的列" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "顯示/隱藏工具列 (_T)" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "切換顯示/隱藏工具列" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "將工具列圖示變大 (_I)" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "放大工具列圖示" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "將工具列圖示變小 (_D)" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "縮小工具列圖示" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "X Tile 專案首頁" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "關於 (_A)" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "關於 X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "關閉所有(_C)" #: modules/cons.py:311 msgid "Close All Windows" msgstr "關閉所有視窗" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "不最大化全部 (_U)" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "不最大化所有視窗" #: modules/cons.py:313 msgid "_Maximize All" msgstr "最大化全部 (_M)" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "最大化所有視窗" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "平鋪所有視窗為4個 (_Q)" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "平鋪所有視窗為4個" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "平舖所有視窗為三等份,最大的在下 (_D)" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "平舖所有視窗為三等份,最大的在下" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "平舖所有視窗為三等份,最大的在上 (_U)" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "平舖所有視窗為三等份,最大的在上" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "平舖所有視窗為三等份,最大的在右 (_R)" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "平舖所有視窗為三等份,最大的在右" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "平舖所有視窗為三等份,最大的在左 (_L)" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "平舖所有視窗為三等份,最大的在左" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "平舖所有自訂2 (_2)" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "平舖所有自訂2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "平舖所有自訂1 (_1)" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "平舖所有自訂1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "平鋪所有為格框 (_G)" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "平鋪所有為格框" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "水平鋪排所有視窗 (_H)" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "水平鋪排所有視窗" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "垂直鋪排全部視窗 (_V)" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "垂直鋪排所有視窗" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "本程式為自由軟體;您可依據自由軟體基金會所發表的 GNU 通用公共授權條款規定,就" "本程式再為散布與/或修改;無論您依據的是本授權的第二版或(您自行選擇的)任一" "日後發行的版本。\n" "\n" "本程式係基於使用目的而加以散布,然而不負任何擔保責任;亦無對適售性或特定目的" "適用性所為的默示性擔保。詳情請參照 GNU 通用公共授權。\n" "\n" "您應已收到附隨於本程式的 GNU 通用公共授權的副本;如無,請寫信至自由軟體基金" "會:51 Franklin Street, Fifth Floor, Boston, Ma 02110-1301, USA。" #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "漢語(繁體中文) (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "法語 (fr) Ludovic Troisi \n" "德語 (de) Jöran Zeller \n" "義大利語 (it) Giuseppe Penone \n" "波蘭語 (pl) Dominik Wójt \n" "俄語 (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "偏好設定" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "不要列出已經最小化的視窗" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "只有目前工作區" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "啟用系統匣停駐" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "啟動時最小化到系統匣" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "使用 AppIndicator 停駐" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "顯示工具列" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "語言" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "以下面設定取代第一個螢幕的鋪排區域" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "位置" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "寬" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "高" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "尺寸" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "以下面設定取代第二個螢幕的鋪排區域" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "關閉" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "取消" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "自訂鋪排版面" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) 手動鋪排某些視窗" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) 在 X Tile 視窗列表裡選擇視窗" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) 點擊更新按鈕" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "更新" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "列轉篩選器" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "增加應用程式篩選器" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "移除應用程式篩選器" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "增加列" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "設置目標工作區" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "鋪排後離開" x-tile-2.5/locale/it.po0000644000175200017520000004300312023373714013763 0ustar develdevel# Italian translations for PACKAGE package. # Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # maul , 2010. # msgid "" msgstr "" "Project-Id-Version: x-tile 2.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-07 22:44+0100\n" "Last-Translator: Giuseppe Penone \n" "Language-Team: Italian\n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Usa il Drag and Drop per Ordinare le Righe" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "La Nuova Lingua Sara' Disponibile Solo Dopo Aver Riavviato X Tile" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Piastrella le finestre sul tuo Desktop X" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "La Dimensione del Toolbar e' gia' al Massimo Valore" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "La Dimensione del Toolbar e' gia' al Minimo Valore" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Nessuna Riga e' Selezionata" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Nessuna Applicazione e' Selezionata!" #: modules/core.py:855 msgid "Grid Details" msgstr "Dettagli Griglia" #: modules/core.py:863 msgid "Rows" msgstr "Righe" #: modules/core.py:870 msgid "Columns" msgstr "Colonne" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Nessuna finestra e' Selezionata" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Modifica Impostazioni Piastrellamento Personalizzato" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "Il Piastrellamento Personalizzato 1 Non e' Ancora Stato Impostato: Clicca la " "Voce di Menu 'Piastrella->Imposta Piastrellamento Personalizzato 1'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "Il Piastrellamento Personalizzato 2 Non e' Ancora Stato Impostato: Clicca la " "Voce di Menu 'Piastrella->Imposta Piastrellamento Personalizzato 2'" #: modules/cons.py:268 msgid "_File" msgstr "_File" #: modules/cons.py:269 msgid "_Edit" msgstr "_Modifica" #: modules/cons.py:270 msgid "_Row" msgstr "_Riga" #: modules/cons.py:271 msgid "_Tile" msgstr "_Piastrella" #: modules/cons.py:272 msgid "_View" msgstr "_Visualizza" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "_Aiuto" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filtro" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtra Righe" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Selezionate di _Default" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Righe da Selezionare di Default" #: modules/cons.py:277 msgid "_Reload" msgstr "_Ricarica" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Ricarica la Lista delle Finestre" #: modules/cons.py:278 msgid "_Quit" msgstr "_Esci" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Esci dall'Applicazione" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "_Esci da X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Esci da X Tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Mostra/Nascondi _X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Mostra/Nascondi X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Preferenze" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Apri la finestra delle Preferenze" #: modules/cons.py:282 msgid "Select _All" msgstr "Selezion_a Tutto" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Seleziona Tutte le Finestre nella Lista" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "Dese_leziona Tutto" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Deseleziona Tutte le Finestre nella Lista" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Piastrella _Verticalmente" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Piastrella Verticalmente le finestre Selezionate" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Piastrella _Orizzontalmente" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Piastrella Orizzontalmente le finestre Selezionate" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "Triangolo S_u" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Piastrella Triangolo Sopra le finestre Selezionate" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Triangolo _Giu'" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Piastrella Triangolo Sotto le finestre Selezionate" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Triangolo _Sinistra" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Piastrella Triangolo Sinistra le finestre Selezionate" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Triangolo _Destra" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Piastrella Triangolo Destra le finestre Selezionate" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Piastrella Qua_d" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Piastrella in 4 Quadranti le finestre Selezionate" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Piastrella _Griglia" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Piastrella in una Griglia arbitraria le finestre Selezionate" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Imposta Piastrellamento Personali_zzato 1" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Modifica Impostazioni Piastrellamento Personalizzato 1" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Esegui Piastrellamento Personalizzato _1" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Esegui Piastrellamento Personalizzato 1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Impos_ta Piastrellamento Personalizzato 2" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Modifica Impostazioni Piastrellamento Personalizzato 2" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Esegui Piastrellamento Personalizzato _2" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Esegui Piastrellamento Personalizzato 2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "_Annulla Piastrellamento" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Annulla l'Ultima Operazione di Piastrellamento" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Inverti Ordine Piastrellamento" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Inverti l'Ordine dell' Ultima Operazione di Piastrellamento" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "Cic_la Ordine Piastrellamento" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Cicla l'Ordine dell' Ultima Operazione di Piastrellamento" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "_Massimizza Finestre" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Massimizza le finestre Selezionate" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "D_emassimizza Finestre" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Demassimizza le Finestre Selezionate" #: modules/cons.py:301 msgid "_Close Windows" msgstr "_Chiudi Finestre" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Chiudi le Finestre Selezionate" #: modules/cons.py:302 msgid "Move _Up" msgstr "Muovi S_u" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Muovi Su la Riga Selezionata" #: modules/cons.py:303 msgid "Move _Down" msgstr "Muovi _Giu'" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Muovi Giu' la Riga Selezionata" #: modules/cons.py:304 msgid "_Remove" msgstr "_Rimuovi" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Rimuovi le Righe Selezionate" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Mostra/Nascondi _Toolbar" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Mostra/Nascondi il Toolbar" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "_Aumenta la Dimensione delle Icone della Toolbar" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Aumenta la Dimensione delle Icone della Toolbar" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "_Diminuisci la Dimensione delle Icone del Toolbar" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Diminuisci la Dimensione delle Icone della Toolbar" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Home Page del Progetto X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "_Informazioni" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "Informazioni su X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "Chiudi Tutte le Finestre" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Chiudi Tutte le Finestre" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "_Demassimizza Tutte" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Demassimizza Tutte le Finestre" #: modules/cons.py:313 msgid "_Maximize All" msgstr "_Massimizza Tutte" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Massimizza Tutte le Finestre" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Piastrella Tutte _Quad" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Piastrella Tutte le Finestre Quad" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Piastrella Tutte Triangolo _Giu'" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Piastrella Tutte le Finestre Triangolo Giu'" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Piastrella Tutte Triangolo S_u" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Piastrella Tutte le Finestre Triangolo Su" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Piastrella Tutte Triangolo _Destra" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Piastrella le Finestre Tutte Triangolo Destra" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Piastrella Tutte Triangolo _Sinistra" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Piastrella Tutte le Finestre Triangolo Sinistra" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Piastrella Tutte Personalizzato _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Piastrella Tutte le Finestre Personalizzato 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Piastrella Tutte Personalizzato _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Piastrella Tutte le Finestre Personalizzato 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Piastrella Tutte _Griglia" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Piastrella Tutte le Finestre Griglia" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Piastrella Tutte _Orizzontalmente" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Piastrella Tutte le Finestre Orizzontalmente" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Piastrella Tutte _Verticalmente" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Piastrella Tutte le Finestre Verticalmente" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Questo programma e' software libero; puoi ridistribuirlo e/o modificarlo\n" "nei termini della GNU General Public License come pubblicato dalla\n" "Free Software Foundation; nella versione 2 della Licenza, o\n" "(a tua scelta) qualsiasi versione successiva.\n" " \n" "Questo programma e' distribuito nella speranza che sara' utile,\n" "ma SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita di\n" "COMMERCIABILITA' o IDONEITA' PER UN PARTICOLARE SCOPO. Leggi la\n" "GNU General Public License per maggiori dettagli.\n" " \n" "Dovresti avere ricevuto una copia della GNU General Public License\n" "insieme a questo programma; in caso contrario, scrivi a Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chinese Semplificato (zh_CN) Khiyuan Fan \n" "Cinese Tradizionale (zh_TW) Yan-ren Tsai \n" "Ceco (cs) Pavel Fric \n" "Francese (fr) Ludovic Troisi \n" "Tedesco (de) Jöran Zeller \n" "Italiano (it) Giuseppe Penone \n" "Polacco (pl) Dominik Wójt \n" "Russo (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Preferenze" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Non Elencare Finestre Minimizzate" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Solo il Workspace Corrente" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Abilita l'Ancoraggio a System Tray" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Avvia Minimizzato su System Tray" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "Usa AppIndicator per l'Ancoraggio" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Mostra Toolbar" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "Lingua" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Area di Tiling del Monitor 1 Personalizzata" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Posizione" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Larghezza" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Altezza" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Dimensione" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Area di Tiling del Monitor 2 Personalizzata" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Chiudi" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Annulla" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Disposizione Piastrellamento Personalizzato" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Piastrella Alcune Finestre Manualmente" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Selezionale nella Lista di Finestre di X Tile" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Clicca il il Bottone Aggiorna" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Aggiorna" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Righe da Filtrare" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Aggiungi un Filtro ad Applicazione" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Rimuovi un Filtro Applicazione" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Aggiungi Riga" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Spazio di Lavoro Destinatario" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Esci Dopo il Tiling" x-tile-2.5/locale/i18n_update_pot.sh0000755000175200017520000000037411777520730016364 0ustar develdevel#!/bin/sh cd .. intltool-extract --type=gettext/glade glade/x-tile.glade xgettext --language=Python --from-code=utf-8 --keyword=_ --keyword=N_ --output=locale/x-tile.pot x-tile modules/tilings.py modules/core.py modules/cons.py glade/x-tile.glade.h x-tile-2.5/locale/de/0000755000175200017520000000000012026051676013402 5ustar develdevelx-tile-2.5/locale/de/LC_MESSAGES/0000755000175200017520000000000012026051676015167 5ustar develdevelx-tile-2.5/locale/de/LC_MESSAGES/x-tile.mo0000644000175200017520000003163112026045774016734 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{o$ "!#-## Q#"r# ##"## #$ %%!%%]%K&f&%&%&4&$'''#8'"\'''%''$'$(A(X(h( w((%(7(())4),J)+w))))))*%0*%V*|* ** * ****' +4+D+V+g++++++u+qj,?,(-(E-n-}-------.2.O. m. .!... /!/2/D/S/c/w/// / ////040!H0)j0!00000.1"21'U1}1!1,111111122%)2 O2[2l2s2{2&2"22223 3 3 3'3-3<3 P3q3z36jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: x-tile 1.5 Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-09 17:26+0100 Last-Translator: Jöran Zeller Language-Team: German Language: German (Deutsch) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n != 1); Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 3 der Lizenz oder (nach Ihrer Option) jeder späteren Version. Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. Details finden Sie in der GNU General Public License. Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls nicht, siehe . Sprache 1) Tile bestimmte Fenster manuell2) Wähle sie in der X Tile Fenster Liste aus3) Klicke auf den neuladen KnopfPersönliches Tiling SchemaÜber X TileZeile hinzufügenEinen Anwendungsfilter hinzufügen_Durchlaufe Tiling ReihenfolgeAbbrechenChinesisch vereinfacht (zh_CN) Khiyuan Fan Chinesisch traditionell (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Russian (ru) Andriy Kovtun SchliessenAlle Fenster schliessenSchliesse alle markierten FensterSpaltenCopyright © 2009-2012 Giuseppe Penone Chris Camacho Eigenes _Schema (1) setzenEigenes Schema (2) s_etzenEigenes Tiling Schema (_1) ausführenEigenes Tiling Schema (_2) ausführenDurchlaufe die Reihenfolge der letzten tiling AktionVerkleinere Icons der WerkzeugleisteA_lles abwählenAlle Fenster in der Liste abwählenZeige keine minimierten Fenster anEigenes Schema (1) bearbeitenEigenes Schema (2) bearbeitenPersönliche Tiling Schema bearbeitenDocken zu System TrayEigenes Tiling Schema (1) ausführenEigenes Tiling Schema (2) ausführenSchliessen nach tilingVerlasse X TileFiltere ZeilenGrid DetailsHöheVergrössere Icons der WerkzeugleisteInvertiere die Reihenfolge der letzten tiling OperationAlle Fenster maximierenMarkierte Fenster maximierenVerschiebe nach _untenVerschiebe nach _obenVerschiebe die ausgewählte Zeile nach untenVerschiebe die ausgewählte Zeile nach obenKeine Anwendung ausgewählt!Keine Zeile ausgewähltKeine Fenster ausgewähltOKNur momentanen ArbeitsbereichÖffnen der VoreinstellungenTiling Areal Monitor 1 überschreibenTiling Areal Monitor 2 überschreibenPositionEinstellungen_Beenden der AnwendungNeu ladenEinen Anwendungsfilter entfernenEntferne die markierte Zeile_ZeileFilter hinzufügenZeilen die immer selektiert sein sollenAlles markieren_Alles auswählenImmer selektiertSetze Ziel ArbeitsflächeZeige WerkzeugleisteZeige/Verstecke WerkzeugleisteZeige/Verstecke X TileGrösseStarte minimiert im System TrayDas persönliche tiling Schema (1) wurde noch nicht übernommen: Im Menü 'Tile->Eigenes Schema (1) setzen anklicken'Das persönliche tiling Schema wurde noch nicht übernommen: Im Menü 'Tile->Eigenes Schema (2) setzen anklicken'Neue Spracheinstellung erst nach Neustart von X Tile verfügbarWerkzeugleisten Icons sind schon maximalWerkzeugleisten Icons sind schon minimalTile Schema _1Tile Schema _2Tile Triangel _untenTile Triangel _linksTile Triangel _rechtsTile Triangel _obenTile alle Fenster Schema 1Tile alle Fenster Schema 2Tile alle Fenster in RasterTile alle Fenster horizontalTile alle Fenster QuadratischTile alle Fenster Triangel untenTile alle Fenster Triangel linksTile alle Fenster Triangel rechtsTile alle Fenster Triangel obenTile alle Fenster vertikalTile alle in _RasterTile _horizontalTile _QuadratischTile _vertikalTile horizontalTile Triangel untenTile Triangel linksTile Triangle rechtsTile Triangel obenTile vertikalTile _Raster_Horizontal TilenTile _quadratisch_Vertikal TilenTile quadratischTile die markierten Fenster in ein beliebiges RasterTile Fenster auf deinem X DesktopSchalte Zeige/Verstecke Werkzeugleiste umSchalte Zeige/Verstecke X Tile umTriangel _untenTriangel _linksTriangel _rechtsTiling rückgä_ngig machenMache die letzte tiling Operation rückgängigMaximierung aller Fenster aufhebenMaximierung markierter Fenster aufhebenUpdateBenutze AppIndicator zum AndockenBenutze Drag and Drop um Zeilen zu sortierenBreiteXX TileX Tile Projekt Home PageY_Über_Alle schliessenFenster schliessen_Verkleinere Icons der Werkzeugleiste_Bearbeiten_Verlasse X Tile_Datei_Filter_Hilfe_Vergrössere Icons der Werkzeugleiste_Invertiere die tiling Reihenfolge_Maximiere AllesFenster maximieren_Voreinstellungen_Beenden_Neu Laden_Entferne_Zeile_Tile_Triangel obenAlles _demaximierenMaximierung der Fenster aufheben_Ansichthttp://www.giuspen.com/x-tile/x-tile-2.5/locale/es_AR.po0000644000175200017520000004160212023373714014343 0ustar develdevel# Spanish translations for PACKAGE package. # Copyright (C) 2011 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # giuspen , 2011. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-05-25 14:46-0300\n" "Last-Translator: melopixel \n" "Language-Team: Spanish \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-Language: Spanish\n" "X-Poedit-Country: ARGENTINA\n" "X-Poedit-SourceCharset: utf-8\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Utilice Arrastrar y Soltar para ordenar las Filas" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "El nuevo idioma no estará disponible hasta que Reinicie X Tile" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Mosaico de Windows Sobre su escritorio X" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "" "El tamaño de los Iconos de la Barra de Herramientas ya está en su Valor " "Máximo" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "" "El tamaño de los Iconos de la Barra de Herramientas ya está en su Valor " "Mínimo" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "No hay Filas Seleccionadas" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "No hay ninguna Aplicación Seleccionada!" #: modules/core.py:855 msgid "Grid Details" msgstr "Detallar Cuadricula" #: modules/core.py:863 msgid "Rows" msgstr "Fila" #: modules/core.py:870 msgid "Columns" msgstr "Columnas" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "No hay Ventanas Seleccionadas" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Editar configuración Personalizada de Mosaico" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "El Mosaico Personalizado 1 No de ha establecido: Haz Clic en el Menú -> " "Mosaico Personalizado 1" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "El Mosaico Personalizado 2 No de ha establecido: Haz Clic en el Menú -> " "Mosaico Personalizado 2" #: modules/cons.py:268 msgid "_File" msgstr "_Archivo" #: modules/cons.py:269 msgid "_Edit" msgstr "_Editar" #: modules/cons.py:270 msgid "_Row" msgstr "_Fila" #: modules/cons.py:271 msgid "_Tile" msgstr "_Mosaico" #: modules/cons.py:272 msgid "_View" msgstr "_Ver" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "_Ayuda" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filtro" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtrar Filas" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Seleccionar por _Defecto" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Filas para seleccionar por defecto" #: modules/cons.py:277 msgid "_Reload" msgstr "_Actualizar" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Actualiza la Lista de Ventanas" #: modules/cons.py:278 msgid "_Quit" msgstr "_Salir" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Salir de Aplicación" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "Salir D_espués de Mosaico" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Salir Después del Mosaico" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Muestra y Oculta _X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Muestra y Oculta X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Preferencias" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Abre las Preferencias de Ventanas" #: modules/cons.py:282 msgid "Select _All" msgstr "M_arcar Todo" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Tilda Todas las Ventanas de la Lista " #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "Desmarcar _todo" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Des-tilda Todas las Ventanas de la Lista " #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Mosaico _Vertical" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Muestra las Ventanas en modo Mosaico Vertical" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Mosaico _Horizontal" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Muestra las Ventanas en modo Mosaico Horizontal" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "_Triangulo Arriba" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Muestra las Ventanas en Modo Triangular hacia Arriba" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Triangulo _Abajo" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Muestra las Ventanas en Modo Triangular hacia Abajo" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Triangulo _Izquierda" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Muestra las Ventanas en Modo Triangular hacia la Izquierda" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Triangulo _Derecha" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Muestra las Ventanas en Modo Triangular hacia la Derecha" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Mosaico Cuadricula" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Muestra las Ventanas en Modo Cuadricula" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Mosaico Cuadricula" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Muestra las Ventanas en Modo Cuadricula" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Ajuste Per_sonalizado 1" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Edita la configuración de Mosaico Personalizado 1" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Personalizado _1" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Ejecuta el ajuste del Mosaico Personalizado 1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Ajuste P_ersonalizado 2" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Edita la configuración de Mosaico Personalizado 2" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Personalizado _2" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Ejecuta el ajuste del Mosaico Personalizado 2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "_Deshacer" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Deshacer el Ultimo Mosaico Aplicado" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Invertir Orden" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Invertir el orden de la última operación" #: modules/cons.py:298 modules/cons.py:326 #, fuzzy msgid "C_ycle Tiling Order" msgstr "_Invertir Orden" #: modules/cons.py:298 modules/cons.py:326 #, fuzzy msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Invertir el orden de la última operación" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "_Maximizar Ventanas" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Maximiza las ventanas Seleccionadas" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "Resta_urar Ventanas" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Restaura las Ventanas Seleccionadas" #: modules/cons.py:301 msgid "_Close Windows" msgstr "_Cerrar Ventanas" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Cierra las Ventanas Seleccionada" #: modules/cons.py:302 msgid "Move _Up" msgstr "S_ubir" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Mueve la Fila Seleccionada Arriba" #: modules/cons.py:303 msgid "Move _Down" msgstr "B_ajar" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Mueve la Fila Seleccionada Abajo" #: modules/cons.py:304 msgid "_Remove" msgstr "_Eliminar" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Elimina la Fila Seleccionada" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Barra de _Herramientas" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Muestra y Oculta la Barra de Herramientas" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "_Agrandar Iconos" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Aumenta tamaño de los Iconos de la Barra de Herramientas" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "A_chicar Iconos" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Disminuye tamaño de los Iconos de la Barra de Herramientas" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Pagina del Proyecto X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "_Acerca de" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "Acerca de X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "_Cerrar Todo" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Cerrar Ventanas" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "_Restaurar Todo" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Restaurar Ventanas" #: modules/cons.py:313 msgid "_Maximize All" msgstr "_Maximizar Todo" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Maximizar Ventanas" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "_Cuadricula" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Cuadricula" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Triangular A_bajo" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Triangular Abajo" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Triangular _Arriba" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Triangular Arriba" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Triangular _Derecha" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Triangular Derecha" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Triangular _Izquierda" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Triangular Izquierda" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Personalizado _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Personalizado 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Personalizado _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Personalizado 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "_Cuadricula" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Cuadricula" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "_Horizontal" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Horizontal" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "_Vertical" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Vertical" #: glade/x-tile.glade.h:2 #, fuzzy msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2011\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Este programa es software libre, puede redistribuirlo y/o modificarlo \n" "bajo los términos de la GNU General Public License publicada por \n" "la Free Software Foundation, bien de la versión 2 de la Licencia, o \n" "(a su elección) cualquier versión posterior. \n" "\n" "Este programa se distribuye con la esperanza de que sea útil, \n" "pero SIN NINGUNA GARANTÍA, incluso sin la garantía implícita de \n" "COMERCIALIZACIÓN o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Véase la \n" "Licencia Pública General GNU para más detalles. \n" "\n" "Debería haber recibido una copia de la Licencia Pública General GNU \n" "junto con este programa, si no, escriba a la Free Software \n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, \n" "MA 02110-1301, EE.UU." #: glade/x-tile.glade.h:22 #, fuzzy msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Cinese Tradizionale (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "Francese (fr) Ludovic Troisi \n" "Tedesco (de) Jöran Zeller \n" "Italiano (it) Giuseppe Penone \n" "Russo (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Preferencias" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "No lista las ventanas Minimizadas" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Sólo en el actual Espacio de Trabajo" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Habilitar el Sistema de acoplamiento de bandeja" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Iniciar Minimizado en la Bandeja del Sistema" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Barra de Herramientas" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "Lenguaje" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Área de monitor 1 Mosaico Personalizado" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Posición" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Ancho" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Altura" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Tamaño" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Área de monitor 2 Mosaico Personalizado" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Cerrar" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Cancelar" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Diseño Personalizado de Mosaico" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Dimensionar las Ventanas Manualmente" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Selecciona Las Ventanas Dimensionadas en X Tile" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Haz Clic en Actualizar" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Actualizar" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Filtrar Filas" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Agregar un Filtro de Aplicación" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Quitar un Filtro aplicado" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Agregar Fila" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Establecer el destino del Área de Trabajo" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Salir Después de Mosaico" x-tile-2.5/locale/pl.po0000644000175200017520000004267112026045761013775 0ustar develdevel# Polish translations for PACKAGE package. # Copyright (C) 2012 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Dominik Wójt , 2012. # msgid "" msgstr "" "Project-Id-Version: X Tile\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-13 23:50+0100\n" "Last-Translator: Dominik Wójt \n" "Language-Team: Polish\n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2)\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Użyj przeciągania, aby sortować rzędy" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "Nowy język będzie dostępny dopiero po ponownym uruchomieniu X Tile" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Ułóż okna na twoim pulpicie X" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "Rozmiar paska narzędzi ma już maksymalną wartość" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "Rozmiar ikon paska narzędzi ma już maksymalną wartość" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Żaden rząd nie jest zaznaczony" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Żadna aplikacja nie jest zaznaczona" #: modules/core.py:855 msgid "Grid Details" msgstr "Szczegóły siatki" #: modules/core.py:863 msgid "Rows" msgstr "Rzędy" #: modules/core.py:870 msgid "Columns" msgstr "Kolumny" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Żadne okno nie jest zaznaczone" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Ustaw niestandardowe ustawienia układu" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "Niestandardowy układ 1 nie został jeszcze ustawiony: Kliknij element menu " "'Układ->Ustaw niestandardowy układ 1'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "Niestandardowy układ 2 nie został jeszcze ustawiony: Kliknij element menu " "'Układ->Ustaw niestandardowy układ 2'" #: modules/cons.py:268 msgid "_File" msgstr "_Plik" #: modules/cons.py:269 msgid "_Edit" msgstr "_Edycja" #: modules/cons.py:270 msgid "_Row" msgstr "_Rząd" #: modules/cons.py:271 msgid "_Tile" msgstr "_Ułóż" #: modules/cons.py:272 msgid "_View" msgstr "_Widok" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "_Pomoc" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filtruj" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtruj Rzędy" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Wybrane _domyślnie" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Rzędy, które mają być wybrane domyślnie" #: modules/cons.py:277 msgid "_Reload" msgstr "_Odśwież" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Odśwież listę okien" #: modules/cons.py:278 msgid "_Quit" msgstr "_Wyjdź" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Wyjdź z aplikacji" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "_Zamknij X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Zamknij X tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Pokaż/ukryj _X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Przełącz pokaż/ukryj X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Preferencje" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Otwórz okno preferencji" #: modules/cons.py:282 msgid "Select _All" msgstr "Zaznacz _wszystkie" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Zaznacz wszystkie okna na liście" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "_Odznacz wszystkie" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Odznacz wszystkie okna na liście" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Ułóż _pionowo" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Ułóż pionowo zaznaczone okna" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Ułóż po_ziomo" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Ułóż poziomo zaznaczone okna" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "Trójkąt _górny" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Ułóż zaznaczone okna w trójkąt górny" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Trójkąt _dolny" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Ułóż zaznaczone okna w trójkąt dolny" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Trójkąt _lewy" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Ułóż zaznaczone okna w trójkąt lewy" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Trójkąt _prawy" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Ułóż zaznaczone okna w trójkąt prawy" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Ułóż w _kwadrat" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Ułóż zaznaczone okna w kwadrat" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "_Siatka" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Ułóż zaznaczone okna w siatkę" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Ustaw _niestandardowy układ 1" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Edytuj ustawienia niestandardowego układu 1" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Ułóż w niestandardowy układ _1" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Ułóż w niestandardowy układ 1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Ustaw n_iestandardowy układ 2" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Edytuj ustawienia niestandardowego układu 2" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Ułóż w niestandardowy układ _2" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Ułóż w niestandardowy układ 2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "Co_fnij układanie" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Cofnij ostatnią operację układania" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Odwróć kolejność układania" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Odwróć kolejność ostatniej operacji układania" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "Przesuń c_yklicznie kolejność układania" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Przesuń cyklicznie kolejność ostatniej operacji układania" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "Z_maksymalizuj okna" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Zmaksymalizuj okna" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "Prz_ywróć okna" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Przywróć rozmiar zaznaczonych okien" #: modules/cons.py:301 msgid "_Close Windows" msgstr "_Zamknij okna" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Zamknij zaznaczone okna" #: modules/cons.py:302 msgid "Move _Up" msgstr "Przesuń do _góry" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Przesuń zaznaczony rząd do góry" #: modules/cons.py:303 msgid "Move _Down" msgstr "Przesuń w _dół" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Przesuń zaznaczony rząd w dół" #: modules/cons.py:304 msgid "_Remove" msgstr "_Usuń" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Usuń zaznaczony rząd" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Pokaż/ukryj pasek _narzędzi" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Przełącz pokaż/ukryj pasek narzędzi" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "_Zwiększ rozmiar ikon paska narzędzi" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Zwiększ rozmiar ikon paska narzędzi" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "Z_mniejsz rozmiar ikon paska narzędzi" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Zmniejsz rozmiar ikon paska narzędzi" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Strona domowa projektu X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "_O programie" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "O X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "_Zamknij wszystkie" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Zamknij wszystkie okna" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "_Przywróć wszystkie" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Przywróć rozmiar wszystkich okien" #: modules/cons.py:313 msgid "_Maximize All" msgstr "_Zmaksymalizuj wszystkie" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Zmaksymalizuj wszystkie okna" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Ułóż wszystkie w _kwadrat" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Ułóż wszystkie okna w kwadrat" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Ułóż wszystkie w trójkąt _dolny" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Ułóż wszystkie okna w trójkąt dolny" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Ułóż wszystkie w trójkąt _górny" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Ułóż wszystkie okna w trójkąt górny" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Ułóż wszystkie w trójkąt _prawy" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Ułóż wszystkie okna w trójkąt prawy" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Ułóż wszystkie w trójkąt _lewy" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Ułóż wszystkie okna w trójkąt lewy" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Ułóż wszystkie w układ niestandardowy _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Ułóż wszystkie okna w układ niestandardowy 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Ułóż wszystkie w układ niestandardowy _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Ułóż wszystkie okna w układ niestandardowy 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Ustaw wszystkie w _siatkę" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Ustaw wszystkie okna w siatkę" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Ustaw wszystkie po_ziomo" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Ustaw wszystkie okna poziomo" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Ustaw wszystkie pio_nowo" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Ustaw wszystkie okna pionowo" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Niniejszy program jest wolnym oprogramowaniem; możesz go \n" "rozprowadzać dalej i/lub modyfikować na warunkach Powszechnej \n" "Licencji Publicznej GNU, wydanej przez Fundację Wolnego \n" "Oprogramowania - według wersji 2 tej Licencji lub (według Twojego \n" "wyboru) którejś z późniejszych wersji.\n" "\n" "Niniejszy program rozpowszechniany jest z nadzieją, iż będzie on \n" "użyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyślnej \n" "gwarancji PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONYCH \n" "ZASTOSOWAŃ. W celu uzyskania bliższych informacji sięgnij do \n" "Powszechnej Licencji Publicznej GNU.\n" "\n" "Z pewnością wraz z niniejszym programem otrzymałeś też egzemplarz \n" "Powszechnej Licencji Publicznej GNU (GNU General Public License); \n" "jeśli nie - napisz do Free Software Foundation, Inc., 59 Temple \n" "Place, Fifth Floor, Boston, MA 02110-1301 USA" #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chiński uproszczony (zh_CN) Khiyuan Fan \n" "Chiński tradycyjny (zh_TW) Yan-ren Tsai \n" "Czeski (cs) Pavel Fric \n" "Francuski (fr) Ludovic Troisi \n" "Niemiecki (de) Jöran Zeller \n" "Włoski (it) Giuseppe Penone \n" "Polski (pl) Dominik Wójt \n" "Rosyjski (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Preferencje" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Nie wypisuj zminimalizowanych okien" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Tylko aktywna przestrzeń robocza" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Włącz dokowanie na pasku systemowym" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Zaczynaj zminimalizowany w pasku systemowym" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "Używaj obszaru wskaźników aplikacji do dokowania" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Pokaż pasek narzędzi" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "Język" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Nadpisz obszar układania na monitorze 1" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Pozycja" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Szerokość" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Wysokość" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Rozmiar" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Nadpisz obszar układania na monitorze 2" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Zamknij" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Anuluj" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Niestandardowy układ" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Ułóż jakieś okna ręcznie" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Zaznacz je na liście okien X" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Kliknij przycisk aktualizuj" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Aktualizuj" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Rzędy do przefiltrowania" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Dodaj filtr aplikacji" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Usuń filtr aplikacji" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Dodaj rząd" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Wyznacz docelową przestrzeń roboczą" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Wyjdź po ułożeniu" #~ msgid "_Cycle Tiling Order" #~ msgstr "Przesuń _cyklicznie kolejność układania" x-tile-2.5/locale/i18n_pot_to_updated_po.py0000755000175200017520000000073111777520730017743 0ustar develdevel#!/usr/bin/env python import os, subprocess APP_NAME = "x-tile" LOCALE_DIR = os.getcwd() for dirpath, dirnames, filenames in os.walk(LOCALE_DIR): for filename in filenames: if dirpath == LOCALE_DIR: nation, ext = os.path.splitext(filename) if ext != ".po": continue bash_string = "msgmerge -U %s.po %s.pot" % (nation, APP_NAME) subprocess.call(bash_string, shell=True) subprocess.call("rm *.po~", shell=True) x-tile-2.5/locale/ru/0000755000175200017520000000000012026051676013440 5ustar develdevelx-tile-2.5/locale/ru/LC_MESSAGES/0000755000175200017520000000000012026051676015225 5ustar develdevelx-tile-2.5/locale/ru/LC_MESSAGES/x-tile.mo0000644000175200017520000004154212026045774016774 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{ 7&)@&3j&1&C&'1'2O'6' 'J'* *,8*e*]t*-*-+@.+@o+Z+E ,$Q,<v,O,@-@D->-7-@-@=.&~..#.. .E /^Q//7/0!&0(H0*q0)0 00131,;12h12111"1&2.:20i2 2@232-3J3&b3&3:3C3$/4 T4Ga44X5e6Xm6V6E7Ec7=7;7=#8?a8>8>89*>9$i969496981:&j::1:$:-;F5;T|;R;T$<Vy<B<=*2=$]=&=D=<=6+>Cb>$>#>!>#?5?EU?&?;??%@O5@ @@@7@@@@AEA _AlAA A AEA:A'BCBaB tBBB BB%B/B&Cd8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: X Tile Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2011-07-03 10:59+0300 Last-Translator: Andriy Kovtun Language-Team: Russian Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); X-Language: ru_RU X-Source-Language: C Эта программа является свободным программным обеспечением; вы можете распространять и/или изменять его согласно условиям Стандартной Общественной Лицензии GNU (GNU GPL), опубликованной Фондом свободного программного обеспечения (FSF), либо Лицензии версии 3, либо (на ваше усмотрение) любой более поздней версии. Программа распространяется в надежде, что она будет полезной, но БЕЗ КАКИХ БЫ ТО НИ БЫЛО ГАРАНТИЙНЫХ ОБЯЗАТЕЛЬСТВ; даже без косвенных гарантийных обязательств, связанных с ПОТРЕБИТЕЛЬСКИМИ СВОЙСТВАМИ и ПРИГОДНОСТЬЮ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Для подробностей смотрите Стандартную Общественную Лицензию GNU. Вы должны были получить копию Стандартной Общественной Лицензии GNU вместе с этой программой. Если это не так, напишите в Фонд Свободного ПО (Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.Язык1) Разбить окна вручную2) Выберите их из списка окон3) Нажмите кнопку 'Обновить'Пользовательская схема тайлингаО программе X TileДобавить строкуДобавить фильтр приложенийЦиклический порядок тайлингаОтменаКитайский Упрощённый (zh_CN) Khiyuan Fan Китайский Традиционный (zh_TW) Yan-ren Tsai Чешский (cs) Pavel Fric Испанский (es_AR) MeloPixel Французский (fr) Ludovic Troisi Немецкий (de) Jöran Zeller Итальянский (it) Giuseppe Penone Польский (pl) Dominik Wójt Русский (ru) Андрей Ковтун ЗакрытьЗакрыть окнаЗакрыть отмеченные окнаСтолбцыCopyright © 2009-2012 Giuseppe Penone Chris Camacho Пользовательская схема 1Пользовательская схема 2Запустить пользовательскую схему 1Запустить пользовательскую схему 2Циклический порядок последней операции тайлингаУменьшить иконки панели инструментовСнять все выделенияСнять выделения всех окон спискаНе включать минимизированные окна в списокНастроить пользовательскую схему 1Настроить пользовательскую схему 2Настроить пользовательскую схемуСворачивать в системный лотокЗапустить пользовательскую схему 1Запустить пользовательскую схему 2Выйти после тайлингаВыйти из X TileФильтровать строкиНастройки сеткиВысотаУвеличить иконки панели инструментовИнвертировать порядок последней операции тайлингаРазвернуть окнаРазвернуть все выбранные окнаПередвинуть внизПередвинуть вверхВыбранную строку внизВыбранную строку вверхПриложения не выбраны!Строки не выбраныОкна не выбраныOKТолько текущий рабочий столОткрыть окно параметровОбласть тайлинга Монитора 1Область тайлинга Монитора 2ПозицияПараметрыВыход из программыОбновить список оконУбрать фильтр приложенийУдалить выделенную строкуСтрокиПрименение фильтра ко всем строкамСтроки выбраны по умолчаниюВыделить все окна спискаВыделить всёВыбраны по умолчаниюВыбор рабочего столаПоказывать панель инструментовПоказать/скрыть панель инструментовПоказать/скрыть X TileРазмерСвернуть в системный лоток при запускеПользовательская схема 1 не выставлена: Выберите ее в меню 'Разбиение->Пользовательская схема 1'Пользовательская схема2 не выставлена: Выберите ее в меню 'Разбиение->Пользовательская схема 2'Новый язык будет доступен только после перезапуска X-TileРазмер иконок панели инструментов максимальныйРазмер иконок панели инструментов минимальныйРазбить все пользовательской схемой 1Разбить все пользовательской схемой 2Разбить все нижним треугольникомРазбить все левым треугольникомРазбить все правым треугольникомРазбить все верхним треугольникомРазбить пользовательской схемой 1Разбить пользовательской схемой 2Разбить по сеткеРазбить по горизонталиРазбить на квадратыРазбить нижним треугольникомРазбить левым треугольникомРазбить правым треугольникомРазбить верхним треугольникомРазбить по вертикалиРазбить по сеткеРазбить все по горизонталиРазбить на квадратыРазбить все по вертикалиРазбить по горизонтали выбранные окнаРазбить выделенные окна нижним треугольникомРазбить выделенные окна левым треугольникомРазбить выделенные окна правым треугольникомРазбить выделенные окна верхним треугольникомРазбить по вертикали выбранные окнаРазбить по сеткеРазбить по горизонталиРазбить на квадратыРазбить по вертикалиРазбить выделенные окна на 4 квадратаРазбить выделенные окна по сеткеРазбить окна на рабочем столеПоказать/Скрыть панель инструментовПоказать/Скрыть X TileНижний треугольникЛевый треугольникПравый треугольникОтменить тайлингОтменить последнюю операцию тайлингаУбрать разворот оконУбрать разворот выделенных оконОбновитьИспользовать AppindicatorИспользуйте перетаскивания для сортировкиШиринаXX TileДомашняя страница проекта X TileYО программеЗакрыть всеЗакрыть окнаУменьшить иконки панели инструментовПравкаВыйти из X TileФайлФильтрПомощьУвеличить иконки панели инструментовИнвертировать порядок тайлингаРазвернуть всеРазвернуть окнаПараметрыВыходОбновитьУдалитьСтрокаРазбиениеВерхний треугольникУбрать разворот всех оконУбрать разворот оконВидhttp://www.giuspen.com/x-tile/x-tile-2.5/locale/zh_TW/0000755000175200017520000000000012026051676014045 5ustar develdevelx-tile-2.5/locale/zh_TW/LC_MESSAGES/0000755000175200017520000000000012026051676015632 5ustar develdevelx-tile-2.5/locale/zh_TW/LC_MESSAGES/x-tile.mo0000644000175200017520000003155312026045774017402 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{wq, "")""# # )#3#O#m#t#D%K%^%q%]u%%%&&*7&b&x&!&$&&& '$':'N'b'r' ' '''$'''((%(;(Q(q(((((3(3(1) 8)E)X)q))))))))**+*G*a*h*V*V*55+0k+0+++5+55,5k,5,,,,-.-0H-0y-0-0- .%.@.^.}..0.0.0/0J/{/////'/* 060V0s0 0 0 0 0!0 191U1\1w111111 1111 2 2 2 )2 52A2_2z222 2 2 22 2 23(3 @3L36jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: 2.3 Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-08 05:53+0800 Last-Translator: Yan-ren Tsai Language-Team: 漢語 Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bits Plural-Forms: nplurals=2; plural=(n!=1); 本程式為自由軟體;您可依據自由軟體基金會所發表的 GNU 通用公共授權條款規定,就本程式再為散布與/或修改;無論您依據的是本授權的第二版或(您自行選擇的)任一日後發行的版本。 本程式係基於使用目的而加以散布,然而不負任何擔保責任;亦無對適售性或特定目的適用性所為的默示性擔保。詳情請參照 GNU 通用公共授權。 您應已收到附隨於本程式的 GNU 通用公共授權的副本;如無,請寫信至自由軟體基金會:51 Franklin Street, Fifth Floor, Boston, Ma 02110-1301, USA。語言1) 手動鋪排某些視窗2) 在 X Tile 視窗列表裡選擇視窗3) 點擊更新按鈕自訂鋪排版面關於 X Tile增加列增加應用程式篩選器循環切換鋪排順序 (_C)取消Chinese Simplified (zh_CN) Khiyuan Fan 漢語(繁體中文) (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric 法語 (fr) Ludovic Troisi 德語 (de) Jöran Zeller 義大利語 (it) Giuseppe Penone 波蘭語 (pl) Dominik Wójt 俄語 (ru) Andriy Kovtun 關閉關閉所有視窗關閉選定視窗欄Copyright © 2009-2012 Giuseppe Penone Chris Camacho 自訂鋪排1設定 (_S)自訂鋪排2設定 (_e)執行自訂鋪排1 (_1)執行自訂鋪排2 (_2)循環順序到最後一次鋪排的動作縮小工具列圖示取消選擇全部 (_l)取消選擇列表上所有視窗不要列出已經最小化的視窗編輯自訂鋪排1設定編輯自訂鋪排2設定編輯自訂排列設定啟用系統匣停駐執行自訂鋪排1執行自訂鋪排2鋪排後離開從X Tile離開篩選列格框詳情高放大工具列圖示將最後一次鋪排的動作顛倒最大化所有視窗最大化選定的視窗往下移 (_D)往上移 (_U)將選定列移下來將選定列移上去沒有選擇任何應用程式!沒有選定任何列沒選擇視窗OK只有目前工作區開啟偏好設定視窗以下面設定取代第一個螢幕的鋪排區域以下面設定取代第二個螢幕的鋪排區域位置偏好設定離開應用程式重新載入視窗列表移除應用程式篩選器移除選定的列列列轉篩選器預設選定的列選擇列表內所有視窗選擇全部 (_A)預設選定的設置目標工作區顯示工具列顯示/隱藏工具列 (_T)顯示/隱藏 X Tile (_X)尺寸啟動時最小化到系統匣自訂排列1尚未設定:點擊選單項目 '排列->自訂排列1' 進行設定。自訂排列2尚未設定:點擊選單項目 '排列->自訂排列2' 進行設定。新的語言在重新啟動 X Tile 後才會生效。工具列圖示的尺寸已經是最大的了。工具列圖示的尺寸已經是最小的了。平舖所有自訂1 (_1)平舖所有自訂2 (_2)平舖所有視窗為三等份,最大的在下 (_D)平舖所有視窗為三等份,最大的在左 (_L)平舖所有視窗為三等份,最大的在右 (_R)平舖所有視窗為三等份,最大的在上 (_U)平舖所有自訂1平舖所有自訂2平鋪所有為格框水平鋪排所有視窗平鋪所有視窗為4個平舖所有視窗為三等份,最大的在下平舖所有視窗為三等份,最大的在左平舖所有視窗為三等份,最大的在右平舖所有視窗為三等份,最大的在上垂直鋪排所有視窗平鋪所有為格框 (_G)水平鋪排所有視窗 (_H)平鋪所有視窗為4個 (_Q)垂直鋪排全部視窗 (_V)水平鋪排選定的視窗平舖選定視窗為三等份,最大的在下平舖選定視窗為三等份,最大的在左平舖選定視窗為三等份,最大的在右平舖選定視窗為三等份,最大的在上垂直鋪排選定的視窗平鋪為格框 (_G)水平鋪排 (_H)平鋪為4個 (_Q)垂直鋪排 (_V)將選定的視窗平鋪到四個象限平鋪選定的視窗為一個任意格框在你的X桌面上排列視窗切換顯示/隱藏工具列切換顯示/隱藏 X Tile三等份,最大的在下 (_D)三等份,最大的在左 (_L)三等份,最大的在右 (_R)復原鋪排復原最後一次鋪排的動作不最大化所有視窗不最大化選定的視窗更新使用 AppIndicator 停駐使用拖拉來排序列寬XX TileX Tile 專案首頁Y關於 (_A)關閉所有(_C)關閉視窗 (_C)將工具列圖示變小 (_D)編輯 (_E)離開X Tile(_E)檔案 (_F)篩選 (_F)求助 (_H)將工具列圖示變大 (_I)將鋪排順序顛倒 (_I)最大化全部 (_M)最大化視窗 (_M)偏好設定 (_P)離開 (_Q)重新載入移除 (_R)列(_R)排列 (_T)三等份,最大的在上 (_T)不最大化全部 (_U)不最大化視窗 (_U)檢視 (_V)http://www.giuspen.com/x-tile/x-tile-2.5/locale/x-tile.pot0000644000175200017520000002745712023373714014754 0ustar develdevel# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "" #: modules/core.py:855 msgid "Grid Details" msgstr "" #: modules/core.py:863 msgid "Rows" msgstr "" #: modules/core.py:870 msgid "Columns" msgstr "" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" #: modules/cons.py:268 msgid "_File" msgstr "" #: modules/cons.py:269 msgid "_Edit" msgstr "" #: modules/cons.py:270 msgid "_Row" msgstr "" #: modules/cons.py:271 msgid "_Tile" msgstr "" #: modules/cons.py:272 msgid "_View" msgstr "" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "" #: modules/cons.py:275 msgid "_Filter" msgstr "" #: modules/cons.py:275 msgid "Filter Rows" msgstr "" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "" #: modules/cons.py:277 msgid "_Reload" msgstr "" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "" #: modules/cons.py:278 msgid "_Quit" msgstr "" #: modules/cons.py:278 msgid "Quit the Application" msgstr "" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "" #: modules/cons.py:281 msgid "_Preferences" msgstr "" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "" #: modules/cons.py:282 msgid "Select _All" msgstr "" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "" #: modules/cons.py:301 msgid "_Close Windows" msgstr "" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "" #: modules/cons.py:302 msgid "Move _Up" msgstr "" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "" #: modules/cons.py:303 msgid "Move _Down" msgstr "" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "" #: modules/cons.py:304 msgid "_Remove" msgstr "" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "" #: modules/cons.py:311 msgid "_Close All" msgstr "" #: modules/cons.py:311 msgid "Close All Windows" msgstr "" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "" #: modules/cons.py:313 msgid "_Maximize All" msgstr "" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "" #: glade/x-tile.glade.h:40 msgid "X" msgstr "" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "" x-tile-2.5/locale/zh_CN.po0000644000175200017520000004030712026045761014355 0ustar develdevelmsgid "" msgstr "" "Project-Id-Version: 1.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-14 12:45+0800\n" "Last-Translator: Khiyuan.Fan \n" "Language-Team: Fan.khiyuan@gmail.com\n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Chinese\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "使用拖拉来排序行" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "新语言将在重启 X Tile 后生效。" #: modules/core.py:369 #: glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "" "X Tile\n" "在你的X桌面排列窗口" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "工具栏图标的尺寸已经是最大的了。" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "工具栏图标的尺寸已经是最小的了。" #: modules/core.py:703 #: modules/core.py:711 #: modules/core.py:719 msgid "No Row is Selected" msgstr "没有选定任何行" #: modules/core.py:741 #: modules/core.py:775 msgid "No Application Selected!" msgstr "没有选择应用程序!" #: modules/core.py:855 msgid "Grid Details" msgstr "网格明细" #: modules/core.py:863 msgid "Rows" msgstr "行" #: modules/core.py:870 msgid "Columns" msgstr "列" #: modules/core.py:956 #: modules/core.py:964 #: modules/core.py:974 msgid "No Windows Checked" msgstr "没有选择窗口" #: modules/core.py:1014 #: modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "编辑自定排列设定" #: modules/core.py:1174 msgid "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'" msgstr "自定排列1尚未设置:点击菜单 '排列->自定排列1' 进行设置。" #: modules/core.py:1192 msgid "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'" msgstr "自定排列2尚未设置:点击菜单 '排列->自定排列2' 进行设置。" #: modules/cons.py:268 msgid "_File" msgstr "文件 (_F)" #: modules/cons.py:269 msgid "_Edit" msgstr "编辑 (_E)" #: modules/cons.py:270 msgid "_Row" msgstr "行(_R)" #: modules/cons.py:271 msgid "_Tile" msgstr "排列 (_T)" #: modules/cons.py:272 msgid "_View" msgstr "查看 (_V)" #: modules/cons.py:273 #: modules/cons.py:308 msgid "_Help" msgstr "帮助 (_H)" #: modules/cons.py:275 msgid "_Filter" msgstr "筛选 (_F)" #: modules/cons.py:275 msgid "Filter Rows" msgstr "过滤行" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "预设选定 (_D)" #: modules/cons.py:276 #: glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "预设选定的行" #: modules/cons.py:277 msgid "_Reload" msgstr "重载" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "重新载入窗口列表" #: modules/cons.py:278 msgid "_Quit" msgstr "退出 (_Q)" #: modules/cons.py:278 msgid "Quit the Application" msgstr "退出应用程序" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "退出 X Tile(_E)" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "自 X Tile 退出" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "显示/隐藏X Tile (_X)" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "切换显示/隐藏 X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "首选项 (_P)" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "打开首选项设置窗口" #: modules/cons.py:282 msgid "Select _All" msgstr "全选 (_A)" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "全选列表內窗口" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "取消全选 (_L)" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "取消选择列表上所有窗口" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "垂直排列 (_V)" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "垂直排列选定的窗口" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "水平排列 (_H)" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "水平排列选定的窗口" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "三分,上边最大 (_T)" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "平铺三个选定的窗口,上边最大" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "三分,下边最大 (_D)" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "平铺三个选定的窗口,下边最大" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "三分,左边最大 (_L)" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "平铺三个选定的窗口,左边最大" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "三分,右边最大 (_R)" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "平铺三个选定的窗口,右边最大" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "四等分 (_Q)" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "将选定窗口平铺到四个象限" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "平铺网格(_G)" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "平铺选定窗口到任意网格" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "自定义排列1 (_S)" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "编辑自定排列1设定" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "运行自定排列1 (_1)" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "运行自定排列1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "自定义排列2 (_E)" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "编辑自定排列2设定" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "运行自定排列2 (_2)" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "运行自定排列2" #: modules/cons.py:296 #: modules/cons.py:325 msgid "U_ndo Tiling" msgstr "撤销排列 (_N)" #: modules/cons.py:296 #: modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "撤消最后一次排列操作" #: modules/cons.py:297 #: modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "倒置排列次序(_I)" #: modules/cons.py:297 #: modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "倒置最后一次排列操作" #: modules/cons.py:298 #: modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "循环排列次序(_I)" #: modules/cons.py:298 #: modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "循环最后一次排列操作" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "最大化窗口 (_M)" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "最大化选定窗口" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "取消窗口最大化 (_U)" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "取消选定窗口最大化" #: modules/cons.py:301 msgid "_Close Windows" msgstr "关闭窗口 (_C)" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "关闭选定窗口" #: modules/cons.py:302 msgid "Move _Up" msgstr "上移 (_U)" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "上移选定行" #: modules/cons.py:303 msgid "Move _Down" msgstr "下移 (_D)" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "下移选定行" #: modules/cons.py:304 msgid "_Remove" msgstr "移除 (_R)" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "移除选定行" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "显示/隐藏工具栏 (_T)" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "切换显示/隐藏工具栏" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "放大工具栏图标 (_I)" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "放大工具栏图标" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "缩小工具栏图标 (_D)" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "缩小工具栏图标" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "X Tile 项目首页" #: modules/cons.py:309 #: modules/cons.py:310 msgid "_About" msgstr "关于 (_A)" #: modules/cons.py:309 #: modules/cons.py:310 #: glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "关于 X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "关闭全部(_C)" #: modules/cons.py:311 msgid "Close All Windows" msgstr "关闭所有窗口" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "全部取消最大化 (_M)" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "所有窗口取消最大化" #: modules/cons.py:313 msgid "_Maximize All" msgstr "全部最大化 (_M)" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "所有窗口最大化" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "四分平铺全部 (_Q)" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "四分平铺所有窗口" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "三分平铺全部,下边最大 (_D)" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "三分平铺全部窗口,下边最大 " #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "三分平铺全部,上边最大 (_U)" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "三分平铺全部窗口,上边最大" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "三分平铺全部,右边最大 (_R)" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "三分平铺全部窗口,右边最大" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "三分平铺全部,左边最大 (_L)" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "三分平铺全部窗口,左边最大" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "全部按自定2平铺 (_2)" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "全部窗口按自定2平铺" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "全部按照自定1平铺 (_1)" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "全部窗口按自定1平铺" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "平铺所有网格 (_G)" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "平铺所有窗口至网格" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "水平排列所有窗口 (_H)" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "水平排列所有窗口" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "垂直排列全部窗口 (_V)" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "垂直排列全部窗口" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "汉语(简体中文) (zh_CN) Khi-yuan Fan \n" "汉语(繁体中文) (zh_TW) Yan-ren Tsai \n" "捷克语 (cs) Pavel Fric \n" "法语 (fr) Ludovic Troisi \n" "德语 (de) Jöran Zeller \n" "意大利语 (it) Giuseppe Penone \n" "俄语 (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "首选项" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "不列出最小化的窗口" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "只对当前工作区" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "激活系统托盘区停靠" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "启动后最小化于系统托盘" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "使用任务栏进行排布" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "显示工具栏" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "语言" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "取代第一个屏幕的排列区域" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "位置" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "宽" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "高" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "尺寸" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "取代第二个屏幕的排列区域" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "关闭" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "取消" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "自定排列版面" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) 手动排列窗口" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) 在 X Tile 窗口列表中选择窗口" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) 点击更新按钮" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "更新" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "过滤器列表" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "添加应用程序到过滤器" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "移除过滤器中应用程序" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "添加行" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "设置目标工作区" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "排列后退出" x-tile-2.5/locale/cs.po0000644000175200017520000004333212023373714013761 0ustar develdevel# Czech translations for x-tile package. # Copyright (C) 2010 THE x-tile'S COPYRIGHT HOLDER # This file is distributed under the same license as the x-tile package. # # maul , 2010. # Pavel Fric , 2012. msgid "" msgstr "" "Project-Id-Version: x-tile 1.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2012-09-07 23:52+0200\n" "Last-Translator: Pavel Fric \n" "Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Lokalize 1.5\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Pro roztřídění řádků položku přetáhněte a upusťte" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "Nové jazykové nastavení bude dostupné až po novém spuštění X Tile" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Vydlážděte okna na vaší ploše X" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "Ikony v nástrojovém pruhu jsou již tak velké, jak jen je to možné" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "Ikony v nástrojovém pruhu jsou již tak malé, jak jen je to možné" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Není vybrán žádný řádek" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Není vybrán žádný program!" #: modules/core.py:855 msgid "Grid Details" msgstr "Podrobnosti k mřížce" #: modules/core.py:863 msgid "Rows" msgstr "Řádky" #: modules/core.py:870 msgid "Columns" msgstr "Sloupce" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Není vybráno žádné okno" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Upravit vlastní nastavení dláždění" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "Vlastní nastavení dláždění (1) ještě nebylo převzato: Klepněte v nabídce na " "'Dlaždice->Vlastní nastavení dláždění (1)'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "Vlastní nastavení dláždění (2) ještě nebylo převzato: Klepněte v nabídce na " "'Dlaždice->Vlastní nastavení dláždění (2)'" #: modules/cons.py:268 msgid "_File" msgstr "_Soubor" #: modules/cons.py:269 msgid "_Edit" msgstr "Ú_pravy" #: modules/cons.py:270 msgid "_Row" msgstr "Řá_dek" #: modules/cons.py:271 msgid "_Tile" msgstr "_Dlaždice" #: modules/cons.py:272 msgid "_View" msgstr "_Pohled" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "_Nápověda" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filtr" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtrovat řádky" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Vybráno vždy" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Řádky, které mají být vybrány vždy" #: modules/cons.py:277 msgid "_Reload" msgstr "_Nahrát znovu" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Nahrát seznam oken znovu" #: modules/cons.py:278 msgid "_Quit" msgstr "_Ukončit" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Ukončit program" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "_Opustit X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Opustit X Tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Ukázat/Skrýt _X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Ukázat/Skrýt X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Nastavení" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Otevřít okno s nastavením" #: modules/cons.py:282 msgid "Select _All" msgstr "Vybrat vš_e" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Vybrat všechna okna v seznamu" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "Zrušit výběr u _všeho" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Zrušit výběr u všech oken v seznamu" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Vydláždit _svisle" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Vydláždit vybraná okna svisle" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Vydláždit _vodorovně" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Vydláždit vybraná okna vodorovně" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "_Trojúhelník nahoru" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Vydláždit vybraná okna trojúhelníkově nahoru" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Trojúhelník _dolů" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Vydláždit vybraná okna trojúhelníkově dolů" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Trojúhelník _vlevo" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Vydláždit vybraná okna trojúhelníkově vlevo" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Trojúhelník v_pravo" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Vydláždit vybraná okna trojúhelníkově vpravo" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Vydláždit _čtvercově" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Vydláždit vybraná okna do čtyř čtverců" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Vydláždit v _mřížce" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Vydláždit vybraná okna do libovolné mřížky" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Vlastní _nastavení dláždění (1)" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Upravit vlastní nastavení dláždění (1)" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Provedení vlastního nastavení dláždění (_1)" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Provést vlastní nastavení dláždění (1)" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Vlastní na_stavení dláždění (2)" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Upravit vlastní nastavení dláždění (2)" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Provedení vlastního nastavení dláždění (_2)" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Provést vlastní nastavení dláždění (2)" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "Dláždění _zpět" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Vrátit poslední dláždicí operaci zpět" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Obrátit pořadí dláždění" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Obrátit pořadí poslední dláždicí operace" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "_Točit pořadí dláždění" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Točit pořadí poslední dláždicí operace" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "_Zvětšit okna" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Zvětšit označená okna" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "Z_rušit zvětšení oken" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Zrušit zvětšení označených oken" #: modules/cons.py:301 msgid "_Close Windows" msgstr "_Zavřít okna" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Zavřít všechna označená okna" #: modules/cons.py:302 msgid "Move _Up" msgstr "Posunout _nahoru" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Posunout označený řádek nahoru" #: modules/cons.py:303 msgid "Move _Down" msgstr "Posunout _dolů" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Posunout označený řádek dolů" #: modules/cons.py:304 msgid "_Remove" msgstr "_Odstranit" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Odstranit označený řádek" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Ukázat/Skrýt _nástrojový pruh" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Ukázat/Skrýt nástrojový pruh" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "Z_většit velikost ikon v nástrojovém pruhu" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Zvětšit velikost ikon v nástrojovém pruhu" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "Z_menšit velikost ikon v nástrojovém pruhu" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Zmenšit velikost ikon v nástrojovém pruhu" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Stránky projektu X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "_O programu" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "O X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "_Zavřít vše" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Zavřít všechna okna" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "Z_rušit zvětšení u všeho" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Zrušit zvětšení u všech oken" #: modules/cons.py:313 msgid "_Maximize All" msgstr "_Zvětšit vše" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Zvětšit všechna okna" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Vydláždit vše _čtvercově" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Vydláždit všechna okna čtvercově" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Vydláždit vše trojúhelníkově _dolů" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Vydláždit všechna okna trojúhelníkově dolů" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Vydláždit vše trojúhelníkově _nahoru" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Vydláždit všechna okna trojúhelníkově nahoru" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Vydláždit vše trojúhelníkově v_pravo" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Vydláždit všechna okna trojúhelníkově vpravo" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Vydláždit vše trojúhelníkově v_levo" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Vydláždit všechna okna trojúhelníkově vlevo" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Vydláždit všechno podle rozvržení _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Vydláždit všechna okna podle vlastního rozvržení 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Vydláždit všechno podle rozvržení _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Vydláždit všechna okna podle vlastního rozvržení 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Vydláždit vše v _mřížce" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Vydláždit všechna okna v mřížce" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Vydláždit vše _vodorovně" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Vydláždit všechna okna vodorovně" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Vydláždit vše _svisle" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Vydláždit všechna okna svisle" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Tento program je svobodným softwarem; můžete jej rozdávat a/nebo upravovat " "za \n" "podmínek GNU General Public License (GPL), jak jsou zveřejněny Free " "Software \n" "Foundation; buď ve verzi 2 licence, nebo (podle své volby) v kterékoli \n" "pozdější verzi.\n" "\n" "Tento program je šířen v naději, že bude užitečný, ale BEZ JAKÉKOLI " "ZÁRUKY; \n" "také bez předpokládané záruky PRODEJNOSTI nebo POUŽITELNOSTI PRO NĚJAKÝ \n" "URČITÝ ÚČEL: Více podrobností naleznete v GNU Library General Public \n" "License.\n" "\n" "Kopii GNU Library General Public License byste měl obdržet společně s " "tímto \n" "balíkem; a pokud ne, napište Free Software Foundation, Inc., 51 Franklin " "St, \n" "Fifth Floor, Boston, MA 02110-1301, USA." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Zjednodušená čínština (zh_CN) Khiyuan Fan \n" "Tradiční čínština (zh_TW) Yan-ren Tsai \n" "Čeština (cs) Pavel Fric \n" "Španělština (es_AR) MeloPixel \n" "Francouzština (fr) Ludovic Troisi \n" "Němčina (de) Jöran Zeller \n" "Italština (it) Giuseppe Penone \n" "Polština (pl) Dominik Wójt \n" "Ruština (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Nastavení" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Neukazovat žádná zmenšená okna" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Jen současná pracovní oblast" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Povolit ikonu v oznamovací oblasti panelu" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Spustit zmenšené v oznamovací oblasti panelu" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "Použít ukazatel programu pro ukotvení v panelu" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Ukázat nástrojový pruh" #: glade/x-tile.glade.h:38 msgid " Language " msgstr " Jazyk " #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Přepsat oblast dláždění obrazovka 1" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Poloha" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Šířka" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Výška" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Velikost" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Přepsat oblast dláždění obrazovka 2" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Zavřít" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Zrušit" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Vlastní rozvržení dláždění" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Vydlážděte určitá okna ručně" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Vyberte je v seznamu oken X Tile" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Klepněte na tlačítko Nahrát znovu" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Aktualizovat" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Přidat filtr" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Přidat programový filtr" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Odstranit programový filtr" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Přidat řádek" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Nastavit cílovou pracovní oblast" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Ukončit po vydláždění" x-tile-2.5/locale/zh_CN/0000755000175200017520000000000012026051676014013 5ustar develdevelx-tile-2.5/locale/zh_CN/LC_MESSAGES/0000755000175200017520000000000012026051676015600 5ustar develdevelx-tile-2.5/locale/zh_CN/LC_MESSAGES/x-tile.mo0000644000175200017520000003112112026045774017337 0ustar develdevel  ) "<PW 2L]T.&- T$b(>N _ kx&/ 7Pi| -Ebz"  +="BPeP?=G=2Hb|$A]l%&&'$C#h  )/$ E^v  ",OUW^wy    0=CKSX ^k{Z "")"## 0# >#H#g#~##.%5%H%[%]_%%%%&&:&P&!b&&&&&& ''1'A' S' ]'j'n'''' ' '''(!(7(J(M(c($($(( ((()%)5)9)I)\) r)~))))))!)P*Pe*)*0*0+B+a+&}+&+&+&+,6,S,o,,(,',','-B-[-s----*-*.*9.*d......$.!/#6/Z/w//////000L0S0o000000 0000 01 1 1 +171R1i1~11 11 11 111 2 &2226jYHN1=uXp0Jog!L;TUv`9a@x t{3~zlf[$+2b,/i - >d8IQV?%kq(m]|5erGM} R)ZD W_AOBPsF7* :wScyn"K'E#\4&.<^Ch This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Language 1) Tile Some Windows Manually2) Select Them in the X Tile Windows List3) Click the Update ButtonCustom Tiling LayoutAbout X TileAdd RowAdd an Application FilterC_ycle Tiling OrderCancelChinese Simplified (zh_CN) Khiyuan Fan Chinese Traditional (zh_TW) Yan-ren Tsai Czech (cs) Pavel Fric French (fr) Ludovic Troisi German (de) Jöran Zeller Italian (it) Giuseppe Penone Polish (pl) Dominik Wójt Russian (ru) Andriy Kovtun CloseClose All WindowsClose The Checked WindowsColumnsCopyright © 2009-2012 Giuseppe Penone Chris Camacho Custom Tile 1 _SetCustom Tile 2 S_etCustom Tile _1 RunCustom Tile _2 RunCycle the Order of the Latest Tiling OperationDecrease the Size of the Toolbar IconsDeselect A_llDeselect All the Windows in the ListDo Not List Minimized WindowsEdit Custom Tile 1 SettingsEdit Custom Tile 2 SettingsEdit Custom Tile SettingsEnable System Tray DockingExecute Custom Tile 1Execute Custom Tile 2Exit After TileExit from X TileFilter RowsGrid DetailsHeightIncrease the Size of the Toolbar IconsInvert the Order of the Latest Tiling OperationMaximize All WindowsMaximize The Checked WindowsMove _DownMove _UpMove the Selected Row DownMove the Selected Row UpNo Application Selected!No Row is SelectedNo Windows CheckedOKOnly Current WorkspaceOpen the Preferences WindowOverride Monitor 1 Tiling AreaOverride Monitor 2 Tiling AreaPositionPreferencesQuit the ApplicationReload the Windows ListRemove an Application FilterRemove the Selected RowRowsRows to FilterRows to be Selected by DefaultSelect All the Windows in the ListSelect _AllSelected by _DefaultSet Destination WorkspaceShow ToolbarShow/Hide _ToolbarShow/Hide _X TileSizeStart Minimized in the System TrayThe Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 Set'The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 Set'The New Language will be Available Only After Restarting X TileThe Size of the Toolbar Icons is already at the Maximum ValueThe Size of the Toolbar Icons is already at the Minimum ValueTile All Custom _1Tile All Custom _2Tile All Triangle _DownTile All Triangle _LeftTile All Triangle _RightTile All Triangle _UpTile All Windows Custom 1Tile All Windows Custom 2Tile All Windows GridTile All Windows HorizontallyTile All Windows QuadTile All Windows Triangle DownTile All Windows Triangle LeftTile All Windows Triangle RightTile All Windows Triangle UpTile All Windows VerticallyTile All _GridTile All _HorizontallyTile All _QuadTile All _VerticallyTile Horizontally The Checked WindowsTile Triangle Down The Checked WindowsTile Triangle Left The Checked WindowsTile Triangle Right The Checked WindowsTile Triangle Up The Checked WindowsTile Vertically The Checked WindowsTile _GridTile _HorizontallyTile _QuadTile _VerticallyTile into 4 quadrants The Checked WindowsTile into an Arbitrary Grid The Checked WindowsTile the Windows Upon your X DesktopToggle Show/Hide ToolbarToggle Show/Hide X TileTriangle _DownTriangle _LeftTriangle _RightU_ndo TilingUndo the Latest Tiling OperationUnmaximize All WindowsUnmaximize The Checked WindowsUpdateUse AppIndicator for DockingUse Drag and Drop to Sort the RowsWidthXX TileX Tile Project Home PageY_About_Close All_Close Windows_Decrease Toolbar Icons Size_Edit_Exit X Tile_File_Filter_Help_Increase Toolbar Icons Size_Invert Tiling Order_Maximize All_Maximize Windows_Preferences_Quit_Reload_Remove_Row_Tile_Triangle Up_Unmaximize All_Unmaximize Windows_Viewhttp://www.giuspen.com/x-tile/Project-Id-Version: 1.6 Report-Msgid-Bugs-To: POT-Creation-Date: 2012-09-07 23:14+0200 PO-Revision-Date: 2012-09-14 12:45+0800 Last-Translator: Khiyuan.Fan Language-Team: Fan.khiyuan@gmail.com Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Chinese This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.语言1) 手动排列窗口2) 在 X Tile 窗口列表中选择窗口3) 点击更新按钮自定排列版面关于 X Tile添加行添加应用程序到过滤器循环排列次序(_I)取消汉语(简体中文) (zh_CN) Khi-yuan Fan 汉语(繁体中文) (zh_TW) Yan-ren Tsai 捷克语 (cs) Pavel Fric 法语 (fr) Ludovic Troisi 德语 (de) Jöran Zeller 意大利语 (it) Giuseppe Penone 俄语 (ru) Andriy Kovtun 关闭关闭所有窗口关闭选定窗口列Copyright © 2009-2012 Giuseppe Penone Chris Camacho 自定义排列1 (_S)自定义排列2 (_E)运行自定排列1 (_1)运行自定排列2 (_2)循环最后一次排列操作缩小工具栏图标取消全选 (_L)取消选择列表上所有窗口不列出最小化的窗口编辑自定排列1设定编辑自定排列2设定编辑自定排列设定激活系统托盘区停靠运行自定排列1运行自定排列2排列后退出自 X Tile 退出过滤行网格明细高放大工具栏图标倒置最后一次排列操作所有窗口最大化最大化选定窗口下移 (_D)上移 (_U)下移选定行上移选定行没有选择应用程序!没有选定任何行没有选择窗口OK只对当前工作区打开首选项设置窗口取代第一个屏幕的排列区域取代第二个屏幕的排列区域位置首选项退出应用程序重新载入窗口列表移除过滤器中应用程序移除选定行行过滤器列表预设选定的行全选列表內窗口全选 (_A)预设选定 (_D)设置目标工作区显示工具栏显示/隐藏工具栏 (_T)显示/隐藏X Tile (_X)尺寸启动后最小化于系统托盘自定排列1尚未设置:点击菜单 '排列->自定排列1' 进行设置。自定排列2尚未设置:点击菜单 '排列->自定排列2' 进行设置。新语言将在重启 X Tile 后生效。工具栏图标的尺寸已经是最大的了。工具栏图标的尺寸已经是最小的了。全部按照自定1平铺 (_1)全部按自定2平铺 (_2)三分平铺全部,下边最大 (_D)三分平铺全部,左边最大 (_L)三分平铺全部,右边最大 (_R)三分平铺全部,上边最大 (_U)全部窗口按自定1平铺全部窗口按自定2平铺平铺所有窗口至网格水平排列所有窗口四分平铺所有窗口三分平铺全部窗口,下边最大 三分平铺全部窗口,左边最大三分平铺全部窗口,右边最大三分平铺全部窗口,上边最大垂直排列全部窗口平铺所有网格 (_G)水平排列所有窗口 (_H)四分平铺全部 (_Q)垂直排列全部窗口 (_V)水平排列选定的窗口平铺三个选定的窗口,下边最大平铺三个选定的窗口,左边最大平铺三个选定的窗口,右边最大平铺三个选定的窗口,上边最大垂直排列选定的窗口平铺网格(_G)水平排列 (_H)四等分 (_Q)垂直排列 (_V)将选定窗口平铺到四个象限平铺选定窗口到任意网格X Tile 在你的X桌面排列窗口切换显示/隐藏工具栏切换显示/隐藏 X Tile三分,下边最大 (_D)三分,左边最大 (_L)三分,右边最大 (_R)撤销排列 (_N)撤消最后一次排列操作所有窗口取消最大化取消选定窗口最大化更新使用任务栏进行排布使用拖拉来排序行宽XX TileX Tile 项目首页Y关于 (_A)关闭全部(_C)关闭窗口 (_C)缩小工具栏图标 (_D)编辑 (_E)退出 X Tile(_E)文件 (_F)筛选 (_F)帮助 (_H)放大工具栏图标 (_I)倒置排列次序(_I)全部最大化 (_M)最大化窗口 (_M)首选项 (_P)退出 (_Q)重载移除 (_R)行(_R)排列 (_T)三分,上边最大 (_T)全部取消最大化 (_M)取消窗口最大化 (_U)查看 (_V)http://www.giuspen.com/x-tile/x-tile-2.5/locale/i18n_create_lang_file.sh0000755000175200017520000000025611777520730017462 0ustar develdevel#!/bin/sh if [ $# -eq 1 ] then msginit --input=x-tile.pot --locale=$1 else echo "Please provide the language code as one and only argument (e.g. 'es' for Spanish)" fi x-tile-2.5/locale/ru.po0000644000175200017520000005131012023373714013775 0ustar develdevel# Russian translations for PACKAGE package. # Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # maul , 2010. # Andriy Kovtun , 2010. # msgid "" msgstr "" "Project-Id-Version: X Tile\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2011-07-03 10:59+0300\n" "Last-Translator: Andriy Kovtun \n" "Language-Team: Russian\n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Language: ru_RU\n" "X-Source-Language: C\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Используйте перетаскивания для сортировки" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "Новый язык будет доступен только после перезапуска X-Tile" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Разбить окна на рабочем столе" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "Размер иконок панели инструментов максимальный" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "Размер иконок панели инструментов минимальный" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Строки не выбраны" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Приложения не выбраны!" #: modules/core.py:855 msgid "Grid Details" msgstr "Настройки сетки" #: modules/core.py:863 msgid "Rows" msgstr "Строки" #: modules/core.py:870 msgid "Columns" msgstr "Столбцы" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Окна не выбраны" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Настроить пользовательскую схему" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "Пользовательская схема 1 не выставлена: Выберите ее в меню " "'Разбиение->Пользовательская схема 1'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "Пользовательская схема2 не выставлена: Выберите ее в меню " "'Разбиение->Пользовательская схема 2'" #: modules/cons.py:268 msgid "_File" msgstr "Файл" #: modules/cons.py:269 msgid "_Edit" msgstr "Правка" #: modules/cons.py:270 msgid "_Row" msgstr "Строка" #: modules/cons.py:271 msgid "_Tile" msgstr "Разбиение" #: modules/cons.py:272 msgid "_View" msgstr "Вид" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "Помощь" #: modules/cons.py:275 msgid "_Filter" msgstr "Фильтр" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Фильтровать строки" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Выбраны по умолчанию" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Строки выбраны по умолчанию" #: modules/cons.py:277 msgid "_Reload" msgstr "Обновить" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Обновить список окон" #: modules/cons.py:278 msgid "_Quit" msgstr "Выход" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Выход из программы" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "Выйти из X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Выйти из X Tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Показать/скрыть X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Показать/Скрыть X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "Параметры" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Открыть окно параметров" #: modules/cons.py:282 msgid "Select _All" msgstr "Выделить всё" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Выделить все окна списка" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "Снять все выделения" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Снять выделения всех окон списка" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Разбить по вертикали" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Разбить по вертикали выбранные окна" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Разбить по горизонтали" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Разбить по горизонтали выбранные окна" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "Верхний треугольник" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Разбить выделенные окна верхним треугольником" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Нижний треугольник" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Разбить выделенные окна нижним треугольником" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Левый треугольник" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "Разбить выделенные окна левым треугольником" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Правый треугольник" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "Разбить выделенные окна правым треугольником" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Разбить на квадраты" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Разбить выделенные окна на 4 квадрата" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Разбить по сетке" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Разбить выделенные окна по сетке" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "Пользовательская схема 1" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Настроить пользовательскую схему 1" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Запустить пользовательскую схему 1" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Запустить пользовательскую схему 1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "Пользовательская схема 2" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Настроить пользовательскую схему 2" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Запустить пользовательскую схему 2" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Запустить пользовательскую схему 2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "Отменить тайлинг" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Отменить последнюю операцию тайлинга" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "Инвертировать порядок тайлинга" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Инвертировать порядок последней операции тайлинга" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "Циклический порядок тайлинга" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Циклический порядок последней операции тайлинга" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "Развернуть окна" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Развернуть все выбранные окна" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "Убрать разворот окон" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Убрать разворот выделенных окон" #: modules/cons.py:301 msgid "_Close Windows" msgstr "Закрыть окна" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Закрыть отмеченные окна" #: modules/cons.py:302 msgid "Move _Up" msgstr "Передвинуть вверх" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Выбранную строку вверх" #: modules/cons.py:303 msgid "Move _Down" msgstr "Передвинуть вниз" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Выбранную строку вниз" #: modules/cons.py:304 msgid "_Remove" msgstr "Удалить" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Удалить выделенную строку" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Показать/скрыть панель инструментов" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Показать/Скрыть панель инструментов" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "Увеличить иконки панели инструментов" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Увеличить иконки панели инструментов" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "Уменьшить иконки панели инструментов" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Уменьшить иконки панели инструментов" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Домашняя страница проекта X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "О программе" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "О программе X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "Закрыть все" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Закрыть окна" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "Убрать разворот всех окон" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Убрать разворот окон" #: modules/cons.py:313 msgid "_Maximize All" msgstr "Развернуть все" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "Развернуть окна" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Разбить на квадраты" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Разбить на квадраты" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Разбить все нижним треугольником" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Разбить нижним треугольником" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Разбить все верхним треугольником" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Разбить верхним треугольником" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Разбить все правым треугольником" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Разбить правым треугольником" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Разбить все левым треугольником" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Разбить левым треугольником" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Разбить все пользовательской схемой 2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Разбить пользовательской схемой 2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Разбить все пользовательской схемой 1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Разбить пользовательской схемой 1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Разбить по сетке" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Разбить по сетке" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Разбить все по горизонтали" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Разбить по горизонтали" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Разбить все по вертикали" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Разбить по вертикали" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Эта программа является свободным программным обеспечением;\n" "вы можете распространять и/или изменять его согласно условиям\n" "Стандартной Общественной Лицензии GNU (GNU GPL),\n" "опубликованной Фондом свободного программного обеспечения (FSF),\n" "либо Лицензии версии 3, либо (на ваше усмотрение) \n" "любой более поздней версии.\n" " \n" "Программа распространяется в надежде, что она будет полезной,\n" "но БЕЗ КАКИХ БЫ ТО НИ БЫЛО ГАРАНТИЙНЫХ ОБЯЗАТЕЛЬСТВ; \n" "даже без косвенных гарантийных обязательств, связанных\n" "с ПОТРЕБИТЕЛЬСКИМИ СВОЙСТВАМИ и ПРИГОДНОСТЬЮ\n" "ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Для подробностей смотрите\n" "Стандартную Общественную Лицензию GNU.\n" "\n" "Вы должны были получить копию Стандартной Общественной\n" "Лицензии GNU вместе с этой программой. Если это не так,\n" "напишите в Фонд Свободного ПО (Free Software Foundation, Inc., \n" "675 Mass Ave, Cambridge, MA 02139, USA." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Китайский Упрощённый (zh_CN) Khiyuan Fan \n" "Китайский Традиционный (zh_TW) Yan-ren Tsai \n" "Чешский (cs) Pavel Fric \n" "Испанский (es_AR) MeloPixel \n" "Французский (fr) Ludovic Troisi \n" "Немецкий (de) Jöran Zeller \n" "Итальянский (it) Giuseppe Penone \n" "Польский (pl) Dominik Wójt \n" "Русский (ru) Андрей Ковтун " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Параметры" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Не включать минимизированные окна в список" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Только текущий рабочий стол" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Сворачивать в системный лоток" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Свернуть в системный лоток при запуске" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "Использовать Appindicator" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Показывать панель инструментов" #: glade/x-tile.glade.h:38 msgid " Language " msgstr "Язык" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Область тайлинга Монитора 1" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Позиция" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Ширина" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Высота" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Размер" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Область тайлинга Монитора 2" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Закрыть" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Отмена" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "OK" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Пользовательская схема тайлинга" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Разбить окна вручную" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Выберите их из списка окон" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Нажмите кнопку 'Обновить'" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Обновить" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Применение фильтра ко всем строкам" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Добавить фильтр приложений" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Убрать фильтр приложений" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Добавить строку" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Выбор рабочего стола" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Выйти после тайлинга" x-tile-2.5/locale/fr.po0000644000175200017520000004430612023373714013765 0ustar develdevel# French translations for PACKAGE package. # Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # maul , 2010. # Ludovic Troisi 2010. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-09-07 23:14+0200\n" "PO-Revision-Date: 2011-03-03 11:05+0100\n" "Last-Translator: Ludovic Troisi \n" "Language-Team: X Tile\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: modules/core.py:307 msgid "Use Drag and Drop to Sort the Rows" msgstr "Utilisez le glisser-déposer pour trier les lignes" #: modules/core.py:347 msgid "The New Language will be Available Only After Restarting X Tile" msgstr "La nouvelle langue sera chargée une fois X Tile relancé" #: modules/core.py:369 glade/x-tile.glade.h:5 msgid "Tile the Windows Upon your X Desktop" msgstr "Répartit vos fenêtres sur votre Bureau X" #: modules/core.py:583 msgid "The Size of the Toolbar Icons is already at the Maximum Value" msgstr "La taille de la barre d'outils est déjà à sa valeur maximale" #: modules/core.py:593 msgid "The Size of the Toolbar Icons is already at the Minimum Value" msgstr "La taille de la barre d'outils est déjà à sa valeur minimale" #: modules/core.py:703 modules/core.py:711 modules/core.py:719 msgid "No Row is Selected" msgstr "Aucune ligne n'a été sélectionnée" #: modules/core.py:741 modules/core.py:775 msgid "No Application Selected!" msgstr "Aucune application sélectionnée !" #: modules/core.py:855 msgid "Grid Details" msgstr "Détails de la grille" #: modules/core.py:863 msgid "Rows" msgstr "Lignes" #: modules/core.py:870 msgid "Columns" msgstr "Colonnes" #: modules/core.py:956 modules/core.py:964 modules/core.py:974 msgid "No Windows Checked" msgstr "Aucune fenêtre n'a été sélectionnée" #: modules/core.py:1014 modules/core.py:1027 msgid "Edit Custom Tile Settings" msgstr "Éditer la répartition personnalisée" #: modules/core.py:1174 msgid "" "The Custom Tile 1 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 1 " "Set'" msgstr "" "La répartition personnalisée 1 n'est pas définie: Cliquez sur le menu 'Tile-" ">Configurer la répartition personnalisée 1'" #: modules/core.py:1192 msgid "" "The Custom Tile 2 was Not Set Yet: Click the Menu Item 'Tile->Custom Tile 2 " "Set'" msgstr "" "La répartition personnalisée 2 n'est pas définie: Cliquez sur le menu 'Tile-" ">Configurer la répartition personnalisée 2'" #: modules/cons.py:268 msgid "_File" msgstr "_Fichier" #: modules/cons.py:269 msgid "_Edit" msgstr "É_dition" #: modules/cons.py:270 msgid "_Row" msgstr "_Ligne" #: modules/cons.py:271 msgid "_Tile" msgstr "_Répartir" #: modules/cons.py:272 msgid "_View" msgstr "_Affichage" #: modules/cons.py:273 modules/cons.py:308 msgid "_Help" msgstr "Aid_e" #: modules/cons.py:275 msgid "_Filter" msgstr "_Filtrer" #: modules/cons.py:275 msgid "Filter Rows" msgstr "Filtre les lignes" #: modules/cons.py:276 msgid "Selected by _Default" msgstr "Sélectionnée par _défaut" #: modules/cons.py:276 glade/x-tile.glade.h:59 msgid "Rows to be Selected by Default" msgstr "Lignes à être sélectionné par défaut" #: modules/cons.py:277 msgid "_Reload" msgstr "_Recharger" #: modules/cons.py:277 msgid "Reload the Windows List" msgstr "Recharge la liste des fenêtres" #: modules/cons.py:278 msgid "_Quit" msgstr "_Quitter" #: modules/cons.py:278 msgid "Quit the Application" msgstr "Quitte l'application" #: modules/cons.py:279 msgid "_Exit X Tile" msgstr "_Quitter X Tile" #: modules/cons.py:279 msgid "Exit from X Tile" msgstr "Quitter X Tile" #: modules/cons.py:280 msgid "Show/Hide _X Tile" msgstr "Afficher/Masquer _X Tile" #: modules/cons.py:280 msgid "Toggle Show/Hide X Tile" msgstr "Affiche/Masque X Tile" #: modules/cons.py:281 msgid "_Preferences" msgstr "_Préférences" #: modules/cons.py:281 msgid "Open the Preferences Window" msgstr "Ouvre la fenêtre de préférences" #: modules/cons.py:282 msgid "Select _All" msgstr "_Tout sélectionner" #: modules/cons.py:282 msgid "Select All the Windows in the List" msgstr "Sélectionne toutes les fenêtres de la liste" #: modules/cons.py:283 msgid "Deselect A_ll" msgstr "Tout _désélectionner" #: modules/cons.py:283 msgid "Deselect All the Windows in the List" msgstr "Désélectionne toutes les fenêtres de la liste" #: modules/cons.py:284 msgid "Tile _Vertically" msgstr "Répartir _verticalement" #: modules/cons.py:284 msgid "Tile Vertically The Checked Windows" msgstr "Répartit verticalement les fenêtres sélectionnées" #: modules/cons.py:285 msgid "Tile _Horizontally" msgstr "Répartir _horizontalement" #: modules/cons.py:285 msgid "Tile Horizontally The Checked Windows" msgstr "Répartit horizontalement les fenêtres sélectionnées" #: modules/cons.py:286 msgid "_Triangle Up" msgstr "Répartir en triangle à partir du h_aut" #: modules/cons.py:286 msgid "Tile Triangle Up The Checked Windows" msgstr "Répartit selon un triangle les fenêtres sélectionnées à partir du haut" #: modules/cons.py:287 msgid "Triangle _Down" msgstr "Répartir en triangle à partir du _bas" #: modules/cons.py:287 msgid "Tile Triangle Down The Checked Windows" msgstr "Répartit selon un triangle les fenêtres sélectionnées à partir du bas" #: modules/cons.py:288 msgid "Triangle _Left" msgstr "Répartir en triangle à partir de la _gauche" #: modules/cons.py:288 msgid "Tile Triangle Left The Checked Windows" msgstr "" "Répartit selon un triangle les fenêtres sélectionnées à partir de la gauche" #: modules/cons.py:289 msgid "Triangle _Right" msgstr "Répartir en triangle à partir de la dr_oite" #: modules/cons.py:289 msgid "Tile Triangle Right The Checked Windows" msgstr "" "Répartit selon un triangle les fenêtres sélectionnées à partir de la droite" #: modules/cons.py:290 msgid "Tile _Quad" msgstr "Répartir en _quartiers" #: modules/cons.py:290 msgid "Tile into 4 quadrants The Checked Windows" msgstr "Répartit selon quatre quartiers les fenêtres sélectionnées" #: modules/cons.py:291 msgid "Tile _Grid" msgstr "Répartir en _Grille" #: modules/cons.py:291 msgid "Tile into an Arbitrary Grid The Checked Windows" msgstr "Répartit arbitrairement en grille les fenêtres sélectionnées" #: modules/cons.py:292 msgid "Custom Tile 1 _Set" msgstr "_Configurer la répartition personnalisée 1" #: modules/cons.py:292 msgid "Edit Custom Tile 1 Settings" msgstr "Paramétrages de la répartition personnalisée 1" #: modules/cons.py:293 msgid "Custom Tile _1 Run" msgstr "Lancer la répartition personnalisée 1" #: modules/cons.py:293 msgid "Execute Custom Tile 1" msgstr "Exécuter la répartition personnalisée 1" #: modules/cons.py:294 msgid "Custom Tile 2 S_et" msgstr "C_onfigurer la répartition personnalisée 2" #: modules/cons.py:294 msgid "Edit Custom Tile 2 Settings" msgstr "Paramétrages de la répartition personnalisée 1" #: modules/cons.py:295 msgid "Custom Tile _2 Run" msgstr "Lancer la répartition personnalisée 2" #: modules/cons.py:295 msgid "Execute Custom Tile 2" msgstr "Exécuter la répartition personnalisée 2" #: modules/cons.py:296 modules/cons.py:325 msgid "U_ndo Tiling" msgstr "A_nnuler la répartition" #: modules/cons.py:296 modules/cons.py:325 msgid "Undo the Latest Tiling Operation" msgstr "Annule la dernière opération de répartition" #: modules/cons.py:297 modules/cons.py:324 msgid "_Invert Tiling Order" msgstr "_Inverser l'ordre de répartition" #: modules/cons.py:297 modules/cons.py:324 msgid "Invert the Order of the Latest Tiling Operation" msgstr "Inverse l'ordre de la dernière opération de répartition" #: modules/cons.py:298 modules/cons.py:326 msgid "C_ycle Tiling Order" msgstr "_Alterner l'ordre de répartition" #: modules/cons.py:298 modules/cons.py:326 msgid "Cycle the Order of the Latest Tiling Operation" msgstr "Alterne l'ordre de la dernière opération de répartition" #: modules/cons.py:299 msgid "_Maximize Windows" msgstr "_Maximiser les fenêtres" #: modules/cons.py:299 msgid "Maximize The Checked Windows" msgstr "Maximise les fenêtres sélectionnées" #: modules/cons.py:300 msgid "_Unmaximize Windows" msgstr "_Restaurer les fenêtres" #: modules/cons.py:300 msgid "Unmaximize The Checked Windows" msgstr "Restaure les fenêtres sélectionnées" #: modules/cons.py:301 msgid "_Close Windows" msgstr "_Fermer les fenêtres" #: modules/cons.py:301 msgid "Close The Checked Windows" msgstr "Ferme les fenêtres sélectionnées" #: modules/cons.py:302 msgid "Move _Up" msgstr "Déplacer vers le _haut" #: modules/cons.py:302 msgid "Move the Selected Row Up" msgstr "Déplace la ligne sélectionnée vers le haut" #: modules/cons.py:303 msgid "Move _Down" msgstr "Déplacer vers le _bas" #: modules/cons.py:303 msgid "Move the Selected Row Down" msgstr "Déplace la ligne sélectionnée vers le bas" #: modules/cons.py:304 msgid "_Remove" msgstr "_Supprimer" #: modules/cons.py:304 msgid "Remove the Selected Row" msgstr "Supprime la ligne sélectionnée (Retour arrière)" #: modules/cons.py:305 msgid "Show/Hide _Toolbar" msgstr "Afficher/Masquer la barre d'_outils" #: modules/cons.py:305 msgid "Toggle Show/Hide Toolbar" msgstr "Affiche/Masque la barre d'outils" #: modules/cons.py:306 msgid "_Increase Toolbar Icons Size" msgstr "_Augmenter la taille de la barre d'outils" #: modules/cons.py:306 msgid "Increase the Size of the Toolbar Icons" msgstr "Augmente la taille de la barre d'outils" #: modules/cons.py:307 msgid "_Decrease Toolbar Icons Size" msgstr "_Diminuer la taille de la barre d'outils" #: modules/cons.py:307 msgid "Decrease the Size of the Toolbar Icons" msgstr "Diminue la taille de la barre d'outils" #: modules/cons.py:308 msgid "X Tile Project Home Page" msgstr "Page d'accueil de X Tile" #: modules/cons.py:309 modules/cons.py:310 msgid "_About" msgstr "À _propos" #: modules/cons.py:309 modules/cons.py:310 glade/x-tile.glade.h:1 msgid "About X Tile" msgstr "Informations à propos de X Tile" #: modules/cons.py:311 msgid "_Close All" msgstr "_Tout Fermer" #: modules/cons.py:311 msgid "Close All Windows" msgstr "Fermer toutes les fenêtres" #: modules/cons.py:312 msgid "_Unmaximize All" msgstr "Tout _Diminuer" #: modules/cons.py:312 msgid "Unmaximize All Windows" msgstr "Diminuer toutes les fenêtres" #: modules/cons.py:313 msgid "_Maximize All" msgstr "Tout _maximiser" #: modules/cons.py:313 msgid "Maximize All Windows" msgstr "_Maximiser toutes les fenêtres" #: modules/cons.py:314 msgid "Tile All _Quad" msgstr "Tout répartir en _quartiers" #: modules/cons.py:314 msgid "Tile All Windows Quad" msgstr "Répartir toutes les fenêtres en _quartiers" #: modules/cons.py:315 msgid "Tile All Triangle _Down" msgstr "Tout répartir en triangle à partir du _bas" #: modules/cons.py:315 msgid "Tile All Windows Triangle Down" msgstr "Répartir toutes les fenêtres en triangle à partir du _bas" #: modules/cons.py:316 msgid "Tile All Triangle _Up" msgstr "Tout répartir en triangle à partir du h_aut" #: modules/cons.py:316 msgid "Tile All Windows Triangle Up" msgstr "Répartir toutes les fenêtres en triangle à partir du h_aut" #: modules/cons.py:317 msgid "Tile All Triangle _Right" msgstr "Tout répartir en triangle à partir de la dr_oite" #: modules/cons.py:317 msgid "Tile All Windows Triangle Right" msgstr "Répartir toutes les fenêtres en triangle à partir de la dr_oite" #: modules/cons.py:318 msgid "Tile All Triangle _Left" msgstr "Tout répartir en triangle à partir de la _gauche" #: modules/cons.py:318 msgid "Tile All Windows Triangle Left" msgstr "Répartir toutes les fenêtres en triangle à partir de la _gauche" #: modules/cons.py:319 msgid "Tile All Custom _2" msgstr "Tout répartir en personnalisée _2" #: modules/cons.py:319 msgid "Tile All Windows Custom 2" msgstr "Répartir toutes les fenêtres en personnalisée _2" #: modules/cons.py:320 msgid "Tile All Custom _1" msgstr "Tout répartir en personnalisée _1" #: modules/cons.py:320 msgid "Tile All Windows Custom 1" msgstr "Répartir toutes les fenêtres en personnalisée _1" #: modules/cons.py:321 msgid "Tile All _Grid" msgstr "Tout répartir en _Grille" #: modules/cons.py:321 msgid "Tile All Windows Grid" msgstr "Répartir toutes les fenêtres en Grille" #: modules/cons.py:322 msgid "Tile All _Horizontally" msgstr "Tout répartir _horizontalement" #: modules/cons.py:322 msgid "Tile All Windows Horizontally" msgstr "Répartir toutes les fenêtres horizontalement" #: modules/cons.py:323 msgid "Tile All _Vertically" msgstr "Tout répartir ve_rticalement" #: modules/cons.py:323 msgid "Tile All Windows Vertically" msgstr "Répartir toutes les fenêtres verticalement" #: glade/x-tile.glade.h:2 msgid "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " msgstr "" "Copyright © 2009-2012\n" "Giuseppe Penone \n" "Chris Camacho " #: glade/x-tile.glade.h:6 msgid "http://www.giuspen.com/x-tile/" msgstr "http://www.giuspen.com/x-tile/" #: glade/x-tile.glade.h:7 msgid "" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,\n" "MA 02110-1301, USA." msgstr "" "\n" "Ce programme est un logiciel libre ; vous pouvez le redistribuer\n" "et/ou le modifier au titre des clauses de la Licence Publique\n" "Générale GNU, telle que publiée par la Free Software Foundation ;\n" "soit la version 2 de la Licence, ou (à votre discrétion) une version\n" "ultérieure quelconque.\n" "\n" "Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS\n" "AUCUNE GARANTIE ; sans même une garantie implicite de\n" "COMMERCIABILITE ou DE CONFORMITE A UNE UTILISATION\n" "PARTICULIERE. Voir la Licence Publique Générale GNU pour plus de\n" "détails.\n" "\n" "Vous devriez avoir reçu un exemplaire de la Licence Publique\n" "Générale GNU avec ce programme ; si ce n'est pas le cas, écrivez à\n" "la Free Software Foundation Inc., 51 Franklin Street, Fifth Floor,\n" "Boston, MA 02110-1301, USA." #: glade/x-tile.glade.h:22 msgid "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinese Traditional (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "French (fr) Ludovic Troisi \n" "German (de) Jöran Zeller \n" "Italian (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russian (ru) Andriy Kovtun " msgstr "" "Chinese Simplified (zh_CN) Khiyuan Fan \n" "Chinois traditionnel (zh_TW) Yan-ren Tsai \n" "Czech (cs) Pavel Fric \n" "Français (fr) Ludovic Troisi \n" "Allemand (de) Jöran Zeller \n" "Italien (it) Giuseppe Penone \n" "Polish (pl) Dominik Wójt \n" "Russe (ru) Andriy Kovtun " #: glade/x-tile.glade.h:31 msgid "Preferences" msgstr "Préférences" #: glade/x-tile.glade.h:32 msgid "Do Not List Minimized Windows" msgstr "Ne pas lister les fenêtres minimisées" #: glade/x-tile.glade.h:33 msgid "Only Current Workspace" msgstr "Uniquement l'espace de travail courant" #: glade/x-tile.glade.h:34 msgid "Enable System Tray Docking" msgstr "Activer dans la zone de notification" #: glade/x-tile.glade.h:35 msgid "Start Minimized in the System Tray" msgstr "Lancer dans la zone de notification au démarrage" #: glade/x-tile.glade.h:36 msgid "Use AppIndicator for Docking" msgstr "" #: glade/x-tile.glade.h:37 msgid "Show Toolbar" msgstr "Afficher la barre d'outils" #: glade/x-tile.glade.h:38 msgid " Language " msgstr " Langue" #: glade/x-tile.glade.h:39 msgid "Override Monitor 1 Tiling Area" msgstr "Zone de répartition personnalisée pour l'écran 1" #: glade/x-tile.glade.h:40 msgid "X" msgstr "X" #: glade/x-tile.glade.h:41 msgid "Y" msgstr "Y" #: glade/x-tile.glade.h:42 msgid "Position" msgstr "Position" #: glade/x-tile.glade.h:43 msgid "Width" msgstr "Largeur" #: glade/x-tile.glade.h:44 msgid "Height" msgstr "Hauteur" #: glade/x-tile.glade.h:45 msgid "Size" msgstr "Taille" #: glade/x-tile.glade.h:46 msgid "Override Monitor 2 Tiling Area" msgstr "Zone de répartition personnalisée pour l'écran 2" #: glade/x-tile.glade.h:47 msgid "Close" msgstr "Fermer" #: glade/x-tile.glade.h:48 msgid "Cancel" msgstr "Annuler" #: glade/x-tile.glade.h:49 msgid "OK" msgstr "Valider" #: glade/x-tile.glade.h:50 msgid "Custom Tiling Layout" msgstr "Mise en page personnalisée" #: glade/x-tile.glade.h:51 msgid "1) Tile Some Windows Manually" msgstr "1) Disposez quelques fenêtres manuellement" #: glade/x-tile.glade.h:52 msgid "2) Select Them in the X Tile Windows List" msgstr "2) Cochez-les dans la liste de X Tile" #: glade/x-tile.glade.h:53 msgid "3) Click the Update Button" msgstr "3) Cliquez sur le bouton Mettre à jour" #: glade/x-tile.glade.h:54 msgid "Update" msgstr "Mettre à jour" #: glade/x-tile.glade.h:55 msgid "Rows to Filter" msgstr "Lignes à filtrer" #: glade/x-tile.glade.h:56 msgid "Add an Application Filter" msgstr "Ajoute une application au filtre" #: glade/x-tile.glade.h:57 msgid "Remove an Application Filter" msgstr "Retire une application du filtre" #: glade/x-tile.glade.h:58 msgid "Add Row" msgstr "Ajouter une ligne" #: glade/x-tile.glade.h:60 msgid "X Tile" msgstr "X Tile" #: glade/x-tile.glade.h:61 msgid "Set Destination Workspace" msgstr "Définir l'Espace de travail de destination" #: glade/x-tile.glade.h:62 msgid "Exit After Tile" msgstr "Fermer après répartition"