| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-10-19 Rodrigo Moya <rodrigo@ximian.com>
* gui/component-factory.c (owner_set_cb): keep a reference to the
EvolutionShellClient component
* gui/e-week-view.c (e_week_view_set_status_message): new function
(update_query): call e_week_view_set_status_message
(query_query_done_cb):
(query_eval_error_cb): clean up status bar messages
* gui/e-day-view.c (e_day_view_set_status_message): new function
(update_query): call e_day_view_set_status_message
(query_query_done_cb):
(query_eval_error_cb): clean up status bar messages
* gui/Makefile.am: added EVOLUTION_IMAGESDIR to CFLAGS
svn path=/trunk/; revision=13793
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-03 Damon Chaplin <damon@ximian.com>
* gui/calendar-commands.c (calendar_control_activate):
* gui/tasks-control.c (tasks_control_activate): don't call
calendar_config_check_timezone_set() now, since the startup wizard
handles that.
* gui/e-tasks.c (e_tasks_class_init): changed selection_changed signal
to GTK_RUN_LAST. It has no reason to be GTK_RUN_FIRST.
* gui/gnome-cal.c:
* gui/e-week-view.c:
* gui/e-day-view.c: added "selection_changed" signal,
XX_delete_event() and XX_get_num_events_selected().
* gui/e-day-view-top-item.c (e_day_view_top_item_draw): fix the shadow
around the dates at the top - it was 1 pixel off.
* gui/calendar-commands.c: added sensitize_commands(), similar to in
tasks-control.c, so we only make Cut/Copy/Delete sensitive when an
event is selected. Also added delete_event_cmd().
* gui/dialogs/task-page.c (task_page_set_summary):
* gui/dialogs/event-page.c (event_page_set_summary): do nothing,
since the summary only gets changed on the main event/task page now.
Fixes bug #6939.
* gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received):
(e_day_view_on_top_canvas_drag_data_received): check that we are
dragging an event from the same EDayView. We currently don't support
DnD from other widgets.
(e_day_view_update_top_canvas_drag): only get the summary if we
actually have an event. Fixes bug #5162.
* gui/e-day-view.c (e_day_view_on_editing_stopped): if the text hasn't
changed we need to call e_day_view_update_event_label() to show the
times again if necessary. Fixes bug #1813.
* gui/dialogs/comp-editor.c (comp_editor_destroy): destroy the
CompEditorPage objects here rather than in close_dialog(), after the
widgets have been destroyed. We do this because the widgets have lots
of signal handlers connected with the CompEditorPage objects as the
signal data, so we want to ensure that the data pointer is always
valid. (Alternatively we could disconnect all the handlers when the
CompEditorPage objects are destroyed, or use connect_while_alive()).
Fixes bug #7543.
Note: there is still a small bug in that if you type in a time and
then hit 'Save and Close', the time won't be saved. I'm not sure
where this should be fixed - should the actions which close the
dialog grab the focus to the toplevel, so any widgets currently
being edited finish the edit and emit 'changed'?
* gui/dialogs/recurrence-page.c (append_exception): use
gtk_clist_set_row_data_full() so freeing is handled automatically by
the GtkClist. This helps avoid problems at destroy-time.
(exception_delete_cb): just call gtk_clist_remove() now. No need to
free the row data as GtkCList now handles it.
(recurrence_page_destroy): no need to free the data in the clist.
* gui/dialogs/alarm-page.c: ditto.
* gui/dialogs/meeting-page.c: ditto.
(etable_destroy_cb): save the ETable state in this new handler cb
rather than in the destroy method, since the widget will already be
destroyed by then.
svn path=/trunk/; revision=12575
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-21 Damon Chaplin <damon@ximian.com>
* pcs/query.c (func_is_completed): added new e-sexp operator. We
don't currently use it though.
* gui/dialogs/cal-prefs-dialog.glade: Changed '_Overdue' to 'O_verdue'
since we have an '_Other' notebook tab. Added '_Hide' accel.
* gui/dialogs/cal-prefs-dialog.c: hooked up config options to dialog.
* gui/calendar-config.c: added config options for hiding completed
tasks.
* gui/e-week-view-event-item.c (e_week_view_event_item_draw):
* gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event):
* gui/e-day-view.c (e_day_view_reshape_long_event): added 2 pixels
extra space between icons and text for long events, and 1 pixel space
between icons in all events.
(e_day_view_realize): changed the background color to match the
EGrayBar in the shell.
svn path=/trunk/; revision=12347
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-09 Damon Chaplin <damon@ximian.com>
* pcs/cal-backend.c (cal_backend_get_object_component): added new
backend method to get the component given a UID.
* pcs/cal-backend-file.c (cal_backend_file_get_object_component):
added implementation of above virtual method.
* pcs/query.c (match_component): use the new backend function to get
the CalComponent rather than the string. This avoids converting all
the calendar components to strings and parsing them back into
components for every query! (That wasn't a good idea, was it ;)
* gui/e-week-view.c:
* gui/e-day-view.c: use a timeout handler to layout the events,
to avoid doing a layout for each event we get from a query.
* gui/print.c (print_day_add_event):
* gui/e-day-view.c (e_day_view_add_event): set start_row_or_col and
num_columns to 0. They are guint8's.
* gui/e-week-view.c (e_week_view_free_events): hide all the jump
buttons. Fixes bug #5946.
* gui/calendar-commands.c (calendar_set_folder_bar_label): added the
day numbers for the month view.
* gui/dialogs/recurrence-page.glade: changed "_Delete" to "_Remove",
since it clashed with "_Add". Also added underlined accelerators for
the recurrence radio buttons. Note that none of these accelerators
actually work at present, due to the way we are using .glade files
for each notebook page. I need to add a bug about this.
Also, the "_Action" menu doesn't popup when I press Alt+A, even though
the "_File" menu does popup when I press Alt+F. Strange.
* pcs/cal-backend-file.c (cal_backend_file_get_timezone_object):
removed debug msgs.
svn path=/trunk/; revision=11866
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-06 Damon Chaplin <damon@ximian.com>
* gui/e-week-view.h:
* gui/e-day-view.h: added 'different_timezone' fields to EDayViewEvent
and EWeekViewEvent, to note that the event is in a different timezone.
We now compute this once when we add the event to the array, rather
than each time we draw the event. If it is set, we will draw the
timezone icon next to the event.
* gui/e-day-view-main-item.c: take transparency into account when
drawing the blue vertical bars to represent busy time.
* gui/tag-calendar.c: take transparency into account when tagging
the mini calendar.
* gui/e-calendar-table.c (e_calendar_table_init): removed the "None"
options for transparency and classification, since these properties
have defaults anyway, so we may as well use those to keep it simple.
Also use "Free" and "Busy" for transparency, rather than "Transparent"
and "Opaque".
* gui/calendar-model.c: updated classification & transparency code
as above.
* gui/e-calendar-table.etspec: changed "Transparency" to "Show Time As"
since people have a chance of understanding that.
* gui/e-week-view.c:
* gui/e-day-view.c:
* gui/gnome-cal.c: added functions to get the visible time range.
* gui/calendar-commands.c: finished stuff to set the folder bar
label to the dates currently displayed.
* gui/control-factory.c (control_factory_new_control): connected
signal to update the folder title bar label when the dates shown
are changed. I had to connect it here since we need the BonoboControl
in the callback, and I don't know how to get the control from the
widget.
* gui/tasks-control.c (tasks_control_activate): clear the folder bar
label. We could display something here at some point.
* gui/dialogs/recurrence-page.glade: changed "_Add" to "A_dd", since
we have an "_Actions" menu. (These also use Alt+key, right?)
* gui/dialogs/event-page.glade:
* gui/dialogs/event-page.c: added 'Show Time As' field, which is
really the TRANSP property but with a better name!
Also changed one of the "_Confidential" to "Con_fidential" since we
already have "_Contacts" using the same 'C' key.
* pcs/cal-backend-file.c (cal_backend_file_get_free_busy): skip
events that are TRANSPARENT. Also added comment as this code looks
inefficient.
* cal-util/cal-component.c: removed stuff for comparing timezones.
* gui/comp-util.c (cal_comp_util_compare_event_timezones): moved the
above function here, and updated it to compare the UTC offsets of the
times as well as the TZIDs.
svn path=/trunk/; revision=11717
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-03 Federico Mena Quintero <federico@ximian.com>
* cal-client/query-listener.c (query_listener_stop_notification):
New function; stops further notification from happening. This is
needed since the listener is destroyed asynchronously from the
Wombat and the corresponding CalQuery may already have died.
(impl_notifyObjUpdated): Do not notify if requested.
(impl_notifyObjRemoved): Likewise.
(impl_notifyQueryDone): Likewise.
(impl_notifyEvalError): Likewise.
* cal-client/cal-query.c (cal_query_destroy): Use
query_listener_stop_notification().
* cal-client/cal-listener.c (cal_listener_destroy): Nullify the
pointers to the callback functions.
* gui/e-day-view.c (update_query): Commit our state of no longer
having a query before unrefing it. We may reenter from the ORBit
main loop and we *really* want this information to be committed.
* gui/e-week-view.c (update_query): Likewise.
* gui/calendar-model.c (update_query): Likewise.
* gui/tag-calendar.c (tag_calendar_by_comp): Added a "clear_first"
argument that indicates whether the ECalendar should be cleared of
any marks first.
* gui/calendar-commands.c (calendar_control_activate): Removed
ifdefed-out view buttons code from the Gnomecal days.
* gui/gnome-cal.c (client_categories_changed_cb): Merge the
categories of the calendar and tasks clients so that we can
display the categories in both sets.
(gnome_calendar_construct): Connect to "categories_changed" on
both clients.
(gnome_calendar_on_date_navigator_selection_changed): Removed call
to gnome_calendar_update_view_buttons().
(gnome_calendar_update_view_buttons): Removed. We cannot have
this until Bonobo supports radio toolbar items.
(gnome_calendar_set_view_buttons): Removed.
(gnome_calendar_dayjump): Do not use priv->day_button.
(GnomeCalendarPrivate): Removed the {day,work_week,week,month}_button
fields.
(gnome_calendar_set_query): Start a retagging process of the date
navigator so that it reflects the current query.
(update_query): New function to restart a query for the date navigator.
(initial_load): Use update_query() instead of tagging the date
navigator directly.
(gnome_calendar_on_date_navigator_date_range_changed): Likewise.
(client_cal_opened_cb): Use update_query() instead of initial_load().
(initial_load): Removed.
(client_obj_updated_cb): Removed.
(client_obj_removed_cb): Removed.
(gnome_calendar_new_appointment_for): Set the default category of
the new component.
(search_bar_category_changed_cb): Set the default category for the
calendar views.
* gui/cal-search-bar.c (cal_search_bar_set_categories): Sort the
categories before creating the menu.
* gui/e-day-view.c (adjust_query_sexp): Return NULL instead of
"#f" if the time range is not set yet.
(update_query): Do not start a query if the time range is not set.
(e_day_view_set_default_category): New function.
(e_day_view_key_press): Set the default category on the new
component.
* gui/e-week-view.c (adjust_query_sexp): Analogous to the above.
(update_query): Analogous to the above.
(e_week_view_set_default_category): Analogous to the above.
(e_week_view_key_press): Analogous to the above.
svn path=/trunk/; revision=11646
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-10 Damon Chaplin <damon@ximian.com>
* gui/calendar-model.c:
* 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-week-view.c:
* gui/gnome-cal.c:
* gui/print.c:
* gui/dialogs/cal-prefs-dialog.c:
* gui/dialogs/comp-editor-util.c:
* gui/dialogs/event-page.c:
* pcs/cal-backend-file.c:
* pcs/query.c:
* cal-util/cal-component.[hc]:
* cal-util/cal-recur.c:
* cal-util/timeutil.[hc]:
* cal-client/cal-client.[hc]: more timezone updates. I'm pretty much
done with the calendar code now, except for alarms and conduits,
which Federico and JP know more about. And there are a couple of
other minor things to fix. But it is still pretty buggy.
svn path=/trunk/; revision=10984
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-28 Rodrigo Moya <rodrigo@ximian.com>
* gui/component-factory.c: removed not-uses-anymore parameter in
call to evolution_shell_component_new
* gui/gnome-cal.[ch] (gnome_calendar_cut_clipboard),
(gnome_calendar_copy_clipboard), (gnome_calendar_paste_clipboard):
new functions for allowing execution of clipboard-related commands
* gui/e-day-view.[ch] (e_day_view_cut_clipboard),
(e_day_view_copy_clipboard), (e_day_view_paste_clipboard): ditto
* gui/e-week-view.[ch] (e_week_view_cut_clipboard),
(e_week_view_copy_clipboard), (e_week_view_paste_clipboard): ditto
2001-06-27 Rodrigo Moya <rodrigo@ximian.com>
* gui/calendar-commands.c (cut_event_cmd),
(copy_event_cmd), (paste_event_cmd): added callbacks for the new
clipboard-related menu entries
svn path=/trunk/; revision=10557
|
|
|
|
|
|
| |
helixcode.com with ximian.com all over the place.
svn path=/trunk/; revision=10440
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-11 Rodrigo Moya <rodrigo@ximian.com>
* gui/e-day-view.[ch]: added cut&paste support, by using a GtkInvisible
widget to manage the clipboard selections.
* gui/e-week-view.[ch]: ditto
svn path=/trunk/; revision=10207
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-28 Damon Chaplin <damon@ximian.com>
* gui/e-week-view-layout.[hc]:
* gui/e-day-view-layout.[hc]: new files to contain layout code split
off from EDayView an EWeekView, so we can use it for printing.
* gui/print.c: rewritten to use the same layout code as the EDayView
and EWeekView widgets.
* gui/gnome-cal.c (gnome_calendar_get_task_pad_cal_client): added
function so we can get the CalClient used for the TaskPad for printing.
* gui/Makefile.am (evolution_calendar_SOURCES): added
e-day-view-layout.[hc] amd e-week-view-layout.[hc].
* cal-util/timeutil.c (time_week_begin):
(time_week_end): added week_start_day argument.
* cal-util/cal-recur.c: added comments describing problems in it.
svn path=/trunk/; revision=10037
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-12 Federico Mena Quintero <federico@ximian.com>
* gui/e-day-view.c (update_query): New function to restart a query
for the day view.
(query_obj_updated_cb): Renamed from obj_updated_cb(); updated for
queries instead of calendar clients.
(query_obj_removed_cb): Likewise.
(cal_opened_cb): Just update_query() instead of queueing reloading
all the events.
(e_day_view_set_cal_client): Likewise.
(e_day_view_set_query): Likewise.
(e_day_view_set_selected_time_range): Likewise.
(e_day_view_set_days_shown): Likewise.
(e_day_view_recalc_work_week): Likewise.
(e_day_view_queue_reload_events): Removed function now that events
are updated entirely by the query.
(e_day_view_reload_events_idle_cb): Likewise.
(e_day_view_reload_events): Likewise.
(e_day_view_init): Use a pretty arrow instead of GDK_TOP_LEFT_ARROW.
* gui/e-week-view.c: Analogous changes to the ones in e-day-view.c.
(e_week_view_init): Use a pretty arrow instead of GDK_TOP_LEFT_ARROW.
* cal-util/timeutil.c (isodate_from_time_t): Return a g_strdup()ed
version of the string instead of a pointer to a static buffer.
(time_from_isodate): Resurrected function. Polished up to our
current standards of paranoia.
* pcs/query.c (func_time_now): New function (time-now).
(func_make_time): New function (make-time ISODATE).
(func_time_add_day): New function (time-add-day TIME N).
(func_time_day_begin): New function (time-day-begin TIME).
(func_time_day_end): New function (time-day-end TIME).
(func_occur_in_time_range): Use time_t values instead of ints.
(match_component): Free the stringized component. Free the ESexp
result value.
* gui/e-day-view.h: Removed a couple of unused prototypes.
* pcs/query.c (query_destroy): Oops, disconnect from the backend.
* pcs/cal.c (Cal_get_query): Duplicate the query reference before
we return it.
* gui/calendar-commands.c (pixmaps): Fixed paths to image files.
svn path=/trunk/; revision=9266
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-12-11 Damon Chaplin <damon@helixcode.com>
* gui/event-editor.c: added changed flags and added calls to a new
function event_editor_set_changed() to set & reset this flag.
Added prompt_to_save_changed() which is called when the user
selects File/Close or the window's close button.
Fixed the 'All day event' toggle button.
Made the 'Alarm' page sensitive as appropriate when filling widgets.
(Though note that the alarm widgets are not being set yet.)
* gui/dialogs/task-editor.c: added changed flag as above.
* gui/event-editor-dialog.glade: used good names for all the
classification radio buttons so we can access them in the code.
* gui/event-editor.c (init_widgets): use the "show week numbers" config
option in the recurrence preview calendar.
* gui/e-day-view.c (e_day_view_update_event_label): use 9:00 instead
of 09:00 in the main view, as we do everywhere else now. It means the
times won't line up, but they are easier to read which I think is
better.
Added support for Page Up/Down, though I think it should move the
selection rather than just scroll the canvas.
* cal-util/cal-recur.c (generate_instances_for_chunk): removed the
end parameter since we should be using the chunk end time now.
Added single_rule parameter for when we are generating the
occurrences of a single RRULE, in which case the event's start date is
not included in the occurrences output (unless it results from the
RRULE expansion). Both of these fix problems when using COUNT.
* gui/gnome-cal.c (gnome_calendar_on_date_navigator_selection_changed):
fixed bug when checking if the new start day starts on the week start
day. If you select a complete week it should now show the Week view.
svn path=/trunk/; revision=6896
|
|
|
|
|
|
|
|
|
|
|
| |
2000-11-28 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view*.[hc]:
* gui/e-week-view*.[hc]: finished 12-hour support and tried to tidy
up & comment the drawing code in places. Also fixed a couple of bugs I
spotted. All the options on the 'Calendar' page should now work.
svn path=/trunk/; revision=6706
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-11-26 Damon Chaplin <damon@helixcode.com>
* gui/gnome-cal.c: added more support for config settings.
* gui/e-week-view.[hc]:
* gui/e-day-view.[hc]: added support for setting - show event end
times, week start day and 12-hour format (unfinished).
* gui/e-day-view-time-item.c: started 12-hour support.
* gui/tag-calendar.c (prepare_tag): use end_day + 1 since we want to
include the last day.
* gui/event-editor.c (set_all_day): minor change when turning all_day
off - set the event end to one hour after the event start if it is on
or before the start time. Also added more comments to make it a bit
clearer.
* cal-util/cal-recur.c (cal_obj_time_add_days): use a gint for day
rather than a guint since we now support -ve days.
Also fixed bug with weekly recurrences.
* gui/dialogs/task-editor.c (task_editor_create_date_edit): use
config settings.
* gui/dialogs/cal-prefs-dialog.c (cal_prefs_dialog_update_config):
updated EDateEdit calls.
svn path=/trunk/; revision=6675
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-10-11 Damon Chaplin <damon@helixcode.com>
* gui/main.c (main): call calendar_config_write_on_exit() to write
out some special config settings (as the mail component does).
* gui/calendar-commands.c (properties_cmd): changed to use the new
preferences dialog.
(update_all_config_settings): new function to iterate over all the
calendars and update the config settings.
* gui/dialogs/cal-prefs-dialog.glade: preferences dialog.
* gui/dialogs/cal-prefs-dialog.[hc]: new files for the preferences
dialog.
* gui/calendar-config.[hc]: new files to handle loading/saving config
settings.
* cal-util/cal-recur.c: fixed bug in YEARLY when no filters were set,
plus minor changes.
* cal-util/test-recur.c: updated.
* gui/e-day-view-time-item.c:
* gui/popup-menu.c: update to #include <gal/widgets/e-gui-utils.h>
* gui/component-factory.c (owner_set_cb): called calendar_config_init.
(owner_set_cb):
(owner_unset_cb): updated the prototypes.
* gui/main.c (main): added call to calendar_config_write_on_exit().
* gui/component-factory.h:
* gui/component-factory.c (owner_set_cb): added global evolution_dir
just like the mail component, so we know we to store config stuff.
svn path=/trunk/; revision=5856
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-10-05 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view.c:
* gui/e-week-view.c: when the user types in a new event, don't create
it until the user hits Return or switches focus. Removed the
editing_new_event flags.
* cal-util/test-recur.c: rewritten to work on ics files. Now I can
start testing the recurrence code.
* cal-util/cal-recur.c: a few fixes.
* gui/e-day-view.c (e_day_view_check_if_new_event_fits): fixed to
return TRUE for long events, not FALSE.
svn path=/trunk/; revision=5729
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-09-29 Damon Chaplin <damon@helixcode.com>
* cal-util/cal-recur.c: updated to support RDATE end times or
durations. Note that if you have two RDATEs with the same start times,
but with different end dates/durations set, the results are
unpredictable. So the event editor dialog should check for this.
* gui/e-week-view-main-item.c (e_week_view_main_item_draw_day):
make strftime() strings translatable, and changed the formats a bit.
* NOTE: someone needs to check print.c to make sure strftime strings
are OK for i18n.
* gui/e-day-view.h: Changed EDayViewDateFormat enum. We now try to
include the weekday if possible. Also changed EDayView struct so we
store the month & weekdays with the longest names rather than the
actual widths. This helps i18n.
* gui/e-day-view.c (e_day_view_recalc_cell_sizes): used _() for
strftime strings, tried to see if weekday fits, and rearranged a
bit to make i18n easier.
* gui/e-day-view-top-item.c (e_day_view_top_item_draw): used _() for
strftime strings, and updated to use new formats.
* gui/calendar-model.c: added use_24_hour_format boolean to
CalendarModelPrivate so we can display dates in 12-hour format if
requested. This meant adding a CalendarModel argument to a few
functions. Also added get/set functions to set use_24_hour_format.
I suppose ideally we should have an ECellDate renderer and this option
should go there.
svn path=/trunk/; revision=5646
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-29 Federico Mena Quintero <federico@helixcode.com>
Now the views monitor the client by themselves; it does not make
sense to proxy all notifications through the GnomeCal. The
GnomeCal should just be a meta-widget that holds all the views.
At some later point we'll want to decouple the views from the
GnomeCal so that they can be embedded anywhere; they should emit
signals to request appropriate actions from the toplevel GUI
instead of calling the GnomeCal directly.
* gui/e-day-view.c (e_day_view_set_cal_client): New function; now
the day view monitors the client by itself.
(cal_loaded_cb): New callback; moved over from
e_day_view_update_all_events().
(obj_updated_cb): New callback; moved over from
e_day_view_update_event().
(obj_removed_cb): New callback; moved over from
e_day_view_remove_event().
(e_day_view_update_all_events): Removed function.
(e_day_view_update_event): Removed function.
(e_day_view_remove_event): Removed function.
(*): Use the day_view->client directly instead of fetching it from
the GnomeCal.
(e_day_view_destroy): Unref the client.
(e_day_view_reload_events): Check if the client is loaded.
(e_day_view_key_press): Set the vtype of the new component.
* gui/e-week-view.c (e_week_view_set_cal_client): New function.
(cal_loaded_cb): New callback.
(obj_updated_cb): New callback.
(obj_removed_cb): New callback.
(e_week_view_update_all_events): Removed function.
(e_week_view_update_event): Removed function.
(e_week_view_remove_event): Removed function.
(*): Use the week_view->client directly.
(e_week_view_destroy): Unref the client.
(e_week_view_reload_events): Check if the client is loaded.
* gui/gnome-cal.c (setup_widgets): Set the cal_client on all the
views.
(gnome_calendar_update_all): Do not update the views, since now
they do it themselves.
(gnome_calendar_object_updated_cb): Likewise.
(gnome_calendar_object_removed_cb): Likewise.
(setup_widgets): Remove all to-do list cruft.
(gnome_calendar_colors_changed): Likewise.
(gnome_calendar_todo_properties_changed): Likewise.
* gui/calendar-commands.h (todo_style_changed): Removed variable.
* gui/gncal-todo.c: Removed old clist cruft; just left in the
temporary dialog box for now.
svn path=/trunk/; revision=5105
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-08-21 JP Rosevear <jpr@helixcode.com>
* gui/e-day-view.c
(e_day_view_update_event): Use CalComponent
instead of iCalObject. Work around not having a compare
dates routine for two CalComponents.
(e_day_view_reshape_long_event): Use CalComponent instead
of iCalObject, #if some alarm stuff
(e_day_view_reshape_day_event): ditto
(e_day_view_reload_events): Use revamped CalClient
(e_day_view_update_event_cb): Use CalComponent
instead of iCalObject
(e_day_view_foreach_event_with_uid): ditto
(e_day_view_remove_event_cb): ditto
(e_day_view_update_event_label): ditto
(e_day_view_find_event_from_uid): ditto
(e_day_view_on_event_click): ditto
(e_day_view_on_event_right_click): ditto
(e_day_view_on_new_appointment): ditto
(e_day_view_on_edit_appointment): ditto
(e_day_view_on_delete_occurrence): ditto
(e_day_view_on_delete_appointment): ditto
(e_day_view_on_unrecur_appointment): ditto
(e_day_view_on_top_canvas_motion): ditto
(e_day_view_on_main_canvas_motion): ditto
(e_day_view_finish_long_event_resize): ditto
(e_day_view_finish_resize): ditto
(e_day_view_free_event_array): ditto
(e_day_view_add_event): ditto
(e_day_view_key_press): ditto
(e_day_view_on_editing_stopped): ditto
(e_day_view_update_top_canvas_drag): ditto
(e_day_view_update_main_canvas_drag): ditto
(e_day_view_on_drag_data_get): ditto
(e_day_view_on_top_canvas_drag_data_received): ditto
(e_day_view_on_main_canvas_drag_data_received): ditto
svn path=/trunk/; revision=4900
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-06-21 Damon Chaplin <damon@helixcode.com>
* gui/gnome-cal.c (gnome_calendar_direction): changed so it keeps the
selection range. It just moves it on one day/week etc. This makes
it very handy for the keyboard shortcut code.
* gui/calendar-commands.c (calendar_control_activate): fixed bug
setting the radio button active.
* gui/e-day-view.[hc]: added support for keyboard navigation and
selection of the time range.
svn path=/trunk/; revision=3665
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-07 Damon Chaplin <damon@helixcode.com>
* gui/e-day-view.c (e_day_view_on_main_canvas_drag_data_received):
(e_day_view_on_top_canvas_drag_data_received): show the EText item,
just in case it hasn't moved, otherwise it won't appear.
* gui/e-day-view.h (E_DAY_VIEW_BAR_WIDTH): increased from 6 to 8 to
make it easier to drag an event. Also increased E_DAY_VIEW_GAP_WIDTH
since it must be >= the BAR_WIDTH.
svn path=/trunk/; revision=2878
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-01 Damon Chaplin <damon@helixcode.com>
* gui/gnome-cal.[hc] (gnome_calendar_get_current_time_range): new
function to get the currently seleted time range form the current view.
* gui/calendar-commands.c (display_objedit): use the above function
to get the time for the new appointment.
* gui/e-week-view.c:
* gui/e-day-view.c: use a shallow copy of the ico when we update the
times (when resizing/dragging). Otherwise we won't detect that the
time has changed in the "update_event" callback.
Also added functions to get the currently selected time range.
svn path=/trunk/; revision=2712
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|