aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/goto.c
Commit message (Collapse)AuthorAgeFilesLines
* cal-client/cal-client.[hc] cal-util/cal-component.cDamon Chaplin2001-07-031-9/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-07-03 Damon Chaplin <damon@ximian.com> * cal-client/cal-client.[hc] * cal-util/cal-component.c * cal-util/cal-recur.[hc] * cal-util/test-recur.c * cal-util/timeutil.c * gui/calendar-config.c * gui/calendar-model.[hc] * gui/comp-util.[hc] * gui/e-calendar-table.c * gui/e-day-view-main-item.c * gui/e-day-view-top-item.c * gui/e-day-view.[hc] * gui/e-itip-control.c * gui/e-timezone-entry.[hc] * gui/e-week-view.[hc] * gui/gnome-cal.[hc] * gui/goto.c * gui/tag-calendar.[hc] * gui/dialogs/cal-prefs-dialog.c * gui/dialogs/comp-editor-page.[hc] * gui/dialogs/comp-editor-util.[hc] * gui/dialogs/comp-editor.c * gui/dialogs/e-timezone-dialog.[hc] * gui/dialogs/event-page.c * gui/dialogs/meeting-page.c * gui/dialogs/recurrence-page.c * gui/dialogs/task-details-page.c * gui/dialogs/task-details-page.glade * gui/dialogs/task-page.c * idl/evolution-calendar.idl * pcs/cal-backend-file.c * pcs/cal-backend.c * pcs/cal-backend.h * pcs/cal.c * pcs/query.c: timezone changes everywhere. There's still quite a few things to update, and its not working well at present. svn path=/trunk/; revision=10729
* Renamed the occur field to occur_start; added an occur_end field. This wayFederico Mena Quintero2001-06-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-26 Federico Mena Quintero <federico@ximian.com> * idl/evolution-calendar.idl (CalAlarmInstance): Renamed the occur field to occur_start; added an occur_end field. This way we can present the complete times for the occurrence from the server. * cal-util/cal-component.h (CalAlarmInstance): Likewise. * pcs/cal-backend-file.c (add_alarm_occurrences_cb): Fill the new fields appropriately. (generate_absolute_triggers): Likewise; we use -1 in case the component has no DTSTART or DTEND because there are no meaningful occurrence dates here. (fill_alarm_instances_seq): Fill in the new fields. * cal-client/cal-client.c (build_alarm_instance_list): Likewise. * gui/alarm-notify/alarm-notify-dialog.c (alarm_notify_dialog): Take in both the occur_start and occur_end times. * gui/goto.c (goto_dialog): Free the dlg structure on the bail-out cases. * gui/dialogs/event-page.c (get_widgets): Do not assert if we cannot find the main widget; just return FALSE. * gui/dialogs/alarm-page.c (get_widgets): Likewise. * gui/dialogs/task-page.c (get_widgets): Likewise. * gui/dialogs/task-details-page.c (get_widgets): Likewise. * gui/dialogs/meeting-page.c (get_widgets): Likewise. svn path=/trunk/; revision=10517
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-1/+1
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Fix headers. Same here. Same here. Same here. Same here. Same here. SameKjartan Maraas2001-04-051-0/+7
| | | | | | | | | | | | | | | | | | | | | 2001-04-04 Kjartan Maraas <kmaraas@gnome.org> * gui/calendar-commands.c: Fix headers. * gui/calendar-config.c: Same here. * gui/calendar-model.c: Same here. * gui/e-day-view-time-item.c: Same here. * gui/e-day-view-top-item.c: Same here. * gui/e-day-view.c: Same here. * gui/e-meeting-edit.c: Same here. * gui/e-week-view-main-item.c: Same here. * gui/e-week-view.c: Same here. * gui/event-editor.c: Same here. * gui/gnome-cal.c: Same here. * gui/goto.c: Same here. * gui/main.c: Same her. * gui/print.c: Same here. svn path=/trunk/; revision=9180
* <gnome.h> trimming to reduce compilation time. Likewise. Likewise.Federico Mena Quintero2001-01-301-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-29 Federico Mena Quintero <federico@ximian.com> * gui/calendar-config.c: <gnome.h> trimming to reduce compilation time. * gui/calendar-summary.c: Likewise. * gui/e-calendar-table.c: Likewise. * gui/e-day-view-time-item.c: Likewise. * gui/e-day-view.c: Likewise. * gui/e-itip-control.c: Likewise. * gui/e-meeting-edit.c: Likewise. * gui/e-meeting-edit.h: Likewise. * gui/e-tasks.c: Likewise. * gui/e-week-view.c: Likewise. * gui/event-editor.c: Likewise. * gui/gnome-cal.c: Likewise. * gui/goto.c: Likewise. * gui/itip-utils.h: Likewise. * gui/main.c: Likewise. * gui/popup-menu.c: Likewise. * gui/print.c: Likewise. * gui/tasks-control-factory.c: Likewise. * gui/tasks-control.c: Likewise. * gui/tasks-migrate.c: Likewise. svn path=/trunk/; revision=7896
* Ximianified email addresses and copyrights.Federico Mena Quintero2001-01-171-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-17 Federico Mena Quintero <federico@ximian.com> * */*: Ximianified email addresses and copyrights. * idl/evolution-calendar.idl (CalFactory::open): Renamed from ::load(), and added an only_if_exists argument. (CalFactory::create): Removed method. (Listener::OpenStatus): Removed the IN_USE error and replaced it with a NOT_FOUND one; renamed the enum from LoadStatus. (Listener::notifyCalOpened): Renamed from notifyCalLoaded(). * pcs/cal-backend.h (CalBackend): Removed the uri field. (CalBackendOpenStatus): Renamed from CalBackendLoadStatus and added a NOT_FOUND value. (CalBackendClass::open): Put in a slot for the open method. * pcs/cal-backend.c (cal_backend_create): Removed function. * pcs/cal-backend-file.c (cal_backend_file_open): Return the appropriate value when only_if_exists is TRUE. (create_cal): We are Ximian now, so set the PRODID property to the appropriate foo. * pcs/cal-factory.c (CalFactory_open): implemented, replacing CalFactory_load() and CalFactory_create(). (CalFactory_open): Moved the queue_load_create_job() stuff to here, since we now only need to contemplate the open case instead of load/create ones. (open_backend): Do everything here; replaces load_backend() and create_backend(). * cal-client/cal-listener.h (CalListenerClass::cal_opened): Renamed from cal_loaded. (CalListenerClass): Replaced the silly signals, which are gratuitous abstraction, by a set of function pointers in the instance structure. * cal-client/cal-listener.c (cal_listener_get_calendar): Removed unused function. (cal_listener_construct): Added the listener notification functions. (cal_listener_new): Ditto. (Listener_notifyCalOpened): Renamed to our new naming convention for servant implementations. (Listener_notifyObjUpdated): Ditto. (Listener_notifyObjRemoved): Ditto. * cal-client/cal-client.h (CalClientOpenStatus): Renamed from CalClientLoadStatus. (CalClientClass::cal_opened): Renamed from ::cal_loaded(). (CalClientLoadState): New enum; basically make LoadState public so that users of this code do not have to maintain their own states. * cal-client/cal-client.c (cal_client_create_calendar): Removed function. (cal_client_open_calendar): Moved the functionality over from load_or_create(); now we do everything here. (*): Use the CalClientLoadState enum values instead of the old LoadState values. (cal_client_get_load_state): Renamed from cal_client_is_loaded(), and return the appropriate value. (CalClientPrivate): Added an uri field. (cal_client_init): Initialize priv->uri. (cal_client_destroy): Free the priv->uri. (cal_opened_cb): Maintain the priv->uri. (cal_client_open_calendar): Fill in the priv->uri. (cal_client_get_uri): New function. * gui/calendar-model.c (calendar_model_set_new_comp_vtype): New function to configure the type of calendar components to create when doing click-to-add. This makes the model usable for something other than task lists. (calendar_model_get_new_comp_vtype): New function. * gui/e-calendar-table.c (e_calendar_table_get_model): New function. (e_calendar_table_destroy): Unref the subset_model. * gui/gnome-cal.h (GnomeCalendarOpenMode): Removed enum. * gui/gnome-cal.c (LoadState): Removed enum; we now use the CalClientLoadState from the client objects. (GnomeCalendarPrivate): Removed the loading_uri and task_pad_loading_uri fields as well as the load_state and task_pad_load_state fields, as we can now query them directly from the CalClient. (open_error): Renamed from load_error(). (create_error): Removed function. (gnome_calendar_open): Do not take in the mode parameter. (cal_opened_cb): Get rid of our beautifully-crafted state machine and replace it with simple code; all the loading smarts are in the Wombat now. (setup_widgets): Set the new component vtype of the table model to CAL_COMPONENT_TODO. * gui/Makefile.am (evolution_calendar_SOURCES): Removed gnome-month-item.[ch] from the list of sources. * gui/calendar-summary.c (CalSummary): Removed unused cal_loaded field. (create_summary_view): Do not check if the file exists; this is the job of the Wombat. (generate_html_summary): Fixed prototype. (alarm_fn): Fixed prototype. (property_dialog): Fixed prototype. Wonder if/how this ever worked. (create_summary_view): Cast the component and view as appropriate. Removed unused html variable. [Iain dude, are you compiling with -Wall?] * gui/e-itip-control.c (cal_opened_cb): Sigh, this function signature was *very* wrong. It was using CalClientGetStatus instead of CalClientOpenStatus. * gui/e-tasks.h (ETasksOpenMode): Removed enum. * gui/e-tasks.c (setup_widgets): Set the new component vtype of the table model to CAL_COMPONENT_TODO. (LoadState): Removed the state machine foo. (e_tasks_open): Removed the mode parameter. (initial_load): Removed function. (create_error): Removed function. (ETasksPrivate): Removed folder_uri field. (cal_opened_cb): Remove the state machine. * gui/component-factory.c: #include "tasks-control.h" * conduits/calendar/calendar-conduit.h (ECalConduitContext): Removed calendar_load_tried field. * conduits/calendar/calendar-conduit.c (start_calendar_server_cb): Sigh, fixed function prototype. * conduits/todo/todo-conduit.h (EToDoConduitContext): Removed calendar_load_tried field. * conduits/todo/todo-conduit.c (start_calendar_server_cb): Fixed function prototype. svn path=/trunk/; revision=7571
* Make sure the current month is shown when the dialog pops up.JP Rosevear2000-12-231-2/+8
| | | | | | | | | | | 2000-12-22 JP Rosevear <jpr@helixcode.com> * gui/goto.c (create_ecal): Make sure the current month is shown when the dialog pops up. * gui/goto-dialog.glade: Remove flicker svn path=/trunk/; revision=7135
* New function to keep the ecal marked properly (create_ecal): move moreJP Rosevear2000-12-231-14/+26
| | | | | | | | | | | | | | | | | | 2000-12-22 JP Rosevear <jpr@helixcode.com> * gui/goto.c (ecal_date_range_changed): New function to keep the ecal marked properly (create_ecal): move more creation code here, update marks (goto_dialog_init_widgets): listen for date_range_changed signal in the ecal * gui/calendar-commands.c (init_calendar): Remove ancient gnomecal cruft * gui/mark.[hc], gui/prop.c: Remove ancient gnomecal code that is no longer needed, last bit of bug 904 svn path=/trunk/; revision=7133
* translationsJP Rosevear2000-12-231-265/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-22 JP Rosevear <jpr@helixcode.com> * gui/goto-dialog.glade.h: translations * gui/goto-dialog.glade: new glade file for goto dialog * gui/gnome-cal.c (setup_widgets): Set date navigator attributes * gui/calendar-commands.h: remove prototype * gui/goto.h: Add prototype * gui/Makefile.am: Add glade file stuff * gui/gnome-cal.c (setup_widgets): Use accessors to configure the calendar item properly 2000-12-22 JP Rosevear <jpr@helixcode.com> * e-calendar-item.h: add prototypes * e-calendar-item.c (e_calendar_item_init): Set max_days_selected to 1 and days_to_start_week_selection to -1 as documented in header (e_calendar_item_set_arg): use new accessor methods (e_calendar_item_get_arg): ditto (e_calendar_item_get_max_days_sel): accessor (e_calendar_item_set_max_days_sel): ditto (e_calendar_item_get_days_start_week_sel): ditto (e_calendar_item_set_days_start_week_sel): ditto (e_calendar_item_class_init): add display_popup argument (e_calendar_item_init): initialize display_popup member (e_calendar_item_get_arg): get display_popup member (e_calendar_item_set_arg): set display_popup member (e_calendar_item_button_press): only show the popup menu if the member is set (e_calendar_item_get_display_popup): acessor (e_calendar_item_set_display_popup): ditto svn path=/trunk/; revision=7132
* Fall equinox cleanup!Federico Mena Quintero2000-09-081-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-09-08 Federico Mena Quintero <federico@helixcode.com> Fall equinox cleanup! OK, I know the equinox is not here yet, but weather has changed enough to warrant it. Sigh. This place is definitely not the tropics. * gui/gnome-cal.c (obj_updated_cb): Renamed from gnome_calendar_object_updated_cb(); fixed prototype. (obj_removed_cb): Renamed from gnome_calendar_object_removed_cb(); fixed prototype. (GnomeCalendarPrivate): Moved all the GnomeCalendar fields to a private structure so I don't have to rebuild the whole calendar GUI directory every time something changes in the object. (GnomeCalendarPrivate): Removed the property bag and the control fields; they are local to the control-factory now. (gnome_calendar_update_view_buttons): Remove the ignore_view_button_clicks mess and just block the signal. (gnome_calendar_set_view): Added a "focus" argument to indicate whether we want the main widget in the specified view to grab the focus. (gnome_calendar_set_view_internal): Handle the focus argument here. (gnome_calendar_set_view_buttons): Temporary hack to notify the calendar about its buttons. (gnome_calendar_get_selected_time_range): New function. (gnome_calendar_get_cal_client): New function. * gui/control-factory.c (calendar_properties_init): Keep the property bag local to here; it does not need to be in the calendar object yet. (control_factory_fn): Renamed from control_factory(). Just use control_factory_new_control(). (control_factory_new_control): Moved the stuff over from create_control(), and keep the control local to here. Check the return value of bonobo_control_new(). * gui/calendar-commands.c (show_day_view_clicked): Remove the ignore_view_button_clicks mess. (new_calendar): Removed the useless "page" argument. (calendar_control_activate): Use gnome_calendar_set_view_buttons() for now. svn path=/trunk/; revision=5255
* added new source files and pixmaps, and removed old source files, whichDamon Chaplin2000-04-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-04-24 Damon Chaplin <damon@helixcode.com> * gui/Makefile.am: added new source files and pixmaps, and removed old source files, which can be deleted. * gui/e-week-view-titles-item.[hc]: * gui/e-week-view-main-item.[hc]: * gui/e-week-view-event-item.[hc]: * gui/e-week-view.[hc]: new files implementing the week/month views. * gui/yearview.xpm: * gui/monthview.xpm: * gui/weekview.xpm: * gui/workweekview.xpm: * gui/dayview.xpm: new pixmaps for the toolbar buttons. These aren't intended to be the final pixmaps. * gui/calendar-commands.c: added radio buttons to the toolbar to switch between the calendar views, and moved the am_pm_flag here so we can get rid of view-utils.c. * gui/gnome-cal.[hc]: made it a subclass of GtkVBox, rearranged the widgets into 2 notebooks, and added the selection_start_time and selection_end_time fields. * gui/goto.c: updated to use new selection time range. * gui/quick-view.c: added '#include <gtk/gtkwindow.h>' so it compiles. * gui/e-day-view.[hc]: changed the interface to support the new selection time range, got rid of a few debugging messages and changed a few bits. svn path=/trunk/; revision=2583
* Renamed library from libcalutil to libcal-util, to be consistent withFederico Mena Quintero2000-04-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-04-16 Federico Mena Quintero <federico@helixcode.com> * cal-util/Makefile.am: Renamed library from libcalutil to libcal-util, to be consistent with libcal-client. Install header files in $(includedir)/evolution/cal-util. (INCLUDES): Add "cal-util" log domain for glib. (libcal_clientincludedir): The header files are now installed in $(includedir)/evolution/cal-client. * cal-util/cal-util.h: Fix includes. * cal-client/client-test.c: Fix includes. * pcs/Makefile.am: Create libpcs.a, not a shared library, because it is for internal use by Wombat only. The header files should not be installed, either. Removed all the old Tlacuache stuff. * gui/Makefile.am (EXTRA_DIST): We no longer distribute gncal.desktop. (evolution_calendar_INCLUDES): Add "calendar-gui" for the glib log domain. * gui/*.[ch]: Fix cal-util and cal-client includes. * pcs/Makefile.am (INCLUDES): Added "pcs" log domain for glib. * pcs/*.[ch]: Fix cal-util includes. svn path=/trunk/; revision=2461
* calendar is a frame instead of a window, now.Seth Alves2000-04-081-4/+7
| | | | | | | | | | | * gui/gncal-todo.c (simple_todo_editor): calendar is a frame instead of a window, now. * gui/gnome-cal.c (gnome_calendar_new): same * gui/goto.c (goto_dialog): same svn path=/trunk/; revision=2337
* build test-calendar-widget and evolution-calendar, common stuff is in aSeth Alves2000-04-061-1/+1
| | | | | | | | | | | | | | | * gui/Makefile.am: build test-calendar-widget and evolution-calendar, common stuff is in a library * gui/gnome-cal.c (gnome_calendar_get_type): made the calendar widget based on a gtk_frame rather than a gnome_app * gui/calendar-commands.c: split out some of main.c * gui/evolution-calendar-control.c: bonobo bung so evolution can use the calendar widget svn path=/trunk/; revision=2294
* replaced "Calendar *cal" with "CalClient *calc" in the GnomeCalendarSeth Alves2000-03-091-1/+1
| | | | | | | | | | | | | | | * gui/gnome-cal.h: replaced "Calendar *cal" with "CalClient *calc" in the GnomeCalendar struct. * gui/*.c: tracked change from Calendar * to CalClient * gui/main.c: moved alarm_defaults from here to cal-util/calobj.c (calendar_get_events_in_range): pulled this out of calendar.c and fixed it up to use cal-client stuff. i'm not sure where to put it yet. * gui/main.c (calendar_iterate): pulled this one out of calendar.c also svn path=/trunk/; revision=2090
* new file -- things shared between the client and server go in thisSeth Alves2000-03-041-1/+1
| | | | | | | | | | | | * cal-util/Makefile.am: new file -- things shared between the client and server go in this directory * calobj.c calobj.h icalendar.c icalendar.h timeutil.c timeutil.h cal-util.c cal-util.h where moved backend stuff went into pcs. shared stuff went into cal-util. svn path=/trunk/; revision=2032
* Small fix -miguelArturo Espinosa1999-09-281-9/+9
| | | | svn path=/trunk/; revision=1265
* Add support for Due Date when adding a TODO item here. (column_resized):Clifford R. Conover1999-03-111-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | 1999-03-10 Clifford R. Conover <rconover@montana.edu> * gncal-todo.c (simple_todo_editor): Add support for Due Date when adding a TODO item here. (column_resized): New function (init_column_sorting): New function. (todo_click_column): New function. (convert_time_t_to_char, make_overdue_todo_style): New functions. * gnome-cal.c (gnome_calendar_todo_properties_changed): New function used to update the TODO when the properties have been chagned for it. * prop.c (prop_apply_todo): Apply TODO properties. * gncal-day-panel.c (todo_list_properties_changed): Update the TODO display here. * eventedit.c (date_edit_new): Made public svn path=/trunk/; revision=757
* will define fonts via fontset. Friendlier to locales that use iso8859-[^1]Sergey I. Panov1999-02-181-2/+2
| | | | | | | | | | | | | * gnome-month-item.c,gnome-month-item.h,goto.c,mark.h, month-view.c,prop.c,quick-view.c,year-view.c: will define fonts via fontset. Friendlier to locales that use iso8859-[^1] and koi8-r encodings. Does not solve problem for Asian languiges --- better solution is needed (e.g. standart GNOME fontstyles defined in gtkrc). Interpol svn path=/trunk/; revision=677
* Indentation fixes.Federico Mena Quintero1999-02-161-1/+1
| | | | | | | | 1999-02-15 Federico Mena Quintero <federico@nuclecu.unam.mx> * goto.c (goto_dialog): Indentation fixes. svn path=/trunk/; revision=670
* Made a private copy of what localtime() returns, to be able to keep theTomas Ogren1999-02-161-5/+5
| | | | | | | | | 1999-02-15 Tomas Ogren <stric@ing.umu.se> * goto.c: Made a private copy of what localtime() returns, to be able to keep the data after more calls to localtime(). svn path=/trunk/; revision=669
* Use the allocation size instead of the old fields in the canvas structure.Federico Mena Quintero1998-12-151-1/+1
| | | | | | | | | 1998-12-14 Federico Mena Quintero <federico@nuclecu.unam.mx> * year-view.c (idle_handler): Use the allocation size instead of the old fields in the canvas structure. svn path=/trunk/; revision=523
* Use gnome_dialog_set_parent. ditto ditto.Miguel de Icaza1998-12-101-1/+2
| | | | | | | | | | 1998-12-09 Miguel de Icaza <miguel@nuclecu.unam.mx> * gncal-todo.c (simple_todo_editor): Use gnome_dialog_set_parent. * goto.c (goto_dialog): ditto * prop.c (properties): ditto. svn path=/trunk/; revision=522
* Use the font #defines. (month_view_new): Set the colors of the month viewFederico Mena Quintero1998-10-021-16/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1998-10-01 Federico Mena Quintero <federico@nuclecu.unam.mx> * month-view.c (month_view_init): Use the font #defines. (month_view_new): Set the colors of the month view upon creation. (mark_current_day): New function to mark the current day in the month view. (month_view_set): Mark the current day. (month_view_colors_changed): Mark the current day and colorify the month item appropriately. * month-view.h: Added year and month fields to the MonthView structure. * main.c: Renamed the Appointments color property, since it will be used by the month view as well. * goto.c (update): Set the current day's font and color. * year-view.c (year_view_init): Set the fonts of the month items when creating them. * mark.h: Added new #defines for HEADING_FONT and TITLE_FONT. * year-view.c (year_view_init): Use the new font #defines. * prop.c (prop_apply_colors): Fixed to work with the I-am-paranoid-and-I-need-to-size-my-ints changes to GnomeColorPicker. (color_spec_from_picker): Likewise. svn path=/trunk/; revision=424
* Colorify the month item and prepare it for prelighting here.Federico Mena Quintero1998-10-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1998-09-30 Federico Mena Quintero <federico@nuclecu.unam.mx> * goto.c (create_days): Colorify the month item and prepare it for prelighting here. * main.c (color_props): Changed the default colors to something not dull. * year-view.c (compute_min_size): New function to compute the minimum size of the year view properly. (year_view_size_request): Added two new fields to the year view structure that contain the minimum size. Return this in the size_request method. (year_view_new): Call compute_min_size to save the minimum size for later use. (idle_handler): Make it resize the items correctly. * gnome-month-item.c (gnome_month_item_set_arg): Reshape when necessary. This is needed becaues we now actually calculate a minimum size for the month item based on the font sizes and paddings. (check_heading_sizes): New function to calculate a minimum size based on the headings' dimensions. (check_day_sizes): New function to calculate a minimum size based on the day number labels' dimensions. (check_sizes): New function that computes a minimum size for the month item. (reshape): Now calls check_sizes() to ensure a minimum size for the month item. svn path=/trunk/; revision=419
* Stuff that I forgot to commit yesterday.Federico Mena Quintero1998-10-011-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stuff that I forgot to commit yesterday. Now the year view has a nifty pop-up view you can activate if you click on a day with mouse button 1. It will display a quick view of the appointments in that day. Also, reworked the marking and coloring code for month items so that the year view is not glacially slow anymore when switching years. It still is slow when first mapping or realizing the year view, I'm not sure why. I will look into that. 1998-09-29 Federico Mena Quintero <federico@nuclecu.unam.mx> * prop.c (fetch_color_spec): Changed name from fetch_prelight_spec and made it conform to the new prelighting mechanism. (fake_mark_days): Set the proper day attributes. (reconfigure_month): Use colorify_month_item(). (fake_mark_days): Use mark_month_item_index(). * mark.c (colorify_month_item): New public function to reset the colors in a month item. (get_attributes): New internal function that creates an array of attributes for the days in a month item. This is the basis of all the new optimizations to month item marking. (unmark_month_item): Now it uses the attributes array to unmark only the days that need unmarking. (mark_event_in_month): Update the day attributes array. (month_item_prepare_prelight): Changed the definition of the prelight color query function. Use the new function. (day_event): Do color changes based on the day attributes array. (mark_month_item_index): New public function to mark a single day by index. (mark_event_in_month): Use mark_month_item_index(). * gnome-month-item.c (gnome_month_item_num2child): Now takes an int, not a GnomeMonthItemChild. (gnome_month_item_child2num): Now returns an int, not a GnomeMonthItemChild. (gnome_month_item_num2day): Now takes an int, not a GnomeMonthItemChild. * goto.c (goto_dialog): Create the days before the year spin button, because the year_changed callback expects the month item to be created. The new semantics of the spin button cause it to emit a value_changed signal on the adjustment upon creation -- is this the behavior we want from it? (goto_dialog): Use gtk_window_set_modal() instead of the deprectaed gnome_dialog_set_modal(). * quick-view.c (quick_view_new): Make it look not as crappy by putting the title inside the frame. (quick_view_do_popup): Fixed the pointer grab and added a cursor. (create_items_for_event): Query the text width/height from the text item using the new object arguments, so that the size of the popup window can be set properly. * year-view.c (do_quick_view_popup): Calculate a nice date string for the popup window. svn path=/trunk/; revision=415
* Finished with the properties dialog. You can jump to days from the yearFederico Mena Quintero1998-09-041-48/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finished with the properties dialog. You can jump to days from the year view now. I'm off to rewrite gnome-popupmenu and friends. 1998-09-03 Federico Mena Quintero <federico@nuclecu.unam.mx> * gncal-full-day.c (gncal_full_day_forall): Updated foreach -> forall from Gtk changes, bleah. * year-view.c (day_event): New function to handle events from days. Jumps to the day that is clicked. * main.c: Use a watch cursor while the previous/today/next functions are doing their job. * mark.c (month_item_prepare_prelight): New public utility function to prepare a month item for prelighting. It will store the proper prelight information and attach the appropriate signals. (mark_current_day): Make the current day bold as well (useful for color-blind people, I guess). * prop.c (set_current_day): Reset the date in the sample calendar and mark the current day. (fake_mark_days): Mark fake events in the sample calendar. * year-view.c (year_view_set): Use the general prelighting engine. * goto.c (day_event): Just process button presses, as prelighting is done behind the scenes now. (update): Use the general prelighting engine. * prop.c (create_colors_page): We can now configure the colors of svn path=/trunk/; revision=361
* Today: we can now configure the colors for the monthly items, courtesy ofFederico Mena Quintero1998-09-031-73/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Today: we can now configure the colors for the monthly items, courtesy of the canvas and GnomeColorPicker. Look at the preferences dialog, it is kind of nice. There are still some bugs to be fixed, nothing major. 1998-09-03 Federico Mena Quintero <federico@nuclecu.unam.mx> * prop.c (create_colors_page): We can now configure the colors of the monthly calendars! Wheeeeee! There are still some nits to be fixed, which are listed in the TODO file. (build_color_spec): New function to build color specifications. (parse_color_spec): New function to parse color specifications. * mark.c: Modified all functions to use the configured colors. * goto.c: Likewise. * main.c (colors_changed): New function that notifies all calendars that colors have changed. * gnome-cal.c (gnome_calendar_colors_changed): New function that notifies all the views that the colors have changed. * month-view.c (month_view_colors_changed): New function that notifies the month view that colors have changed. * year-view.c (year_view_colors_changed): New function that notifies the year view that colors have changed. * gnome-month-item.h (struct _GnomeMonthItem): Added fields for outline and day box colors. * gnome-month-item.c (gnome_month_item_set_arg): Added outline_color, outline_color_gdk, day_box_color, and day_box_color_gdk arguments to month items. These are convenient to quickly set the colors of the month item. (gnome_month_item_get_arg): Likewise. * main.[ch]: Added a global array of structures for color preferences. svn path=/trunk/; revision=360
* Centralized marking of month items. We now have a little utility functionFederico Mena Quintero1998-08-301-28/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Centralized marking of month items. We now have a little utility function to colorify the days in a month item that have events scheduled for them. This is currently used by the year view and the go-to dialog. Fixed buglets here and there. 1998-08-29 Federico Mena Quintero <federico@nuclecu.unam.mx> * mark.[ch]: New files with utility functions to mark calendars with their events. * mark.c (mark_month_item): New public function to mark a month item with events. (unmark_month_item): New public function to unmark all the days in a month item to their default appearance. * year-view.c (year_view_set): Use the new unmark_month_item() and mark_month_item() to mark the months with events. * goto.c (update): New function that updates the calendar in the Go-to dialog by marking the days. * timeutil.c (time_year_begin): Modified to take a time_t value. (time_year_end): Likewise. (time_month_begin): Actually implemented this function, which was in the header file but not here. (time_days_in_month): New public function that returns the number of days in a month. * Makefile.am (gnomecal_SOURCES): Added mark.[ch] to the sources. * year-view.c (unmark_days): Use unmark_month_item(). * gncal-full-day.c (gncal_full_day_destroy): Fixed crash when destroying the full day view. The full day's destroy method is unusual in that it destroys the list of child widgets itself, as it does not have a remove method, so it needs to reset the list to NULL. svn path=/trunk/; revision=351
* Set the heading color of the month item.Federico Mena Quintero1998-08-261-0/+1
| | | | | | | | | | | | | | | | | | | 1998-08-25 Federico Mena Quintero <federico@nuclecu.unam.mx> * goto.c (create_days): Set the heading color of the month item. * main.c: Use GNOME_STOCK_PIXMAP_JUMP_TO, now that it exists, instead of goto.xpm. Also, removed goto.xpm from cvs. * gnome-month-item.h (struct _GnomeMonthItem): Added fields for the heading and day number fonts. Added fields for heading and day number label colors. * gnome-month-item.c (gnome_month_item_class_init): ARG_DAY_NAMES should be write-only. Also, added arguments for heading and day number fonts. Added arguments for heading and day number colors. svn path=/trunk/; revision=339
* Changed the Properties menu item to Preferences. These are globalFederico Mena Quintero1998-08-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 1998-08-24 Federico Mena Quintero <federico@nuclecu.unam.mx> * main.c: Changed the Properties menu item to Preferences. These are global application preferences, not a single calendar's properties. * prop.c (prop_apply): Save the week_starts_on_monday flag to the configuration file. (properties): Added a check button for weeks starting on Monday. (properties): Beautified the Preferences dialog. * month-view.c (month_view_init): * goto.c (create_days): Set the month item to start weeks on Monday if appropriate. * main.c (init_calendar): A boolean is not an hour, so don't range_check_hour() on it. (init_calendar): Added a global week_starts_on_monday flag. * main.h: Added global week_starts_on_monday flag. svn path=/trunk/; revision=336
* We now have a nice generic monthly calendar item for the canvas. WeFederico Mena Quintero1998-08-191-4/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | also have a convenient "Go To" dialog, just like in the PalmPilot. Next step is a pretty month view - Federico 1998-08-18 Federico Mena Quintero <federico@nuclecu.unam.mx> * gnome-month-item.c (gnome_month_item_day2index): New public function to get the displayed day index of the specified date. * gnome-cal.c (gnome_calendar_goto_today): New public function to jump to the current day. * goto.c (day_event): Jump to the selected day when the user clicks the mouse, and prelight days as appropriate. * timeutil.c (time_from_day): New public function to build a time_t from a year/month/day triplet. * gnome-month-item.c (gnome_month_item_num2child): (gnome_month_item_child2num): New public functions to convert an index into a child and vice-versa, respectively. (gnome_month_item_num2day): New public function to convert a child number into a displayed day number. * goto.c (goto_dialog): Doh, use gnome-dialog properly :-) * gnome-month-item.c (create_items): Use g_strdup()ed day names from the start. 1998-08-17 Federico Mena Quintero <federico@nuclecu.unam.mx> * main.c (gnome_toolbar): Made it use goto.xpm. * Makefile.am (EXTRA_DIST): Added goto.xpm to the list of files. svn path=/trunk/; revision=326
* Fixes for 0.28 - FedericoArturo Espinosa1998-08-181-1/+2
| | | | svn path=/trunk/; revision=321
* It helps to add the files first - FedericoArturo Espinosa1998-08-141-0/+229
svn path=/trunk/; revision=318