2001-05-29 Federico Mena Quintero <federico@ximian.com>
* gui/e-tasks.c (e_tasks_get_calendar_table): New function.
* gui/tasks-control.c (tasks_control_activate): Connect to the
"selection_changed" signal of the tasks widget here, not in
tasks_control_new(). Also, update the sensitivity of the commands
here for the first time.
(tasks_control_deactivate): Disconnect from the signal here since
it only makes sense to monitor selection changes while the control
is active.
(selection_changed_cb): Removed hack that tested the presence of
the remote UI container.
(sensitize_commands): New function.
svn path=/trunk/; revision=10049
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-05-27 Rodrigo Moya <rodrigo@ximian.com>
* gui/component-factory.c (remove_folder): implemented the
'remove_folder' function for the calendar shell component
(xfer_folder): ditto for 'xfer_folder'
svn path=/trunk/; revision=10027
* gui/calendar-commands.c: #include
"evolution-shell-component-utils.h" rather than "e-gui-utils.h"
for e_pixmaps_update.
* gui/tasks-control.c: Likewise.
svn path=/trunk/; revision=10021
2001-05-25 Peter Williams <peterw@ximian.com>
* gui/component/Makefile.am: Reference libeshell.la instead of libeshell.a.
2001-05-25 Peter Williams <peterw@ximian.com>
* gui/Makefile.am: Reference libeshell.la instead of libeshell.a.
2001-05-25 Peter Williams <peterw@ximian.com>
* component/Makefile.am: Reference libeshell.la instead of libeshell.a.
2001-05-25 Peter Williams <peterw@ximian.com>
* Makefile.am: Reference libeshell.la instead of libeshell.a.
2001-05-25 Peter Williams <peterw@ximian.com>
* Makefile.am: Change libeshell from a noinst_LIBRARIES to
a lib_LTLIBRARIES. Install its headers in
$includedir/evolution/shell.
* evolution-storage.c (safe_corba_string): New, copy of e_safe_corba_string
in libeutil. This way libeshell doesn't have a missing symbol when programs
that don't have libeutil link to it.
(evolution_storage_register): s,e_safe_corba_string,safe_corba_string,g.
svn path=/trunk/; revision=10007
2001-05-23 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/recurrence-page.c: Finished porting from the old
event-editor.c. Made it store a clone of the component for when
we need to expand the recurrence set.
2001-05-22 Federico Mena Quintero <federico@ximian.com>
* gui/dialogs/event-page.c (event_page_get_dates): New function.
* gui/dialogs/editor-page.c (editor_page_set_dates): Renamed from
editor_page_set_dtstart(); now sets both DTSTART and DTEND.
* gui/dialogs/alarm-page.c (alarm_page_set_dates): Ahem, it is a
svn path=/trunk/; revision=9953
2001-05-21 Federico Mena Quintero <federico@ximian.com>
Fix bug #2831; the tasks toolbar and menu now have a button to
delete the selected tasks.
* gui/e-calendar-table.c (e_calendar_table_delete_selected): New
function.
(delete_cb): Use e_calendar_table_delete_selected().
(e_calendar_table_get_table): New function.
* gui/tasks-control.c (tasks_control_new_task_cmd): Handle the
delete command.
(selection_changed_cb): Change the sensitivity of the TasksDelete
command when the selection in the table changes.
* gui/e-tasks.c (table_selection_change_cb): Notify upstream when
the ETable selection changes.
svn path=/trunk/; revision=9910
2001-05-18 Federico Mena Quintero <federico@ximian.com>
Fix bug #2829.
* gui/dialogs/delete-comp.c (delete_component_dialog): Allow the
caller to specify whether just one or many components are to be
deleted.
* gui/e-calendar-table.c (tasks_popup_one): Popup menu definition
for when one and only one task is selected.
(tasks_popup_many): Likewise, for more than one task.
(e_calendar_table_on_right_click): Do not create a structure for
the closure data; we can simply pass the cal_table. Use a
different menu depending on the number of selected tasks.
(mark_as_complete_cb): Renamed; now iterates over the selected
rows.
(delete_selected_components): New function to delete all the
selected components.
(delete_cb): Adjusted for delete_component_dialog().
(open_task): New function, simply open a CalComponent in the task
editor.
(open_task_by_row): Renamed; use open_task().
* gui/e-week-view.c (e_week_view_on_delete_appointment): Updated
for delete_component_dialog().
* gui/e-day-view.c (e_day_view_on_delete_appointment): Likewise.
svn path=/trunk/; revision=9886
2001-05-16 Federico Mena Quintero <federico@ximian.com>
Split the event and task editors into different objects for the
separate pages; this way they can be shared by both editors.
* gui/dialogs/editor-page.[ch]: New abstract class for a page in a
calendar component editor.
* gui/dialogs/event-page.[ch]: Main page of an event editor.
* gui/dialogs/alarm-page.[ch]: Alarm page of a calendar component
editor.
* gui/dialogs/recurrence-page.[ch]: Recurrence page of a calendar
component editor.
* gui/dialogs/event-page.c (event_page_fill_widgets): Eeek, this
was missing a bunch of break statements.
(event_page_fill_component): Use a temporary variable rather than
allocating a struct icaltimetype.
* gui/dialogs/alarm-page.c (get_alarm_string): Do not use
fixed-size buffers.
(alarm_page_fill_widgets): Use cal_obj_uid_list_free().
(append_reminder): Now the list stores the plain CalComponentAlarm
structures in the row data. We do *NOT* want to be frobbing the
component's data directly. Rather, we clone the alarms from the
component and maintain them on our own.
(alarm_page_fill_component): Clone the alarms before adding them
to the component so that we maintain the invariant that the alarm
structures in the list did *not* come from the component.
* cal-util/cal-component.c (cal_component_add_alarm): Added
documentation.
(cal_component_remove_alarm): Added documentation.
(cal_component_remove_alarm): Do a lookup in our hash table of
alarms instead of scanning the whole component.
(CalComponentAlarm): Removed the `parent' field, since it was
unused.
(cal_component_free_alarm_uids): Removed function, since
cal_component_get_alarm_uids() is documented so that the user will
know that he must use cal_obj_uid_list_free().
(cal_component_alarm_clone): New function.
svn path=/trunk/; revision=9861
2001-05-08 JP Rosevear <jpr@ximian.com>
* cal-util/cal-component.c (cal_component_alarm_free):
(cal_component_alarm_free): free the alarm component if it doesn't
have a parent, rather than if it does
* gui/Makefile.am: sanitize LD_ADDS and CFLAGS so the libtool
lines are shorter (fixes problem on solaries due to sed)
svn path=/trunk/; revision=9720
2001-05-07 Gediminas Paulauskas <menesis@delfi.lt>
* gui/component/addressbook.c: use define from
widgets/misc/e-filter-bar.h instead of own enumeration and search menu
names.
* gui/component/Makefile.am, gui/component/select-names/Makefile.am:
removed EVOLUTION_VERSION.
2001-05-07 Gediminas Paulauskas <menesis@delfi.lt>
* gui/event-editor.c (make_title_from_comp): conversion summary
from utf8 here, use translated strings as is.
(set_title_from_comp): reflect this, simplify.
* gui/dialogs/task-editor.c: updated copies of above functions here.
* gui/gnome-cal.c: use defines from widgets/misc/e-filter-bar.h for
consistency in "Show all".
svn path=/trunk/; revision=9693
2001-05-04 JP Rosevear <jpr@ximian.com>
* gui/calendar-model.c (calendar_model_append_row): unref the
calcomponent when we're done with it
* cal-util/cal-component.c (cal_component_gen_uid): free the iso
date string when we finish with it
svn path=/trunk/; revision=9670
2001-04-27 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-edit.c (put_property_in_list): remove hardcoded
values
(edit_attendee): ditto, and there are only 4 roles now
* gui/e-meeting-dialog.glade: tweak
* gui/itip-utils.c: There shouldn't be an "other" role
svn path=/trunk/; revision=9616
2001-04-26 JP Rosevear <jpr@ximian.com>
* cal-util/cal-component.c (cal_component_alarm_set_trigger): the
value type should be inited with ICAL_VALUE_* rather than
ICAL_*_VALUE because it is a param argument.
svn path=/trunk/; revision=9611
2001-04-26 Federico Mena Quintero <federico@ximian.com>
* gui/calendar-model.c (get_is_overdue): Replace "<" by "<=" in
the comparison for due dates against the current time. This makes
tasks appear immediately as red when you click Now in the due date
popup field.
This is not a complete solution to the more general problem of
tasks staying the same color even if they become overdue while the
task list remains the same on the screen. This has been logged as
bug #2399.
svn path=/trunk/; revision=9606
* gui/alarm-notify/notify-main.c (funny_trigger_cb): Fixed
Strftime so it uses the locale prefered way to display date/time.
("%x %X" instead of "%Y/%m/%d %H:%M:%S")
svn path=/trunk/; revision=9553
2001-04-21 Gediminas Paulauskas <menesis@delfi.lt>
* gui/calendar-summary.c: translate "Things to do" etc. and convert them
to utf8. Changed some link from helixcode to ximian.
svn path=/trunk/; revision=9491
2001-04-17 Federico Mena Quintero <federico@ximian.com>
* gui/event-editor.c (init_widgets): Connect to the "changed"
signal of the categories entry so that they will be applied
correctly.
(EventEditorPrivate): Added fields for the contacts button and
entry.
(init_widgets): Disable the contacts widgets as we do not support
them yet.
(get_widgets): Get the contacts widgets.
* gui/dialogs/task-editor.c (get_widgets): Get the contacts
button, which was missing.
(init_widgets): Disable the contacts widgets as we do not support
them yet.
* pcs/query.c (matches_text_list): Use e_utf8_strstrcasedecomp()
instead of plain e_utf8_strstrcase().
(matches_summary): Likewise.
svn path=/trunk/; revision=9436
2001-04-17 JP Rosevear <jpr@ximian.com>
* cal-util/cal-component.c (cal_component_alarm_set_action): the
libical action stuff uses enums rather than strings to enumerate
the various actions now
(cal_component_alarm_get_action): ditto
svn path=/trunk/; revision=9429
2001-04-15 Federico Mena Quintero <federico@ximian.com>
* gui/gnome-cal.c (setup_widgets): Create the ESearchBar thingy.
(search_bar_query_changed_cb): Build the different queries based
on the type and string.
* pcs/query.c (backend_obj_updated_cb): Ref the query while we are
notifying the listener so that it will not disappear from under us.
(backend_obj_removed_cb): Likewise.
(process_component_cb): Likewise.
(func_contains): New function to match text fields.
(matches_comment): New function to match comment lists.
(matches_description): New function to match description lists.
(matches_summary): New function to match summaries.
(matches_any): New function to match any text field.
(func_has_categories): New function to match categories.
svn path=/trunk/; revision=9340
Do this everywhere, also fixup CLEANFILES
2001-04-14 Michael Meeks <michael@ximian.com>
* Makefile.am (dist-hook): remove built sources from dist.
svn path=/trunk/; revision=9309
* cal-util/timeutil.c (time_from_isodate): Fix the syntactic bogon
here, and attempt to fix the logical bogon too. (tm_gmtoff and
timezone have opposite signs... I'm assuming Federico tested the
Linux case, so I'm flipping the sign of the BSD case. But maybe he
didn't and it's supposed to be the other way...)
svn path=/trunk/; revision=9300
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-04-11 JP Rosevear <jpr@ximian.com>
* pcs/cal-backend-file.c (cal_backend_file_compute_changes):
prepend to both changes and change_ids when different and mark as
modified, not added
svn path=/trunk/; revision=9246
2001-04-11 Christopher James Lahey <clahey@ximian.com>
* gui/calendar-model.c (calendar_model_append_row): Fix this to
just send the data to the wombat instead of inserting it
ourselves.
svn path=/trunk/; revision=9223
2001-04-11 Gediminas Paulauskas <menesis@delfi.lt>
Display fixes, thanks to Kjartan for finding these.
* gui/event-editor.c: use simple (not e_utf8_) gtk_clist_append for
strings which are never in utf-8.
* dialogs/delete-comp.c (delete_component_dialog): convert only
summary from utf-8 to gtk charset. Translated values are in correct
craset already.
svn path=/trunk/; revision=9219
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
Guided by Jacub Stener's mail, where he explaned which icons were renamed or
added, I added a bunch of new icons to menus, fixed renamed ones. Changed Trash
and Executive summary folder type icons. Fixed art/Makefile.am for these
changes.
Also, pulled icon cache from mailer and moved it to e-util/e-gui-utils.h, made
all components and dialogs use cache and not load pixmaps every time.
Accidentally got a couple of includes fix in, but they won't break anything.
svn path=/trunk/; revision=9092
2001-03-29 Federico Mena Quintero <federico@ximian.com>
Engine for live queries to calendars. A query object watches a
CalBackend in the PCS and is otherwise completely separate from
it; backends need to do nothing to support live queries. Right
now we have the following functions:
(get-vtype)
Returns a string indicating the type of component
(VEVENT, VTODO, VJOURNAL, VFREEBUSY, VTIMEZONE,
UNKNOWN).
(occur-in-time-range? START END)
START - int, time_t start of the time range
END - int, time_t end of the time range
Returns a boolean indicating whether the component
has any occurrences in the specified time range.
* idl/evolution-calendar.idl (Cal::getQuery): New method that
initiates a live query.
(Query): New interface for a handle to a live query.
(QueryListener): New interface for a listener to changes in a live
query.
* pcs/query.[ch]: New files with the live query engine.
* pcs/cal-backend.h (CalBackendClass): Added notification signals
so that the query system can catch them.
(CalBackendClass): New virtual method ::get_load_state().
* pcs/cal-backend.c (cal_backend_opened):
(cal_backend_obj_updated):
(cal_backend_obj_updated): New functions to emit the notification
signals; to be used only by backend implementations.
(cal_backend_get_load_state): New function.
* pcs/cal-backend-file.c (notify_update): Call
cal_backend_obj_updated().
(notify_remove): Call call_backend_obj_removed().
(open_cal): Free the icalcomp if it is not of the correct type.
(cal_backend_file_get_load_state): Implemented new method.
* pcs/cal-backend-db.c (cal_backend_db_update_object): Call
cal_backend_obj_updated().
(cal_backend_db_remove_object): Call cal_backend_obj_removed().
(cal_backend_db_get_load_state): Implemented new method.
* pcs/cal.c (Cal_get_query): Implementation of the ::getQuery()
method.
svn path=/trunk/; revision=9013
001-03-27 Anna Marie Dirks <anna@ximian.com>
* gui/e-itip-control.c: fixed button placement to comply
with gnome standards.
svn path=/trunk/; revision=8983
2001-03-27 Anna Marie Dirks <anna@ximian.com>
* gui/e-itip-control.glade: fixed spacing and label alignment to
comply with gnome standards. Also removed shadows from extraneous
scrolled windows to avoid bevelitous. There are many more changes
that need to happen to this viewer, but they all require a hacker
to do some c-coding, so I will avoid committing them until after the
.10 release.
svn path=/trunk/; revision=8981
2001-03-25 Federico Mena Quintero <federico@ximian.com>
* gui/e-calendar-table.c (e_calendar_table_init): The
model_rows_{inserted,deleted} signals changed names; deal with it.
(e_calendar_table_on_rows_inserted): Updated for new ETable API.
(e_calendar_table_on_rows_deleted): Likewise.
* gui/gnome-cal.h (GnomeCalendarOpenMode): Removed unused enum.
* gui/gnome-cal.c (gnome_calendar_open): Constify.
* gui/calendar-commands.c (calendar_set_uri): Removed function,
since it was just calling gnome_calendar_open().
* gui/control-factory.c (set_prop): Replace usage of
calendar_set_uri() with gnome_calendar_open().
(load_calendar): Likewise.
(calendar_persist_init): Made static.
* gui/e-tasks.c: #include "calendar-config.h"
(e_tasks_update_all_config_settings): We are configuring a table,
not a calendar! Use the appropriate function.
svn path=/trunk/; revision=8928