Add an interface pref for whether to hide additional widgets when

double-clicking on document notebook tabs (off by default).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3359 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
Nick Treleaven 2008-12-11 16:29:54 +00:00
parent b280806a40
commit 89fce6dd26
8 changed files with 607 additions and 561 deletions

View File

@ -5,6 +5,10 @@
Add foreach_ptr_array() macro to utils.h.
Merge toggle button prefs code into keyfile.c Stash code.
Add toggle button support to Stash code.
* src/interface.c, src/ui_utils.h, src/notebook.c, src/keyfile.c,
doc/geany.txt, doc/geany.html, geany.glade:
Add an interface pref for whether to hide additional widgets when
double-clicking on document notebook tabs (off by default).
2008-12-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>

File diff suppressed because it is too large Load Diff

View File

@ -1392,6 +1392,10 @@ Placement of new file tabs
Whether to create a document with its notebook tab to the left or
right of all existing tabs.
Double-clicking hides all additional widgets
Whether to call the View->Toggle All Additional Widgets command
when double-clicking on a notebook tab.
Tab positions
`````````````
@ -3393,7 +3397,8 @@ Document notebook
* Double-click on empty space in the notebook tab bar to open a
new document.
* Double-click on a document's notebook tab to toggle all additional
widgets (to show them again use the View menu or the keyboard shortcut).
widgets (to show them again use the View menu or the keyboard
shortcut). The interface pref must be enabled for this to work.
* Middle-click on a document's notebook tab to close the document.
Editor

View File

@ -3922,6 +3922,26 @@
<property name="fill">True</property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="check_double_click_hides_widgets">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Calls the View-&gt;Toggle All Additional Widgets command.</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Double-clicking hides all additional widgets</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
</widget>
</child>
</widget>

View File

@ -2341,6 +2341,7 @@ create_prefs_dialog (void)
GtkWidget *radio_tab_left;
GSList *radio_tab_left_group = NULL;
GtkWidget *radio_tab_right;
GtkWidget *check_double_click_hides_widgets;
GtkWidget *label197;
GtkWidget *frame9;
GtkWidget *alignment12;
@ -2998,6 +2999,11 @@ create_prefs_dialog (void)
gtk_radio_button_set_group (GTK_RADIO_BUTTON (radio_tab_right), radio_tab_left_group);
radio_tab_left_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radio_tab_right));
check_double_click_hides_widgets = gtk_check_button_new_with_mnemonic (_("Double-clicking hides all additional widgets"));
gtk_widget_show (check_double_click_hides_widgets);
gtk_box_pack_start (GTK_BOX (vbox26), check_double_click_hides_widgets, FALSE, FALSE, 0);
gtk_tooltips_set_tip (tooltips, check_double_click_hides_widgets, _("Calls the View->Toggle All Additional Widgets command."), NULL);
label197 = gtk_label_new (_("<b>Editor tabs</b>"));
gtk_widget_show (label197);
gtk_frame_set_label_widget (GTK_FRAME (frame29), label197);
@ -4572,6 +4578,7 @@ create_prefs_dialog (void)
GLADE_HOOKUP_OBJECT (prefs_dialog, label150, "label150");
GLADE_HOOKUP_OBJECT (prefs_dialog, radio_tab_left, "radio_tab_left");
GLADE_HOOKUP_OBJECT (prefs_dialog, radio_tab_right, "radio_tab_right");
GLADE_HOOKUP_OBJECT (prefs_dialog, check_double_click_hides_widgets, "check_double_click_hides_widgets");
GLADE_HOOKUP_OBJECT (prefs_dialog, label197, "label197");
GLADE_HOOKUP_OBJECT (prefs_dialog, frame9, "frame9");
GLADE_HOOKUP_OBJECT (prefs_dialog, alignment12, "alignment12");

View File

@ -116,6 +116,9 @@ static void init_pref_groups(void)
stash_group_add_toggle_button(group, &file_prefs.cmdline_new_files,
"cmdline_new_files", TRUE, "check_cmdline_new_files");
stash_group_add_toggle_button(group, &interface_prefs.notebook_double_click_hides_widgets,
"notebook_double_click_hides_widgets", FALSE, "check_double_click_hides_widgets");
stash_group_add_toggle_button(group, &search_prefs.suppress_dialogs,
"pref_main_suppress_search_dialogs", FALSE, "check_ask_suppress_search_dialogs");
stash_group_add_toggle_button(group, &search_prefs.use_current_word,

View File

@ -433,7 +433,9 @@ static gboolean notebook_tab_click(GtkWidget *widget, GdkEventButton *event, gpo
/* toggle additional widgets on double click */
if (event->type == GDK_2BUTTON_PRESS)
{
if (interface_prefs.notebook_double_click_hides_widgets)
on_menu_toggle_all_additional_widgets1_activate(NULL, NULL);
return TRUE; /* stop other handlers like notebook_tab_bar_click_cb() */
}
/* close tab on middle click */

View File

@ -38,6 +38,7 @@ typedef struct GeanyInterfacePrefs
gint tab_pos_sidebar;
gboolean statusbar_visible;
gboolean show_symbol_list_expanders;
gboolean notebook_double_click_hides_widgets;
}
GeanyInterfacePrefs;