diff options
-rw-r--r-- | calendar/objedit.c | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/calendar/objedit.c b/calendar/objedit.c new file mode 100644 index 0000000000..3a15e76f82 --- /dev/null +++ b/calendar/objedit.c @@ -0,0 +1,88 @@ +/* + * Calendar Object editor. + * Copyright (C) 1998 the Free Software Foundation + * + * Author: Miguel de Icaza (miguel@kernel.org) + */ + +#include <gnome.h> + +/* Day start and day end in hours */ +int day_start, day_end; + +typedef struct { + GtkWidget *property_box; + + GtkWidget *general; + + GtkTable *general_table; + GtkWidget *general_time_table; +} ObjEditor; + +GtkWidget * +calendar_object_editor_setup_time_frame (ObjEditor *oe) +{ + GtkWidget *frame; + GtkWidget *start_time, *end_time; + GtkTable *t; + + frame = gtk_frame_new (_("Time")); + t = GTK_TABLE (oe->general_time_table = gtk_table_new (1, 1, 0)); + gtk_container_add (GTK_CONTAINER (frame), oe->general_time_table); + + start_time = gnome_date_edit_new (0); + end_time = gnome_date_edit_new (0); + gnome_date_edit_set_popup_range ((GnomeDateEdit *) start_time, day_start, day_end); + gnome_date_edit_set_popup_range ((GnomeDateEdit *) end_time, day_start, day_end); + + gtk_table_attach (t, gtk_label_new (_("Start time")), 1, 2, 1, 2, 0, 0, 0, 0); + gtk_table_attach (t, gtk_label_new (_("End time")), 1, 2, 2, 3, 0, 0, 0, 0); + + gtk_table_attach (t, start_time, 2, 3, 1, 2, 0, 0, 0, 0); + gtk_table_attach (t, end_time, 2, 3, 2, 3, 0, 0, 0, 0); + return frame; +} + +void +calendar_general_editor_new (ObjEditor *oe) +{ + GtkWidget *frame; + + oe->general = gtk_hbox_new (0, 0); + oe->general_table = (GtkTable *) gtk_table_new (1, 1, 0); + + gtk_box_pack_start (GTK_BOX (oe->general), (GtkWidget *) oe->general_table, 1, 1, 0); + + frame = calendar_object_editor_setup_time_frame (oe); + gtk_table_attach (oe->general_table, frame, + 1, 2, 1, 2, + GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + gnome_property_box_append_page (oe->property_box, oe->general, gtk_label_new (_("General"))); +} + +ObjEditor * +calendar_object_editor_new (void) +{ + ObjEditor *oe; + + oe = g_new0 (ObjEditor, 1); + + oe->property_box = gnome_property_box_new (); + calendar_general_editor_new (oe); + + return oe; +} + +main (int argc, char *argv []) +{ + ObjEditor *oe; + + day_start = 7; + day_end = 19; + gnome_init ("myapp", NULL, argc, argv, 0, NULL); + + oe = calendar_object_editor_new (); + gtk_widget_show_all (oe->property_box); + gtk_main (); +} |