2003-03-18 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-table-model.c
(e_select_names_table_model_col_count): up the column count by one
for the underline.
(e_select_names_table_model_value_at): add handling for underline.
svn path=/trunk/; revision=20355
2003-03-18 Chris Toshok <toshok@ximian.com>
* gui/component/e-address-popup.c (email_menu_add_option): fix use
of deprecated gtk_menu_append.
(card_picker_selection_changed): change this to be used with the
"changed" signal on GtkTreeSelection.
(free_str): yeah, gross. i know.
(card_picker_init): this needed some fixing, so the strings don't
go away after we insert them into the model. also, connect to the
"changed" GtkTreeSelection signal instead of using the nonexistant
gtk_tree_selection_set_func.
(e_address_popup_construct): gtk_style_unref -> g_object_unref.
(popup_size_allocate_cb): nuke.
(e_address_popup_ambiguous_email_add): use gtk_window_set_position
and let the window manager place the window instead of doing it
ourself.
svn path=/trunk/; revision=20352
2003-03-18 Chris Toshok <toshok@ximian.com>
[ Fixes addressbook bug #39730 ]
* gui/component/ldap-config.glade: add response ids to the search
base dialog.
* gui/component/addressbook-config.c
(addressbook_source_dialog_destroy): use g_object_unref, not
gtk_widget_destroy, on the GladeXML.
(addressbook_add_server_druid): call gtk_window_set_type_hint
GDK_WINDOW_TYPE_HINT_DIALOG so this window looks like a dialog.
(editor_modify_cb): no more apply button.
(edit_dialog_apply_clicked): nuked.
(edit_dialog_close_clicked): rename to _cancal_clicked.
(edit_dialog_ok_clicked): call gtk_widget_destroy here instead of
calling _cancel_clicked.
(addressbook_edit_server_dialog): no more apply button, and
close_button -> cancel_button. Also, set the hint to
GDK_WINDOW_TYPE_HINT_DIALOG.
(ldap_dialog_new): fix compiler warning.
(addressbook_dialog_create_sources_table): same.
svn path=/trunk/; revision=20351
2003-03-18 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-section.etspec: use
alternating-row-colors="false"
* gui/component/select-names/e-select-names.h: nuke prototypes for
e_select_names_get_source/section.
* gui/component/select-names/e-select-names.c (set_book): remove
the signal disconnect from here.
(addressbook_model_set_uri): same.
(e_select_names_init): connect to the search_result signal on the
addressbook model.
(e_select_names_child_free): disconnect the changed_id signal.
(e_select_names_add_section): set the underline column so the
recipient tables look like they did when they were EEntry.
(e_select_names_add_section): store off the changed_id.
(e_select_names_get_section): nuke.
(e_select_names_get_source): nuke.
svn path=/trunk/; revision=20345
2003-03-18 Not Zed <NotZed@Ximian.com>
* gui/component/select-names/e-select-names.c (set_book,
addressbook_model_set_uri): disconnect/keep track of search result
signal id.
(e_select_names_init): Keep track of various signals, particularly
status signal.
(e_select_names_dispose): disconnect from any signals that are
still active. Fixes crash for #38202.
svn path=/trunk/; revision=20334
2003-03-12 Chris Toshok <toshok@ximian.com>
[ fixes bug #20210 ]
* gui/component/select-names/e-select-names-popup.c
(popup_menu_card): change "Edit Contact Info" to "View Contact
Info", as you can't always edit the contact (if the book is read
only).
(popup_menu_list): same, but for a contact list.
svn path=/trunk/; revision=20270
2003-03-11 Chris Toshok <toshok@ximian.com>
[ fixes bug #39507 ]
* gui/component/select-names/e-select-names.c (search_result): new
function, sync the models after we do a search.
(addressbook_model_set_uri): connect to search_result.
svn path=/trunk/; revision=20260
2003-03-11 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names.c
(e_select_names_init): fix compiler warnings about deprecated
functions.
(e_select_names_child_free): unref the table model.
(remove_address): re-enable.
(section_right_click_cb): this is an ETable callback now.
(e_select_names_add_section): remove a gross gross awful hack, and
make the recipient tables ETables instead EEntry's. We lose the
nice underlining, but we can add that back in as another ETable
style (like strikeout and bold), and we also fix the longstanding
scrolling problems (like bug #25148) and can finally remove
addresses by double clicking on them (which is also a bug
someplace I think.. dunno the # offhand.)
* gui/component/select-names/e-select-names-table-model.c
(clear_info): always set the count to -1, regardless of what
model->data is.
* gui/component/select-names/e-select-names-model.c: remove some
unused enums.
* gui/component/select-names/Makefile.am (etspec_DATA): add
e-select-names-section.etspec
* gui/component/select-names/e-select-names-section.etspec: new
file, spec for the To:/Cc:/Bcc: etable's in the select-names
dialog.
svn path=/trunk/; revision=20259
2003-03-05 Not Zed <NotZed@Ximian.com>
* gui/component/addressbook-component.c (bonobo_main_quit_cb):
removed.
(owner_unset_cb): Basically a noop, the shell does the quit, we
just note we have no owner anymore.
svn path=/trunk/; revision=20164
2003-03-04 JP Rosevear <jpr@ximian.com>
Fixes#37881
* gui/component/select-names/e-simple-card-bonobo.c
(impl_SimpleCard_get): if we get a null value, send back the empty
string
svn path=/trunk/; revision=20159
remove the widget from the container using gtk_container_remove().
This fixes a bunch of crashers in all the places using the
ESelectNames widget/control.
svn path=/trunk/; revision=20127
* gui/contact-editor/Makefile.am: Build libecontacteditor as an
uninstalled shared library.
* gui/contact-list-editor/Makefile.am: Likewise for
libecontactlisteditor
* gui/merging/Makefile.am: and libecardmerging
* gui/search/Makefile.am: and libeaddressbooksearch
* gui/widgets/Makefile.am: and libeminicard
* printing/Makefile.am: and libecontactprint
* gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
Update for new library names (and get rid of libtool portability
warnings).
svn path=/trunk/; revision=20112
2003-02-27 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook.c (book_open_cb): use g_signal_connect
here, not swapped... although since we pass the widget as the
closure it really doesn't matter.
(load_uri_auth_cb): use a GtkDialog here.
(search_result): same.
* gui/component/select-names/e-simple-card-bonobo.h: add prototype
for e_simple_card_bonobo_construct to fix warning.
* gui/widgets/e-addressbook-view.c (create_alphabet): remove call
to gtk_widget_set_usize.
* gui/contact-editor/e-contact-editor-address.c
(e_contact_editor_address_init): gtk_window_set_policy =>
gtk_window_set_resizable.
* gui/contact-editor/e-contact-editor-fullname.c
(e_contact_editor_fullname_init): same.
svn path=/trunk/; revision=20095
2003-02-26 Chris Toshok <toshok@ximian.com>
* backend/ebook/e-book.c (e_book_load_uri): if we fail to activate
factories for a given protocol, return.
* gui/component/ldap-config.glade: remove the two unused custom
widgets to cut down on gtk warning spam.
svn path=/trunk/; revision=20080
* gui/component/Makefile.am:
* gui/contact-editor/Makefile.am:
* gui/contact-list-editor/Makefile.am:
* gui/search/Makefile.am:
* gui/widgets/Makefile.am:
* printing/Makefile.am: Build the subparts as (noinst) shared
libraries rather than static libraries, so they can be portably
linked into libevolution-addressbook.so
svn path=/trunk/; revision=19963
2003-02-19 Chris Toshok <toshok@ximian.com>
[ fix#38074 ]
* gui/component/e-address-popup.c (add_contacts_cb): first arg is
a GtkWidget. duh.
svn path=/trunk/; revision=19952
2003-02-17 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-completion.c
(e_select_names_completion_start_query): if we can complete solely
from our cached cards, call e_completion_end_search from here when
we're done.
svn path=/trunk/; revision=19925
2003-02-09 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-completion.c
(sexp_initials): gone.
(match_initials): gone.
(book_query_sexp): remove the primary handling.
(book_query_score): same.
* backend/ebook/e-card.c (e_card_set_property):
g_value_get_pointer => g_value_get_object for "category_list".
* backend/ebook/e-book.c (struct _EBookPrivate): add a comment.
* backend/pas/pas-backend-ldap.c (func_beginswith): performance at
the cost of a tiny bit of correctness. If the ldap server doesn't
support evolutionPerson don't query on fileAs, use sn (since
that's effectively what gets used in the display when fileAs isn't
supported.)
svn path=/trunk/; revision=19863
2003-02-09 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-completion.c: lots of
changes here. should be a big performance gain. god i hope this
is finally right.
svn path=/trunk/; revision=19860
2003-02-08 Chris Toshok <toshok@ximian.com>
[ huge change, all for 1 little performance problem :) fixes#18207 ]
* gui/widgets/e-addressbook-model.c (get_view): use
e_book_check_static_capability here to make things a little
prettier.
(remove_card): complain about my life, and add code to use one
"model_changed" signal if we get back a list of cards instead of
multiple "card_removed" signals.
* gui/widgets/e-addressbook-model.h: little clean up.
* gui/widgets/e-addressbook-view.c (delete): write a bulk-remove
case for this. if the backend supports it, send all the ids at
once. otherwise loop over the ids.
(e_addressbook_view_delete_selection): fake a CardAndBook
structure and call delete, instead of duplicating the code in 2
places.
* gui/component/addressbook.c (delete_contact_cb): don't call
e_contact_editor_confirm_delete here, it's handled by the
EAddressbookView.
* backend/pas/pas-card-cursor.c (pas_card_cursor_construct): fix a
compiler warning about a stupid crash.
* backend/pas/pas-book.h (PASOperation): RemoveCard ->
RemoveCards.
(PASRemoveCardsReques): char *id -> GList *ids.
(PASRequest): PASRemoveCardRequest -> PASRemoveCardsRequest.
* backend/pas/pas-book.c (pas_book_queue_remove_cards): build up a
GList from the id sequence.
(pas_book_respond_remove): notifyCardRemoved ->
notifyCardsRemoved.
(impl_GNOME_Evolution_Addressbook_Book_removeCards): rename.
(pas_book_free_request): free the idlist for RemoveCards.
(pas_book_class_init): removeCard -> removeCards.
* backend/pas/pas-book-view.h: change prototype for
pas_book_view_notify_remove, and add prototype for
pas_book_view_notify_remove_1.
* backend/pas/pas-book-view.c (pas_book_view_notify_remove_1):
build up a list and call pas_book_view_notify_remove.
(pas_book_view_notify_remove): build up the corba id sequence and
call BookViewListener::notifyCardsRemoved.
* backend/pas/pas-backend.h: remove_card -> remove_cards.
* backend/pas/pas-backend.c (pas_backend_remove_cards): rename
from _remove_card.
(process_client_requests): RemoveCard -> RemoveCards and
_remove_card -> _remove_cards.
* backend/pas/pas-backend-ldap.c (check_schema_support):
g_strcasecmp -> g_ascii_strcasecmp.
(remove_card_handler): _remove => _remove_1.
(modify_card_modify_handler): same.
(pas_backend_ldap_process_remove_cards): rename from _remove_card.
(pas_backend_ldap_class_init): _remove_card -> _remove_cards.
* backend/pas/pas-backend-file.c (pas_backend_file_class_init):
remove_card -> remove_cards.
(pas_backend_file_get_static_capabilities): add "bulk-removes".
(pas_backend_file_process_remove_cards): rewrite this function
largely, so that it handles lists of ids. first we loop through
and for every successful deletion we build a list of deleted
ECards. Then for each view we build a list (a subset of the
deleted ECard list) and pass back that list to the view.
(pas_backend_file_process_modify_card): use _remove_1 instead of
_remove.
(ecard_matches_search): new function.
* backend/pas/pas-backend-card-sexp.c
(pas_backend_card_sexp_match_vcard): rewrite in terms of
_match_ecard.
(pas_backend_card_sexp_match_ecard): new function, the guts from
_match_vcard.
* backend/pas/pas-backend-card-sexp.h: add prototype for
pas_backend_card_sexp_match_ecard.
* backend/idl/addressbook.idl: the card removal stuff now takes
CardIdList.
* backend/ebook/e-book.c (e_book_get_static_capabilities): cache
successful capability queries (since they're static).
(e_book_check_static_capability): new, convenience function to
check if a particular capability is supported.
(e_book_remove_card_by_id): build a single element GList and call
e_book_remove_cards.
(e_book_remove_cards): build up a CORBA sequence from the GList
and call Book::removeCards.
(e_book_dispose): free the cached capabilities string.
* backend/ebook/e-book.h: add new prototypes for
e_book_check_static_capability and e_book_remove_cards.
* backend/ebook/e-book-view.h (struct _EBookViewClass): rename
"card_removed" signal to "cards_removed".
* backend/ebook/e-book-view.c (e_book_view_do_removed_event): id
-> ids, and free the id list.
(e_book_view_check_listener_queue): CardRemovedEvent ->
CardsRemovedEvent.
* backend/ebook/e-book-view-listener.c
(e_book_view_listener_queue_response): free the id list.
(e_book_view_listener_queue_idlist_event): new function, used for
cards_removed.
(e_book_view_listener_queue_status_event): id -> ids.
(e_book_view_listener_queue_sequence_event): same.
(e_book_view_listener_queue_message_event): same.
(impl_BookViewListener_notify_cards_removed): call
queue_idlist_event.
(e_book_view_listener_dispose): free the id list.
(e_book_view_listener_class_init): track change to idl call.
* backend/ebook/e-book-view-listener.h
(EBookViewListenerOperation): CardRemovedEvent ->
CardsRemovedEvent.
(EBookViewListenerResponse): char *id -> GList *ids.
* backend/ebook/e-book-listener.c
(impl_BookListener_respond_r
svn path=/trunk/; revision=19854
2003-02-06 Chris Toshok <toshok@ximian.com>
* gui/component/e-address-popup.c (email_table_save_card_cb):
check the status, not the book, and unref the book here.
(contact_editor_cb): same.
(start_query): unref the book in the failure case.
(add_card_idle_cb): addressbook_load_default_book returns void
now.
(edit_contact_info_cb): same.
(e_address_popup_query): same.
* gui/component/addressbook.c (control_activate_cb): track change
to addressbook_load_uri return type.
(set_prop): same.
(addressbook_load_uri): return type is void now.
(addressbook_load_default_book): same.
* gui/component/addressbook.h:
addressbook_load_uri/addressbook_load_default_book return void
now.
* conduit/address-conduit.c (start_addressbook_server):
e_book_load_default_book returns void now.
* backend/ebook/e-book-util.h: track changes to return types.
* backend/ebook/e-book-util.c (e_book_load_address_book_by_uri):
fallout from change to e_book_load_uri. return type for this
function is void now too.
(e_book_use_address_book_by_uri): same.
(e_book_use_default_book): same.
(e_book_load_default_book): same.
(got_uri_book_cb): if unsuccessful and book is non-NULL, unref it
here.
(got_default_book_cb): same.
* backend/ebook/e-book.c (e_book_load_uri): no longer return a
gboolean. any error is communicated to the callback.
* backend/ebook/e-book.h: e_book_load_uri no longer returns a
gboolean (it's void.)
* backend/ebook/evolution-ldif-importer.c (ebook_create): track
change to the e_book_load_uri family of functions.
* backend/ebook/test-client-list.c (ebook_create): same.
* backend/ebook/test-client.c (ebook_create): same.
* backend/ebook/load-pine-addressbook.c (ebook_create): same.
* backend/ebook/evolution-vcard-importer.c (ebook_create): same.
svn path=/trunk/; revision=19839
* backend/ebook/Makefile.am (e-book-marshal.c, e-book-marshal.h):
Use different tmp file names so these rules can be executed in
parallel without interfering with each otehr.
* backend/pas/Makefile.am: Make the ORBit compilation work
properly with parallel makes (i.e. make sure it does not spawn
multiple orbit-idl processes on the same IDL file at the same
time).
* gui/component/select-names/Makefile.am: Likewise.
* backend/ebook/Makefile.am: Likewise.
svn path=/trunk/; revision=19834
2003-02-03 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook-component.c (remove_folder): pull
forward Jack Jia's fix for #33672, but convert it to use unlink
instead of the gnome-vfs stuff.
svn path=/trunk/; revision=19721
2003-01-26 Chris Toshok <toshok@ximian.com>
* gui/component/Makefile.am (componentdir): need to assign this
here or else the lib doesn't get built.
svn path=/trunk/; revision=19634
* gui/component/select-names/Makefile.am (componentdir): Remove
definition; no need to set it here since it's now defined in
configure.in
* gui/component/Makefile.am (componentdir): Likewise.
svn path=/trunk/; revision=19594
* configure.in (idldir): Define componentdir instead of
COMPONENT_DIR. Set it to $privlibdir/components instead of
$libdir/evolution-$(BASE_VERSION)/components.
* gui/component/select-names/Makefile.am (componentdir): Remove
definition; no need to set it here since it's now defined in
configure.in
* gui/component/Makefile.am (componentdir): Likewise.
* gui/Makefile.am (componentdir): Removed definition; this is now
defined in configure.in.
* Makefile.am (componentdir): Removed definition; this is now
defined in configure.in.
* Makefile.am (componentdir): Removed definition; this is now
defined in configure.in.
svn path=/trunk/; revision=19588
* gui/component/select-names/Makefile.am (gladedir): Version using
$(BASE_VERSION).
(etspecdir): Likewise.
(iconsdir): Likewise.
* gui/contact-list-editor/Makefile.am (iconsdir): Version using
$(BASE_VERSION).
(gladedir): Likewise.
* gui/merging/Makefile.am (gladedir): Version using $(BASE_VERSION).
* gui/search/Makefile.am (ruledir): Version using $(BASE_VERSION).
* gui/component/Makefile.am (INCLUDES): Update EVOLUTION_IMAGESDIR
to be versioned through $(BASE_VERSION).
* gui/widgets/e-addressbook-view.c (init_collection): Use
EVOLUTION_GALVIEWSDIR.
* gui/widgets/Makefile.am (INCLUDES): Define EVOLUTION_GALVIEWSDIR
and update EVOLUTION_IMAGESDIR.
svn path=/trunk/; revision=19551
* gui/widgets/e-addressbook-util.c
(e_addressbook_prompt_save_dialog): Change dialog from
Yes/No/Cancel to Discard/Cancel/Save to match the HIG.
* gui/search/e-addressbook-search-dialog.c
(e_addressbook_search_dialog_init): Change dialog from OK/Cancel
to Cancel/OK to match the HIG.
* gui/contact-editor/e-contact-save-as.c (file_exists): Change
dialog from Overwrite/Cancel to Cancel/Overwrite to match the HIG.
* gui/contact-editor/e-contact-quick-add.c
(build_quick_add_dialog): Fix typo s/reponse/response/. Also
change the dialog to be Edit/Cancel/OK instead of OK/Edit/Cancel
to match the HIG.
* gui/contact-editor/e-contact-editor.c
(e_contact_editor_confirm_delete): Make alert cancel/delete
instead of delete/cancel to match the HIG.
* gui/contact-editor/e-contact-editor-fullname.c
(e_contact_editor_fullname_init): Make dialog Cancel/OK instead of
OK/Cancel to match the HIG.
* gui/contact-editor/e-contact-editor-address.c
(e_contact_editor_address_init): Make dialog Cancel/OK instead of
OK/Cancel to match the HIG.
* gui/component/select-names/e-select-names.c
(e_select_names_init): Make dialog Cancel/OK instead of OK/Cancel
to match the HIG.
svn path=/trunk/; revision=19472
* gui/component/Makefile.am (EXTRA_DIST): Add $(schema_DATA).
* Makefile.am: Do not dist the .server.in files; just dist the
.server.in.in ones.
(EXTRA_DIST): Add GNOME_Evolution_WombatLDAP.server.in.in and
GNOME_Evolution_WombatNOLDAP.server.in.in
svn path=/trunk/; revision=19451
2003-01-09 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook.c (control_activate_cb): try to load
the uri again if it failed previously.
(book_open_cb): set failed_to_load based on the response.
(set_prop): initialize failed_to_load to FALSE before we kick off
the first load.
* backend/pas/pas-book-factory.c
(pas_book_factory_process_request): if the load_uri fails, remove
it from the hashtable and free it, so we'll try to load it again
from scratch the next time it's requested instead of serving up a
backend that doesn't function.
* backend/pas/pas-backend.c (pas_backend_get_uri): we need to be
able to get the uri from backends that aren't loaded (so we can
remove them from the hashtable.)
svn path=/trunk/; revision=19392
2003-01-09 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-bonobo.c
(e_select_names_bonobo_new): call e_select_names_bonobo_construct
on the newly created object.
svn path=/trunk/; revision=19384
2003-01-09 Chris Toshok <toshok@ximian.com>
* gui/component/Makefile.am: addressbook-config.etspec is gone.
* gui/component/addressbook-config.c: make the sources table be a
gtktreeview instead of an etable.
* gui/component/ldap-config.glade: remove all references to
gnome-hint.png
svn path=/trunk/; revision=19380
2003-01-09 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/GNOME_Evolution_Addressbook_SelectNames.server.in.in:
comment out the factory oaf_server, and change the location of the
SelectNames controls to be
OAFIID:GNOME_Evolution_Addressbook_Factory so the normal
addressbook.so will create them.
* gui/component/select-names/Makefile.am
(libeselectnames_la_SOURCES): remove the
e-select-names-factory.[ch] stuff for the time being.
* gui/component/component-factory.c (factory): we're now (for the
time being) the factory for the select names control.
svn path=/trunk/; revision=19369
2003-01-08 Chris Toshok <toshok@ximian.com>
* gui/component/apps_evolution_addressbook.schemas: add in the
schema entry for minimum_query_length.
svn path=/trunk/; revision=19301