aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs
diff options
context:
space:
mode:
authorFederico Mena Quintero <federico@src.gnome.org>2001-08-01 00:23:03 +0800
committerFederico Mena Quintero <federico@src.gnome.org>2001-08-01 00:23:03 +0800
commitd96fe8dc0a462489d863ee32f46e1631ca129e3e (patch)
tree1332ce30cface45104f566744b0814e6ed59cf78 /calendar/gui/dialogs
parenta82d0af27adda77412aa3e594cff5cd3fd14aa7e (diff)
downloadgsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar.gz
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar.bz2
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar.lz
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar.xz
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.tar.zst
gsoc2013-evolution-d96fe8dc0a462489d863ee32f46e1631ca129e3e.zip
Sync from OLS - Federico
svn path=/trunk/; revision=11514
Diffstat (limited to 'calendar/gui/dialogs')
-rw-r--r--calendar/gui/dialogs/cal-prefs-dialog.c37
-rw-r--r--calendar/gui/dialogs/cal-prefs-dialog.glade2
-rw-r--r--calendar/gui/dialogs/cal-prefs-dialog.h11
3 files changed, 40 insertions, 10 deletions
diff --git a/calendar/gui/dialogs/cal-prefs-dialog.c b/calendar/gui/dialogs/cal-prefs-dialog.c
index c05628797f..931ac12b73 100644
--- a/calendar/gui/dialogs/cal-prefs-dialog.c
+++ b/calendar/gui/dialogs/cal-prefs-dialog.c
@@ -47,6 +47,8 @@ struct _CalPrefsDialogPrivate {
GtkWidget *dialog;
+ GtkWidget *toplevel_notebook;
+
GtkWidget *timezone;
GtkWidget *working_days[7];
GtkWidget *week_start_day;
@@ -120,23 +122,26 @@ cal_prefs_dialog_init (CalPrefsDialog *prefs)
/**
* cal_prefs_dialog_new:
- * @Returns: a new #CalPrefsDialog.
+ * @page: Page to show when the dialog is popped up.
*
* Creates a new #CalPrefsDialog.
+ *
+ * Return value: a new #CalPrefsDialog.
**/
CalPrefsDialog *
-cal_prefs_dialog_new (void)
+cal_prefs_dialog_new (CalPrefsDialogPage page)
{
CalPrefsDialog *prefs;
prefs = CAL_PREFS_DIALOG (gtk_type_new (cal_prefs_dialog_get_type ()));
- return cal_prefs_dialog_construct (prefs);
+ return cal_prefs_dialog_construct (prefs, page);
}
/**
* cal_prefs_dialog_construct:
* @prefs: A #CalPrefsDialog.
+ * @page: Page to show when the dialog is popped up.
*
* Constructs a task editor by loading its Glade XML file.
*
@@ -145,7 +150,7 @@ cal_prefs_dialog_new (void)
* destroyed.
**/
CalPrefsDialog *
-cal_prefs_dialog_construct (CalPrefsDialog *prefs)
+cal_prefs_dialog_construct (CalPrefsDialog *prefs, CalPrefsDialogPage page)
{
CalPrefsDialogPrivate *priv;
@@ -170,7 +175,7 @@ cal_prefs_dialog_construct (CalPrefsDialog *prefs)
cal_prefs_dialog_show_config (prefs);
- gtk_widget_show (priv->dialog);
+ cal_prefs_dialog_show (prefs, page);
return prefs;
@@ -194,6 +199,8 @@ get_widgets (CalPrefsDialog *prefs)
priv->dialog = GW ("cal-prefs-dialog");
+ priv->toplevel_notebook = GW ("toplevel-notebook");
+
/* The indices must be 0 (Sun) to 6 (Sat). */
priv->working_days[0] = GW ("sun_button");
priv->working_days[1] = GW ("mon_button");
@@ -220,6 +227,7 @@ get_widgets (CalPrefsDialog *prefs)
#undef GW
return (priv->dialog
+ && priv->toplevel_notebook
&& priv->timezone
&& priv->working_days[0]
&& priv->working_days[1]
@@ -276,9 +284,10 @@ cal_prefs_dialog_create_time_edit (void)
void
-cal_prefs_dialog_show (CalPrefsDialog *prefs)
+cal_prefs_dialog_show (CalPrefsDialog *prefs, CalPrefsDialogPage page)
{
CalPrefsDialogPrivate *priv;
+ int page_num;
g_return_if_fail (IS_CAL_PREFS_DIALOG (prefs));
@@ -292,6 +301,22 @@ cal_prefs_dialog_show (CalPrefsDialog *prefs)
cal_prefs_dialog_show_config (prefs);
gtk_widget_show (priv->dialog);
}
+
+ switch (page) {
+ case CAL_PREFS_DIALOG_PAGE_CALENDAR:
+ page_num = 0;
+ break;
+
+ case CAL_PREFS_DIALOG_PAGE_TASKS:
+ page_num = 2;
+ break;
+
+ default:
+ g_assert_not_reached ();
+ return;
+ }
+
+ gtk_notebook_set_page (GTK_NOTEBOOK (priv->toplevel_notebook), page_num);
}
diff --git a/calendar/gui/dialogs/cal-prefs-dialog.glade b/calendar/gui/dialogs/cal-prefs-dialog.glade
index b93e15f442..2e30d92f20 100644
--- a/calendar/gui/dialogs/cal-prefs-dialog.glade
+++ b/calendar/gui/dialogs/cal-prefs-dialog.glade
@@ -89,7 +89,7 @@
<widget>
<class>GtkNotebook</class>
- <name>notebook1</name>
+ <name>toplevel-notebook</name>
<can_focus>True</can_focus>
<show_tabs>True</show_tabs>
<show_border>True</show_border>
diff --git a/calendar/gui/dialogs/cal-prefs-dialog.h b/calendar/gui/dialogs/cal-prefs-dialog.h
index e238d83378..88d3b10249 100644
--- a/calendar/gui/dialogs/cal-prefs-dialog.h
+++ b/calendar/gui/dialogs/cal-prefs-dialog.h
@@ -47,6 +47,11 @@ typedef struct _CalPrefsDialogClass CalPrefsDialogClass;
typedef struct _CalPrefsDialogPrivate CalPrefsDialogPrivate;
+typedef enum {
+ CAL_PREFS_DIALOG_PAGE_CALENDAR,
+ CAL_PREFS_DIALOG_PAGE_TASKS
+} CalPrefsDialogPage;
+
struct _CalPrefsDialog
{
GtkObject object;
@@ -62,10 +67,10 @@ struct _CalPrefsDialogClass
GtkType cal_prefs_dialog_get_type (void);
-CalPrefsDialog* cal_prefs_dialog_construct (CalPrefsDialog *prefs);
-CalPrefsDialog* cal_prefs_dialog_new (void);
+CalPrefsDialog* cal_prefs_dialog_construct (CalPrefsDialog *prefs, CalPrefsDialogPage page);
+CalPrefsDialog* cal_prefs_dialog_new (CalPrefsDialogPage page);
-void cal_prefs_dialog_show (CalPrefsDialog *prefs);
+void cal_prefs_dialog_show (CalPrefsDialog *prefs, CalPrefsDialogPage page);
END_GNOME_DECLS