From: <pa...@us...> - 2010-04-24 20:43:08
|
Revision: 895 http://osmo-pim.svn.sourceforge.net/osmo-pim/?rev=895&view=rev Author: pasp Date: 2010-04-24 20:42:59 +0000 (Sat, 24 Apr 2010) Log Message: ----------- * Key shortcuts for hiding modules work again Modified Paths: -------------- trunk/src/gui.c trunk/src/preferences_gui.c trunk/src/preferences_gui.h Modified: trunk/src/gui.c =================================================================== --- trunk/src/gui.c 2010-04-14 18:54:51 UTC (rev 894) +++ trunk/src/gui.c 2010-04-24 20:42:59 UTC (rev 895) @@ -1020,7 +1020,11 @@ if ((event->state & GDK_MOD1_MASK)) { /* ALT + 1 */ #if defined(TASKS_ENABLED) || defined(CONTACTS_ENABLED) || defined(NOTES_ENABLED) if (event->state & GDK_CONTROL_MASK) { /* CTRL + ALT + 1 */ - g_signal_emit_by_name(G_OBJECT(appGUI->opt->hide_calendar_checkbutton), "clicked"); + opt_hide_modules (!config.hide_calendar, + config.hide_tasks, + config.hide_contacts, + config.hide_notes, + FALSE, appGUI); select_tab (0, appGUI); } else { #endif @@ -1038,7 +1042,11 @@ if ((event->state & GDK_MOD1_MASK)) { /* ALT + 2 */ #ifdef TASKS_ENABLED if (event->state & GDK_CONTROL_MASK) { /* CTRL + ALT + 2 */ - g_signal_emit_by_name(G_OBJECT(appGUI->opt->hide_tasks_checkbutton), "clicked"); + opt_hide_modules (config.hide_calendar, + !config.hide_tasks, + config.hide_contacts, + config.hide_notes, + FALSE, appGUI); select_tab (0, appGUI); } else { #endif /* TASKS_ENABLED */ @@ -1056,7 +1064,11 @@ if ((event->state & GDK_MOD1_MASK)) { /* ALT + 3 */ #ifdef CONTACTS_ENABLED if (event->state & GDK_CONTROL_MASK) { /* CTRL + ALT + 3 */ - g_signal_emit_by_name(G_OBJECT(appGUI->opt->hide_contacts_checkbutton), "clicked"); + opt_hide_modules (config.hide_calendar, + config.hide_tasks, + !config.hide_contacts, + config.hide_notes, + FALSE, appGUI); select_tab (0, appGUI); } else { #endif /* CONTACTS_ENABLED */ @@ -1074,7 +1086,11 @@ if ((event->state & GDK_MOD1_MASK)) { /* ALT + 4 */ #ifdef NOTES_ENABLED if (event->state & GDK_CONTROL_MASK) { /* CTRL + ALT + 4 */ - g_signal_emit_by_name(G_OBJECT(appGUI->opt->hide_notes_checkbutton), "clicked"); + opt_hide_modules (config.hide_calendar, + config.hide_tasks, + config.hide_contacts, + !config.hide_notes, + FALSE, appGUI); select_tab (0, appGUI); } else { #endif /* NOTES_ENABLED */ Modified: trunk/src/preferences_gui.c =================================================================== --- trunk/src/preferences_gui.c 2010-04-14 18:54:51 UTC (rev 894) +++ trunk/src/preferences_gui.c 2010-04-24 20:42:59 UTC (rev 895) @@ -267,15 +267,25 @@ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (appGUI->opt->hide_calendar_checkbutton), FALSE); } + opt_hide_modules (cal, tsk, cnt, nte, TRUE, appGUI); +} + +void +opt_hide_modules (gboolean cal, gboolean tsk, gboolean cnt, gboolean nte, gboolean options, GUI *appGUI) +{ + if (cal && tsk && nte && cnt) { + cal = FALSE; + } + if (cal) { config.hide_calendar = TRUE; gtk_widget_hide (GTK_WIDGET (appGUI->cal->vbox)); - gtk_widget_hide (appGUI->opt->calendar); + if (options) gtk_widget_hide (appGUI->opt->calendar); gtk_widget_hide (appGUI->trayicon_menu_calendar_item); } else { config.hide_calendar = FALSE; gtk_widget_show (GTK_WIDGET (appGUI->cal->vbox)); - gtk_widget_show (appGUI->opt->calendar); + if (options) gtk_widget_show (appGUI->opt->calendar); gtk_widget_show (appGUI->trayicon_menu_calendar_item); } @@ -283,12 +293,12 @@ if (tsk) { config.hide_tasks = TRUE; gtk_widget_hide(GTK_WIDGET (appGUI->tsk->vbox)); - gtk_widget_hide (appGUI->opt->tasks); + if (options) gtk_widget_hide (appGUI->opt->tasks); gtk_widget_hide (appGUI->trayicon_menu_tasks_item); } else { config.hide_tasks = FALSE; gtk_widget_show (GTK_WIDGET (appGUI->tsk->vbox)); - gtk_widget_show (appGUI->opt->tasks); + if (options) gtk_widget_show (appGUI->opt->tasks); gtk_widget_show (appGUI->trayicon_menu_tasks_item); } #endif /* TASKS_ENABLED */ @@ -297,12 +307,12 @@ if (cnt) { config.hide_contacts = TRUE; gtk_widget_hide (GTK_WIDGET (appGUI->cnt->vbox)); - gtk_widget_hide (appGUI->opt->contacts); + if (options) gtk_widget_hide (appGUI->opt->contacts); gtk_widget_hide (appGUI->trayicon_menu_contacts_item); } else { config.hide_contacts = FALSE; gtk_widget_show (GTK_WIDGET (appGUI->cnt->vbox)); - gtk_widget_show (appGUI->opt->contacts); + if (options) gtk_widget_show (appGUI->opt->contacts); gtk_widget_show (appGUI->trayicon_menu_contacts_item); } #endif /* CONTACTS_ENABLED */ @@ -311,12 +321,12 @@ if (nte) { config.hide_notes = TRUE; gtk_widget_hide (GTK_WIDGET (appGUI->nte->vbox)); - gtk_widget_hide (appGUI->opt->notes); + if (options) gtk_widget_hide (appGUI->opt->notes); gtk_widget_hide (appGUI->trayicon_menu_notes_item); } else { config.hide_notes = FALSE; gtk_widget_show (GTK_WIDGET (appGUI->nte->vbox)); - gtk_widget_show (appGUI->opt->notes); + if (options) gtk_widget_show (appGUI->opt->notes); gtk_widget_show (appGUI->trayicon_menu_notes_item); } #endif /* NOTES_ENABLED */ Modified: trunk/src/preferences_gui.h =================================================================== --- trunk/src/preferences_gui.h 2010-04-14 18:54:51 UTC (rev 894) +++ trunk/src/preferences_gui.h 2010-04-24 20:42:59 UTC (rev 895) @@ -25,6 +25,8 @@ #include "gui.h" GtkWidget * opt_create_preferences_window (GUI *appGUI); +void opt_hide_modules (gboolean cal, gboolean tsk, gboolean cnt, gboolean nte, + gboolean options, GUI *appGUI); #endif /* _PREFERENCES_GUI_H */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |