aboutsummaryrefslogtreecommitdiffstats
path: root/mail/folder-browser-ui.h
Commit message (Collapse)AuthorAgeFilesLines
* Add some new flags for sensitizing nodes based on the flags of thePeter Williams2002-08-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-08-28 Peter Williams <peterw@ximian.com> * folder-browser-ui.c (default_ui_nodes): Add some new flags for sensitizing nodes based on the flags of the currently selected messages. (folder_browser_ui_add_message): Reset the sensitivity cache when we re-add UI items. (folder_browser_ui_add_list): Same. (folder_browser_ui_add_global): Same. (fbui_sensitise_item): Only cache the sensitivity in the hash table if we actually change it. (folder_browser_ui_scan_selection): New function, getting the bulk of the contents of folder_browser_ui_set_selection_state. Now with code to iterate over the currently selected messages and check their flags so we can sensitize based on them. (folder_browser_ui_set_selection_state): Now just set the selection state if necessary and pass off to _scan_selection. Don't skip of we're trying to go from SELSTATE_SINGLE to SELSTATE_SINGLE, eg, as the flags of the selected messages may have changed. * folder-browser-ui.h: Prototype folder_browser_ui_scan_selection. * folder-browser.c (main_folder_changed): Call folder_browser_ui_scan_selection as the flags on a selected message may have just changed. svn path=/trunk/; revision=17893
* Connect to the focus-in/out events on the message-list so that we canJeffrey Stedfast2002-03-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | 2002-03-04 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (my_folder_browser_init): Connect to the focus-in/out events on the message-list so that we can disable the EditInvertSelection and EditSelectThread menu items when the message-list is not in focus. * folder-browser-ui.c (folder_browser_ui_message_list_unfocus): New function to de-sensitize some items if the message-list is not in focus. (folder_browser_ui_message_list_focus): New function to sensitize some items if the message-list is not in focus. * mail-callbacks.c (invert_selection): Only invert the selection of the message-list if it is the widget in focus. * message-list.c (message_list_select): Do not explicitly grab the focus here. svn path=/trunk/; revision=15909
* Bumped the required version of gal.Christopher James Lahey2002-02-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-07 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped the required version of gal. From addressbook/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * gui/widgets/e-addressbook-view.c (e_addressbook_view_setup_menus): Changed this function to use the new GalViewMenus which takes a GalViewInstance, instead of a GalViewCollection. From calendar/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * gui/e-tasks.c (e_tasks_setup_view_menus), gui/gnome-cal.c (gnome_calendar_setup_view_menus): Made these use the new GalViewMenus stuff. From mail/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * folder-browser.c, folder-browser.h, folder-browser-ui.c, folder-browser-ui.h (folder_browser_ui_setup_view_menus, folder_browser_ui_discard_view_menus): Changed this to use the new GalViewMenus stuff. Made these exported functions. * mail-callbacks.c, message-browser.c: Changed these to not pass the now removed row parameter to message_list_select. * mail-config.c, mail-config.h (mail_config_folder_to_safe_url): Refactored this out of mail_config_folder_to_cachename. * message-list.c, message-list.h (message_list_select): Removed the row argument. Changed this to use the new function in ETree for finding the next cursor row that matches a test. (message_list_construct): Handle a failed construction of the ETree here. (message_list_setup_etree, save_tree_state): Don't load or save the header state. folder-browser-ui.c deals with this now. From views/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * addressbook/galview.xml, calendar/galview.xml, mail/galview.xml, tasks/galview.xml: Added default-view parameters. * mail/As_Sent_Folder.galview: New galview. * mail/Makefile.am, mail/galview.xml: Added As_Sent_Folder galview. From widgets/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * menus/gal-view-menus.c, menus/gal-view-menus.h (gal_view_menus_new): Made this take a GalViewInstance instead of a GalViewCollection. Reworked most of this to utilize the interfaces provided by GalViewInstance. svn path=/trunk/; revision=15592
* all this crap just to make the print icon desensitive at the right time.42001-10-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix for #10346 2001-10-24 <NotZed@Ximian.com> * message-browser.c (message_browser_message_loaded): Call ui_message_loaded when we are. * folder-browser-factory.c (control_activate): Freeze/thaw around all updates. (control_deactivate): Freeze/thaw around all updates. * folder-browser.c (folder_browser_init): Setup a hashtable to keep track of *our* sensitise state, so we can optimise pushes to bonobo. (folder_browser_finalise): Free hash here. (folder_browser_set_message_preview): Call a ui_message_loaded, even though it isn't, so it updates sensitivities right. (done_message_selected): Call ui_message_loaded when it really is, rather than the very fucked up idea of reversing the loaded_uid check. * folder-browser-ui.c (folder_browser_ui_set_selection_state): Dont enable the message-enabled options if the message display is hidden, e.g. print, view headers, etc. (folder_browser_ui_rm_all): Forget sensitise state. (fbui_sensitise_item): Sensitise items via a current-state table, so we dont have to do bonobo calls every time. (folder_browser_setup_property_menu): Call sensitise_item. (folder_browser_ui_add_message): (folder_browser_ui_add_global): Leave current set_prop "sensitive" for the stop button, so it doesn't get lost by the stuff in mail-mt.c (fbui_real_sensitize_items): Removed. (fbui_sensitize_timeout): Cleaned up, use sensitise_item to do work. (folder_browser_ui_message_loaded): Setup sensitive based on preview_shown too. (folder_browser_ui_set_selection_state): And here too. svn path=/trunk/; revision=13972
* Fix bug #215... desensitize menu items based on the number of selectedPeter Williams2001-08-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-09 Peter Williams <peterw@ximian.com> Fix bug #215... desensitize menu items based on the number of selected messages (and whether there's a message in the pane) * folder-browser-ui.c (folder_browser_ui_add_message): Sensitize the menu items appropriately based on the old state. (fbui_sensitize_items): New function. Set the sensitivity of a list of commands. (folder_browser_ui_set_selection_state): New function. Move the FB to a new state of selected-ness, and sensitize menu items appropriately. (folder_browser_ui_message_loaded): New function. When notified that a message has been loaded, sensitize some menu items. * folder-browser-ui.h: Prototype new functions. * folder-browser.h: New enumeration, FolderBrowserSelectionState, that records the previous state of the selection (_NONE, _SINGLE, _MULTIPLE). * folder-browser.c (got_folder): If the component is set, set our selection state to _NONE, because that's the default state of the ETree. (on_selection_changed): When the number of selected messages is updated, notify the FBUI code of our new state. (folder_browser_gui_init): Hook up to the selection_changed signal and default to the _NONE selection state. (done_message_selected): Notify when a message is loaded. 2001-08-08 Peter Williams <peterw@ximian.com> * mail-folder-cache.c: Display how many messages are selected, too. (make_folder_status): If multiple messages are selected, add that to the string (the 0 and 1 cases are boring) (selection_changed): New function, update the selected count. (mail_folder_cache_note_fb): Connect to the selection_changed signal. svn path=/trunk/; revision=12012
* Change to use more reality-based API below. Include folder-browser-ui.hPeter Williams2001-06-281-6/+4
| | | | | | | | | | | | | | | | | | | | | 2001-06-27 Peter Williams <peterw@ximian.com> * folder-browser-factory.c (control_deactivate): Change to use more reality-based API below. Include folder-browser-ui.h too. (control_activate): Remove now-unused 'int state'. * folder-browser-ui.h: Changed prototypes to match changes below. * folder-browser-ui.c (folder_browser_ui_rm_message): Commented out to reflect reality of how this stuff works (you can't actually remove the pieces). (folder_browser_ui_rm_global): Same. (folder_browser_ui_rm_list): Left because here we add the view menus. (folder_browser_ui_add_list): ... which were moved here. (folder_browser_ui_rm_all): New function, does the job of old ui_rm() svn path=/trunk/; revision=10531
* Mail:Peter Williams2001-06-271-0/+25
001-06-26 Peter Williams <peterw@ximian.com> * folder-browser-ui.c: New file derived from folder-browser-factory.c. Contains the Bonobo UI code, split into three groups as described in ui/ChangeLog. Also contains the GalView stuff and the hookups into the Bonobo UI stuff. * folder-browser-factory.c: Move most of the UI stuff to folder-browser-ui.c. (control_activate): Add all three kinds of UI element to this folderbrowser. (control_deactivate): Remove all three kinds. * folder-browser-ui.h: New file. Prototypes functions to add UI elements to a FolderBrowser. * Makefile.am: Add folder-browser-ui.{c,h} * message-browser.c (PARENT_TYPE): Change to BONOBO_TYPE_WINDOW (message_browser_destroy): Chain to parent destroy function. (set_bonobo_ui): New function. Add the 'message' functions from the folder browser to our UI. (message_browser_close): BonoboVerbify this. * message-browser.h: Convert to BonoboWindow. UI: 6-26 Peter Williams <peterw@ximian.com> * evolution-mail-global.xml: * evolution-mail-list.xml: * evolution-mail-message.xml: New files. These are the result of splitting evolution-mail.xml into three pieces: one for the global mailer operations, one for the operations on a messagelist, and one for the operations on one or more messages. * evolution-mail-messagedisplay: New file. UI for the standalone message browser that you get when you double-click. Very skeleton. * evolution-mail.xml: Removed. * Makefile.am: Updated to install new files. svn path=/trunk/; revision=10514