def __init__(self): Window.__init__(self, enable_resize=True) self.set_position(gtk.WIN_POS_CENTER) self.set_default_size(290, 512) titlebar = Titlebar(["min", "max", "close"], app_name="Baidu Hi for Linux") titlebar.min_button.connect("clicked", lambda w: self.min_window()) titlebar.max_button.connect("clicked", lambda w: self.toggle_max_window()) titlebar.close_button.connect("clicked", lambda w: gtk.main_quit()) self.add_move_event(titlebar.drag_box) self.add_toggle_event(titlebar.drag_box) banner_image = gtk.image_new_from_file(get_banner_image()) banner_box = set_widget_gravity(banner_image, (0,0,0,0), (10, 0, 0, 0)) user_box, self.user_entry = self.create_combo_entry("帐号:") passwd_box, self.passwd_entry = self.create_combo_entry("密码:") self.remember_passwd = CheckButton("记住密码") self.automatic_login = CheckButton("自动登录") self.status_box, self.status_combo_box = self.create_combo_widget("状态:", [(key, None) for key in "在线 忙碌 离开 隐身".split()], 0) check_box = gtk.HBox(spacing=10) check_box.pack_start(self.remember_passwd, False, False) check_box.pack_start(self.automatic_login, False, False) body_table = gtk.Table(5, 1) body_table.set_row_spacings(10) body_table.attach(banner_box, 0, 1, 0, 1, xoptions=gtk.FILL, yoptions=gtk.FILL) body_table.attach(user_box, 0, 1, 1, 2, xoptions=gtk.FILL, yoptions=gtk.FILL, xpadding=8) body_table.attach(passwd_box, 0, 1, 2, 3, xoptions=gtk.FILL, yoptions=gtk.FILL, xpadding=8) # body_table.attach(self.status_box, 0, 1, 3, 4, xoptions=gtk.FILL, yoptions=gtk.FILL, xpadding=8) body_table.attach(check_box, 0, 1, 4, 5, xoptions=gtk.FILL, yoptions=gtk.FILL) body_box_align = set_widget_gravity(set_widget_center(body_table), (1, 1, 0.5, 0.5), (0, 0, 30, 30)) self.login_button = Button("登录") self.login_button.set_size_request(95, 30) login_button_align = set_widget_gravity(set_widget_center(self.login_button), (1, 1, 0.5, 0.5), (30, 30, 0, 0)) main_box = gtk.VBox() main_box.connect("expose-event", self.draw_border_mask) main_box.pack_start(body_box_align, False, True) main_box.pack_start(login_button_align, False, True) self.window_frame.pack_start(titlebar, False, True) self.window_frame.pack_start(main_box)
def __init__(self, confirm_callback=None): DialogBox.__init__(self, title=_("Close"), default_width=360, default_height=145, mask_type=DIALOG_MASK_SINGLE_PAGE, ) self.confirm_callback = confirm_callback radio_group = gtk.HBox(spacing=50) self.minimize_radio = RadioButton(_("Minimize to tray")) self.minimize_radio.set_active(True) self.quit_radio = RadioButton(_("Quit")) radio_group.pack_start(self.minimize_radio, False, True) radio_group.pack_start(self.quit_radio, False, True) self.remembar_button = CheckButton(_("Don't prompt again")) self.remembar_button.set_active(True) radio_group_align = gtk.Alignment() radio_group_align.set_padding(30, 0, 10, 0) radio_group_align.add(radio_group) confirm_button = Button(_("OK")) confirm_button.connect("clicked", self.on_confirm_button_clicked) cancel_button = Button(_("Cancel")) cancel_button.connect("clicked", self.on_cancel_button_clicked) # Connect widgets. self.body_box.pack_start(radio_group_align, False, True) self.left_button_box.set_buttons([self.remembar_button,]) self.right_button_box.set_buttons([confirm_button, cancel_button])
def create_source_update_frequency_table(self): main_table = gtk.Table(3, 2) main_table.set_row_spacings(CONTENT_ROW_SPACING) dir_title_label = Label(_("Refresh package lists")) # auto update check button self.is_auto_update_button = CheckButton(label_text=_('Upgrade automatically')) self.is_auto_update_button.connect('released', self.change_auto_update) self.is_auto_update_button.set_active(utils.is_auto_update()) self.update_label = Label(_("Time interval: ")) self.update_spin = SpinBox(int(get_update_interval()), 0, 168, 1) self.update_spin.connect("value-changed", lambda w, v: set_update_interval(v)) self.hour_lablel = Label(_(" hour")) self.hour_lablel.set_size_request(50, 12) spin_hbox = gtk.HBox(spacing=3) spin_hbox.pack_start(self.update_label, False, False) spin_hbox.pack_start(self.update_spin, False, False) spin_hbox.pack_start(self.hour_lablel, False, False) main_table.attach(dir_title_label, 0, 2, 0, 1, yoptions=gtk.FILL) main_table.attach(create_separator_box(), 0, 2, 1, 2, yoptions=gtk.FILL) main_table.attach(self.is_auto_update_button, 0, 1, 2, 3, xoptions=gtk.FILL) main_table.attach(spin_hbox, 1, 2, 2, 3, xpadding=10, xoptions=gtk.FILL) return main_table
def row_pwd_entry(self, label_name, table=None): label = self.__label(label_name) entry = PasswordEntry() entry.set_size(self.right_width, WIDGET_HEIGHT) show_key = CheckButton(_("Show password"), padding_x=0) show_key.connect("toggled", lambda w: show_key.show_password(w.get_active())) self._wrap_align((label, entry), table) self._wrap_align((None, show_key), table) return entry
def create_uninstall_box(self): main_table = gtk.Table(2, 2) main_table.set_row_spacings(CONTENT_ROW_SPACING) uninstall_title_label = Label(_("On uninstalling the software")) # mini_check_button self.delete_check_button = CheckButton(_("Delete configuration files")) self.delete_check_button.set_active(get_purg_flag()) self.delete_check_button.connect("toggled", lambda w: set_purge_flag(self.delete_check_button.get_active())) main_table.attach(uninstall_title_label, 0, 2, 0, 1, yoptions=gtk.FILL) main_table.attach(create_separator_box(), 0, 2, 1, 2, yoptions=gtk.FILL) main_table.attach(self.delete_check_button, 0, 1, 2, 3, yoptions=gtk.FILL) return main_table
def __init__(self, songs=None): DialogBox.__init__(self, _("Convert"), 385, 200, DIALOG_MASK_SINGLE_PAGE, modal=True) self.songs = songs or [Player.song] default_format = "MP3 (CBR)" default_index = FORMATS.keys().index(default_format) format_box, self.format_combo_box = self.create_combo_widget(_("Format"), [(key, None) for key in FORMATS.keys()], default_index) quality_box, self.quality_combo_box = self.create_combo_widget(_("Quality"), self.get_quality_items(default_format), self.get_quality_index(default_format), 65) format_quality_box = gtk.HBox(spacing=68) format_quality_box.pack_start(format_box, False, False) format_quality_box.pack_start(quality_box, False, False) exists_box, self.exists_combo_box = self.create_combo_widget(_("Target file already exists"), [(_("Ask"), True), (_("Cover"), False)], 0) start_button = Button(_("Start")) close_button = Button(_("Close")) self.add_check_button = CheckButton(_("Add to Playlist when finished"), padding_x=2) main_table = gtk.Table() main_table.set_row_spacings(10) main_table.attach(format_quality_box, 0, 2, 0, 1, yoptions=gtk.FILL) main_table.attach(set_widget_left(exists_box), 0, 2, 1, 2, yoptions=gtk.FILL) main_table.attach(self.create_output_box(), 0, 2, 2, 3, yoptions=gtk.FILL) main_table.attach(set_widget_left(self.add_check_button), 0, 2, 3, 4, yoptions=gtk.FILL) main_align = gtk.Alignment() main_align.set_padding(10, 10, 15, 10) main_align.add(main_table) # Connect signals. self.format_combo_box.connect("item-selected", self.reset_quality_items) start_button.connect("clicked", self.add_and_close) close_button.connect("clicked", lambda w: self.destroy()) self.body_box.pack_start(main_align, False, True) self.right_button_box.set_buttons([start_button, close_button])
icon_view_vframe.add(icon_view_hframe) icon_files = map( lambda index: os.path.join(os.path.dirname(__file__), "cover/%s.jpg" % (index)), range(1, 33)) # icon_items = map(lambda icon_file_path: IconItem(icon_file_path, 96, 96), icon_files * 100) only_one_icon_items = [] # only_one_icon_items.append(icon_items[0]) # icon_view.add_items(icon_items) tab_4_box.pack_start(icon_view_vframe, True, True) # Tab 5. button_box = gtk.VBox() check_button = CheckButton(label_text="Check Button") radio_button_1 = RadioButton("Radio Button1") radio_button_2 = RadioButton("Radio Button2") button_box.pack_start(check_button, False, False, 4) button_box.pack_start(radio_button_1, False, False, 4) button_box.pack_start(radio_button_2, False, False, 4) tab_5_box.pack_start(button_box, False, False) # Breadcrumb bread = Bread(["Root", None], show_entry=True, show_others=False) bread.connect( "entry-changed", lambda w, p: bread.change_node(0, [(i, [(None, "test", None)]) for i in p.split("/")[1:]])) bread.set_size(100, -1)
def get_user_info(self, weibo): '''get weibo user info''' info = weibo.get_user_name() gtk.gdk.threads_enter() #self.get_user_error_text = "" weibo_hbox = weibo.get_box() hbox = gtk.HBox(False) vbox = gtk.VBox(False) weibo_hbox.pack_start(vbox, False, False) vbox.pack_start(hbox) #print weibo.t_type, info if info: self.is_get_user_info[weibo] = 1 label = Label(text=info, label_width=70, enable_select=False) check = CheckButton() #check = gtk.CheckButton() check.connect("toggled", self.weibo_check_toggle, weibo) check.set_active(True) check_vbox = gtk.VBox(False) check_align = gtk.Alignment(0.5, 0.5, 0, 0) check_align.add(check_vbox) check_vbox.pack_start(check, False, False) button = ImageButton( app_theme.get_pixbuf("share/" + weibo.t_type + ".png"), app_theme.get_pixbuf("share/" + weibo.t_type + ".png"), app_theme.get_pixbuf("share/" + weibo.t_type + ".png")) utils.set_clickable_cursor(button) button.connect("enter-notify-event", self.show_tooltip, _("Click to switch user")) hbox.pack_start(check_align, False, False) hbox.pack_start(button, False, False, 5) hbox.pack_start(label, False, False) else: self.is_get_user_info[weibo] = 0 check = CheckButton() #check = gtk.CheckButton() check.set_sensitive(False) check_vbox = gtk.VBox(False) check_align = gtk.Alignment(0.5, 0.5, 0, 0) check_align.add(check_vbox) check_vbox.pack_start(check, False, False) button = ImageButton( app_theme.get_pixbuf("share/" + weibo.t_type + "_no.png"), app_theme.get_pixbuf("share/" + weibo.t_type + "_no.png"), app_theme.get_pixbuf("share/" + weibo.t_type + "_no.png")) utils.set_clickable_cursor(button) button.connect("enter-notify-event", self.show_tooltip, _("Click to login")) hbox.pack_start(check_align, False, False) hbox.pack_start(button, False, False, 5) # curl time out info_error = weibo.get_curl_error() if info_error: #self.get_user_error_text += "%s:%s." % (weibo.t_type, _(info_error)) hbox.pack_start( Label(text="(%s)" % _(info_error), label_width=70,enable_select=False, text_color = ui_theme.get_color("category_item")), False, False) button.connect("clicked", self.weibo_login, weibo) self.__weibo_check_button_list.append(check) self.__weibo_image_button_list.append(button) gtk.gdk.threads_leave() return weibo_hbox
def __setup_checkbutton(self, label_text, padding_x=0): return CheckButton(label_text, padding_x)
def __init__(self, connection, set_button_cb, need_ssid=False, settings_obj=None): gtk.VBox.__init__(self) self.tab_name = _("Security") self.connection = connection self.set_button = set_button_cb # 新增settings_obj变量,用于访问shared_methods.Settings对象 self.settings_obj = settings_obj self.settings_obj.initial_lock = True self.need_ssid = need_ssid self.presave_index = None if self.need_ssid: log.info("enter hidden network settings") self.add_ssid_entry() if self.connection.get_setting( "802-11-wireless").security == "802-11-wireless-security": self.has_security = True self.setting = self.connection.get_setting( "802-11-wireless-security") else: self.has_security = False self.security_label = Label(_("Security:"), enable_select=False, enable_double_click=False) self.key_label = Label(_("Key:"), enable_select=False, enable_double_click=False) self.wep_index_label = Label(_("Wep index:"), enable_select=False, enable_double_click=False) self.auth_label = Label(_("Authentication:"), enable_select=False, enable_double_click=False) self.password_label = Label(_("Password:"******"None"), None), (_("WEP (Hex or ASCII)"), "none"), (_("WEP 104/128-bit Passphrase"), "none"), (_("WPA WPA2 Personal"), "wpa-psk")] #entry_item = map(lambda l: (l[1],l[0]), enumerate(self.encry_list)) self.security_combo = ComboBox(self.encry_list, fixed_width=self.ENTRY_WIDTH) #self.security_combo.set_size_request(self.ENTRY_WIDTH, 22) self.key_entry = PasswordEntry() self.password_entry = PasswordEntry() self.show_key_check = CheckButton(_("Show password"), padding_x=0) self.show_key_check.connect("toggled", self.show_key_check_button_cb) self.wep_index_spin = SpinBox(0, 1, 4, 1, self.ENTRY_WIDTH) self.auth_combo = ComboBox([(_("Shared Key"), "shared"), (_("Open System"), "open")], fixed_width=self.ENTRY_WIDTH) ## advance button self.align = gtk.Alignment(0, 1.0, 0, 0) self.align.set_padding(0, 0, 376, 0) self.align.set_size_request(-1, 30) self.button = Button(_("Advanced")) self.align.add(self.button) ## Create table self.table = gtk.Table(5, 4) #TODO UI change label_list = [ "security_label", "key_label", "wep_index_label", "auth_label", "password_label" ] widget_list = [ "password_entry", "key_entry", "wep_index_spin", "auth_combo", "security_combo" ] for label in label_list: l = getattr(self, label) l.set_can_focus(False) align = style.wrap_with_align(l, width=210) setattr(self, label + "_align", align) for w in widget_list: l = getattr(self, w) align = style.wrap_with_align(l, align="left") setattr(self, w + "_align", align) self.show_key_check_align = style.wrap_with_align(self.show_key_check, align="left") self.reset(self.has_security) self.security_combo.connect("item-selected", self.change_encry_type) self.key_entry.entry.connect("changed", self.save_wep_pwd) self.password_entry.entry.connect("changed", self.save_wpa_pwd) self.wep_index_spin.connect("value-changed", self.wep_index_spin_cb) self.auth_combo.connect("item-selected", self.save_auth_cb) style.set_table(self.table) table_align = gtk.Alignment(0, 0, 0, 0) table_align.add(self.table) style.draw_background_color(self) width, height = self.ENTRY_WIDTH, 22 self.key_entry.set_size(width, height) self.password_entry.set_size(width, height) self.wep_index_spin.set_size_request(width, height) self.auth_combo.set_size_request(width, height) self.security_combo.set_size_request(width, height) self.pack_start(table_align, False, False) self.pack_start(self.align, False, False, 0) self.settings_obj.initial_lock = False
#! /usr/bin/env python # -*- coding: utf-8 -*- from dtk.ui.init_skin import init_theme init_theme() from dtk.ui.application import Application from dtk.ui.button import CheckButton import gtk if __name__ == "__main__": application = Application() application.set_default_size(600, 450) application.add_titlebar(title="CheckButton example!") check_button_1 = CheckButton( label_text="科幻片", padding_x=5, ) check_button_2 = CheckButton( label_text="动作片", padding_x=5, ) check_button_3 = CheckButton( label_text="悬疑片", padding_x=5, ) check_button_box = gtk.VBox() check_button_align = gtk.Alignment()
def __init__( self, connection, ssid, key_mgmt=None, default_width=330, default_height=120, confirm_callback=None, cancel_callback=None, ): ''' Initialize InputDialog class. @param title: Input dialog title. @param init_text: Initialize input text. @param default_width: Width of dialog, default is 330 pixel. @param default_height: Height of dialog, default is 330 pixel. @param confirm_callback: Callback when user click confirm button, this callback accept one argument that return by user input text. @param cancel_callback: Callback when user click cancel button, this callback not need argument. ''' # Init. #DialogBox.__init__(self, _("Set password"), default_width, default_height, DIALOG_MASK_SINGLE_PAGE) DialogBox.__init__(self, _("Please input password for %s") % ssid, default_width, default_height, DIALOG_MASK_SINGLE_PAGE) #self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_NORMAL) self.confirm_callback = confirm_callback self.cancel_callback = cancel_callback self.connection = connection self.hint_align = gtk.Alignment() self.hint_align.set(0.5, 0.5, 0, 0) self.hint_align.set_padding(0, 0, 10, 10) self.hint_text = Label(_("Please input password for %s") % ssid, enable_select=False, enable_double_click=False) self.hint_align.add(self.hint_text) self.entry_align = gtk.Alignment() self.entry_align.set(0.0, 0.5, 0, 0) self.entry_align.set_padding(10, 0, 5, 9) if self.connection and isinstance(self.connection, NMRemoteConnection): (setting_name, method) = self.connection.guess_secret_info() if setting_name and method: init_text = nm_module.secret_agent.agent_get_secrets( self.connection.object_path, setting_name, method) else: init_text = "" else: tray_log.debug() self.connection = nm_module.nm_remote_settings.new_wireless_connection( ssid, key_mgmt) init_text = '' self.entry = PasswordEntry(init_text) self.show_key_check = CheckButton(_("Show password"), 0) self.show_key_check.connect("toggled", self.show_key_check_button_cb) self.entry.set_size(default_width - 22, 25) self.main_box = gtk.VBox() entry_align = gtk.Alignment(0.0, 0.5, 0, 0) entry_align.set_padding(0, 0, 5, 0) entry_align.set_size_request(-1, 30) entry_align.add(self.entry) self.main_box.pack_start(entry_align, False, False) self.main_box.pack_start(self.show_key_check, False, False) self.confirm_button = Button(_("OK")) self.cancel_button = Button(_("Cancel")) self.entry.entry.connect("press-return", lambda w: self.click_confirm_button()) self.confirm_button.connect("clicked", lambda w: self.click_confirm_button()) self.cancel_button.connect("clicked", lambda w: self.click_cancel_button()) self.entry_align.add(self.main_box) #self.body_box.pack_start(self.hint_align, True, True) self.body_box.pack_start(self.entry_align, True, True) #self.body_box.pack_start(self.main_box, True, True) self.right_button_box.set_buttons( [self.cancel_button, self.confirm_button]) self.connect("show", self.focus_input)
def __init__(self, connection, set_button_callback, settings_obj=None): gtk.VBox.__init__(self) self.tab_name = _("Broadband") self.connection = connection self.set_button = set_button_callback # 新增settings_obj变量,用于访问shared_methods.Settings对象 self.settings_obj = settings_obj # Init widgets self.table = gtk.Table(12, 4, False) #self.label_basic = Label(_("Basic"), text_size = TITLE_FONT_SIZE) self.label_basic = TitleBar(None, _("Basic")) self.label_number = Label(_("Code:"), text_size=CONTENT_FONT_SIZE, enable_select=False, enable_double_click=False) self.label_username = Label(_("Username:"******"Password:"******"Show password"), padding_x=0) self.button_to_region = Button(_("Regions setting")) #self.table = gtk.Table(6, 4, False) self.label_advanced = TitleBar(None,_("Advanced")) self.label_apn = Label(_("APN:"), text_size=CONTENT_FONT_SIZE, enable_select=False, enable_double_click=False) self.label_network = Label(_("Network ID:"), text_size=CONTENT_FONT_SIZE, enable_select=False, enable_double_click=False) self.label_type = Label(_("Type:"), text_size=CONTENT_FONT_SIZE, enable_select=False, enable_double_click=False) self.label_pin = Label(_("PIN:"), text_size=CONTENT_FONT_SIZE, enable_select=False, enable_double_click=False) self.apn = InputEntry() self.network_id = InputEntry() self.network_type = ComboBox([("Any", None), ("3G", 0), ("2G", 1), ("Prefer 3G", 2), ("Prefer 2G", 3)], fixed_width=self.ENTRY_WIDTH) self.roam_check = CheckButton(_("Allow roaming if home network is not available"), padding_x=0) self.pin = InputEntry() # Connect signals self.number.entry.connect("changed", self.save_settings_by, "number") self.username.entry.connect("changed", self.save_settings_by, "username") self.password.entry.connect("changed", self.save_settings_by, "password") self.apn.entry.connect("changed", self.save_settings_by, "apn") self.network_id.entry.connect("changed", self.save_settings_by, "network_id") self.network_type.connect("item-selected", self.network_type_selected) self.password_show.connect("toggled", self.password_show_toggled) self.roam_check.connect("toggled", self.roam_check_toggled) table_align = gtk.Alignment(0, 0, 0, 0) table_align.add(self.table) self.pack_start(table_align) # wrap with alignment # Refesh self.refresh()
def __init__(self, connection, module_frame, set_button_callback=None, settings_obj=None): gtk.VBox.__init__(self) self.connection = connection self.tab_name = _("PPTP") self.module_frame = module_frame self.set_button = set_button_callback # 新增settings_obj变量,用于访问shared_methods.Settings对象 self.settings_obj = settings_obj self.vpn_setting = self.connection.get_setting("vpn") # UI pptp_table = gtk.Table(7, 4, False) name_label = Label(_("Connection Name:"), enable_select=False, enable_double_click=False) name_label.set_can_focus(False) gateway_label = Label(_("Gateway:"), enable_select=False, enable_double_click=False) gateway_label.set_can_focus(False) user_label = Label(_("Username:"******"Password:"******"NT Domain:"), enable_select=False, enable_double_click=False) nt_domain_label.set_can_focus(False) # Radio Button self.pptp_radio = RadioButton(_("PPTP")) self.l2tp_radio = RadioButton(_("L2TP")) radio_box = gtk.HBox(spacing=30) radio_box.pack_start(self.pptp_radio, True, True) radio_box.pack_start(self.l2tp_radio, True, True) #pack labels pptp_table.attach(style.wrap_with_align(radio_box, align="left"), 2, 4, 0, 1) pptp_table.attach( style.wrap_with_align(name_label, width=self.LEFT_PADDING), 0, 2, 1, 2) pptp_table.attach( style.wrap_with_align(gateway_label, width=self.LEFT_PADDING), 0, 2, 2, 3) pptp_table.attach( style.wrap_with_align(user_label, width=self.LEFT_PADDING), 0, 2, 3, 4) pptp_table.attach( style.wrap_with_align(password_label, width=self.LEFT_PADDING), 0, 2, 4, 5) #pptp_table.attach(style.wrap_with_align(nt_domain_label), 0, 2, 5, 6) # entries self.name_entry = InputEntry() self.name_entry.set_size(self.ENTRY_WIDTH, 22) self.gateway_entry = InputEntry() self.gateway_entry.set_size(self.ENTRY_WIDTH, 22) self.user_entry = InputEntry() self.user_entry.set_size(self.ENTRY_WIDTH, 22) # FIXME should change to new_entry PasswordEntry self.password_entry = PasswordEntry() self.password_entry.set_size(self.ENTRY_WIDTH, 22) self.password_show = CheckButton(_("Show Password"), padding_x=0) self.password_show.set_active(False) self.password_show.connect("toggled", self.show_password) self.nt_domain_entry = InputEntry() self.nt_domain_entry.set_size(self.ENTRY_WIDTH, 22) #pack entries pptp_table.attach(style.wrap_with_align(self.name_entry, align="left"), 2, 4, 1, 2) pptp_table.attach( style.wrap_with_align(self.gateway_entry, align="left"), 2, 4, 2, 3) pptp_table.attach(style.wrap_with_align(self.user_entry, align="left"), 2, 4, 3, 4) pptp_table.attach( style.wrap_with_align(self.password_entry, align="left"), 2, 4, 4, 5) pptp_table.attach( style.wrap_with_align(self.password_show, align="left"), 2, 4, 5, 6) #pptp_table.attach(style.wrap_with_align(self.nt_domain_entry), 2, 4, 5, 6) # Advance setting button #advanced_button = Button(_("Advanced Setting")) #advanced_button.connect("clicked", self.advanced_button_click) #pptp_table.attach(style.wrap_with_align(advanced_button), 3, 4, 6, 7) self.service_type = self.vpn_setting.service_type.split(".")[-1] if self.service_type == "l2tp": self.l2tp_radio.set_active(True) else: self.pptp_radio.set_active(True) self.pptp_radio.connect("toggled", self.radio_toggled, "pptp") self.l2tp_radio.connect("toggled", self.radio_toggled, "l2tp") # set signals #align = style.set_box_with_align(pptp_table, "text") table_align = gtk.Alignment(0, 0, 0, 0) table_align.add(pptp_table) #style.set_table_items(pptp_table, "entry") style.draw_background_color(self) style.set_table(pptp_table) self.add(table_align) self.show_all() self.refresh() self.name_entry.entry.connect("changed", self.entry_changed, "name") self.gateway_entry.entry.connect("changed", self.entry_changed, "gateway") self.user_entry.entry.connect("changed", self.entry_changed, "user") self.password_entry.entry.connect("changed", self.entry_changed, "password") self.nt_domain_entry.entry.connect("changed", self.entry_changed, "domain")