def get_gtk_builder(name): filename = "%s/%s.ui" % (UI_PATH, name) assert ospath.exists(filename) b = Builder() b.set_property("translation-domain", I18N_APP) b.add_from_file(filename) return b
def showUI(self): """ shows the ui and starts it so user interaction can begin """ self.builder = Builder() self.builder.add_from_file("ui.xml") self.mainWindow = self.builder.get_object("mainWin") self.mainWindow.set_title(self.currentFLC.label) self.mainWindow.maximize() self.mainWindow.connect("delete-event", main_quit) self.fssEntry = self.builder.get_object("fssEntry") self.bssEntry = self.builder.get_object("bssEntry") self.inputsBox = self.builder.get_object("inputsBox") self.outputsBox = self.builder.get_object("outputsBox") self.rulesBox = self.builder.get_object("rulesBox") self.andCombo = self.builder.get_object("andCombo") self.implicationCombo = self.builder.get_object("implicationCombo") self.inputPlots = [] self.outputPlots = [] for i in self.currentFLC.inputs: self.inputPlots.append(PlotWidget([i])) for i in self.currentFLC.outputs: self.outputPlots.append(PlotWidget([i])) for k, i in enumerate(self.inputPlots): self.inputsBox.pack_start(self.inputPlots[k].get_canvas_widget()) for k, i in enumerate(self.outputPlots): self.outputsBox.pack_start(self.outputPlots[k].get_canvas_widget()) self.rbList = RuleBaseWidget( self.currentFLC.rulebase).get_list_widget() self.rulesBox.pack_start(self.rbList) self.discSpin = self.builder.get_object("discretizationSteps") self.closeButton = self.builder.get_object("closeBtn") self.closeButton.connect("clicked", main_quit) self.executeButton = self.builder.get_object("execBtn") self.executeButton.connect("clicked", self.execute_clicked) self.mainWindow.show_all() main()
def __init__(self): component.Component.__init__(self, 'QueuedTorrents', depend=['StatusBar', 'AddTorrentDialog']) self.queue = [] self.status_item = None self.config = ConfigManager('gtkui.conf') self.builder = Builder() self.builder.add_from_file( deluge.common.resource_filename( 'deluge.ui.gtkui', os.path.join('glade', 'queuedtorrents.ui'))) self.builder.get_object('chk_autoadd').set_active( self.config['autoadd_queued']) self.dialog = self.builder.get_object('queued_torrents_dialog') self.dialog.set_icon(get_logo(32)) self.builder.connect_signals(self) self.treeview = self.builder.get_object('treeview') self.treeview.append_column( TreeViewColumn(_('Torrent'), CellRendererText(), text=0)) self.liststore = ListStore(str, str) self.treeview.set_model(self.liststore) self.treeview.set_tooltip_column(1)
def on_menuitem_add_peer_activate(self, menuitem): """This is a callback for manually adding a peer""" log.debug('on_menuitem_add_peer') builder = Builder() builder.add_from_file( deluge.common.resource_filename( 'deluge.ui.gtkui', os.path.join('glade', 'connect_peer_dialog.ui'))) peer_dialog = builder.get_object('connect_peer_dialog') txt_ip = builder.get_object('txt_ip') response = peer_dialog.run() if response: value = txt_ip.get_text() if value and ':' in value: if ']' in value: # ipv6 ip = value.split(']')[0][1:] port = value.split(']')[1][1:] else: # ipv4 ip = value.split(':')[0] port = value.split(':')[1] if deluge.common.is_ip(ip): log.debug('adding peer %s to %s', value, self.torrent_id) client.core.connect_peer(self.torrent_id, ip, port) peer_dialog.destroy() return True
def load_builder_file(cls, path_parts, root=None, domain=''): _id = "/".join(path_parts) if _id in _builders: return _builders[_id] buildername = pan_app.get_abs_data_filename(path_parts) builder = Builder() builder.add_from_file(buildername) builder.set_translation_domain(domain) _builders[_id] = builder return builder
def __init__(self, fname, root=None, domain="", typedict={}): self.builder = Builder() if domain: self.builder.set_translation_domain(domain) conv = GtkBuilderConverter(root=root, skip_windows=False) conv.parse_file(fname) cwd = os.getcwd() os.chdir(os.path.dirname(fname)) xml = conv.to_xml() self.builder.add_from_string(xml, len(xml)) os.chdir(cwd)
def load(self): log.debug('Adding Label Preferences page') builder = Builder() builder.add_from_file(get_resource('label_pref.ui')) self.plugin.add_preferences_page(_('Label'), builder.get_object('label_prefs_box')) self.plugin.register_hook('on_show_prefs', self.load_settings) self.plugin.register_hook('on_apply_prefs', self.on_apply_prefs) self.load_settings()
def __init__(self, updates_out, events_in): self.updates_out = updates_out self.events_in = events_in self.builder = Builder() self.builder.add_from_file(sys.path[0] + "/lib/pendrive-frenzy.glade") self.window = self.builder.get_object("main_window") self.pendrive_list = PendriveListWrapper( self.builder.get_object("pendrive_list")) self.writing_enabled = self.builder.get_object("writing_enabled") self.infobar = self.builder.get_object("infobar") self.statusbar = self.builder.get_object("statusbar") self.statusbar_contextid = self.statusbar.get_context_id("default") self.builder.connect_signals(self) self.window.show()
def enable(self): """Enables the system tray icon.""" self.builder = Builder() self.builder.add_from_file( resource_filename('deluge.ui.gtkui', os.path.join('glade', 'tray_menu.ui'))) self.builder.connect_signals(self) self.tray_menu = self.builder.get_object('tray_menu') if appindicator and self.config['enable_appindicator']: log.debug('Enabling the Application Indicator...') self.indicator = appindicator.Indicator( 'deluge', 'deluge', appindicator.CATEGORY_APPLICATION_STATUS) try: self.indicator.set_property('title', _('Deluge')) except TypeError: # Catch 'title' property error for previous appindicator versions pass # Pass the menu to the Application Indicator self.indicator.set_menu(self.tray_menu) # Make sure the status of the Show Window MenuItem is correct self._sig_win_hide = self.mainwindow.window.connect( 'hide', self._on_window_hide) self._sig_win_show = self.mainwindow.window.connect( 'show', self._on_window_show) if self.mainwindow.visible(): self.builder.get_object('menuitem_show_deluge').set_active( True) else: self.builder.get_object('menuitem_show_deluge').set_active( False) # Show the Application Indicator self.indicator.set_status(appindicator.STATUS_ACTIVE) else: log.debug('Enabling the system tray icon..') if windows_check() or osx_check(): self.tray = status_icon_new_from_pixbuf(get_logo(32)) else: self.tray = status_icon_new_from_icon_name('deluge-panel') self.tray.connect('activate', self.on_tray_clicked) self.tray.connect('popup-menu', self.on_tray_popup) self.builder.get_object('download-limit-image').set_from_file( get_pixmap('downloading16.png')) self.builder.get_object('upload-limit-image').set_from_file( get_pixmap('seeding16.png')) client.register_event_handler('ConfigValueChangedEvent', self.config_value_changed) if client.connected(): # We're connected so we need to get some values from the core self.__start() else: # Hide menu widgets because we're not connected to a host. for widget in self.hide_widget_list: self.builder.get_object(widget).hide()