Files
evolution/mail/folder-browser-ui.h
Peter Williams 46cea1ca0b Add some new flags for sensitizing nodes based on the flags of the
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
2002-08-28 18:14:38 +00:00

37 lines
1.2 KiB
C

/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* folder-browser-ui.c: Sets up the Bonobo UI for FolderBrowsers
*
* Author:
* Peter Williams <peterw@ximian.com>
*
* (C) 2001 Ximian, Inc.
*/
#ifndef _FOLDER_BROWSER_UI_H
#define _FOLDER_BROWSER_UI_H
#include "folder-browser.h"
void folder_browser_ui_add_message (FolderBrowser *fb);
void folder_browser_ui_add_list (FolderBrowser *fb);
void folder_browser_ui_add_global (FolderBrowser *fb);
void folder_browser_ui_rm_list (FolderBrowser *fb);
void folder_browser_ui_rm_all (FolderBrowser *fb);
/* these affect the sensitivity of UI elements */
void folder_browser_ui_scan_selection (FolderBrowser *fb);
void folder_browser_ui_set_selection_state (FolderBrowser *fb, FolderBrowserSelectionState state);
void folder_browser_ui_message_loaded (FolderBrowser *fb);
void folder_browser_ui_discard_view_menus (FolderBrowser *fb);
void folder_browser_ui_setup_view_menus (FolderBrowser *fb);
/* Set the sensitivity of a single item */
void fbui_sensitise_item(FolderBrowser *fb, const char *item, int state);
void folder_browser_ui_message_list_focus (FolderBrowser *fb);
void folder_browser_ui_message_list_unfocus (FolderBrowser *fb);
#endif /* _FOLDER_BROWSER_UI_H */