revise label colouring, add filter action for label colouring, fix filtering issues
[claws.git] / src / summaryview.h
index 72cfa2f49185611ad38cffca5bdb89899b71f8b4..2d9d27f0cb00f1945a58f0cd336715fb86f5904a 100644 (file)
@@ -60,7 +60,8 @@ typedef enum
        SORT_BY_DATE,
        SORT_BY_FROM,
        SORT_BY_SUBJECT,
-       SORT_BY_SCORE
+       SORT_BY_SCORE,
+       SORT_BY_LABEL
 } SummarySortType;
 
 typedef enum
@@ -91,6 +92,8 @@ struct _SummaryView
        GtkWidget *toggle_eventbox;
        GtkWidget *toggle_arrow;
        GtkWidget *popupmenu;
+       GtkWidget *label_menu_item; /* label menu item */
+       GtkWidget *label_menu;      /* label menu itself */
 
        GtkItemFactory *popupfactory;
 
@@ -105,7 +108,6 @@ struct _SummaryView
        GdkColor color_important;
        GdkColor color_marked;
        GdkColor color_dim;
-       GdkColor color_normal;
 
        MainWindow   *mainwin;
        FolderView   *folderview;
@@ -142,14 +144,21 @@ private:
        /* current sorting state */
        SummarySortType sort_mode;
        GtkSortType sort_type;
+
+       /* tell filtering happened recently */
+       gboolean filtering_happened;
+
 };
 
 SummaryView    *summary_create(void);
 
 void summary_init                (SummaryView          *summaryview);
+
 gboolean summary_show            (SummaryView          *summaryview,
                                   FolderItem           *fitem,
                                   gboolean              update_cache);
+
+                                  
 void summary_clear_list                  (SummaryView          *summaryview);
 void summary_clear_all           (SummaryView          *summaryview);
 
@@ -195,5 +204,7 @@ void summary_mark_as_unread   (SummaryView          *summaryview);
 void summary_mark_as_read        (SummaryView          *summaryview);
 void summary_select_all                  (SummaryView          *summaryview);
 void summary_unselect_all        (SummaryView          *summaryview);
+void summary_set_label           (SummaryView          *summaryview, guint labelcolor, GtkWidget *widget);
+void summary_set_label_color     (GtkCTree *ctree, GtkCTreeNode *node, guint labelcolor);
 
 #endif /* __SUMMARY_H__ */