2000-12-25 Miguel de Icaza <miguel@helixcode.com>
* gal/e-text/e-text.c (e_text_draw): Made the code CanvasItem
correct: the code should not draw at arbitrary positions in the
GdkWindow, it should instead draw from item->x1, item->y1 to
item->y1, item->y2 (Chris, we need to talk about this, I think my
current fix is passable, but might not be fully correct.
Specially the interpretation of the width, height arguments).
(e_text_class_init): Fix name.
(e_text_set_arg): Use correct name.
svn path=/trunk/; revision=7163
2000-12-24 Christopher James Lahey <clahey@helixcode.com>
* message-list.c (filter_date): Changed this to format times in 12
hour time instead of 24 hour time.
svn path=/trunk/; revision=7160
2000-12-23 Jason Leach <jasonleach@usa.net>
* evolution-mail.xml: Added ellipsis to Settings menu
entries that bring up dialogs. Bug #1019.
svn path=/trunk/; revision=7158
2000-12-24 Christopher James Lahey <clahey@helixcode.com>
* message-list.c (filter_date): Changed this to do different
formatting of dates within the last week.
svn path=/trunk/; revision=7157
2000-12-24 Not Zed <NotZed@HelixCode.com>
* providers/imap/camel-imap-search.c (imap_body_contains): Lock
the command channel while searching.
(imap_body_contains): If performing a whole uid search, then add
references to our own summary items, dont look it up in the
folder. This way they can't vanish unexpectedly.
* providers/imap/camel-imap-folder.h (CamelImapFolder): Added a
private field.
* providers/imap/camel-imap-private.h: Added lock for imap
searches.
* Merge from camel-mt-branch.
* providers/imap/camel-imap-folder.c (imap_update_summary): Merge
fix, use the folder->summary.
(imap_get_message_flags, imap_set_message_flags,
imap_get_message_user_flag, imap_set_message_user_flag): Removed
again.
(camel_imap_folder_init): Setup private data/lock.
(imap_finalize): Free private data/search lock.
(imap_search_free): Lock the search_lock.
(imap_search_by_expression): Lock the search lock when using the
search object. Also copy/ref hte summary, rather than getting it
directly.
(imap_refresh_info): Free any info lookups. Use folder->summary
not imap_folder->summary. And lock around commands.
svn path=/trunk/; revision=7150
2000-12-23 Christopher James Lahey <clahey@helixcode.com>
* contact-editor/fullname-strings.h,
contact-editor/fullname.glade: Added Ms. and Miss to the prefix
drop down box. Patch submitted by Martin Hicks <mort@bork.org>.
svn path=/trunk/; revision=7144
2000-12-23 Christopher James Lahey <clahey@helixcode.com>
* message-list.c (filter_date): Changed this to do different
formatting of dates based on the current time.
svn path=/trunk/; revision=7140
2000-12-23 Christopher James Lahey <clahey@helixcode.com>
* message-list.c (message_list_get_layout): Added titles to the
pixbuf columns.
svn path=/trunk/; revision=7139
2000-12-23 Christopher James Lahey <clahey@helixcode.com>
* e-table-col.c, e-table-col.h (etc_destroy): Destroy text and
pixbuf if they exist whether or not is_pixbuf is set.
(e_table_col_new_with_pixbuf): Make new_with_pixbuf take a title
argument which is for when you can't display pixmaps.
* e-table-column-specification.c
(e_table_column_specification_load_from_node): Don't translate the
pixbuf string attribute.
* e-table-sort-info.c, e-table-sort-info.h
(e_table_sort_info_load_from_node): Added a state_version
parameter to the load_from_node function. This lets the loader
specify which version of ETableState is being processed. If it's
less than .05, use the old nested version. If it's greater, use
the new flat version.
(e_table_sort_info_save_to_node): Changed this to store a list of
group and leaf nodes instead of nesting the group nodes and leaf
nodes one inside the other. This is much easier to understand and
requires less typing when creating a new ETableSpecification's
initial ETableState.
* e-table-state.c: Changed the state-version parameter to 0.1.
(e_table_state_load_from_node): Use
e_xml_get_double_prop_by_name_with_default so that we can specify
a state-version default of 0.1 for people writing ETableStates by
hand. Pass the state-version to e_table_sort_info_load_from_node.
* e-table.c (et_col_spec_to_col): Pass the title from the
ETableColumnSpecification to the ETableCol even if it's a pixbuf
column.
svn path=/trunk/; revision=7138
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
2000-12-22 JP Rosevear <jpr@helixcode.com>
* pcs/cal-backend-file.c (cal_backend_file_get_alarms_for_object):
account for the case where there are no alarms, fixes crash
svn path=/trunk/; revision=7134
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
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
* providers/imap/camel-imap-store.c (get_folder_info): When
getting the top-level folder list, include INBOX even if it's not
subscribed. Don't show subscribed folders outside of the given
namespace. Do a better job of pruning the namespace from the
returned folder tree.
svn path=/trunk/; revision=7131
2000-12-21 Federico Mena Quintero <federico@helixcode.com>
Alarm trigger queueing for the GUI part.
* gui/alarm-notify.[ch]: New files with the high-level alarm
notification system; mostly moved over from gnome-cal.c. The
low-level timer stuff is still in alarm.[ch].
* gui/alarm-notify.c (alarm_notify_init): New function to
initialize the alarm notification system.
(alarm_notify_done): New function to shut down the alarm
notification system.
(alarm_notify_add_client): New function to start monitoring a
calendar client for alarm notification.
(alarm_notify_remove_client): New function to stop monitoring a
client.
* gui/alarm.h (AlarmDestroyNotify): Also pass in the alarm ID so
the callback may know which ID is being destroyed.
* gui/alarm.c (clear_itimer): New function.
(pop_alarm): Use clear_itimer().
(alarm_done): New function to shut down the timer system.
(alarm_add): Add some preconditions. Do not call the destroy
notification function if we could not create the alarm.
(alarm_ready): Pass the alarm ID to the destroy notify function.
(alarm_remove): Likewise. Also, add some preconditions.
* gui/gnome-cal.c: Removed the alarm notification functions from
here since they are now in alarm-notify.c.
(gnome_calendar_construct): Register the client with
alarm_notify_add_client().
(gnome_calendar_destroy): Use alarm_notify_remove_client() to
unregister the client.
(obj_updated_cb): Do not do any alarm-related stuff.
(obj_removed_cb): Likewise.
* gui/main.c (main): Shut down the alarm timer system.
(main): Initialize and shut down the alarm notification system.
* gui/Makefile.am (evolution_calendar_SOURCES): Added
alarm-notify.[ch] to the list of sources.
* gui/calendar-model.c (calendar_model_set_cal_client): Only
connect to the "cal_loaded" signal if the client is not already
loaded.
* gui/e-day-view.c (e_day_view_set_cal_client): Likewise.
* gui/e-week-view.c (e_week_view_set_cal_client): Likewise.
* gui/e-itip-control.c (update_calendar): Connect to "cal_loaded"
before issuing the load request.
svn path=/trunk/; revision=7130
2000-12-21 JP Rosevear <jpr@helixcode.com>
* src/libical/icaltime.c: include configure.h because HAVE_TIMEZONE
is used
* acconfig.h: Terminate variable comment so that the variable can
actually be seen
svn path=/trunk/; revision=7122
2000-12-21 JP Rosevear <jpr@helixcode.com>
* conduit/address-conduit.c (cursor_cb): Ref the cards that get put
in the change list
(next_changed_item): util function to get the real next changed item
(compute_status): really compute the status of the record
(local_record_from_uid): Set the id of the temporary card
(check_for_slow_setting): Make this check a little saner
(card_added): Only record the CardObjectChange if the card is not
archived
(card_changed): ditto
(card_removed): ditto
(set_status_cleared): actually clear the status
(for_each_modified): Clean out cruft and use next_changed_item
(add_record): Set the new id properly in our local card copy
(replace_record): handle the case where the record has been deleted
and we need to call add. need to update the changed_hash entry
(delete_record): Don't panic if the card is not found, its already
been deleted.
* backend/pas/pas-backend-file.c (pas_backend_file_book_view_copy):
The change_context no longer has a del_cards member
(pas_backend_file_book_view_free): ditto
(pas_backend_file_process_get_changes): ditto
(pas_backend_file_changes_foreach_key): just record the id
(pas_backend_file_changes): notify_remove needs an id not a vcard
svn path=/trunk/; revision=7120
* providers/imap/camel-imap-search.c: New CamelFolderSearch
subclass that just reimplements body_contains (using the IMAP
SEARCH command). All other kinds of searching are done against the
local summary.
* providers/imap/camel-imap-folder.c (imap_search_by_expression):
Use a CamelImapSearch to do searching.
* providers/imap/camel-imap-utils.c (imap_translate_sexp, etc): No
longer needed.
* camel-folder-search.h: Add missing CAMEL_FOLDER_SEARCH_TYPE
#define
svn path=/trunk/; revision=7119
* mail-display.c (pixbuf_for_mime_type): Deal with the possibility
that we have an icon-filename listed for a MIME type, but the icon
file doesn't actually exist. Also, if gnome-unknown.png can't be
found, fall back. Might fix a crash people have been reporting...
svn path=/trunk/; revision=7118
* camel-stream-buffer.c (camel_stream_buffer_gets): Update the
doc comment: since it always NUL-terminates the buffer, it reads
at most @max-1 bytes, not @max.
* camel-remote-store.c (remote_recv_line): Fix the "did
camel_stream_buffer_gets fill the whole buffer" check. Fixes a bug
when reading lines longer than 1024 characters (eg, IMAP SEARCH
responses in very large folders).
svn path=/trunk/; revision=7117
2000-12-21 Not Zed <NotZed@HelixCode.com>
* filter-message-search.c (filter_message_search): And here too.
* filter-driver.c (filter_driver_finalise): Kind of revert an
accidentally commited patch for e_sexp_unref.
svn path=/trunk/; revision=7108
2000-12-20 JP Rosevear <jpr@helixcode.com>
* conduits/todo/todo-conduit.h: Fix erroneous documentation
* conduits/todo/todo-conduit.c (comp_from_remote_record): if
!is_empty_time rather than is_empty_time
(e_todo_context_new): Return a pointer rather than fill in
a parameter
(e_todo_context_foreach_change): Free just the key
(e_todo_context_destroy): Plug this enormous leakage. I had assumed
i had done this earlier, which isn't too bright when anything beyond
2 minutes ago is fuzzy.
(comp_from_remote_record): Kill warnings
(post_sync): Destroy the map later
(conduit_get_gpilot_conduit): Fix e_todo_context_new params
* conduits/calendar/calendar-conduit.[hc]: Similar to above
svn path=/trunk/; revision=7105
2000-12-20 JP Rosevear <jpr@helixcode.com>
* conduit/address-conduit.c (match): Use my own wrapper
functions instead of trying to *directly* access the the data
structures my self
(post_sync): Put in hack to prevent syncing the same records twice
svn path=/trunk/; revision=7104
2000-12-14 Michael Meeks <michael@helixcode.com>
* evolution-executive-summary.xml: stop executive summary
making the UI flicker when switching to / from it.
svn path=/trunk/; revision=7103