accountModificationWindow is never used to create an account, just modify it

add an advanced button to AccountCreationWizard that open the accountModificationWindow
This commit is contained in:
Yann Leboulanger 2005-11-03 10:32:26 +00:00
parent 41cbaa7c2b
commit dd6a9ced49
3 changed files with 294 additions and 307 deletions

View File

@ -1027,30 +1027,17 @@ class AccountModificationWindow:
def on_cancel_button_clicked(self, widget): def on_cancel_button_clicked(self, widget):
self.window.destroy() self.window.destroy()
def __init__(self, account = ''): def __init__(self, account):
self.xml = gtk.glade.XML(GTKGUI_GLADE, 'account_modification_window', APP) self.xml = gtk.glade.XML(GTKGUI_GLADE, 'account_modification_window', APP)
self.window = self.xml.get_widget('account_modification_window') self.window = self.xml.get_widget('account_modification_window')
self.account = account self.account = account
self.modify = False # if we 're modifying an existing or creating a new account
# init proxy list # init proxy list
self.update_proxy_list() self.update_proxy_list()
self.xml.signal_autoconnect(self) self.xml.signal_autoconnect(self)
if account: # we modify an existing account
self.modify = True
self.init_account() self.init_account()
self.xml.get_widget('new_account_checkbutton').set_sensitive(False)
self.xml.get_widget('save_button').grab_focus() self.xml.get_widget('save_button').grab_focus()
else: # we create a new account
if len(gajim.connections) == 0: # is it the first accound we're creating?
# the first account *has* to sync by default
self.xml.get_widget('sync_with_global_status_checkbutton')\
.set_active(True)
# the first account *has* to autoconnect by default
self.xml.get_widget('autoconnect_checkbutton').set_active(True)
self.xml.get_widget('name_entry').set_text('Main')
self.xml.get_widget('jid_entry').grab_focus()
self.window.show_all() self.window.show_all()
def on_checkbutton_toggled(self, widget, widgets): def on_checkbutton_toggled(self, widget, widgets):
@ -1153,9 +1140,6 @@ class AccountModificationWindow:
self.xml.get_widget('autoreconnect_checkbutton').set_active(gajim.config.\ self.xml.get_widget('autoreconnect_checkbutton').set_active(gajim.config.\
get_per('accounts', self.account, 'autoreconnect')) get_per('accounts', self.account, 'autoreconnect'))
if len(gajim.connections) != 0:
# only if we already have one account already
# we check that so we avoid the first account to have sync=False
self.xml.get_widget('sync_with_global_status_checkbutton').set_active( self.xml.get_widget('sync_with_global_status_checkbutton').set_active(
gajim.config.get_per('accounts', self.account, gajim.config.get_per('accounts', self.account,
'sync_with_global_status')) 'sync_with_global_status'))
@ -1174,7 +1158,7 @@ class AccountModificationWindow:
if name != self.account and \ if name != self.account and \
gajim.connections[self.account].connected != 0: gajim.connections[self.account].connected != 0:
dialogs.ErrorDialog(_('You are currently connected to the server'), dialogs.ErrorDialog(_('You are currently connected to the server'),
_('To change the account name, you must be disconnected.')).get_response() _('To change the account name, you must be disconnected.')).get_response()
return return
if (name == ''): if (name == ''):
dialogs.ErrorDialog(_('Invalid account name'), dialogs.ErrorDialog(_('Invalid account name'),
@ -1189,15 +1173,12 @@ _('To change the account name, you must be disconnected.')).get_response()
dialogs.ErrorDialog(_('Invalid Jabber ID'), dialogs.ErrorDialog(_('Invalid Jabber ID'),
_('A Jabber ID must be in the form "user@servername".')).get_response() _('A Jabber ID must be in the form "user@servername".')).get_response()
return return
new_account = self.xml.get_widget('new_account_checkbutton').get_active()
config['savepass'] = self.xml.get_widget( config['savepass'] = self.xml.get_widget(
'save_password_checkbutton').get_active() 'save_password_checkbutton').get_active()
config['password'] = self.xml.get_widget('password_entry').get_text().decode('utf-8') config['password'] = self.xml.get_widget('password_entry').get_text().\
if new_account and config['password'] == '': decode('utf-8')
dialogs.ErrorDialog(_('Invalid password'), config['resource'] = self.xml.get_widget('resource_entry').get_text().\
_('You must enter a password for the new account.')).get_response() decode('utf-8')
return
config['resource'] = self.xml.get_widget('resource_entry').get_text().decode('utf-8')
config['priority'] = self.xml.get_widget('priority_spinbutton').\ config['priority'] = self.xml.get_widget('priority_spinbutton').\
get_value_as_int() get_value_as_int()
config['autoconnect'] = self.xml.get_widget('autoconnect_checkbutton').\ config['autoconnect'] = self.xml.get_widget('autoconnect_checkbutton').\
@ -1254,8 +1235,6 @@ _('To change the account name, you must be disconnected.')).get_response()
'gpg_save_password_checkbutton').get_active() 'gpg_save_password_checkbutton').get_active()
config['gpgpassword'] = self.xml.get_widget('gpg_password_entry').\ config['gpgpassword'] = self.xml.get_widget('gpg_password_entry').\
get_text().decode('utf-8') get_text().decode('utf-8')
#if we are modifying an account
if self.modify:
#if we modify the name of the account #if we modify the name of the account
if name != self.account: if name != self.account:
#update variables #update variables
@ -1322,53 +1301,6 @@ _('To change the account name, you must be disconnected.')).get_response()
gajim.interface.roster.draw_roster() gajim.interface.roster.draw_roster()
gajim.interface.save_config() gajim.interface.save_config()
self.window.destroy() self.window.destroy()
return
#if it's a new account
if name in gajim.connections:
dialogs.ErrorDialog(_('Account name is in use'),
_('You already have an account using this name.')).get_response()
return
con = connection.Connection(name)
gajim.interface.register_handlers(con)
#if we need to register a new account
if new_account:
gajim.events_for_ui[name] = []
con.new_account(name, config)
return
# The account we add already exists on the server
gajim.connections[name] = con
gajim.config.add_per('accounts', name)
for opt in config:
gajim.config.set_per('accounts', name, opt, config[opt])
if config['savepass']:
gajim.connections[name].password = config['password']
#update variables
gajim.interface.windows[name] = {'infos': {}, 'disco': {}, 'chats': {},
'gc': {}, 'gc_config': {}}
gajim.interface.windows[name]['xml_console'] = \
dialogs.XMLConsoleWindow(name)
gajim.awaiting_events[name] = {}
gajim.connections[name].connected = 0
gajim.groups[name] = {}
gajim.contacts[name] = {}
gajim.gc_contacts[name] = {}
gajim.gc_connected[name] = {}
gajim.newly_added[name] = []
gajim.to_be_removed[name] = []
gajim.nicks[name] = config['name']
gajim.allow_notifications[name] = False
gajim.sleeper_state[name] = 'off'
gajim.encrypted_chats[name] = []
gajim.last_message_time[name] = {}
gajim.status_before_autoaway[name] = ''
gajim.events_for_ui[name] = []
#refresh accounts window
if gajim.interface.windows.has_key('accounts'):
gajim.interface.windows['accounts'].init_accounts()
#refresh roster
gajim.interface.roster.draw_roster()
gajim.interface.save_config()
self.window.destroy()
def on_change_password_button_clicked(self, widget): def on_change_password_button_clicked(self, widget):
try: try:
@ -1383,12 +1315,6 @@ _('To change the account name, you must be disconnected.')).get_response()
if self.xml.get_widget('save_password_checkbutton').get_active(): if self.xml.get_widget('save_password_checkbutton').get_active():
self.xml.get_widget('password_entry').set_text(new_password) self.xml.get_widget('password_entry').set_text(new_password)
def account_is_ok(self, acct):
'''When the account has been created with success'''
self.xml.get_widget('new_account_checkbutton').set_active(False)
self.modify = True
self.account = acct
def on_edit_details_button_clicked(self, widget): def on_edit_details_button_clicked(self, widget):
if not gajim.interface.windows.has_key(self.account): if not gajim.interface.windows.has_key(self.account):
dialogs.ErrorDialog(_('No such account available'), dialogs.ErrorDialog(_('No such account available'),
@ -1478,20 +1404,10 @@ _('There was a problem retrieving your OpenPGP secret keys.')).get_response()
self.xml.get_widget('gpg_password_entry')]) self.xml.get_widget('gpg_password_entry')])
def on_save_password_checkbutton_toggled(self, widget): def on_save_password_checkbutton_toggled(self, widget):
if self.xml.get_widget('new_account_checkbutton').get_active():
return
self.on_checkbutton_toggled_and_clear(widget, self.on_checkbutton_toggled_and_clear(widget,
[self.xml.get_widget('password_entry')]) [self.xml.get_widget('password_entry')])
self.xml.get_widget('password_entry').grab_focus() self.xml.get_widget('password_entry').grab_focus()
def on_new_account_checkbutton_toggled(self, widget):
password_entry = self.xml.get_widget('password_entry')
if widget.get_active():
password_entry.set_sensitive(True)
elif not self.xml.get_widget('save_password_checkbutton').get_active():
password_entry.set_sensitive(False)
password_entry.set_text('')
#---------- ManageProxiesWindow class -------------# #---------- ManageProxiesWindow class -------------#
class ManageProxiesWindow: class ManageProxiesWindow:
def __init__(self): def __init__(self):
@ -2480,8 +2396,6 @@ class AccountCreationWizardWindow:
def __init__(self): def __init__(self):
self.xml = gtk.glade.XML(GTKGUI_GLADE, 'wizard_window', APP) self.xml = gtk.glade.XML(GTKGUI_GLADE, 'wizard_window', APP)
self.window = self.xml.get_widget('wizard_window') self.window = self.xml.get_widget('wizard_window')
self.xml.signal_autoconnect(self)
self.window.show_all()
# Connect events from comboboxentry.child # Connect events from comboboxentry.child
server_comboboxentry = self.xml.get_widget('existing_server_comboboxentry') server_comboboxentry = self.xml.get_widget('existing_server_comboboxentry')
@ -2509,8 +2423,27 @@ class AccountCreationWizardWindow:
self.notebook = self.xml.get_widget('notebook') self.notebook = self.xml.get_widget('notebook')
self.back_button = self.xml.get_widget('back_button') self.back_button = self.xml.get_widget('back_button')
self.finish_button = self.xml.get_widget('finish_button') self.finish_button = self.xml.get_widget('finish_button')
self.advanced_button = self.xml.get_widget('advanced_button')
self.finish_label = self.xml.get_widget('finish_label') self.finish_label = self.xml.get_widget('finish_label')
# Some vars
self.sync = False
self.autoconnect = False
if len(gajim.connections) == 0: # is it the first accound we're creating?
# the first account *has* to sync by default
self.sync = True
# the first account *has* to autoconnect by default
self.autoconnect = True
self.account = _('Main')
i = 1
while self.account in gajim.connections:
self.account = _('Main') + str(i)
i += 1
self.advanced_button.set_no_show_all(True)
self.xml.signal_autoconnect(self)
self.window.show_all()
def on_register_server_features_button_clicked(self, widget): def on_register_server_features_button_clicked(self, widget):
helpers.launch_browser_mailer('url', 'http://www.jabber.org/network/') helpers.launch_browser_mailer('url', 'http://www.jabber.org/network/')
@ -2571,27 +2504,33 @@ class AccountCreationWizardWindow:
register_new = False register_new = False
#FIXME: pango me #FIXME: pango me
finish_text = _('Account has been added successfully.\n' finish_text = _('Account has been added successfully.\n'
'You can set advanced account options by clicking in Accounts menuitem under Edit menu from the main window.') 'You can set advanced account options by pressing Advanced button,\nor later by clicking in Accounts menuitem under Edit menu from the main window.')
elif cur_page == 2: elif cur_page == 2:
widgets = self.get_widgets('register_') widgets = self.get_widgets('register_')
register_new = True register_new = True
#FIXME: pango me #FIXME: pango me
finish_text = _('Your new account has been created successfully.\n' finish_text = _('Your new account has been created successfully.\n'
'You can set advanced account options by clicking in Accounts menuitem under Edit menu from the main window.') 'You can set advanced account options by pressing Advanced button,\nor later by clicking in Accounts menuitem under Edit menu from the main window.')
username = widgets['nick_entry'].get_text().decode('utf-8') username = widgets['nick_entry'].get_text().decode('utf-8')
server = widgets['server_comboboxentry'].child.get_text() server = widgets['server_comboboxentry'].child.get_text()
savepass = widgets['save_password_checkbutton'].get_active() savepass = widgets['save_password_checkbutton'].get_active()
password = widgets['pass_entry'].get_text() password = widgets['pass_entry'].get_text()
if self.check_data(username, server): if self.check_data(username, server):
self.save_account(_('Main'), server, savepass, password, register_new) self.save_account(self.account, server, savepass, password, register_new)
self.finish_label.set_text(finish_text) self.finish_label.set_text(finish_text)
self.xml.get_widget('cancel_button').hide() self.xml.get_widget('cancel_button').hide()
self.back_button.hide() self.back_button.hide()
self.xml.get_widget('forward_button').hide() self.xml.get_widget('forward_button').hide()
self.finish_button.set_sensitive(True) self.finish_button.set_sensitive(True)
self.advanced_button.show()
self.notebook.set_current_page(3) self.notebook.set_current_page(3)
def on_advanced_button_clicked(self, widget):
gajim.interface.windows[self.account]['account_modification'] = \
AccountModificationWindow(self.account)
self.window.destroy()
def on_finish_button_clicked(self, widget): def on_finish_button_clicked(self, widget):
self.window.destroy() self.window.destroy()
@ -2653,9 +2592,9 @@ _('You need to enter a valid server address to continue.')).get_response()
return return
config['resource'] = 'Gajim' config['resource'] = 'Gajim'
config['priority'] = 5 config['priority'] = 5
config['autoconnect'] = True config['autoconnect'] = self.autoconnect
config['no_log_for'] = '' config['no_log_for'] = ''
config['sync_with_global_status'] = True config['sync_with_global_status'] = self.sync
config['proxy'] = '' config['proxy'] = ''
config['usessl'] = False config['usessl'] = False
config['use_custom_host'] = False config['use_custom_host'] = False

