Changeset 37

Show
Ignore:
Timestamp:
11/03/07 01:53:31
Author:
pvanhoof
Message:
        • Decorator for TMutHeaderView and TMutMsgView
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r36 r37  
    66        * Don't show silly or obvious instructions in the instruction label 
    77        * Attempt to have a custom header-view widget (for now, failed) 
     8        * Decorator for TMutHeaderView and TMutMsgView 
    89 
    9102007-11-01  Philip Van Hoof  <pvanhoof@gnome.org> 
  • trunk/src/tmut-header-view.c

    r36 r37  
    3838        TnyHeaderView *header_view; 
    3939        GtkScrolledWindow *sw; 
     40        GtkWidget *expander, *subject; 
    4041}; 
    4142 
     
    4849{ 
    4950        TMutHeaderViewPriv *priv = TMUT_HEADER_VIEW_GET_PRIVATE (self); 
     51        if (header) 
     52                gtk_label_set_text (GTK_LABEL (priv->subject), tny_header_get_subject (header)); 
     53        else 
     54                gtk_label_set_text (GTK_LABEL (priv->subject), ""); 
    5055        tny_header_view_set_header (priv->header_view, header); 
    5156        return; 
     
    5661{ 
    5762        TMutHeaderViewPriv *priv = TMUT_HEADER_VIEW_GET_PRIVATE (self); 
     63        gtk_label_set_text (GTK_LABEL (priv->subject), ""); 
    5864        tny_header_view_clear (priv->header_view); 
    5965        return; 
     
    8086{ 
    8187        TMutHeaderViewPriv *priv = TMUT_HEADER_VIEW_GET_PRIVATE (instance); 
     88        GtkWidget *label = gtk_label_new (_("<b>Subject:</b>")); 
     89        GtkWidget *hbox = gtk_hbox_new (FALSE, 0); 
    8290 
     91        priv->expander = gtk_expander_new (""); 
     92        gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0); 
     93        priv->subject = gtk_label_new (""); 
     94        gtk_box_pack_start (GTK_BOX (hbox), priv->subject, FALSE, TRUE, 0); 
     95        gtk_expander_set_label_widget (GTK_EXPANDER (priv->expander), hbox); 
     96 
     97        gtk_widget_show (priv->expander); 
     98        gtk_widget_show (hbox); 
     99        gtk_widget_show (label); 
     100        gtk_widget_show (priv->subject); 
     101 
     102        gtk_box_pack_start (GTK_BOX (instance), GTK_WIDGET (priv->expander), TRUE, TRUE, 0); 
    83103        priv->header_view = tny_gtk_header_view_new (); 
    84         priv->sw = GTK_SCROLLED_WINDOW (gtk_scrolled_window_new (NULL, NULL)); 
    85         gtk_widget_show (GTK_WIDGET (priv->sw)); 
    86         gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (priv->sw),  
    87                 GTK_SHADOW_NONE); 
    88         gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (priv->sw), 
    89                 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); 
    90         gtk_box_pack_start (GTK_BOX (instance), GTK_WIDGET (priv->sw), TRUE, TRUE, 0); 
    91         gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (priv->sw),  
    92                         GTK_WIDGET (priv->header_view)); 
     104        gtk_container_add (GTK_CONTAINER (priv->expander), GTK_WIDGET (priv->header_view)); 
    93105        gtk_widget_show (GTK_WIDGET (priv->header_view)); 
     106 
     107        gtk_label_set_use_markup (GTK_LABEL (label), TRUE); 
     108        gtk_misc_set_alignment (GTK_MISC (priv->subject), 0, 0.5); 
     109 
    94110 
    95111        return; 
  • trunk/src/tmut-tny-gtk-msg-view.c

    r36 r37  
    6161        object_class = (GObjectClass*) class; 
    6262 
    63         TNY_GTK_MSG_VIEW_CLASS (class)->create_header_view_func = tmut_tny_gtk_msg_view_create_header_view; 
     63        TNY_GTK_MSG_VIEW_CLASS (parent_class)->create_header_view_func = tmut_tny_gtk_msg_view_create_header_view; 
    6464 
    6565        object_class->finalize = tmut_tny_gtk_msg_view_finalize;