| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-01-17 Damon Chaplin <damon@helixcode.com>
* gui/e-week-view*.c
* gui/e-day-view*.c: don't use the theme colors at all within
the graphical parts of the widgets, since they may clash with
our colors. May make them configurable in future so people can tweak
them to go with their theme. At least the calendars are usable in any
theme now, even though the colors may not go well with the theme.
Also set the font of all the EText items in style_set.
* gui/e-week-view-event-item.c (e_week_view_event_item_draw): don't
draw the icons if we are editing the event.
* gui/e-day-view.c:
* gui/e-week-view.c: reinstated the optimizations so we don't do a
complete relayout if the event's dates haven't been changed.
(Though we still do a re-layout when recurring events change, since
comparing all the RDATES/RRULES/EXDATES/EXRULES is too much hassle.)
A side-effect of this change is that the EWeekView won't crash so
often - only recurring events will be a problem.
* cal-util/cal-component.[hc]: added function to check if the start
and end dates of a component match. Used for optimizing the updating
of the EDayView & EWeekView.
svn path=/trunk/; revision=7593
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-10-20 Damon Chaplin <damon@helixcode.com>
* gui/e-calendar-table.c (E_CALENDAR_TABLE_SPEC): added
_click-to-add-message, though I'm not sure if i18n will work.
* cal-util/cal-recur.c (cal_obj_time_add_hours):
(cal_obj_time_add_minutes):
(cal_obj_time_add_seconds): updated to handle -ve args.
* cal-util/timeutil.c (time_add_day): set tm_isdst to -1 before calling
mktime().
* cal-util/cal-recur.c (generate_instances_for_chunk): don't call the
callback if the event ends exactly on the interval start time.
* gui/e-week-view.c (e_week_view_reshape_event_span):
* gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons):
* gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event):
* gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event):
* gui/e-day-view.c (e_day_view_reshape_long_event):
(e_day_view_reshape_day_event): use cal_component_has_alarms().
* cal-util/cal-component.[hc]: added cal_component_has_alarms().
2000-10-16 Damon Chaplin <damon@helixcode.com>
* gui/calendar-config.c (config_read): set default MonthVPanePosition
to 1 rather than 0, so if you move the hpane you'll see the date
navigator.
svn path=/trunk/; revision=6063
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-09-06 JP Rosevear <jpr@helixcode.com>
* gui/e-day-view-main-item.c
(e_day_view_main_item_draw_day_event):
Use new cal_component_has_recurrences convenience function
* gui/e-week-view.c (e_week_view_show_popup_menu): ditto
* gui/e-week-view-event-item.c
(e_week_view_event_item_draw_icons):
ditto
* gui/calendar-model.c (calendar_model_value_at): ditto
(calendar_model_value_at): ditto
* gui/e-day-view.c (e_day_view_on_event_click): ditto
(e_day_view_on_event_right_click): ditto
(e_day_view_on_top_canvas_motion): ditto
(e_day_view_on_top_canvas_motion): ditto
(e_day_view_on_main_canvas_motion): ditto
(e_day_view_on_main_canvas_motion): ditto
(e_day_view_reshape_day_event): ditto
* gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event):
ditto
* gui/e-day-view.c (e_day_view_on_long_event_click): ditto
svn path=/trunk/; revision=5220
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-30 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view.[hc]:
* gui/e-day-view-main-item.c:
* gui/e-week-view.[hc]:
* gui/e-week-view-main-item.c:
* gui/calendar-commands.c:
* gui/gnome-cal.[hc]: switched to using new ECalendar widget,
and a few other fixes.
svn path=/trunk/; revision=5121
|
|
|
|
|
|
|
|
|
|
| |
2000-08-21 JP Rosevear <jpr@helixcode.com>
* gui/e-day-view-main-item.c
(e_day_view_main_item_draw_day_event):
Use CalComponent instead of iCalObject. #if some alarm stuff
svn path=/trunk/; revision=4903
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-20 Damon Chaplin <damon@helixcode.com>
* cal-util/cal-recur.[hc]: new files to implement iCalendar recurrence
rules. These are only part finished, but people may like to check that
the architecture seems OK.
2000-05-17 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view.c (e_day_view_on_delete_occurrence):
* gui/e-week-view.c (e_week_view_on_delete_occurrence): use a copy of
the iCalObject so we detect the change in the "update_event" callback.
Maybe we should just update the view ourselves and then we wouldn't
need to detect any change in the callback.
* cal-util/calobj.c (ical_object_reset_recurrence): new function to
get rid of any recurrence rules. Used when we 'unrecur' an event.
* gui/e-day-view.c (e_day_view_key_press): don't add a new event if it
won't fit, or we end up adding a new event for each key press.
(e_day_view_update_event_label): don't update it if it doesn't have
an EText item (i.e. it isn't visible).
* gui/e-day-view-time-item.c: allow selection of times using this
column.
svn path=/trunk/; revision=3144
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-06 Damon Chaplin <damon@helixcode.com>
* cal-util/calobj.[hc]: added guint ref_count to iCalObject struct,
and ical_object_ref/unref() functions. I've updated all the gui/
stuff to use ref_counts but I haven't touched the pcs/ stuff. Maybe
just using ical_object_destroy() is OK there.
* gui/gncal-todo.c:
* gui/calendar-commands.c:
* gui/eventedit.c:
* gui/e-week-view.c:
* gui/e-day-view.c: use refcounting for iCalObjects.
* gui/e-day-view-main-item.c:
* gui/e-day-view-top-item.c:
* gui/e-day-view.c: try not to ever draw outside the event, even when
the event is very small.
2000-05-05 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view.c: don't allow recurring events to be resized or
dragged, and don't show the resize/drag cursors. Actually it may be
better to let the user do the resize/drag and then ask them what they
want to do - change the single occurrence or the entire series.
* gui/e-day-view-time-item.c (e_day_view_time_item_show_popup_menu):
use e_auto_kill_popup_menu_on_hide() to destroy the popup menu.
* gui/popup-menu.c: include e-gui-utils.h
svn path=/trunk/; revision=2823
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-01 Damon Chaplin <damon@helixcode.com>
* cal-util/calobj.c (ical_object_compare_dates): new function to see
if the event dates have changed (including any recurrence rules).
It is used for optimization when we get the "object_changed" signal.
We have to do far less work if the dates are unchanged.
* gui/e-week-view.c:
* gui/e-day-view.c: only draw the selection when we have the keyboard
focus, since the user expects to be able to type in a new event when
the selection is shown. Also keep the selection when we lose focus,
but just don't show it.
Also quite a few changes to cope with the new client/server
architecture.
* gui/e-day-view-top-item.c (e_day_view_top_item_draw):
* gui/e-day-view-main-item.c (e_day_view_main_item_draw):
* gui/e-week-view-main-item.c (e_week_view_main_item_draw_day):
only draw the selection if the widget has the keyboard focus.
* gui/gnome-cal.c (mark_gtk_calendar_day): fixed so it works with
events longer than one day. And changed the code for updating events
in the new views.
svn path=/trunk/; revision=2701
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
svn path=/trunk/; revision=2115
|