View File

@ -614,8 +614,6 @@ class Interface:
gajim.config.add_per('accounts', name) gajim.config.add_per('accounts', name)
for opt in array[1]: for opt in array[1]:
gajim.config.set_per('accounts', name, opt, array[1][opt]) gajim.config.set_per('accounts', name, opt, array[1][opt])
if self.windows.has_key('account_modification'):
self.windows['account_modification'].account_is_ok(array[0])
self.windows[name] = {'infos': {}, 'disco': {}, 'chats': {}, self.windows[name] = {'infos': {}, 'disco': {}, 'chats': {},
'gc': {}, 'gc_config': {}} 'gc': {}, 'gc_config': {}}
self.windows[name]['xml_console'] = dialogs.XMLConsoleWindow(name) self.windows[name]['xml_console'] = dialogs.XMLConsoleWindow(name)

View File

@ -741,7 +741,7 @@
<widget class="GtkTable" id="table24"> <widget class="GtkTable" id="table24">
<property name="border_width">6</property> <property name="border_width">6</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="n_rows">5</property> <property name="n_rows">4</property>
<property name="n_columns">3</property> <property name="n_columns">3</property>
<property name="homogeneous">False</property> <property name="homogeneous">False</property>
<property name="row_spacing">6</property> <property name="row_spacing">6</property>
@ -769,13 +769,34 @@
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
<property name="right_attach">1</property> <property name="right_attach">1</property>
<property name="top_attach">1</property> <property name="top_attach">0</property>
<property name="bottom_attach">2</property> <property name="bottom_attach">1</property>
<property name="x_options">fill</property> <property name="x_options">fill</property>
<property name="y_options"></property> <property name="y_options"></property>
</packing> </packing>
</child> </child>
<child>
<widget class="GtkEntry" id="jid_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">3</property>
<property name="top_attach">0</property>
<property name="bottom_attach">1</property>
<property name="y_options"></property>
</packing>
</child>
<child> <child>
<widget class="GtkLabel" id="label202"> <widget class="GtkLabel" id="label202">
<property name="visible">True</property> <property name="visible">True</property>
@ -798,8 +819,55 @@
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
<property name="right_attach">1</property> <property name="right_attach">1</property>
<property name="top_attach">2</property> <property name="top_attach">1</property>
<property name="bottom_attach">3</property> <property name="bottom_attach">2</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="password_entry">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">False</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">expand|shrink|fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="save_password_checkbutton">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">If checked, Gajim will remember the password for this account</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Save pass_word</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">False</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_save_password_checkbutton_toggled" last_modification_time="Mon, 28 Feb 2005 20:25:48 GMT"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">fill</property> <property name="x_options">fill</property>
<property name="y_options"></property> <property name="y_options"></property>
</packing> </packing>
@ -827,8 +895,52 @@
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
<property name="right_attach">1</property> <property name="right_attach">1</property>
<property name="top_attach">3</property> <property name="top_attach">2</property>
<property name="bottom_attach">4</property> <property name="bottom_attach">3</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="resource_entry">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Resource is sent to the Jabber server in order to separate the same JID in two or more parts depending on the number of the clients connected in the same server with the same account. So you might be connected in the same account with resource 'Home' and 'Work' at the same time. The resource which has the highest priority will get the events. (see below)</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes">Gajim</property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">False</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">expand|shrink|fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkButton" id="change_password_button">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Click to change account's password</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Chan_ge Password</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<signal name="clicked" handler="on_change_password_button_clicked" last_modification_time="Fri, 04 Mar 2005 11:33:37 GMT"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">fill</property> <property name="x_options">fill</property>
<property name="y_options"></property> <property name="y_options"></property>
</packing> </packing>
@ -856,8 +968,8 @@
<packing> <packing>
<property name="left_attach">0</property> <property name="left_attach">0</property>
<property name="right_attach">1</property> <property name="right_attach">1</property>
<property name="top_attach">4</property> <property name="top_attach">3</property>
<property name="bottom_attach">5</property> <property name="bottom_attach">4</property>
<property name="x_options">fill</property> <property name="x_options">fill</property>
<property name="y_options"></property> <property name="y_options"></property>
</packing> </packing>
@ -879,148 +991,12 @@
<packing> <packing>
<property name="left_attach">1</property> <property name="left_attach">1</property>
<property name="right_attach">2</property> <property name="right_attach">2</property>
<property name="top_attach">4</property> <property name="top_attach">3</property>
<property name="bottom_attach">5</property> <property name="bottom_attach">4</property>
<property name="x_options">shrink|fill</property> <property name="x_options">shrink|fill</property>
<property name="y_options"></property> <property name="y_options"></property>
</packing> </packing>
</child> </child>
<child>
<widget class="GtkEntry" id="password_entry">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">False</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">expand|shrink|fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="resource_entry">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Resource is sent to the Jabber server in order to separate the same JID in two or more parts depending on the number of the clients connected in the same server with the same account. So you might be connected in the same account with resource 'Home' and 'Work' at the same time. The resource which has the highest priority will get the events. (see below)</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes">Gajim</property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">False</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
<property name="x_options">expand|shrink|fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="save_password_checkbutton">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">If checked, Gajim will remember the password for this account</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Save pass_word</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">False</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_save_password_checkbutton_toggled" last_modification_time="Mon, 28 Feb 2005 20:25:48 GMT"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="new_account_checkbutton">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Check if you want to register for a new jabber account</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">_Register new account</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_new_account_checkbutton_toggled" last_modification_time="Mon, 28 Feb 2005 20:20:46 GMT"/>
</widget>
<packing>
<property name="left_attach">0</property>
<property name="right_attach">3</property>
<property name="top_attach">0</property>
<property name="bottom_attach">1</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkButton" id="change_password_button">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Click to change account's password</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Chan_ge Password</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<signal name="clicked" handler="on_change_password_button_clicked" last_modification_time="Fri, 04 Mar 2005 11:33:37 GMT"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="jid_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">3</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="y_options"></property>
</packing>
</child>
</widget> </widget>
<packing> <packing>
<property name="tab_expand">False</property> <property name="tab_expand">False</property>
@ -13509,7 +13485,7 @@ Status message</property>
<widget class="GtkWindow" id="wizard_window"> <widget class="GtkWindow" id="wizard_window">
<property name="border_width">12</property> <property name="border_width">12</property>
<property name="title" translatable="yes">Gajim: First Time Wizard</property> <property name="title" translatable="yes">Gajim: Account Creation Wizard</property>
<property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="type">GTK_WINDOW_TOPLEVEL</property>
<property name="window_position">GTK_WIN_POS_NONE</property> <property name="window_position">GTK_WIN_POS_NONE</property>
<property name="modal">False</property> <property name="modal">False</property>
@ -14973,6 +14949,80 @@ to the Jabber network.</property>
</widget> </widget>
</child> </child>
<child>
<widget class="GtkButton" id="advanced_button">
<property name="can_default">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<signal name="clicked" handler="on_advanced_button_clicked" last_modification_time="Thu, 03 Nov 2005 09:55:32 GMT"/>
<child>
<widget class="GtkAlignment" id="alignment96">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xscale">0</property>
<property name="yscale">0</property>
<property name="top_padding">0</property>
<property name="bottom_padding">0</property>
<property name="left_padding">0</property>
<property name="right_padding">0</property>
<child>
<widget class="GtkHBox" id="hbox2996">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">2</property>
<child>
<widget class="GtkImage" id="image1265">
<property name="visible">True</property>
<property name="stock">gtk-preferences</property>
<property name="icon_size">4</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label364">
<property name="visible">True</property>
<property name="label" translatable="yes">_Advanced</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
</widget>
</child>
</widget>
</child>
</widget>
</child>
<child> <child>
<widget class="GtkButton" id="finish_button"> <widget class="GtkButton" id="finish_button">
<property name="visible">True</property> <property name="visible">True</property>