2000-10-06 Not Zed <NotZed@HelixCode.com> * mail-search-dialogue.c: New widget, full search dialogue for mail. * folder-browser.c (search_set): If we click on custom search, run the full search dialogue. (folder_browser_gui_init): Add a button to perform a full search. (search_full): Bring up the mail search dialogue asynchronously. (search_full_clicked): Handle search options. (folder_browser_destroy): Free the saved rule if there is one there. (search_options[]): Added a custom option option - brings up the full search dialogue. (search_set): Disable the search entry if we are doing a full search. * mail-vfolder.c (vfolder_create_storage): Yay, finally depeterised this stuff. (vfolder_uri_to_folder): Removed an irrelevant comment. * mail-callbacks.c (filter_edit): And here. * mail-ops.c (do_fetch_mail): And here too. * mail-autofilter.c (filter_gui_add_from_message): Fixed call to context_load. (filter_gui_add_for_mailing_list): And here too. * folder-browser-factory.c (create_ondemand_hooks): Remove that ondemand callback snot. 2000-10-05 Not Zed <NotZed@HelixCode.com> * message-list.c (message_list_init_etable): Build the etable once we know what folder we are going to use. (save_header_state): Save the header spec to a cache file. (message_list_destroy): Save the header spec. (message_list_setup_etable): Setup the etable spec for this folder, from a saved version if one exists, or to suit the folder type (sent/received). (message_list_set_folder): Setup the etable here once we have a folder. svn path=/trunk/; revision=5798
77 lines
2.1 KiB
C
77 lines
2.1 KiB
C
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
|
|
|
|
|
#ifndef _FOLDER_BROWSER_H_
|
|
#define _FOLDER_BROWSER_H_
|
|
|
|
#include "mail-types.h"
|
|
#include <gtk/gtktable.h>
|
|
#include "camel/camel-stream.h"
|
|
#include <bonobo/bonobo-property-bag.h>
|
|
#include "filter/filter-rule.h"
|
|
#include "filter/filter-context.h" /*eek*/
|
|
#include "message-list.h"
|
|
#include "mail-display.h"
|
|
#include "shell/Evolution.h"
|
|
|
|
|
|
#define FOLDER_BROWSER_TYPE (folder_browser_get_type ())
|
|
#define FOLDER_BROWSER(o) (GTK_CHECK_CAST ((o), FOLDER_BROWSER_TYPE, FolderBrowser))
|
|
#define FOLDER_BROWSER_CLASS(k) (GTK_CHECK_CLASS_CAST((k), FOLDER_BROWSER_TYPE, FolderBrowserClass))
|
|
#define IS_FOLDER_BROWSER(o) (GTK_CHECK_TYPE ((o), FOLDER_BROWSER_TYPE))
|
|
#define IS_FOLDER_BROWSER_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), FOLDER_BROWSER_TYPE))
|
|
|
|
struct _FolderBrowser {
|
|
GtkTable parent;
|
|
|
|
BonoboPropertyBag *properties;
|
|
|
|
Evolution_Shell shell;
|
|
|
|
/* This is a kludge for the toolbar problem. */
|
|
int serial;
|
|
|
|
/*
|
|
* The current URI being displayed by the FolderBrowser
|
|
*/
|
|
char *uri;
|
|
CamelFolder *folder;
|
|
|
|
MessageList *message_list;
|
|
GtkWidget *message_list_w;
|
|
MailDisplay *mail_display;
|
|
GtkWidget *vpaned;
|
|
GtkWidget *search_menu;
|
|
GtkWidget *search_entry;
|
|
FilterRule *search_full; /* if we have a full search active */
|
|
|
|
gboolean preview_shown;
|
|
|
|
/* Stuff to allow on-demand filtering */
|
|
GSList *filter_menu_paths;
|
|
FilterContext *filter_context;
|
|
};
|
|
|
|
|
|
typedef struct {
|
|
GtkTableClass parent_class;
|
|
} FolderBrowserClass;
|
|
|
|
struct fb_ondemand_closure {
|
|
FilterRule *rule;
|
|
FolderBrowser *fb;
|
|
gchar *path;
|
|
};
|
|
|
|
GtkType folder_browser_get_type (void);
|
|
GtkWidget *folder_browser_new (const Evolution_Shell shell);
|
|
|
|
gboolean folder_browser_set_uri (FolderBrowser *folder_browser,
|
|
const char *uri);
|
|
|
|
void folder_browser_set_message_preview (FolderBrowser *folder_browser,
|
|
gboolean show_message_preview);
|
|
void folder_browser_clear_search (FolderBrowser *fb);
|
|
|
|
#endif /* _FOLDER_BROWSER_H_ */
|