diff options
author | Federico Mena Quintero <federico@ximian.com> | 2001-07-05 05:25:30 +0800 |
---|---|---|
committer | Federico Mena Quintero <federico@src.gnome.org> | 2001-07-05 05:25:30 +0800 |
commit | dcb5ea4101ffdd79ff7849867f8c32426e88da7f (patch) | |
tree | 23683de8db80a5cfba3a779d45d2f0c4ccc10e68 /calendar/gui/dialogs/recurrence-page.c | |
parent | 1e5fac65aa65ed25c18ead0a13552e5ec98ed53f (diff) | |
download | gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar.gz gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar.bz2 gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar.lz gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar.xz gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.tar.zst gsoc2013-evolution-dcb5ea4101ffdd79ff7849867f8c32426e88da7f.zip |
Fixes bug #4018 and what would be the analogous bugs for the other
2001-07-04 Federico Mena Quintero <federico@ximian.com>
Fixes bug #4018 and what would be the analogous bugs for the other
component editors.
* gui/dialogs/comp-editor-page.h (CompEditorPageClass): New
virtual method "::focus_main_widget()".
* gui/dialogs/comp-editor-page.c
(comp_editor_page_focus_main_widget): New function.
* gui/dialogs/comp-editor.c (comp_editor_append_page): If we are
inserting the main page, ask it to focus its main widget.
* gui/dialogs/alarm-page.c (alarm_page_focus_main_widget):
Implemented.
* gui/dialogs/event-page.c (event_page_focus_main_widget):
Implemented.
#include "e-util/e-categories-config.h".
* gui/dialogs/meeting-page.c (meeting_page_focus_main_widget):
Implemented.
* gui/dialogs/recurrence-page.c
(recurrence_page_focus_main_widget): Implemented.
* gui/dialogs/task-details-page.c
(task_details_page_focus_main_widget): Implemented.
* gui/dialogs/task-page.c (task_page_focus_main_widget):
Implemented.
svn path=/trunk/; revision=10784
Diffstat (limited to 'calendar/gui/dialogs/recurrence-page.c')
-rw-r--r-- | calendar/gui/dialogs/recurrence-page.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/calendar/gui/dialogs/recurrence-page.c b/calendar/gui/dialogs/recurrence-page.c index a8961fef7b..54cd1e25c3 100644 --- a/calendar/gui/dialogs/recurrence-page.c +++ b/calendar/gui/dialogs/recurrence-page.c @@ -174,6 +174,7 @@ static void recurrence_page_init (RecurrencePage *rpage); static void recurrence_page_destroy (GtkObject *object); static GtkWidget *recurrence_page_get_widget (CompEditorPage *page); +static void recurrence_page_focus_main_widget (CompEditorPage *page); static void recurrence_page_fill_widgets (CompEditorPage *page, CalComponent *comp); static void recurrence_page_fill_component (CompEditorPage *page, CalComponent *comp); static void recurrence_page_set_summary (CompEditorPage *page, const char *summary); @@ -230,6 +231,7 @@ recurrence_page_class_init (RecurrencePageClass *class) parent_class = gtk_type_class (TYPE_COMP_EDITOR_PAGE); editor_page_class->get_widget = recurrence_page_get_widget; + editor_page_class->focus_main_widget = recurrence_page_focus_main_widget; editor_page_class->fill_widgets = recurrence_page_fill_widgets; editor_page_class->fill_component = recurrence_page_fill_component; editor_page_class->set_summary = recurrence_page_set_summary; @@ -345,6 +347,26 @@ recurrence_page_get_widget (CompEditorPage *page) return priv->main; } +/* focus_main_widget handler for the recurrence page */ +static void +recurrence_page_focus_main_widget (CompEditorPage *page) +{ + RecurrencePage *rpage; + RecurrencePagePrivate *priv; + + rpage = RECURRENCE_PAGE (page); + priv = rpage->priv; + + if (e_dialog_toggle_get (priv->none)) + gtk_widget_grab_focus (priv->none); + else if (e_dialog_toggle_get (priv->simple)) + gtk_widget_grab_focus (priv->simple); + else if (e_dialog_toggle_get (priv->custom)) + gtk_widget_grab_focus (priv->custom); + else + g_assert_not_reached (); +} + /* Fills the widgets with default values */ static void clear_widgets (RecurrencePage *rpage) |