| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-24 Chris Toshok <toshok@ximian.com>
[ #24189 ]
* gui/component/select-names/e-select-names-manager.c
(focus_out_cb): ifdef out the body of this because it only works
with a single completion book. not sure what to do here, but it
doesn't impact most usage scenarios.
(completion_popup_cb): same.
(e_select_names_manager_entry_new): add the books that have been
loaded successfully by the time this entry is created.
(open_book_cb): add the opened book to the entries that have
already been created, and store it in our list so that entries
that are created in the future can catch up.
(read_completion_books_from_db): slurp in the folder list from the
config db and load all the uris.
(uris_listener): listener function - when there's a change it
calls _clear_books on all the created entries, and clears our
list. It then re-reads the books from the db.
(e_select_names_manager_new): create our bonobo listener and call
read_completion_books_from_db.
(e_select_names_manager_init): init completion_books.
(e_select_names_manager_destroy): free our list of
completion_books.
* gui/component/select-names/e-select-names-manager.h: switch from
a single EBook to a GList of completion_books here.
* gui/component/select-names/e-select-names-completion.c
(e_select_names_completion_add_book): deal with the case where
there's an active query (by effectively restarting it.) This is
quite a contrived edge case.
(e_select_names_completion_clear_books): stop the current query
and clear our list of books.
(e_select_names_completion_new): track change to prototype, and
axe the majority of this method since an EBook* isn't passed
anymore.
(e_select_names_completion_clear_book_data): split this code out
from the destroy method so it can be called from _clear_books.
* gui/component/select-names/e-select-names-completion.h: the
constructor no longer takes an EBook -- pass in as many as you
want using _add_book. Also, add prototype for _clear_books.
* gui/component/addressbook.c (load_uri_cb): when
storing/retrieving passwords, use the cleaned (without params)
version of the uri, so changing things like download limit don't
cause the user to be prompted for a password again.
* gui/component/addressbook-component.c
(ensure_completion_uris_exist): new function - probably doesn't
belong in this file. Make sure the basic local Contacts folder
exists in the completion uris.
(addressbook_component_factory_init): call
ensure_completion_uris_exist.
* backend/ebook/e-book-util.h: add prototype for
e_book_get_default_book_uri.
* backend/ebook/e-book-util.c (e_book_get_default_book_uri): new
function, just return the default contacts uri.
(e_book_load_default_book): change
to use e_book_get_default_book_uri.
svn path=/trunk/; revision=16999
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-12-27 Jon Trowbridge <trow@ximian.com>
* gui/component/select-names/e-select-names.c
(real_add_address_cb): When we clean, don't clean the model's last
element. This helps keep things working properly when we have
signal-character separators.
(section_right_click_cb): Changed to work properly with our
EText-emitted popup signal.
(e_select_names_add_section): Use ETexts for the recipient
sections, rather than tables. This lets us make them directly
editable. (Bug #1721)
* gui/component/select-names/e-select-names-popup.c
(popup_info_new): Pass in a ESelectNamesTextModel, not a
ESelectNamesModel.
(e_select_names_popup): Adjust for the new signature for
e_select_names_model_text_pos.
* gui/component/select-names/e-select-names-manager.c
(focus_out_cb): Schedule a cleaning when we focus out.
(focus_in_cb): Cancel pending cleaning when we get focus. This
helps us avoid bad things happening during the fast focus out/ins
that happen when the completion dropdown appears.
(completion_handler): Adjust for new signatures of
e_select_names_model_text_pos and e_select_names_model_name_pos.
(e_select_names_manager_entry_new): Pass in our
ESelectNamesTextModel when constructing the
ESelectNamesCompletion.
(e_select_names_manager_entry_free): Cancel any pending clean-ups.
* gui/component/select-names/e-select-names-bonobo.c
(entry_get_property_fn): Get the text off of the text model.
Which is the only way that really makes sense when you think about
it.
* gui/component/select-names/e-select-names-completion.c: Added a
copy of the associated ESelectNamesTextModel to
ESelectNamesCompletionPrivate. This replaces the
ESelectNamesModel.
(e_select_names_completion_destroy): Unref ->text_model.
(e_select_names_completion_handle_request): Pass in our text
model's separator info when calling e_select_names_model_text_pos.
(e_select_names_completion_new): Pass in the text model as an arg
instead of the model, and ref it as needed.
* gui/component/select-names/e-select-names-text-model.c
(e_select_names_text_model_init): Set separator as either ", " or
",", depending on the value of the EVOLUTION_DISABLE_MAGIC_COMMA
environment variable.
(e_select_names_text_model_destroy): Free the separator.
(changed_cb): Flush our cached text on changed.
(e_select_names_text_model_set_source): Use our own changed_cb
callback on changed, rather than just connecting up
e_text_model_changed.
(e_select_names_text_model_set_separator): Added. Lets the
separator between recipients be specified.
(e_select_names_text_model_get_text): Cache the text we get from
calling e_select_names_model_get_textification.
(e_select_names_text_model_insert_length): A bunch of small
changes to properly support generic separators, rather than
(implicit and explicitly) assuming ", ".
(e_select_names_text_model_delete): More small tweaks to handle
generic separators.
(e_select_names_text_model_get_nth_obj): Use new signature when
calling e_select_names_model_name_pos, and use our cached text.
* gui/component/select-names/e-select-names-model.c
(e_select_names_model_destroy): We don't cache the text or
addr_text anymore, so no need to free them here.
(e_select_names_model_changed): ...and no need to reset our text
and addr_text caches here.
(e_select_names_model_get_textification): Take a separator as an
arg, rather than just using ", ". Also, no caching.
(e_select_names_model_get_address_text): Take a separator as an
arg, rather than just using ", ". And no caching here either.
(e_select_names_model_clean): Add arg that give us control over
whether or not the last entry should get cleaned. We need this
when using a one-character separator, so that new destinations
that get tacked onto the end don't get immediately cleaned away
for being empty.
(e_select_names_model_name_pos): Take the separator length as an
argument, remove implicit assumption of length 2.
(e_select_names_model_text_pos): Take the separator length as an
argument, remove implicit assumption of length 2.CVS: ----------------------------------------------------------------------
svn path=/trunk/; revision=15221
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-10-27 Chris Toshok <toshok@ximian.com>
* gui/component/select-names/e-select-names-completion.c
(e_select_names_completion_destroy): free up all the book_data
list stuff.
(e_select_names_completion_got_book_view_cb): deal with book_data
being passed as the closure, and increment the
pending_completion_seq counter.
(e_select_names_completion_card_added_cb): deal with book_data
being passwd as the closure.
(e_select_names_completion_seq_complete_cb): same, and decrement
the pending_completion_seq if we haven't gotten one for this book
view before.
(e_select_names_completion_stop_query): cancel all the
book_data's.
(e_select_names_completion_start_query): use the books_not_ready
counter instead of book_ready. also, do e_book_get_book_view on
each of the book's in our list.
(e_select_names_completion_do_query): change to deal with our
list.
(e_select_names_completion_book_ready): decrement the
book_not_ready counter.
(e_select_names_completion_new): add the book we're created with
to our list.
(e_select_names_completion_add_book): implement.
* gui/component/select-names/e-select-names-completion.h: add
prototype for e_select_names_completion_add_book.
* gui/component/select-names/e-select-names-manager.c
(e_select_names_manager_new): use addressbook_config_data, and
don't unref the db.
(e_select_names_manager_create_entry): always add NULL for a book
(which corresponds to the local book), and if the completion_book
is present, add it to the list of books to complete again.
svn path=/trunk/; revision=14270
|
|
|
|
| |
svn path=/trunk/; revision=14211
|
|
|
|
|
|
| |
explicitly.
svn path=/trunk/; revision=14188
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-26 Jon Trowbridge <trow@ximian.com>
* backend/ebook/e-card.c: Removed some debugging chatter.
* gui/component/select-names/e-select-names-manager.c
(e_select_names_manager_create_entry): Store the completion
handler in the entry's object data.
* gui/component/select-names/e-select-names-bonobo.c
(entry_get_property_fn): Added support for getting "destinations"
and "allow_contact_lists" properties.
(entry_set_property_fn): Added support for setting "destinations"
and "allow_contact_lists" properties.
(impl_SelectNames_get_entry_for_section): Added definitions for
"destinations" and "allow_contact_lists" properties.
* gui/component/select-names/e-select-names-completion.c
(e_select_names_completion_get_match_contact_lists): Added.
(e_select_names_completion_set_match_contact_lists): Added.
Controls whether contact lists are offered as options during
completion.
(book_query_process_card_list): Check if match_contact_lists
is set before (duh!) matching on a contact list.
(e_select_names_completion_init): Set match_contact_lists
to TRUE by default.
2001-07-26 Jon Trowbridge <trow@ximian.com>
* e-msg-composer-hdrs.c (set_recipients): Get "destinations",
rather than "text" from the entry_widget. (The getters/setters in
the control have been made more symmetric.)
svn path=/trunk/; revision=11422
|
|
2001-03-01 Jon Trowbridge <trow@ximian.com>
* gui/component/select-names/e-select-names-table-model.c
(fill_in_info): Change for new EDestination/ESelectNamesModel API.
* gui/component/select-names/e-select-names-manager.c
(e_select_names_manager_get_source): Added. A function for
looking up the ESelectNamesModel by id. (I didn't end up using
this function, but it might come in handy later.)
(e_select_names_manager_get_cards): #if 0/#endif out this
function.
(e_select_names_manager_create_entry): Modified to attach an
ESelectNamesCompletion to the entry we create.
(completion_handler): A post-completion handler for our EEntry, to
take the completion's extra data (an EDestination) and properly
stick it into our ESelectNamesModel.
* gui/component/select-names/e-select-names.c
(real_add_address_cb): Changed to operate on EDestinations rather
than ECards and to use the new ESelectNamesModel API. This leads
to a rather nice code simplication.
(remove_address): Changed for new ESelectNamesModel API.
* gui/component/select-names/e-select-names-bonobo.c
(entry_get_property_fn): Rather than just passing the entry's text
through the property bag, get the "address text" from the model.
This returns a nice, verbose string of addresses with names
expanded when the address is tied to an ECard (i.e. "Jon
Trowbridge <trow@ximian.com>").
(impl_SelectNames_get_entry_for_section): Make the text property
read-only.
(entry_set_property_fn): ...and since it is read-only now, chop
out the setter code.
* gui/component/select-names/e-select-names-text-model.h:
* gui/component/select-names/e-select-names-text-model.c: Again,
this code has been (pretty much) totally rewritten to convert all
text operations into changes on the ESelectNamesModel. This lets
us give the associated EEntry some (IMHO) nice semantics regarding
whitespace, etc. Includes object activation, so destinations tied
to ECards are underlined and can be double-clicked to bring up a
contact editor.
* gui/component/select-names/e-select-names-model.h:
* gui/component/select-names/e-select-names-model.c: I've heavily
modified this object to both hide all implementation details
(which the old version exposed a bit too much for my peculiar
tastes) and to act as an EDestination container. The old code put
the text model operations here. I've moved them all to
ESelectNamesTextModel --- so the text model actions (insert,
delete, etc.) are all done through the API rather than operating on
ESelectNamesModel internals.
* gui/component/select-names/e-select-names-completion.c: Added. A
fairly complicated object derived from ECompletion that searches
our local addressbook in various and sundry ways.
* gui/component/select-names/e-select-names-completion.h:
* backend/ebook/e-destination.h:
* backend/ebook/e-destination.c: Added. This object encapsulates
a place to sent an email to, which can either be just a address as
a string ("trow@ximian.com"), a fancier string ("Jon Trowbridge
<trow@ximian.com>"), or an ECard and a specific address within
that ECard.
svn path=/trunk/; revision=8459
|