This is the fix Miguel and I hacked in the car at Expo to make the
year view work in low-resolution displays. This isn't the proper fix, but it's better than the way things were. 1999-05-25 Nat Friedman <nat@nat.org> * doc/C/gnomecal.sgml: Fixed a typo. * gnome-cal.c (setup_widgets): Added a scrolled window widget into which the year view is placed. * year-view.c (CALENDAR_HEIGHT): The height of the total year view inside the scrolled window. (idle_handler): Set the height of the year view to CALENDAR_HEIGHT. (year_view_size_allocate): Set the scroll region of the year view canvas to allocation->width, CALENDAR_HEIGHT. svn path=/trunk/; revision=938
This commit is contained in:
committed by
Nat Friedman
parent
3be2b5f40a
commit
c150a409d4
@ -1,3 +1,17 @@
|
||||
1999-05-25 Nat Friedman <nat@nat.org>
|
||||
|
||||
* doc/C/gnomecal.sgml: Fixed a typo.
|
||||
|
||||
* gnome-cal.c (setup_widgets): Added a scrolled window widget into
|
||||
which the year view is placed.
|
||||
|
||||
* year-view.c (CALENDAR_HEIGHT): The height of the total year view
|
||||
inside the scrolled window.
|
||||
(idle_handler): Set the height of the year view to
|
||||
CALENDAR_HEIGHT.
|
||||
(year_view_size_allocate): Set the scroll region of the year view
|
||||
canvas to allocation->width, CALENDAR_HEIGHT.
|
||||
|
||||
1999-04-25 Miguel de Icaza <miguel@nuclecu.unam.mx>
|
||||
|
||||
* main.c (dump_todo): Add --todo flag to dump the todo contents.
|
||||
|
||||
@ -50,7 +50,7 @@
|
||||
<filename>gnomecal</filename> program. You can use these
|
||||
options to alter the behaviour of the program or to quickly
|
||||
query the program for appointments, and to do items from the
|
||||
command line without requiring an X display. These are usefu
|
||||
command line without requiring an X display. These are useful
|
||||
for example to include in scripts.
|
||||
</para>
|
||||
|
||||
|
||||
@ -44,6 +44,7 @@ gnome_calendar_get_type (void)
|
||||
static void
|
||||
setup_widgets (GnomeCalendar *gcal)
|
||||
{
|
||||
GtkWidget *sw;
|
||||
time_t now;
|
||||
|
||||
now = time (NULL);
|
||||
@ -54,10 +55,13 @@ setup_widgets (GnomeCalendar *gcal)
|
||||
gcal->month_view = month_view_new (gcal, now);
|
||||
gcal->year_view = year_view_new (gcal, now);
|
||||
|
||||
sw = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_container_add (GTK_CONTAINER (sw), gcal->year_view);
|
||||
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->day_view, gtk_label_new (_("Day View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->week_view, gtk_label_new (_("Week View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->month_view, gtk_label_new (_("Month View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->year_view, gtk_label_new (_("Year View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), sw, gtk_label_new (_("Year View")));
|
||||
|
||||
gtk_widget_show_all (gcal->notebook);
|
||||
|
||||
|
||||
@ -44,6 +44,7 @@ gnome_calendar_get_type (void)
|
||||
static void
|
||||
setup_widgets (GnomeCalendar *gcal)
|
||||
{
|
||||
GtkWidget *sw;
|
||||
time_t now;
|
||||
|
||||
now = time (NULL);
|
||||
@ -54,10 +55,13 @@ setup_widgets (GnomeCalendar *gcal)
|
||||
gcal->month_view = month_view_new (gcal, now);
|
||||
gcal->year_view = year_view_new (gcal, now);
|
||||
|
||||
sw = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_container_add (GTK_CONTAINER (sw), gcal->year_view);
|
||||
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->day_view, gtk_label_new (_("Day View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->week_view, gtk_label_new (_("Week View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->month_view, gtk_label_new (_("Month View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), gcal->year_view, gtk_label_new (_("Year View")));
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (gcal->notebook), sw, gtk_label_new (_("Year View")));
|
||||
|
||||
gtk_widget_show_all (gcal->notebook);
|
||||
|
||||
|
||||
@ -566,9 +566,15 @@ new_calendar (char *full_name, char *calendar_file, char *geometry, char *page,
|
||||
if (gnome_parse_geometry (geometry, &xpos, &ypos, &width, &height)){
|
||||
if (xpos != -1)
|
||||
gtk_widget_set_uposition (toplevel, xpos, ypos);
|
||||
if (width != -1)
|
||||
gtk_widget_set_usize (toplevel, width, height);
|
||||
#if 0
|
||||
if (width != -1)
|
||||
gtk_widget_set_usize (toplevel, width, 600);
|
||||
#endif
|
||||
}
|
||||
#if 0
|
||||
gtk_widget_set_usize (toplevel, width, 600);
|
||||
#endif
|
||||
|
||||
setup_appbar (toplevel);
|
||||
setup_menu (toplevel);
|
||||
|
||||
|
||||
@ -21,6 +21,8 @@
|
||||
#define TITLE_SPACING 1 /* Spacing between title and calendar */
|
||||
#define SPACING 4 /* Spacing between months */
|
||||
|
||||
#define CALENDAR_HEIGHT 600 /* Height of the entire year view. */
|
||||
|
||||
|
||||
static void year_view_class_init (YearViewClass *class);
|
||||
static void year_view_init (YearView *yv);
|
||||
@ -105,9 +107,8 @@ idle_handler (gpointer data)
|
||||
title_height = GTK_VALUE_DOUBLE (arg);
|
||||
|
||||
/* Space for the titles and months */
|
||||
|
||||
width = GTK_WIDGET (yv)->allocation.width;
|
||||
height = GTK_WIDGET (yv)->allocation.height - head_height;
|
||||
height = CALENDAR_HEIGHT;
|
||||
|
||||
/* Offsets */
|
||||
|
||||
@ -569,6 +570,7 @@ year_view_new (GnomeCalendar *calendar, time_t year)
|
||||
year_view_colors_changed (yv);
|
||||
year_view_set (yv, year);
|
||||
compute_min_size (yv);
|
||||
|
||||
return GTK_WIDGET (yv);
|
||||
}
|
||||
|
||||
@ -601,7 +603,7 @@ year_view_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
|
||||
if (GTK_WIDGET_CLASS (parent_class)->size_allocate)
|
||||
(* GTK_WIDGET_CLASS (parent_class)->size_allocate) (widget, allocation);
|
||||
|
||||
gnome_canvas_set_scroll_region (GNOME_CANVAS (yv), 0, 0, allocation->width, allocation->height);
|
||||
gnome_canvas_set_scroll_region (GNOME_CANVAS (yv), 0, 0, allocation->width, CALENDAR_HEIGHT);
|
||||
need_resize (yv);
|
||||
}
|
||||
|
||||
|
||||
@ -566,9 +566,15 @@ new_calendar (char *full_name, char *calendar_file, char *geometry, char *page,
|
||||
if (gnome_parse_geometry (geometry, &xpos, &ypos, &width, &height)){
|
||||
if (xpos != -1)
|
||||
gtk_widget_set_uposition (toplevel, xpos, ypos);
|
||||
if (width != -1)
|
||||
gtk_widget_set_usize (toplevel, width, height);
|
||||
#if 0
|
||||
if (width != -1)
|
||||
gtk_widget_set_usize (toplevel, width, 600);
|
||||
#endif
|
||||
}
|
||||
#if 0
|
||||
gtk_widget_set_usize (toplevel, width, 600);
|
||||
#endif
|
||||
|
||||
setup_appbar (toplevel);
|
||||
setup_menu (toplevel);
|
||||
|
||||
|
||||
@ -21,6 +21,8 @@
|
||||
#define TITLE_SPACING 1 /* Spacing between title and calendar */
|
||||
#define SPACING 4 /* Spacing between months */
|
||||
|
||||
#define CALENDAR_HEIGHT 600 /* Height of the entire year view. */
|
||||
|
||||
|
||||
static void year_view_class_init (YearViewClass *class);
|
||||
static void year_view_init (YearView *yv);
|
||||
@ -105,9 +107,8 @@ idle_handler (gpointer data)
|
||||
title_height = GTK_VALUE_DOUBLE (arg);
|
||||
|
||||
/* Space for the titles and months */
|
||||
|
||||
width = GTK_WIDGET (yv)->allocation.width;
|
||||
height = GTK_WIDGET (yv)->allocation.height - head_height;
|
||||
height = CALENDAR_HEIGHT;
|
||||
|
||||
/* Offsets */
|
||||
|
||||
@ -569,6 +570,7 @@ year_view_new (GnomeCalendar *calendar, time_t year)
|
||||
year_view_colors_changed (yv);
|
||||
year_view_set (yv, year);
|
||||
compute_min_size (yv);
|
||||
|
||||
return GTK_WIDGET (yv);
|
||||
}
|
||||
|
||||
@ -601,7 +603,7 @@ year_view_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
|
||||
if (GTK_WIDGET_CLASS (parent_class)->size_allocate)
|
||||
(* GTK_WIDGET_CLASS (parent_class)->size_allocate) (widget, allocation);
|
||||
|
||||
gnome_canvas_set_scroll_region (GNOME_CANVAS (yv), 0, 0, allocation->width, allocation->height);
|
||||
gnome_canvas_set_scroll_region (GNOME_CANVAS (yv), 0, 0, allocation->width, CALENDAR_HEIGHT);
|
||||
need_resize (yv);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user