/*
* 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 ();
}