Author: steve-e Date: 2008-02-04 23:04:33 +0100 (Mon, 04 Feb 2008) New Revision: 9296
Modified: trunk/data/glade/accounts_window.glade trunk/data/glade/preferences_window.glade trunk/src/config.py Log: Do not redraw roster when opening the accounts window. Rework preference window. Fixes #3330, #1621, #2113
Modified: trunk/data/glade/accounts_window.glade =================================================================== --- trunk/data/glade/accounts_window.glade 2008-02-04 21:38:36 UTC (rev 9295) +++ trunk/data/glade/accounts_window.glade 2008-02-04 22:04:33 UTC (rev 9296) @@ -1310,7 +1310,6 @@ <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_merge_checkbutton_toggled"/> </widget> <packing> <property name="expand">False</property>
Modified: trunk/data/glade/preferences_window.glade =================================================================== --- trunk/data/glade/preferences_window.glade 2008-02-04 21:38:36 UTC (rev 9295) +++ trunk/data/glade/preferences_window.glade 2008-02-04 22:04:33 UTC (rev 9296) @@ -21,7 +21,7 @@ <widget class="GtkVBox" id="vbox41"> <property name="visible">True</property> <property name="border_width">12</property> - <property name="spacing">6</property> + <property name="spacing">12</property> <child> <widget class="GtkFrame" id="frame1"> <property name="visible">True</property> @@ -32,6 +32,7 @@ <widget class="GtkAlignment" id="alignment1"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> <property name="left_padding">12</property> <child> <widget class="GtkVBox" id="vbox1"> @@ -75,6 +76,7 @@ <widget class="GtkCheckButton" id="sort_by_show_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will sort contacts in roster window and groupcahts by their status and not by the shown name</property> <property name="label" translatable="yes">_Sort contacts by status</property> <property name="use_underline">True</property> <property name="response_id">0</property> @@ -117,59 +119,17 @@ <widget class="GtkAlignment" id="alignment2"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> <property name="left_padding">12</property> <child> <widget class="GtkTable" id="table1"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="n_rows">6</property> + <property name="n_rows">5</property> <property name="n_columns">2</property> <property name="column_spacing">6</property> <property name="row_spacing">6</property> <child> - <widget class="GtkLabel" id="label387"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="xpad">1</property> - <property name="label" translatable="yes">Treat all incoming messages as:</property> - </widget> - <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label379"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="xpad">1</property> - <property name="label" translatable="yes">_Window behavior:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">one_window_type_combobox</property> - </widget> - <packing> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkComboBox" id="treat_incoming_messages_combobox"> - <property name="visible">True</property> - <property name="items" translatable="yes">Determined by sender -Chat message -Single message</property> - <signal name="changed" handler="on_treat_incoming_messages_combobox_changed"/> - </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> - </packing> - </child> - <child> <widget class="GtkComboBox" id="one_window_type_combobox"> <property name="width_request">50</property> <property name="visible">True</property> @@ -183,51 +143,24 @@ <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="top_attach">1</property> + <property name="bottom_attach">2</property> </packing> </child> <child> - <widget class="GtkComboBox" id="emoticons_combobox"> - <property name="visible">True</property> - <signal name="changed" handler="on_emoticons_combobox_changed"/> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - </packing> - </child> - <child> - <widget class="GtkEventBox" id="eventbox5"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons</property> - <child> - <widget class="GtkLabel" id="label381"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="xpad">1</property> - <property name="label" translatable="yes">Emoticons:</property> - </widget> - </child> - </widget> - <packing> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkCheckButton" id="compact_view_checkbutton"> + <widget class="GtkCheckButton" id="speller_checkbutton"> <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">Hides buttons in chatwindows to </property> - <property name="label" translatable="yes">_Make message windows compact</property> + <property name="tooltip" translatable="yes">If checked, Gajim will highlight spelling errors in input fields of chat windows. If no language is explicitly set via right click on the input field, the default language will be used for this contact or group chat.</property> + <property name="label" translatable="yes">_Highlight misspelled words</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_compact_view_checkbutton_toggled"/> + <signal name="toggled" handler="on_speller_checkbutton_toggled"/> </widget> <packing> <property name="right_attach">2</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> + <property name="top_attach">4</property> + <property name="bottom_attach">5</property> <property name="x_options">GTK_FILL</property> </packing> </child> @@ -244,258 +177,38 @@ </widget> <packing> <property name="right_attach">2</property> - <property name="top_attach">4</property> - <property name="bottom_attach">5</property> + <property name="top_attach">3</property> + <property name="bottom_attach">4</property> <property name="x_options">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="speller_checkbutton"> + <widget class="GtkCheckButton" id="compact_view_checkbutton"> <property name="can_focus">True</property> - <property name="label" translatable="yes">_Highlight misspelled words</property> + <property name="tooltip" translatable="yes">Hide all buttons in chat windows</property> + <property name="label" translatable="yes">_Make message windows compact</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_speller_checkbutton_toggled"/> + <signal name="toggled" handler="on_compact_view_checkbutton_toggled"/> </widget> <packing> <property name="right_attach">2</property> - <property name="top_attach">5</property> - <property name="bottom_attach">6</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - <child> - <widget class="GtkLabel" id="label2"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes"><b>Chat Appearance</b></property> - <property name="use_markup">True</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> - </widget> - <packing> - <property name="expand">False</property> - <property name="position">1</property> - </packing> - </child> - <child> - <widget class="GtkFrame" id="frame3"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label_xalign">0</property> - <property name="shadow_type">GTK_SHADOW_NONE</property> - <child> - <widget class="GtkAlignment" id="alignment3"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="left_padding">12</property> - <child> - <widget class="GtkTable" id="table2"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="n_rows">3</property> - <property name="n_columns">4</property> - <property name="column_spacing">6</property> - <property name="row_spacing">6</property> - <child> - <widget class="GtkLabel" id="label6"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - </widget> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">4</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label249"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">T_heme:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">theme_combobox</property> - </widget> - <packing> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkButton" id="manage_theme_button"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">Configure color and font of the interface</property> - <property name="label" translatable="yes">Ma_nage...</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <signal name="clicked" handler="on_manage_theme_button_clicked"/> - </widget> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkComboBox" id="theme_combobox"> - <property name="visible">True</property> - <signal name="changed" handler="on_theme_combobox_changed"/> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label174"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">Status _iconset:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">iconset_combobox</property> - </widget> - <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkComboBox" id="iconset_combobox"> - <property name="visible">True</property> - <signal name="changed" handler="on_iconset_combobox_changed"/> - </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">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkCheckButton" id="transports_iconsets_checkbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...)</property> - <property name="label" translatable="yes">Use _transports iconsets</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_transports_iconsets_checkbutton_toggled"/> - </widget> - <packing> - <property name="right_attach">4</property> <property name="top_attach">2</property> <property name="bottom_attach">3</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - </widget> - <packing> - <property name="left_attach">3</property> - <property name="right_attach">4</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - <child> - <widget class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes"><b>Themes</b></property> - <property name="use_markup">True</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> - </widget> - <packing> - <property name="expand">False</property> - <property name="position">2</property> - </packing> - </child> - </widget> - </child> - <child> - <widget class="GtkLabel" id="label74"> - <property name="visible">True</property> - <property name="label" translatable="yes">General</property> - </widget> - <packing> - <property name="type">tab</property> - <property name="tab_fill">False</property> - </packing> - </child> - <child> - <widget class="GtkVBox" id="vbox58"> - <property name="visible">True</property> - <property name="border_width">12</property> - <property name="spacing">6</property> - <child> - <widget class="GtkFrame" id="frame4"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label_xalign">0</property> - <property name="shadow_type">GTK_SHADOW_NONE</property> - <child> - <widget class="GtkAlignment" id="alignment4"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="left_padding">12</property> - <child> - <widget class="GtkTable" id="table3"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="n_rows">3</property> - <property name="n_columns">2</property> - <property name="column_spacing">6</property> - <property name="row_spacing">6</property> - <child> - <widget class="GtkComboBox" id="outgoing_chat_states_combobox"> - <property name="visible">True</property> - <property name="items" translatable="yes">All chat states -Composing only -Disabled</property> - <signal name="changed" handler="on_outgoing_chat_states_combobox_changed"/> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> <property name="x_options">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkEventBox" id="eventbox4"> + <widget class="GtkEventBox" id="eventbox5"> <property name="visible">True</property> - <property name="tooltip" translatable="yes">Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party.</property> + <property name="tooltip" translatable="yes">If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons</property> <child> - <widget class="GtkLabel" id="label354"> + <widget class="GtkLabel" id="label381"> <property name="visible">True</property> <property name="xalign">0</property> - <property name="label" translatable="yes">_Send chat state notifications:</property> - <property name="use_underline">True</property> + <property name="xpad">1</property> + <property name="label" translatable="yes">Emoticons:</property> </widget> </child> </widget> @@ -504,55 +217,27 @@ </packing> </child> <child> - <widget class="GtkEventBox" id="eventbox7"> + <widget class="GtkComboBox" id="emoticons_combobox"> <property name="visible">True</property> - <property name="tooltip" translatable="yes">Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows.</property> - <child> - <widget class="GtkLabel" id="label386"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Display chat state notifications:</property> - <property name="use_underline">True</property> - </widget> - </child> + <signal name="changed" handler="on_emoticons_combobox_changed"/> </widget> <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkComboBox" id="displayed_chat_states_combobox"> - <property name="visible">True</property> - <property name="items" translatable="yes">All chat states -Composing only -Disabled</property> - <signal name="changed" handler="on_displayed_chat_states_combobox_changed"/> - </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">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="ignore_events_from_unknown_contacts_checkbutton"> + <widget class="GtkLabel" id="label379"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">Check this option, only if someone you don't have in the roster spams/annoys you. Use with caution, because it blocks all messages from any contact that is not in the roster</property> - <property name="label" translatable="yes">_Ignore events from contacts not in the roster</property> + <property name="xalign">0</property> + <property name="xpad">1</property> + <property name="label" translatable="yes">_Window behavior:</property> <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_ignore_events_from_unknown_contacts_checkbutton_toggled"/> + <property name="mnemonic_widget">one_window_type_combobox</property> </widget> <packing> - <property name="right_attach">2</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> <property name="x_options">GTK_FILL</property> </packing> </child> @@ -561,10 +246,10 @@ </widget> </child> <child> - <widget class="GtkLabel" id="label5"> + <widget class="GtkLabel" id="label2"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes"><b>Privacy</b></property> + <property name="label" translatable="yes"><b>Chat Appearance</b></property> <property name="use_markup">True</property> </widget> <packing> @@ -574,317 +259,18 @@ </widget> <packing> <property name="expand">False</property> - </packing> - </child> - <child> - <widget class="GtkFrame" id="frame24"> - <property name="visible">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">GTK_SHADOW_NONE</property> - <child> - <widget class="GtkAlignment" id="alignment53"> - <property name="visible">True</property> - <property name="border_width">6</property> - <property name="left_padding">12</property> - <child> - <widget class="GtkVBox" id="vbox62"> - <property name="visible">True</property> - <property name="spacing">12</property> - <child> - <widget class="GtkTable" id="table25"> - <property name="visible">True</property> - <property name="n_rows">4</property> - <property name="n_columns">4</property> - <property name="column_spacing">12</property> - <property name="row_spacing">6</property> - <child> - <widget class="GtkCheckButton" id="default_chat_font"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Use system _default</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_default_chat_font_toggled"/> - </widget> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">4</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkHBox" id="hbox3021"> - <property name="visible">True</property> - <property name="spacing">6</property> - <child> - <widget class="GtkLabel" id="font_label"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Font:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">conversation_fontbutton</property> - </widget> - </child> - <child> - <widget class="GtkFontButton" id="conversation_fontbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="response_id">0</property> - <signal name="font_set" handler="on_conversation_fontbutton_font_set"/> - </widget> - <packing> - <property name="expand">False</property> - <property name="position">1</property> - </packing> - </child> - </widget> - <packing> - <property name="right_attach">2</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkHBox" id="hbox3022"> - <property name="visible">True</property> - <child> - <widget class="GtkLabel" id="label383"> - <property name="visible">True</property> - </widget> - <packing> - <property name="fill">False</property> - </packing> - </child> - <child> - <widget class="GtkButton" id="reset_colors_button"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="focus_on_click">False</property> - <property name="response_id">0</property> - <signal name="clicked" handler="on_reset_colors_button_clicked"/> - <child> - <widget class="GtkAlignment" id="alignment52"> - <property name="visible">True</property> - <property name="xscale">0</property> - <property name="yscale">0</property> - <child> - <widget class="GtkHBox" id="hbox2936"> - <property name="visible">True</property> - <property name="spacing">2</property> - <child> - <widget class="GtkImage" id="image439"> - <property name="visible">True</property> - <property name="stock">gtk-revert-to-saved</property> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label217"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Reset to Default Colors</property> - <property name="use_underline">True</property> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> - </packing> - </child> - </widget> - <packing> - <property name="right_attach">4</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="x_options">GTK_FILL</property> - </packing> - </child> - <child> - <widget class="GtkColorButton" id="url_msg_colorbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="response_id">0</property> - <signal name="color_set" handler="on_url_msg_colorbutton_color_set"/> - </widget> - <packing> - <property name="left_attach">3</property> - <property name="right_attach">4</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label371"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_URL:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">url_msg_colorbutton</property> - </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">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkColorButton" id="status_msg_colorbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="response_id">0</property> - <signal name="color_set" handler="on_status_msg_colorbutton_color_set"/> - </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"></property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label71"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Status message:</property> - <property name="use_underline">True</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">True</property> - <property name="mnemonic_widget">status_msg_colorbutton</property> - </widget> - <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkColorButton" id="outgoing_msg_colorbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="response_id">0</property> - <signal name="color_set" handler="on_outgoing_msg_colorbutton_color_set"/> - </widget> - <packing> - <property name="left_attach">3</property> - <property name="right_attach">4</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label70"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Outgoing message:</property> - <property name="use_underline">True</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">True</property> - <property name="mnemonic_widget">outgoing_msg_colorbutton</property> - </widget> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkColorButton" id="incoming_msg_colorbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="has_focus">True</property> - <property name="can_default">True</property> - <property name="has_default">True</property> - <property name="response_id">0</property> - <signal name="color_set" handler="on_incoming_msg_colorbutton_color_set"/> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="x_options"></property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label72"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Incoming message:</property> - <property name="use_underline">True</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">True</property> - <property name="mnemonic_widget">incoming_msg_colorbutton</property> - </widget> - <packing> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - </widget> - <packing> - <property name="expand">False</property> - </packing> - </child> - </widget> - </child> - </widget> - </child> - <child> - <widget class="GtkLabel" id="label228"> - <property name="visible">True</property> - <property name="label" translatable="yes"><b>Format of a line</b></property> - <property name="use_markup">True</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> <property name="position">1</property> </packing> </child> </widget> - <packing> - <property name="position">1</property> - </packing> </child> <child> - <widget class="GtkLabel" id="label218"> + <widget class="GtkLabel" id="label74"> <property name="visible">True</property> - <property name="label" translatable="yes">Privacy</property> + <property name="label" translatable="yes">General</property> </widget> <packing> <property name="type">tab</property> - <property name="position">1</property> <property name="tab_fill">False</property> </packing> </child> @@ -933,7 +319,6 @@ <signal name="changed" handler="on_on_event_combobox_changed"/> </widget> <packing> - <property name="expand">False</property> <property name="position">1</property> </packing> </child> @@ -988,61 +373,72 @@ </packing> </child> <child> - <widget class="GtkHBox" id="anc_hbox"> - <property name="visible">False</property> + <widget class="GtkFrame" id="frame_gmail"> + <property name="visible">True</property> + <property name="sensitive">False</property> <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkButton" id="button1"> + <widget class="GtkAlignment" id="alignment_gmail"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="response_id">0</property> - <signal name="clicked" handler="on_open_advanced_notifications_button_clicked"/> + <property name="border_width">6</property> + <property name="left_padding">12</property> <child> - <widget class="GtkAlignment" id="alignment90"> + <widget class="GtkVBox" id="vbox_gmail"> <property name="visible">True</property> - <property name="xscale">0</property> - <property name="yscale">0</property> + <property name="spacing">6</property> <child> - <widget class="GtkHBox" id="hbox3019"> + <widget class="GtkCheckButton" id="notify_gmail_checkbutton"> <property name="visible">True</property> - <property name="spacing">2</property> - <child> - <widget class="GtkImage" id="image1371"> - <property name="visible">True</property> - <property name="stock">gtk-open</property> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label382"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Advanced Notifications Control...</property> - <property name="use_underline">True</property> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will show a notification when a new e-mail is received via GMail</property> + <property name="label" translatable="yes">Notify on new _GMail email</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_notify_gmail_checkbutton_toggled"/> </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> </child> + <child> + <widget class="GtkCheckButton" id="notify_gmail_extra_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will also include information about the sender of the new emails</property> + <property name="label" translatable="yes">Display _extra email details</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_notify_gmail_extra_checkbutton_toggled"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> </widget> </child> </widget> + </child> + <child> + <widget class="GtkLabel" id="gmail_options_label"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>GMail Options</b></property> + <property name="use_markup">True</property> + </widget> <packing> - <property name="expand">False</property> - <property name="fill">False</property> + <property name="type">label_item</property> </packing> </child> - <child> - <placeholder/> - </child> </widget> <packing> + <property name="expand">False</property> + <property name="fill">False</property> <property name="position">4</property> </packing> </child> @@ -1075,6 +471,7 @@ <widget class="GtkAlignment" id="alignment5"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> <property name="left_padding">12</property> <child> <widget class="GtkVBox" id="vbox65"> @@ -1220,389 +617,596 @@ </child> </widget> <packing> - <property name="position">2</property> + <property name="position">1</property> </packing> </child> <child> <widget class="GtkLabel" id="label76"> <property name="visible">True</property> - <property name="label" translatable="yes">Events</property> + <property name="label" translatable="yes">Notifications</property> </widget> <packing> <property name="type">tab</property> - <property name="position">2</property> + <property name="position">1</property> <property name="tab_fill">False</property> </packing> </child> <child> - <widget class="GtkVBox" id="status_vbox"> + <widget class="GtkVBox" id="vbox11"> <property name="visible">True</property> <property name="border_width">12</property> <property name="spacing">12</property> <child> - <widget class="GtkTable" id="autoaway_table"> + <widget class="GtkFrame" id="frame13"> <property name="visible">True</property> - <property name="n_rows">2</property> - <property name="n_columns">4</property> - <property name="column_spacing">12</property> - <property name="row_spacing">6</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkEntry" id="auto_xa_message_entry"> + <widget class="GtkAlignment" id="alignment19"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">The auto not available status message</property> - <signal name="changed" handler="on_auto_xa_message_entry_changed"/> - </widget> - <packing> - <property name="left_attach">3</property> - <property name="right_attach">4</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkEntry" id="auto_away_message_entry"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">The auto away status message</property> - <signal name="changed" handler="on_auto_away_message_entry_changed"/> - </widget> - <packing> - <property name="left_attach">3</property> - <property name="right_attach">4</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkAlignment" id="alignment34"> - <property name="visible">True</property> - <property name="xalign">1</property> - <property name="xscale">0</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> + <property name="left_padding">12</property> <child> - <widget class="GtkSpinButton" id="auto_xa_time_spinbutton"> - <property name="width_request">50</property> + <widget class="GtkTable" id="table7"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">20 1 1440 1 10 10</property> - <property name="climb_rate">1</property> - <signal name="value_changed" handler="on_auto_xa_time_spinbutton_value_changed"/> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">2</property> + <property name="n_columns">2</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> + <child> + <widget class="GtkComboBox" id="outgoing_chat_states_combobox"> + <property name="visible">True</property> + <property name="items" translatable="yes">All chat states +Composing only +Disabled</property> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + </packing> + </child> + <child> + <widget class="GtkEventBox" id="eventbox9"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party.</property> + <child> + <widget class="GtkLabel" id="label34"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Send chat state notifications:</property> + <property name="use_underline">True</property> + </widget> + </child> + </widget> + <packing> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkEventBox" id="eventbox8"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows.</property> + <child> + <widget class="GtkLabel" id="label33"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Display chat state notifications:</property> + <property name="use_underline">True</property> + </widget> + </child> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkComboBox" id="displayed_chat_states_combobox"> + <property name="visible">True</property> + <property name="items" translatable="yes">All chat states +Composing only +Disabled</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> + </packing> + </child> </widget> </child> </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">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> </child> <child> - <widget class="GtkAlignment" id="alignment33"> + <widget class="GtkLabel" id="label35"> <property name="visible">True</property> - <property name="xalign">1</property> - <property name="xscale">0</property> - <child> - <widget class="GtkSpinButton" id="auto_away_time_spinbutton"> - <property name="width_request">50</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">12 1 720 1 10 10</property> - <property name="climb_rate">1</property> - <signal name="value_changed" handler="on_auto_away_time_spinbutton_value_changed"/> - </widget> - </child> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes"><b>Chat state notifications</b></property> + <property name="use_markup">True</property> </widget> <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> + <property name="type">label_item</property> </packing> </child> - <child> - <widget class="GtkLabel" id="label78"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">minutes</property> - </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">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkLabel" id="label77"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">minutes</property> - </widget> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkCheckButton" id="auto_xa_checkbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Auto _not available after:</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_auto_xa_checkbutton_toggled"/> - </widget> - <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <widget class="GtkCheckButton" id="auto_away_checkbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Auto _away after:</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_auto_away_checkbutton_toggled"/> - </widget> - <packing> - <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> - </packing> - </child> </widget> <packing> <property name="expand">False</property> </packing> </child> <child> - <widget class="GtkHBox" id="hbox2934"> + <widget class="GtkFrame" id="frame_pep"> <property name="visible">True</property> - <property name="spacing">6</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkLabel" id="label214"> + <widget class="GtkAlignment" id="alignment7"> <property name="visible">True</property> - <property name="label" translatable="yes">Ask status message when I:</property> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - <child> - <widget class="GtkHBox" id="hbox2934"> - <property name="visible">True</property> - <property name="spacing">14</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> + <property name="left_padding">12</property> <child> - <widget class="GtkCheckButton" id="prompt_online_status_message_checkbutton"> + <widget class="GtkTable" id="table10"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Sign _in</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_prompt_online_status_message_checkbutton_toggled"/> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">2</property> + <property name="n_columns">4</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> + <child> + <widget class="GtkLabel" id="label47"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="xpad">1</property> + <property name="label" translatable="yes">Allow others to see your:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">one_window_type_combobox</property> + </widget> + <packing> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="subscribe_tune_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Tune</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_subscribe_tune_checkbutton_toggled"/> + </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">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label43"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="xpad">1</property> + <property name="label" translatable="yes">Receive your contact's:</property> + <property name="use_underline">True</property> + <property name="wrap">True</property> + <property name="mnemonic_widget">one_window_type_combobox</property> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="publish_tune_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Tune</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_publish_tune_checkbutton_toggled"/> + </widget> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="publish_activity_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Activity</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_publish_activity_checkbutton_toggled"/> + </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="publish_mood_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Mood</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_publish_mood_checkbutton_toggled"/> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="subscribe_activity_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Activity</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_subscribe_activity_checkbutton_toggled"/> + </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="subscribe_mood_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Mood</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_subscribe_mood_checkbutton_toggled"/> + </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">GTK_FILL</property> + </packing> + </child> </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> </child> - <child> - <widget class="GtkCheckButton" id="prompt_offline_status_message_checkbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Sign _out</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_prompt_offline_status_message_checkbutton_toggled"/> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> - </packing> - </child> </widget> + </child> + <child> + <widget class="GtkLabel" id="label11"> + <property name="visible">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes"><b>Publish and Subscribe</b></property> + <property name="use_markup">True</property> + </widget> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> + <property name="type">label_item</property> </packing> </child> </widget> <packing> <property name="expand">False</property> - <property name="fill">False</property> <property name="position">1</property> </packing> </child> + </widget> + <packing> + <property name="position">2</property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label9"> + <property name="visible">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes">Personal Events</property> + </widget> + <packing> + <property name="type">tab</property> + <property name="position">2</property> + <property name="tab_fill">False</property> + </packing> + </child> + <child> + <widget class="GtkVBox" id="status_vbox"> + <property name="visible">True</property> + <property name="border_width">12</property> + <property name="spacing">12</property> <child> - <widget class="GtkCheckButton" id="set_status_msg_from_current_music_track_checkbutton"> + <widget class="GtkFrame" id="frame81"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">Works for Rhythmbox and Muine players. For more players, please visit http://trac.gajim.org/wiki/GajimAndMusicPlayer</property> - <property name="label" translatable="yes">Set status message to reflect currently playing _music track</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="set_status_msg_from_current_music_track_checkbutton_toggled"/> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">2</property> - </packing> - </child> - <child> - <widget class="GtkEventBox" id="default_status_eventbox"> - <property name="visible">True</property> - <property name="tooltip" translatable="yes">An example: If you have enabled status message for away, Gajim won't ask you anymore for a status message when you change your status to away; it will use the default one set here</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkExpander" id="default_status_expander"> + <widget class="GtkAlignment" id="alignment_gmail"> <property name="visible">True</property> - <property name="can_focus">True</property> - <signal name="activate" handler="on_default_status_expander_activate"/> + <property name="border_width">6</property> + <property name="left_padding">12</property> <child> - <widget class="GtkScrolledWindow" id="scrolledwindow24"> + <widget class="GtkTable" id="autoaway_table"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="border_width">6</property> - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="shadow_type">GTK_SHADOW_IN</property> + <property name="n_rows">2</property> + <property name="n_columns">4</property> + <property name="column_spacing">12</property> + <property name="row_spacing">6</property> <child> - <widget class="GtkTreeView" id="default_msg_treeview"> + <widget class="GtkEntry" id="auto_xa_message_entry"> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">The auto not available status message. If empty, Gajim will not change the current status message</property> + <signal name="changed" handler="on_auto_xa_message_entry_changed"/> </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="y_options"></property> + </packing> </child> + <child> + <widget class="GtkEntry" id="auto_away_message_entry"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">The auto away status message. If empty, Gajim will not change the current status message</property> + <signal name="changed" handler="on_auto_away_message_entry_changed"/> + </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkAlignment" id="alignment34"> + <property name="visible">True</property> + <property name="xalign">1</property> + <property name="xscale">0</property> + <child> + <widget class="GtkSpinButton" id="auto_xa_time_spinbutton"> + <property name="width_request">50</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">20 1 1440 1 10 10</property> + <property name="climb_rate">1</property> + <signal name="value_changed" handler="on_auto_xa_time_spinbutton_value_changed"/> + </widget> + </child> + </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">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkAlignment" id="alignment33"> + <property name="visible">True</property> + <property name="xalign">1</property> + <property name="xscale">0</property> + <child> + <widget class="GtkSpinButton" id="auto_away_time_spinbutton"> + <property name="width_request">50</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">12 1 720 1 10 10</property> + <property name="climb_rate">1</property> + <signal name="value_changed" handler="on_auto_away_time_spinbutton_value_changed"/> + </widget> + </child> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label78"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">minutes</property> + </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">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label77"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">minutes</property> + </widget> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="auto_xa_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will change status to Not Available when the computer has not been used even longer</property> + <property name="label" translatable="yes">_Not available after:</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_auto_xa_checkbutton_toggled"/> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="auto_away_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will change status to Away when the computer is unused.</property> + <property name="label" translatable="yes">_Away after:</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_auto_away_checkbutton_toggled"/> + </widget> + <packing> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> </widget> </child> - <child> - <widget class="GtkLabel" id="label384"> - <property name="visible">True</property> - <property name="label" translatable="yes">Default Status Messages</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> </widget> </child> + <child> + <widget class="GtkLabel" id="label81"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Auto Status</b></property> + <property name="use_markup">True</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> </widget> <packing> <property name="expand">False</property> - <property name="position">3</property> + <property name="fill">False</property> </packing> </child> <child> - <widget class="GtkFrame" id="frame22"> + <widget class="GtkFrame" id="frame8"> <property name="visible">True</property> <property name="label_xalign">0</property> <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkAlignment" id="alignment49"> + <widget class="GtkAlignment" id="alignment8"> <property name="visible">True</property> <property name="border_width">6</property> <property name="left_padding">12</property> <child> - <widget class="GtkVBox" id="vbox56"> + <widget class="GtkVBox" id="vbox2"> <property name="visible">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="spacing">6</property> <child> - <widget class="GtkHBox" id="hbox2933"> + <widget class="GtkHBox" id="hbox2934"> <property name="visible">True</property> <property name="spacing">6</property> <child> - <widget class="GtkScrolledWindow" id="scrolledwindow22"> + <widget class="GtkLabel" id="label214"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="border_width">5</property> - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> - <property name="shadow_type">GTK_SHADOW_IN</property> - <child> - <widget class="GtkTreeView" id="msg_treeview"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="headers_visible">False</property> - <signal name="key_press_event" handler="on_msg_treeview_key_press_event"/> - <signal name="cursor_changed" handler="on_msg_treeview_cursor_changed"/> - </widget> - </child> + <property name="label" translatable="yes">Ask status message when I:</property> </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> </child> <child> - <widget class="GtkVButtonBox" id="vbuttonbox3"> + <widget class="GtkHBox" id="hbox2934"> <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_START</property> + <property name="spacing">14</property> <child> - <widget class="GtkButton" id="new_msg_button"> + <widget class="GtkCheckButton" id="prompt_online_status_message_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="can_default">True</property> - <property name="border_width">5</property> - <property name="label">gtk-new</property> - <property name="use_stock">True</property> + <property name="label" translatable="yes">Sign _in</property> + <property name="use_underline">True</property> <property name="response_id">0</property> - <signal name="clicked" handler="on_new_msg_button_clicked"/> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_prompt_online_status_message_checkbutton_toggled"/> </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> </child> <child> - <widget class="GtkButton" id="delete_msg_button"> + <widget class="GtkCheckButton" id="prompt_offline_status_message_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="can_default">True</property> - <property name="border_width">5</property> - <property name="label">gtk-delete</property> - <property name="use_stock">True</property> + <property name="label" translatable="yes">Sign _out</property> + <property name="use_underline">True</property> <property name="response_id">0</property> - <signal name="clicked" handler="on_delete_msg_button_clicked"/> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_prompt_offline_status_message_checkbutton_toggled"/> </widget> <packing> + <property name="expand">False</property> + <property name="fill">False</property> <property name="position">1</property> </packing> </child> </widget> <packing> <property name="expand">False</property> + <property name="fill">False</property> <property name="position">1</property> </packing> </child> </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> </child> <child> - <widget class="GtkScrolledWindow" id="scrolledwindow23"> + <widget class="GtkScrolledWindow" id="default_message_scrolledwindow"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="border_width">5</property> + <property name="tooltip" translatable="yes">If enabled, Gajim will not ask for a status message. The specified default message will be used instead.</property> <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> <property name="shadow_type">GTK_SHADOW_IN</property> <child> - <widget class="GtkTextView" id="msg_textview"> + <widget class="GtkTreeView" id="default_msg_treeview"> <property name="visible">True</property> <property name="can_focus">True</property> </widget> </child> </widget> <packing> - <property name="expand">False</property> - <property name="fill">False</property> <property name="position">1</property> </packing> </child> @@ -1611,6 +1215,124 @@ </widget> </child> <child> + <widget class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Status Messages</b></property> + <property name="use_markup">True</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> + </widget> + <packing> + <property name="position">1</property> + </packing> + </child> + <child> + <widget class="GtkFrame" id="frame22"> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> + <child> + <widget class="GtkAlignment" id="alignment49"> + <property name="visible">True</property> + <property name="border_width">6</property> + <property name="left_padding">12</property> + <child> + <widget class="GtkTable" id="table4"> + <property name="visible">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">2</property> + <property name="n_columns">2</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> + <child> + <placeholder/> + </child> + <child> + <widget class="GtkScrolledWindow" id="scrolledwindow23"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">GTK_POLICY_NEVER</property> + <property name="vscrollbar_policy">GTK_POLICY_NEVER</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + <child> + <widget class="GtkTextView" id="msg_textview"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="border_width">3</property> + <property name="wrap_mode">GTK_WRAP_WORD</property> + </widget> + </child> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkScrolledWindow" id="scrolledwindow22"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + <child> + <widget class="GtkTreeView" id="msg_treeview"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="headers_visible">False</property> + <signal name="key_press_event" handler="on_msg_treeview_key_press_event"/> + <signal name="cursor_changed" handler="on_msg_treeview_cursor_changed"/> + </widget> + </child> + </widget> + </child> + <child> + <widget class="GtkVButtonBox" id="vbuttonbox3"> + <property name="visible">True</property> + <property name="spacing">5</property> + <property name="layout_style">GTK_BUTTONBOX_START</property> + <child> + <widget class="GtkButton" id="new_msg_button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="label">gtk-new</property> + <property name="use_stock">True</property> + <property name="response_id">0</property> + <signal name="clicked" handler="on_new_msg_button_clicked"/> + </widget> + </child> + <child> + <widget class="GtkButton" id="delete_msg_button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="label">gtk-delete</property> + <property name="use_stock">True</property> + <property name="response_id">0</property> + <signal name="clicked" handler="on_delete_msg_button_clicked"/> + </widget> + <packing> + <property name="position">1</property> + </packing> + </child> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + <child> <widget class="GtkLabel" id="label213"> <property name="visible">True</property> <property name="label" translatable="yes"><b>Preset Status Messages</b></property> @@ -1622,7 +1344,7 @@ </child> </widget> <packing> - <property name="position">4</property> + <property name="position">2</property> </packing> </child> </widget> @@ -1642,70 +1364,68 @@ </packing> </child> <child> - <widget class="GtkVBox" id="vbox2"> + <widget class="GtkVBox" id="vbox58"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="spacing">6</property> + <property name="border_width">12</property> + <property name="spacing">12</property> <child> - <widget class="GtkFrame" id="frame6"> + <widget class="GtkFrame" id="frame9"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="label_xalign">0</property> <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkAlignment" id="alignment6"> + <widget class="GtkAlignment" id="alignment10"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> <property name="left_padding">12</property> <child> - <widget class="GtkVBox" id="vbox3"> + <widget class="GtkTable" id="table5"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">2</property> + <property name="n_columns">2</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> <child> - <widget class="GtkCheckButton" id="publish_mood_checkbutton"> + <placeholder/> + </child> + <child> + <widget class="GtkLabel" id="label4"> <property name="visible">True</property> - <property name="can_focus">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Publish _Mood</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_publish_mood_checkbutton_toggled"/> + <property name="label" translatable="yes">Chat message:</property> </widget> <packing> - <property name="expand">False</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="publish_activity_checkbutton"> + <widget class="GtkCheckButton" id="default_chat_font"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Publish _Activity</property> + <property name="label" translatable="yes">Use system _default</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_publish_activity_checkbutton_toggled"/> + <signal name="toggled" handler="on_default_chat_font_toggled"/> </widget> <packing> - <property name="expand">False</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="publish_tune_checkbutton"> + <widget class="GtkFontButton" id="conversation_fontbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Publish _Tune</property> - <property name="use_underline">True</property> <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_publish_tune_checkbutton_toggled"/> </widget> <packing> - <property name="expand">False</property> - <property name="position">2</property> + <property name="left_attach">1</property> + <property name="right_attach">2</property> </packing> </child> </widget> @@ -1713,10 +1433,9 @@ </widget> </child> <child> - <widget class="GtkLabel" id="label10"> + <widget class="GtkLabel" id="label23"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes"><b>Publish Personal Events</b></property> + <property name="label" translatable="yes"><b>Font</b></property> <property name="use_markup">True</property> </widget> <packing> @@ -1726,68 +1445,120 @@ </widget> <packing> <property name="expand">False</property> + <property name="fill">False</property> </packing> </child> <child> - <widget class="GtkFrame" id="frame7"> + <widget class="GtkFrame" id="frame3"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="label_xalign">0</property> <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkAlignment" id="alignment7"> + <widget class="GtkAlignment" id="alignment3"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="border_width">6</property> <property name="left_padding">12</property> <child> - <widget class="GtkVBox" id="vbox4"> + <widget class="GtkTable" id="table2"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">3</property> + <property name="n_columns">3</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> <child> - <widget class="GtkCheckButton" id="subscribe_mood_checkbutton"> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <widget class="GtkLabel" id="label249"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Subscribe to M_ood</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">T_heme:</property> <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_subscribe_mood_checkbutton_toggled"/> + <property name="mnemonic_widget">theme_combobox</property> </widget> <packing> - <property name="expand">False</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="subscribe_activity_checkbutton"> + <widget class="GtkButton" id="manage_theme_button"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Subscribe to A_ctivity</property> + <property name="tooltip" translatable="yes">Configure color and font of the interface</property> + <property name="label" translatable="yes">Ma_nage...</property> <property name="use_underline">True</property> <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_subscribe_activity_checkbutton_toggled"/> + <signal name="clicked" handler="on_manage_theme_button_clicked"/> </widget> <packing> - <property name="expand">False</property> - <property name="position">1</property> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="subscribe_tune_checkbutton"> + <widget class="GtkComboBox" id="theme_combobox"> <property name="visible">True</property> + <signal name="changed" handler="on_theme_combobox_changed"/> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label174"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Status _iconset:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">iconset_combobox</property> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkComboBox" id="iconset_combobox"> + <property name="visible">True</property> + <signal name="changed" handler="on_iconset_combobox_changed"/> + </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">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkCheckButton" id="transports_iconsets_checkbutton"> + <property name="visible">True</property> <property name="can_focus">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Subscribe to T_une</property> + <property name="tooltip" translatable="yes">If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...)</property> + <property name="label" translatable="yes">Use _transports icons</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_subscribe_tune_checkbutton_toggled"/> + <signal name="toggled" handler="on_transports_iconsets_checkbutton_toggled"/> </widget> <packing> - <property name="expand">False</property> - <property name="position">2</property> + <property name="left_attach">1</property> + <property name="right_attach">3</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> </packing> </child> </widget> @@ -1795,10 +1566,10 @@ </widget> </child> <child> - <widget class="GtkLabel" id="label11"> + <widget class="GtkLabel" id="label3"> <property name="visible">True</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes"><b>Subscribe to Personal Events</b></property> + <property name="label" translatable="yes"><b>Themes</b></property> <property name="use_markup">True</property> </widget> <packing> @@ -1811,16 +1582,250 @@ <property name="position">1</property> </packing> </child> + <child> + <widget class="GtkFrame" id="frame24"> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">GTK_SHADOW_NONE</property> + <child> + <widget class="GtkAlignment" id="alignment53"> + <property name="visible">True</property> + <property name="border_width">6</property> + <property name="left_padding">12</property> + <child> + <widget class="GtkTable" id="table25"> + <property name="visible">True</property> + <property name="n_rows">3</property> + <property name="n_columns">4</property> + <property name="column_spacing">12</property> + <property name="row_spacing">6</property> + <child> + <widget class="GtkHBox" id="hbox3022"> + <property name="visible">True</property> + <child> + <widget class="GtkLabel" id="label383"> + <property name="visible">True</property> + </widget> + <packing> + <property name="fill">False</property> + </packing> + </child> + <child> + <widget class="GtkButton" id="reset_colors_button"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="focus_on_click">False</property> + <property name="response_id">0</property> + <signal name="clicked" handler="on_reset_colors_button_clicked"/> + <child> + <widget class="GtkAlignment" id="alignment52"> + <property name="visible">True</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <child> + <widget class="GtkHBox" id="hbox2936"> + <property name="visible">True</property> + <property name="spacing">2</property> + <child> + <widget class="GtkImage" id="image439"> + <property name="visible">True</property> + <property name="stock">gtk-revert-to-saved</property> + </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label217"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Reset to Default Colors</property> + <property name="use_underline">True</property> + </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </widget> + <packing> + <property name="right_attach">4</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> + <property name="x_options">GTK_FILL</property> + </packing> + </child> + <child> + <widget class="GtkColorButton" id="url_msg_colorbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="response_id">0</property> + <signal name="color_set" handler="on_url_msg_colorbutton_color_set"/> + </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label371"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_URL highlight:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">url_msg_colorbutton</property> + </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">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkColorButton" id="status_msg_colorbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="response_id">0</property> + <signal name="color_set" handler="on_status_msg_colorbutton_color_set"/> + </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"></property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label71"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Status message:</property> + <property name="use_underline">True</property> + <property name="justify">GTK_JUSTIFY_CENTER</property> + <property name="wrap">True</property> + <property name="mnemonic_widget">status_msg_colorbutton</property> + </widget> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkColorButton" id="outgoing_msg_colorbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="response_id">0</property> + <signal name="color_set" handler="on_outgoing_msg_colorbutton_color_set"/> + </widget> + <packing> + <property name="left_attach">3</property> + <property name="right_attach">4</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label70"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Outgoing message:</property> + <property name="use_underline">True</property> + <property name="justify">GTK_JUSTIFY_CENTER</property> + <property name="wrap">True</property> + <property name="mnemonic_widget">outgoing_msg_colorbutton</property> + </widget> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkColorButton" id="incoming_msg_colorbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> + <property name="response_id">0</property> + <signal name="color_set" handler="on_incoming_msg_colorbutton_color_set"/> + </widget> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="x_options"></property> + <property name="y_options"></property> + </packing> + </child> + <child> + <widget class="GtkLabel" id="label72"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Incoming message:</property> + <property name="use_underline">True</property> + <property name="justify">GTK_JUSTIFY_CENTER</property> + <property name="wrap">True</property> + <property name="mnemonic_widget">incoming_msg_colorbutton</property> + </widget> + <packing> + <property name="x_options">GTK_FILL</property> + <property name="y_options"></property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + <child> + <widget class="GtkLabel" id="label228"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Chat Line Colors</b></property> + <property name="use_markup">True</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> + </widget> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> </widget> <packing> <property name="position">4</property> </packing> </child> <child> - <widget class="GtkLabel" id="label9"> + <widget class="GtkLabel" id="label218"> <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="label" translatable="yes">Personal Events</property> + <property name="label" translatable="yes">Style</property> </widget> <packing> <property name="type">tab</property> @@ -1832,7 +1837,7 @@ <widget class="GtkVBox" id="vbox45"> <property name="visible">True</property> <property name="border_width">12</property> - <property name="spacing">6</property> + <property name="spacing">12</property> <child> <widget class="GtkFrame" id="applications_frame"> <property name="visible">True</property> @@ -1875,85 +1880,85 @@ <property name="column_spacing">12</property> <property name="row_spacing">6</property> <child> - <widget class="GtkEntry" id="custom_file_manager_entry"> + <widget class="GtkLabel" id="label199"> <property name="visible">True</property> - <property name="can_focus">True</property> - <signal name="changed" handler="on_custom_file_manager_entry_changed"/> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Browser:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">custom_browser_entry</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">GTK_FILL</property> <property name="y_options"></property> </packing> </child> <child> - <widget class="GtkLabel" id="label355"> + <widget class="GtkLabel" id="label200"> <property name="visible">True</property> <property name="xalign">0</property> - <property name="label" translatable="yes">_File manager:</property> + <property name="label" translatable="yes">_Mail client:</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">custom_file_manager_entry</property> + <property name="mnemonic_widget">custom_mail_client_entry</property> </widget> <packing> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> <property name="x_options">GTK_FILL</property> <property name="y_options"></property> </packing> </child> <child> - <widget class="GtkEntry" id="custom_browser_entry"> + <widget class="GtkEntry" id="custom_mail_client_entry"> <property name="visible">True</property> <property name="can_focus">True</property> - <signal name="changed" handler="on_custom_browser_entry_changed"/> + <signal name="changed" handler="on_custom_mail_client_entry_changed"/> </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="y_options"></property> </packing> </child> <child> - <widget class="GtkEntry" id="custom_mail_client_entry"> + <widget class="GtkEntry" id="custom_browser_entry"> <property name="visible">True</property> <property name="can_focus">True</property> - <signal name="changed" handler="on_custom_mail_client_entry_changed"/> + <signal name="changed" handler="on_custom_browser_entry_changed"/> </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="y_options"></property> </packing> </child> <child> - <widget class="GtkLabel" id="label200"> + <widget class="GtkLabel" id="label355"> <property name="visible">True</property> <property name="xalign">0</property> - <property name="label" translatable="yes">_Mail client:</property> + <property name="label" translatable="yes">_File manager:</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">custom_mail_client_entry</property> + <property name="mnemonic_widget">custom_file_manager_entry</property> </widget> <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> <property name="x_options">GTK_FILL</property> <property name="y_options"></property> </packing> </child> <child> - <widget class="GtkLabel" id="label199"> + <widget class="GtkEntry" id="custom_file_manager_entry"> <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">_Browser:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">custom_browser_entry</property> + <property name="can_focus">True</property> + <signal name="changed" handler="on_custom_file_manager_entry_changed"/> </widget> <packing> - <property name="x_options">GTK_FILL</property> + <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="y_options"></property> </packing> </child> @@ -1997,60 +2002,81 @@ </packing> </child> <child> - <widget class="GtkFrame" id="frame_gmail"> + <widget class="GtkFrame" id="frame4"> <property name="visible">True</property> - <property name="no_show_all">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="label_xalign">0</property> <property name="shadow_type">GTK_SHADOW_NONE</property> <child> - <widget class="GtkAlignment" id="alignment_gmail"> + <widget class="GtkAlignment" id="alignment4"> <property name="visible">True</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="border_width">6</property> <property name="left_padding">12</property> <child> - <widget class="GtkVBox" id="vbox_gmail"> + <widget class="GtkTable" id="table3"> <property name="visible">True</property> - <property name="spacing">6</property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="n_rows">3</property> + <property name="n_columns">1</property> + <property name="column_spacing">6</property> + <property name="row_spacing">6</property> <child> - <widget class="GtkCheckButton" id="notify_gmail_checkbutton"> + <widget class="GtkCheckButton" id="log_encrypted_chats_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="label" translatable="yes">Notify on new _GMail email</property> + <property name="tooltip" translatable="yes">If checked, Gajim log GPG or E2E encrypted messages. However, when using E2E encryption the remote site has to agree on logging. If the other side has declined logging, your messages will NOT be logged.</property> + <property name="label" translatable="yes">Log _encrypted chat session</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_notify_gmail_checkbutton_toggled"/> + <signal name="toggled" handler="on_log_encrypted_chats_checkbutton_toggled"/> </widget> <packing> - <property name="expand">False</property> - <property name="fill">False</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> </packing> </child> <child> - <widget class="GtkCheckButton" id="notify_gmail_extra_checkbutton"> + <widget class="GtkCheckButton" id="send_os_info_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="tooltip" translatable="yes">If checked, Gajim will also include information about the sender of the new emails</property> - <property name="label" translatable="yes">Display _extra email details</property> + <property name="tooltip" translatable="yes">If checked, Gajim will allow others to detect the operation system you are using</property> + <property name="label" translatable="yes">Allow _OS information to be sent</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_notify_gmail_extra_checkbutton_toggled"/> + <signal name="toggled" handler="on_send_os_info_checkbutton_toggled"/> </widget> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> </packing> </child> + <child> + <widget class="GtkCheckButton" id="ignore_events_from_unknown_contacts_checkbutton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip" translatable="yes">If checked, Gajim will ignore incoming events from unauthorized contacts. Use with caution, because it blocks all messages from any contact that is not in the roster</property> + <property name="label" translatable="yes">_Ignore events from contacts not in the roster</property> + <property name="use_underline">True</property> + <property name="response_id">0</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_ignore_events_from_unknown_contacts_checkbutton_toggled"/> + </widget> + <packing> + <property name="x_options">GTK_FILL</property> + </packing> + </child> </widget> </child> </widget> </child> <child> - <widget class="GtkLabel" id="gmail_options_label"> + <widget class="GtkLabel" id="label5"> <property name="visible">True</property> - <property name="label" translatable="yes"><b>GMail Options</b></property> + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> + <property name="label" translatable="yes"><b>Privacy</b></property> <property name="use_markup">True</property> </widget> <packing> @@ -2060,7 +2086,6 @@ </widget> <packing> <property name="expand">False</property> - <property name="fill">False</property> <property name="position">1</property> </packing> </child> @@ -2094,26 +2119,10 @@ </packing> </child> <child> - <widget class="GtkCheckButton" id="send_os_info_checkbutton"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">Allow _OS information to be sent</property> - <property name="use_underline">True</property> - <property name="response_id">0</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_send_os_info_checkbutton_toggled"/> - </widget> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> - </packing> - </child> - <child> <widget class="GtkCheckButton" id="check_default_client_checkbutton"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="label" translatable="yes">Always check to see if Gajim is the _default Jabber client on startup</property> + <property name="label" translatable="yes">Check on startup if Gajim is the _default Jabber client</property> <property name="use_underline">True</property> <property name="response_id">0</property> <property name="draw_indicator">True</property> @@ -2122,7 +2131,7 @@ <packing> <property name="expand">False</property> <property name="fill">False</property> - <property name="position">2</property> + <property name="position">1</property> </packing> </child> </widget>
Modified: trunk/src/config.py =================================================================== --- trunk/src/config.py 2008-02-04 21:38:36 UTC (rev 9295) +++ trunk/src/config.py 2008-02-04 22:04:33 UTC (rev 9296) @@ -71,8 +71,6 @@ self.window = self.xml.get_widget('preferences_window') self.window.set_transient_for(gajim.interface.roster.window) self.notebook = self.xml.get_widget('preferences_notebook') - self.treat_incoming_messages_combobox =\ - self.xml.get_widget('treat_incoming_messages_combobox') self.one_window_type_combobox =\ self.xml.get_widget('one_window_type_combobox') self.iconset_combobox = self.xml.get_widget('iconset_combobox') @@ -92,8 +90,6 @@ 'auto_xa_time_spinbutton') self.auto_xa_message_entry = self.xml.get_widget('auto_xa_message_entry')
- w = self.xml.get_widget('anc_hbox') - ### General tab ### # Display avatars in roster st = gajim.config.get('show_avatars_in_roster') @@ -134,14 +130,6 @@ if not gajim.config.get('emoticons_theme'): emoticons_combobox.set_active(len(l)-1)
- # Set default for treat incoming messages - choices = common.config.opt_treat_incoming_messages - type = gajim.config.get('treat_incoming_messages') - if type in choices: - self.treat_incoming_messages_combobox.set_active(choices.index(type)) - else: - self.treat_incoming_messages_combobox.set_active(0) - # Set default for single window type choices = common.config.opt_one_window_types type = gajim.config.get('one_message_window') @@ -165,6 +153,7 @@ else: self.xml.get_widget('speller_checkbutton').set_sensitive(False)
+ ### Style tab ### # Themes theme_combobox = self.xml.get_widget('theme_combobox') cell = gtk.CellRendererText() @@ -208,12 +197,42 @@ model.append([preview, l[i]]) if gajim.config.get('iconset') == l[i]: self.iconset_combobox.set_active(i) - + # Use transports iconsets st = gajim.config.get('use_transports_iconsets') self.xml.get_widget('transports_iconsets_checkbutton').set_active(st)
- ### Privacy tab ### + # Color for incoming messages + colSt = gajim.config.get('inmsgcolor') + self.xml.get_widget('incoming_msg_colorbutton').set_color( + gtk.gdk.color_parse(colSt)) + + # Color for outgoing messages + colSt = gajim.config.get('outmsgcolor') + self.xml.get_widget('outgoing_msg_colorbutton').set_color( + gtk.gdk.color_parse(colSt)) + + # Color for status messages + colSt = gajim.config.get('statusmsgcolor') + self.xml.get_widget('status_msg_colorbutton').set_color( + gtk.gdk.color_parse(colSt)) + + # Color for hyperlinks + colSt = gajim.config.get('urlmsgcolor') + self.xml.get_widget('url_msg_colorbutton').set_color( + gtk.gdk.color_parse(colSt)) + + # Font for messages + font = gajim.config.get('conversation_font') + # try to set default font for the current desktop env + fontbutton = self.xml.get_widget('conversation_fontbutton') + if font == '': + fontbutton.set_sensitive(False) + self.xml.get_widget('default_chat_font').set_active(True) + else: + fontbutton.set_font_name(font) + + ### Personal Events tab ### # outgoing send chat state notifications st = gajim.config.get('outgoing_chat_state_notifications') combo = self.xml.get_widget('outgoing_chat_states_combobox') @@ -234,11 +253,29 @@ else: # disabled combo.set_active(2)
- # Ignore messages from unknown contacts - self.xml.get_widget('ignore_events_from_unknown_contacts_checkbutton').\ - set_active(gajim.config.get('ignore_unknown_contacts')) + # PEP + st = gajim.config.get('publish_mood') + self.xml.get_widget('publish_mood_checkbutton').set_active(st)
- ### Events tab ### + st = gajim.config.get('publish_activity') + self.xml.get_widget('publish_activity_checkbutton').set_active(st) + + st = gajim.config.get('publish_tune') + self.xml.get_widget('publish_tune_checkbutton').set_active(st) + + st = gajim.config.get('subscribe_mood') + self.xml.get_widget('subscribe_mood_checkbutton').set_active(st) + + st = gajim.config.get('subscribe_activity') + self.xml.get_widget('subscribe_activity_checkbutton').set_active(st) + + st = gajim.config.get('subscribe_tune') + self.xml.get_widget('subscribe_tune_checkbutton').set_active(st) + + if not gajim.config.get('use_pep'): + self.xml.get_widget('frame_pep').set_sensitive(False) + + ### Notifications tab ### # On new event on_event_combobox = self.xml.get_widget('on_event_combobox') if gajim.config.get('autopopup'): @@ -308,6 +345,24 @@
self.fill_sound_treeview()
+ # Notify user of new gmail e-mail messages, + # make checkbox sensitive if user has a gtalk account + frame_gmail = self.xml.get_widget('frame_gmail') + notify_gmail_checkbutton = self.xml.get_widget('notify_gmail_checkbutton') + notify_gmail_extra_checkbutton = self.xml.get_widget( + 'notify_gmail_extra_checkbutton') + + for account in gajim.config.get_per('accounts'): + jid = gajim.get_jid_from_account(account) + if gajim.get_server_from_jid(jid) in gajim.gmail_domains: + frame_gmail.set_sensitive(True) + st = gajim.config.get('notify_on_new_gmail_email') + notify_gmail_checkbutton.set_active(st) + st = gajim.config.get('notify_on_new_gmail_email_extra') + notify_gmail_extra_checkbutton.set_active(st) + break + + #### Status tab ### # Autoaway st = gajim.config.get('autoaway') self.auto_away_checkbutton.set_active(st) @@ -358,7 +413,7 @@ renderer = gtk.CellRendererText() col.pack_start(renderer, False) col.set_attributes(renderer, text = 1) - col = gtk.TreeViewColumn('Message') + col = gtk.TreeViewColumn('Default Message') self.default_msg_tree.append_column(col) renderer = gtk.CellRendererText() col.pack_start(renderer, True) @@ -389,6 +444,7 @@ buf = self.xml.get_widget('msg_textview').get_buffer() buf.connect('changed', self.on_msg_textview_changed)
+ ### Advanced tab ### # open links with if os.name == 'nt': applications_frame = self.xml.get_widget('applications_frame') @@ -440,94 +496,22 @@ st = gajim.config.get('log_contact_status_changes') self.xml.get_widget('log_show_changes_checkbutton').set_active(st)
+ # log encrypted chat sessions + st = gajim.config.get('log_encrypted_sessions') + self.xml.get_widget('log_encrypted_chats_checkbutton').set_active(st) + # send os info st = gajim.config.get('send_os_info') self.xml.get_widget('send_os_info_checkbutton').set_active(st)
- # send os info + # check if gajm is default st = gajim.config.get('check_if_gajim_is_default') self.xml.get_widget('check_default_client_checkbutton').set_active(st)
- # set status msg from currently playing music track - widget = self.xml.get_widget( - 'set_status_msg_from_current_music_track_checkbutton') - if os.name == 'nt': - widget.set_no_show_all(True) - widget.hide() - elif dbus_support.supported: - st = gajim.config.get('set_status_msg_from_current_music_track') - widget.set_active(st) - else: - widget.set_sensitive(False) + # Ignore messages from unknown contacts + self.xml.get_widget('ignore_events_from_unknown_contacts_checkbutton').\ + set_active(gajim.config.get('ignore_unknown_contacts'))
- # PEP - st = gajim.config.get('publish_mood') - self.xml.get_widget('publish_mood_checkbutton').set_active(st) - - st = gajim.config.get('publish_activity') - self.xml.get_widget('publish_activity_checkbutton').set_active(st) - - st = gajim.config.get('publish_tune') - self.xml.get_widget('publish_tune_checkbutton').set_active(st) - - st = gajim.config.get('subscribe_mood') - self.xml.get_widget('subscribe_mood_checkbutton').set_active(st) - - st = gajim.config.get('subscribe_activity') - self.xml.get_widget('subscribe_activity_checkbutton').set_active(st) - - st = gajim.config.get('subscribe_tune') - self.xml.get_widget('subscribe_tune_checkbutton').set_active(st) - - # Notify user of new gmail e-mail messages, - # only show checkbox if user has a gtalk account - frame_gmail = self.xml.get_widget('frame_gmail') - notify_gmail_checkbutton = self.xml.get_widget('notify_gmail_checkbutton') - notify_gmail_extra_checkbutton = self.xml.get_widget( - 'notify_gmail_extra_checkbutton') - - for account in gajim.config.get_per('accounts'): - jid = gajim.get_jid_from_account(account) - if gajim.get_server_from_jid(jid) in gajim.gmail_domains: - frame_gmail.show_all() - st = gajim.config.get('notify_on_new_gmail_email') - notify_gmail_checkbutton.set_active(st) - st = gajim.config.get('notify_on_new_gmail_email_extra') - notify_gmail_extra_checkbutton.set_active(st) - break - else: - frame_gmail.hide() - - # Color for incoming messages - colSt = gajim.config.get('inmsgcolor') - self.xml.get_widget('incoming_msg_colorbutton').set_color( - gtk.gdk.color_parse(colSt)) - - # Color for outgoing messages - colSt = gajim.config.get('outmsgcolor') - self.xml.get_widget('outgoing_msg_colorbutton').set_color( - gtk.gdk.color_parse(colSt)) - - # Color for status messages - colSt = gajim.config.get('statusmsgcolor') - self.xml.get_widget('status_msg_colorbutton').set_color( - gtk.gdk.color_parse(colSt)) - - # Color for hyperlinks - colSt = gajim.config.get('urlmsgcolor') - self.xml.get_widget('url_msg_colorbutton').set_color( - gtk.gdk.color_parse(colSt)) - - # Font for messages - font = gajim.config.get('conversation_font') - # try to set default font for the current desktop env - fontbutton = self.xml.get_widget('conversation_fontbutton') - if font == '': - fontbutton.set_sensitive(False) - self.xml.get_widget('default_chat_font').set_active(True) - else: - fontbutton.set_font_name(font) - self.xml.signal_autoconnect(self)
self.sound_tree.get_model().connect('row-changed', @@ -542,8 +526,7 @@ self.theme_preferences = None
self.notebook.set_current_page(0) - if not gajim.config.get('use_pep'): - self.notebook.remove_page(4) + self.window.show_all() gtkgui_helpers.possibly_move_window_in_current_desktop(self.window)
@@ -635,11 +618,6 @@ for win in gajim.interface.msg_win_mgr.windows(): win.toggle_emoticons()
- def on_treat_incoming_messages_combobox_changed(self, widget): - active = widget.get_active() - config_type = common.config.opt_treat_incoming_messages[active] - gajim.config.set('treat_incoming_messages', config_type) - def on_one_window_type_combo_changed(self, widget): active = widget.get_active() config_type = common.config.opt_one_window_types[active] @@ -1013,6 +991,9 @@
def on_log_show_changes_checkbutton_toggled(self, widget): self.on_checkbutton_toggled(widget, 'log_contact_status_changes') + + def on_log_encrypted_chats_checkbutton_toggled(self, widget): + self.on_checkbutton_toggled(widget, 'log_encrypted_sessions')
def on_send_os_info_checkbutton_toggled(self, widget): self.on_checkbutton_toggled(widget, 'send_os_info') @@ -1102,16 +1083,10 @@ 'contact_disconnected': _('Contact Disconnected'), 'message_sent': _('Message Sent'), 'muc_message_highlight': _('Group Chat Message Highlight'), - 'muc_message_received': _('Group Chat Message Received') + 'muc_message_received': _('Group Chat Message Received'), + 'gmail_received': _('GMail Email Received') }
- # In case of a GMail account we provide a sound notification option - for account in gajim.config.get_per('accounts'): - jid = gajim.get_jid_from_account(account) - if gajim.get_server_from_jid(jid) in gajim.gmail_domains: - sounds_dict['gmail_received'] = _('GMail Email Received') - break - for sound_event_config_name, sound_ui_name in sounds_dict.items(): enabled = gajim.config.get_per('soundevents', sound_event_config_name, 'enabled') @@ -1388,7 +1363,10 @@
# Merge accounts st = gajim.config.get('mergeaccounts') - self.xml.get_widget('merge_checkbutton').set_active(st) + checkbutton = self.xml.get_widget('merge_checkbutton') + checkbutton.set_active(st) + # prevent roster redraws by connecting the signal after button state is set + checkbutton.connect('toggled', self.on_merge_checkbutton_toggled)
self.avahi_available = True try: @@ -1416,7 +1394,6 @@ self.remove_button.set_sensitive(False) self.rename_button.set_sensitive(False) self.current_account = None - self.init_account() model = self.accounts_treeview.get_model() model.clear() for account in gajim.config.get_per('accounts'):