2005-10-18 [colin] 1.9.15cvs72
[claws.git] / src / summaryview.c
index cb0252bafedb1750eb9e452d67ab898f8589f76d..4c7d733a2c6f4caae3d93067b8904418fe106f82 100644 (file)
@@ -456,7 +456,7 @@ static GtkItemFactoryEntry summary_popup_entries[] =
 };  /* see also list in menu_connect_identical_items() in menu.c if this changes */
 
 static const gchar *const col_label[N_SUMMARY_COLS] = {
-       N_("M"),        /* S_COL_MARK    */
+       "",             /* S_COL_MARK    */
        N_("S"),        /* S_COL_STATUS  */
        "",             /* S_COL_MIME    */
        N_("Subject"),  /* S_COL_SUBJECT */
@@ -464,9 +464,9 @@ static const gchar *const col_label[N_SUMMARY_COLS] = {
        N_("To"),       /* S_COL_TO      */
        N_("Date"),     /* S_COL_DATE    */
        N_("Size"),     /* S_COL_SIZE    */
-       N_("No."),      /* S_COL_NUMBER  */
+       N_("#"),        /* S_COL_NUMBER  */
        N_("Score"),    /* S_COL_SCORE   */
-       N_("L")         /* S_COL_LOCKED  */
+       "",             /* S_COL_LOCKED  */
 };
 
 #define START_LONG_OPERATION(summaryview) {                    \
@@ -1971,7 +1971,6 @@ static void summary_set_column_titles(SummaryView *summaryview)
        gint pos;
        const gchar *title;
        SummaryColumnType type;
-       gboolean single_char;
        GtkJustification justify;
 
        static FolderSortKey sort_by[N_SUMMARY_COLS] = {
@@ -1992,7 +1991,6 @@ static void summary_set_column_titles(SummaryView *summaryview)
                type = summaryview->col_state[pos].type;
 
                /* CLAWS: mime and unread are single char headers */
-               single_char = (type == S_COL_MIME || type == S_COL_STATUS);
                justify = (type == S_COL_NUMBER || type == S_COL_SIZE)
                        ? GTK_JUSTIFY_RIGHT : GTK_JUSTIFY_LEFT;
 
@@ -2007,11 +2005,6 @@ static void summary_set_column_titles(SummaryView *summaryview)
                        else
                                title = col_label[type];
                        break;
-               /* CLAWS: dummies for mark and locked headers */        
-               case S_COL_MARK:        
-               case S_COL_LOCKED:
-                       title = "";
-                       break;
                default:
                        title = gettext(col_label[type]);
                }
@@ -2021,22 +2014,24 @@ static void summary_set_column_titles(SummaryView *summaryview)
                        gtk_widget_show(label);
                        gtk_clist_set_column_widget(clist, pos, label);
                        continue;
-               } else if (single_char) {
+               } else if (type == S_COL_MARK) {
+                       label = gtk_image_new_from_pixmap(markxpm, markxpmmask);
+                       gtk_widget_show(label);
+                       gtk_clist_set_column_widget(clist, pos, label);
+                       continue;
+               } else if (type == S_COL_LOCKED) {
+                       label = gtk_image_new_from_pixmap(lockedxpm, lockedxpmmask);
+                       gtk_widget_show(label);
+                       gtk_clist_set_column_widget(clist, pos, label);
+                       continue;
+               } else if (type == S_COL_STATUS) {
                        gtk_clist_set_column_title(clist, pos, title);
                        continue;
                }
 
-               /* CLAWS: changed so that locked and mark headers
-                * show a pixmap instead of single character */
                hbox  = gtk_hbox_new(FALSE, 4);
-               
-               if (type == S_COL_LOCKED)
-                       label = gtk_pixmap_new(lockedxpm, lockedxpmmask);
-               else if (type == S_COL_MARK) 
-                       label = gtk_pixmap_new(markxpm, markxpmmask);
-               else 
-                       label = gtk_label_new(title);
-               
+               label = gtk_label_new(title);
+
                if (justify == GTK_JUSTIFY_RIGHT)
                        gtk_box_pack_end(GTK_BOX(hbox), label,
                                         FALSE, FALSE, 0);
@@ -2195,7 +2190,7 @@ gboolean summary_insert_gnode_func(GtkCTree *ctree, guint depth, GNode *gnode,
 
        summary_set_header(summaryview, text, msginfo);
 
-       gtk_ctree_set_node_info(ctree, cnode, text[col_pos[S_COL_SUBJECT]], 2,
+       gtk_sctree_set_node_info(ctree, cnode, text[col_pos[S_COL_SUBJECT]], 2,
                                NULL, NULL, NULL, NULL, FALSE,
                                gnode->parent->parent ? TRUE : FALSE);
 #define SET_TEXT(col) \
@@ -2273,9 +2268,10 @@ static void summary_set_ctree_from_list(SummaryView *summaryview,
 
                        summary_set_header(summaryview, text, msginfo);
 
-                       node = gtk_ctree_insert_node
+                       node = gtk_sctree_insert_node
                                (ctree, NULL, node, text, 2,
-                                NULL, NULL, NULL, NULL, FALSE, FALSE);
+                                NULL, NULL, NULL, NULL,
+                                FALSE, FALSE);
                        GTKUT_CTREE_NODE_SET_ROW_DATA(node, msginfo);
                        summary_set_marks_func(ctree, node, summaryview);
 
@@ -4555,7 +4551,6 @@ void summary_set_column_order(SummaryView *summaryview)
 {
        GtkWidget *ctree;
        GtkWidget *scrolledwin = summaryview->scrolledwin;
-       GtkWidget *pixmap;
        FolderItem *item;
        guint selected_msgnum = summary_get_msgnum(summaryview, summaryview->selected);
        guint displayed_msgnum = summary_get_msgnum(summaryview, summaryview->displayed);
@@ -4567,10 +4562,7 @@ void summary_set_column_order(SummaryView *summaryview)
 
        summaryview->ctree = ctree = summary_ctree_create(summaryview);
        summary_set_fonts(summaryview);
-       pixmap = gtk_image_new_from_pixmap(clipxpm, clipxpmmask);
-       gtk_clist_set_column_widget(GTK_CLIST(ctree),
-                                   summaryview->col_pos[S_COL_MIME], pixmap);
-       gtk_widget_show(pixmap);
+       summary_set_column_titles(summaryview);
        gtk_scrolled_window_set_hadjustment(GTK_SCROLLED_WINDOW(scrolledwin),
                                            GTK_CLIST(ctree)->hadjustment);
        gtk_scrolled_window_set_vadjustment(GTK_SCROLLED_WINDOW(scrolledwin),
@@ -4732,6 +4724,15 @@ static gboolean summary_key_pressed(GtkWidget *widget, GdkEventKey *event,
                BREAK_ON_MODIFIER_KEY();
                summary_delete_trash(summaryview);
                break;
+       case GDK_y:
+       case GDK_t:
+       case GDK_l:
+       case GDK_c:
+               if ((event->state & (GDK_MOD1_MASK|GDK_CONTROL_MASK)) == 0) {
+                       mimeview_pass_key_press_event(messageview->mimeview,
+                                                     event);
+                       break;
+               }
        default:
                break;
        }