re-implement per-folder message threading
[claws.git] / src / summaryview.h
index 3f93ba8b64cdc740b281af344871a9c79b3882fd..67d5a1528779bd2f3f3ce67c4a005f76bf3a21d6 100644 (file)
@@ -37,9 +37,9 @@ typedef struct _SummaryColumnState    SummaryColumnState;
 #include "headerview.h"
 #include "messageview.h"
 #include "compose.h"
-#include "prefs_filter.h"
 #include "folder.h"
 #include "gtksctree.h"
+#include "prefs_filtering.h"
 
 typedef enum
 {
@@ -75,7 +75,8 @@ typedef enum
 {
        S_SEARCH_SUBJECT,
        S_SEARCH_FROM,
-       S_SEARCH_TO
+       S_SEARCH_TO,
+       S_SEARCH_EXTENDED
 } SummarySearchType;
 
 extern GtkTargetEntry summary_drag_types[1];
@@ -101,11 +102,13 @@ struct _SummaryView
        GtkWidget *toggle_eventbox;
        GtkWidget *toggle_arrow;
        GtkWidget *toggle_search;
+       GtkWidget *quick_search_pixmap;
        GtkWidget *popupmenu;
        GtkWidget *colorlabel_menu;
        GtkWidget *search_type_opt;
        GtkWidget *search_type;
        GtkWidget *search_string;
+       GtkWidget *search_description;
 
        GtkItemFactory *popupfactory;
 
@@ -137,6 +140,7 @@ struct _SummaryView
        FolderSortKey sort_key;
        FolderSortType sort_type;
        guint threaded;
+       guint thread_collapsed;
 
        /* Extra data for summaryview */
        regex_t *simplify_subject_preg;
@@ -144,6 +148,7 @@ struct _SummaryView
        /* current message status */
        gint   newmsgs;
        gint   unread;
+       gint   unreadmarked;
        gint   messages;
        off_t  total_size;
        gint   deleted;
@@ -159,8 +164,7 @@ private:
 
        /* list for moving/deleting messages */
        GSList *mlist;
-       /* table for updating folder tree */
-       GHashTable *folder_table;
+       int msginfo_update_callback_id;
 };
 
 SummaryView    *summary_create(void);
@@ -210,6 +214,8 @@ void summary_sort             (SummaryView          *summaryview,
 void summary_delete              (SummaryView          *summaryview);
 void summary_delete_duplicated   (SummaryView          *summaryview);
 
+void summary_cancel               (SummaryView          *summaryview);
+
 gboolean summary_execute         (SummaryView          *summaryview);
 
 void summary_attract_by_subject          (SummaryView          *summaryview);
@@ -247,6 +253,7 @@ void summary_add_address      (SummaryView          *summaryview);
 void summary_select_all                  (SummaryView          *summaryview);
 void summary_unselect_all        (SummaryView          *summaryview);
 void summary_select_thread       (SummaryView          *summaryview);
+
 void summary_reply               (SummaryView          *summaryview,
                                   ComposeMode           mode);