def _create_widgets(self): """""" self.web_listen_port_label = HIGLabel(_("Web Listen PORT")) self.web_listen_port_entry = HIGTextEntry() self.aggregator_ip_label = HIGLabel(_("Aggregator URL")) self.aggregator_ip_entry = HIGTextEntry() self.network_listen_port_label = HIGLabel(_("Peer Listen PORT")) self.network_listen_port_entry = HIGTextEntry() self.save_button = HIGButton(title="Save") self.close_button = HIGButton(title="Close") self.hbox = HIGHBox(False, 2) self.table = HIGTable(4, 2, False) self.table.set_row_spacings(5) self.table.set_col_spacings(10) self.action_area.set_homogeneous(False)
class SettingsDialog(HIGDialog): """""" def __init__(self, title=_('Settings')): """Constructor""" HIGDialog.__init__(self, title=title, flags=gtk.DIALOG_MODAL) self.set_position(gtk.WIN_POS_CENTER_ON_PARENT) self.set_default_response(gtk.RESPONSE_ACCEPT) self.set_keep_above(True) self.set_size_request(480, 100) self.set_border_width(2) self._create_widgets() self._pack_widgets() self._connect_widgets() self._load_settings() def _load_settings(self): """""" aggregator_url = g_config.get('network', 'aggregator_url') self.aggregator_ip_entry.set_text(aggregator_url) def _create_widgets(self): """""" self.web_listen_port_label = HIGLabel(_("Web Listen PORT")) self.web_listen_port_entry = HIGTextEntry() self.aggregator_ip_label = HIGLabel(_("Aggregator URL")) self.aggregator_ip_entry = HIGTextEntry() self.network_listen_port_label = HIGLabel(_("Peer Listen PORT")) self.network_listen_port_entry = HIGTextEntry() self.save_button = HIGButton(title="Save") self.close_button = HIGButton(title="Close") self.hbox = HIGHBox(False, 2) self.table = HIGTable(4, 2, False) self.table.set_row_spacings(5) self.table.set_col_spacings(10) self.action_area.set_homogeneous(False) def _pack_widgets(self): """""" self.hbox.set_border_width(8) self.table.attach(self.aggregator_ip_label, 0, 1, 0, 1, gtk.FILL, gtk.FILL, 0, 0) self.table.attach(self.aggregator_ip_entry, 1, 4, 0, 1, gtk.FILL | gtk.EXPAND, gtk.FILL | gtk.EXPAND, 0, 0) self.hbox._pack_expand_fill(self.table) self.vbox.pack_start(self.hbox, False, False) self.action_area.pack_end(self.save_button) self.action_area.reorder_child(self.save_button, 0) self.action_area.pack_end(self.close_button) self.action_area.reorder_child(self.close_button, 1) def _connect_widgets(self): """""" self.save_button.connect("clicked", lambda w: self._save_settings()) self.close_button.connect("clicked", lambda w: self._close_settings()) def _save_settings(self): """""" aggregator_url = self.aggregator_ip_entry.get_text() #print aggregator_url if aggregator_url != None and aggregator_url != "": #http address check if 'http://' not in aggregator_url: aggregator_url = "http://" + aggregator_url aggregator_url = aggregator_url.rstrip('/') theApp.aggregator.base_url = aggregator_url g_config.set('network', 'aggregator_url', aggregator_url) g_db_helper.set_value('config', 'aggregator_url', aggregator_url) self.destroy() def _close_settings(self): """""" self.destroy()
class SettingsDialog(HIGDialog): """""" def __init__(self,title=_('Settings')): """Constructor""" HIGDialog.__init__(self, title=title, flags=gtk.DIALOG_MODAL) self.set_position(gtk.WIN_POS_CENTER_ON_PARENT) self.set_default_response(gtk.RESPONSE_ACCEPT) self.set_keep_above(True) self.set_size_request(480,100) self.set_border_width(2) self._create_widgets() self._pack_widgets() self._connect_widgets() self._load_settings() def _load_settings(self): """""" aggregator_url = g_config.get('network', 'aggregator_url') self.aggregator_ip_entry.set_text(aggregator_url) def _create_widgets(self): """""" self.web_listen_port_label = HIGLabel(_("Web Listen PORT")) self.web_listen_port_entry = HIGTextEntry() self.aggregator_ip_label = HIGLabel(_("Aggregator URL")) self.aggregator_ip_entry = HIGTextEntry() self.network_listen_port_label = HIGLabel(_("Peer Listen PORT")) self.network_listen_port_entry = HIGTextEntry() self.save_button = HIGButton(title = "Save") self.close_button = HIGButton(title = "Close") self.hbox = HIGHBox(False,2) self.table = HIGTable(4,2,False) self.table.set_row_spacings(5) self.table.set_col_spacings(10) self.action_area.set_homogeneous(False) def _pack_widgets(self): """""" self.hbox.set_border_width(8) self.table.attach(self.aggregator_ip_label,0,1,0,1,gtk.FILL,gtk.FILL,0,0) self.table.attach(self.aggregator_ip_entry,1,4,0,1,gtk.FILL|gtk.EXPAND,gtk.FILL|gtk.EXPAND,0,0) self.hbox._pack_expand_fill(self.table) self.vbox.pack_start(self.hbox, False, False) self.action_area.pack_end(self.save_button) self.action_area.reorder_child(self.save_button,0) self.action_area.pack_end(self.close_button) self.action_area.reorder_child(self.close_button,1) def _connect_widgets(self): """""" self.save_button.connect("clicked",lambda w: self._save_settings()) self.close_button.connect("clicked",lambda w: self._close_settings()) def _save_settings(self): """""" aggregator_url = self.aggregator_ip_entry.get_text() #print aggregator_url if aggregator_url != None and aggregator_url != "": #http address check if 'http://' not in aggregator_url: aggregator_url = "http://"+ aggregator_url aggregator_url = aggregator_url.rstrip('/') theApp.aggregator.base_url = aggregator_url g_config.set('network', 'aggregator_url', aggregator_url) g_db_helper.set_value('config','aggregator_url', aggregator_url) self.destroy() def _close_settings(self): """""" self.destroy()