From 45656a2e36a64aea8003ae81122ab84218017b27 Mon Sep 17 00:00:00 2001 From: Alexey Yakovenko Date: Wed, 18 Nov 2009 19:47:54 +0100 Subject: improved column header widget --- deadbeef.glade | 186 ++++++++++++++++++++++++++++++--------------------------- gtkplaylist.c | 7 ++- interface.c | 9 ++- 3 files changed, 108 insertions(+), 94 deletions(-) diff --git a/deadbeef.glade b/deadbeef.glade index d95bdeb8..5983f711 100644 --- a/deadbeef.glade +++ b/deadbeef.glade @@ -704,66 +704,79 @@ - + True - 2 - 2 - False - 0 - 0 + 0 + 0.5 + GTK_SHADOW_ETCHED_IN - - 3 + True + 2 + 2 False - 0 + 0 + 0 - + True False 0 - - 24 + True - GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - - - - - - - 0 - False - True - - + False + 0 - - - True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK - - - - - - - - - - - - - - - - + + + 24 + True + GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + + + + + 0 + False + True + + + + + + True + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK + + + + + + + + + + + + + + + + + + + 0 + True + True + + 0 @@ -773,54 +786,49 @@ - 0 - True - True + 0 + 1 + 0 + 1 - - - 0 - 1 - 0 - 1 - - - - - True - GTK_UPDATE_CONTINUOUS - False - 0 0 1 1 0 0 - - - - 1 - 2 - 0 - 1 - fill - fill - - + + + True + GTK_UPDATE_CONTINUOUS + False + 0 0 1 1 0 0 + + + + 1 + 2 + 0 + 1 + fill + fill + + - - - True - GTK_UPDATE_CONTINUOUS - False - 0 0 0 0 0 0 - + + + True + GTK_UPDATE_CONTINUOUS + False + 0 0 0 0 0 0 + + + + 0 + 1 + 1 + 2 + fill + fill + + - - 0 - 1 - 1 - 2 - fill - fill - diff --git a/gtkplaylist.c b/gtkplaylist.c index 57b71d27..a31caa2e 100644 --- a/gtkplaylist.c +++ b/gtkplaylist.c @@ -1386,10 +1386,11 @@ gtkpl_header_draw (gtkplaylist_t *ps) { int x = -ps->hscrollpos; int w = 100; int h = widget->allocation.height; - const char *detail = "toolbar"; + const char *detail = "button"; // fill background - gtk_paint_box (widget->style, ps->backbuf_header, GTK_STATE_NORMAL, GTK_SHADOW_OUT, NULL, NULL, detail, 0, 0, widget->allocation.width, widget->allocation.height); + //gdk_draw_rectangle (ps->backbuf_header, widget->style->bg_gc[0], TRUE, -10, -10, widget->allocation.width+20, widget->allocation.height+20); + gtk_paint_box (widget->style, ps->backbuf_header, GTK_STATE_NORMAL, GTK_SHADOW_OUT, NULL, NULL, detail, -10, -10, widget->allocation.width+20, widget->allocation.height+20); draw_begin ((uintptr_t)ps->backbuf_header); x = -ps->hscrollpos; gtkpl_column_t *c; @@ -1411,7 +1412,7 @@ gtkpl_header_draw (gtkplaylist_t *ps) { continue; } if (w > 0) { - gtk_paint_vline (widget->style, ps->backbuf_header, GTK_STATE_NORMAL, NULL, NULL, NULL, 0, h, xx+w - 2); + gtk_paint_vline (widget->style, ps->backbuf_header, GTK_STATE_NORMAL, NULL, NULL, NULL, 2, h-4, xx+w - 2); GdkColor *gdkfg = &widget->style->fg[0]; float fg[3] = {(float)gdkfg->red/0xffff, (float)gdkfg->green/0xffff, (float)gdkfg->blue/0xffff}; draw_set_fg_color (fg); diff --git a/interface.c b/interface.c index 9abc876b..ef6d14ef 100644 --- a/interface.c +++ b/interface.c @@ -99,6 +99,7 @@ create_mainwin (void) GtkWidget *image6; GtkWidget *volumebar; GtkWidget *seekbar; + GtkWidget *frame1; GtkWidget *table1; GtkWidget *_; GtkWidget *vbox3; @@ -448,16 +449,19 @@ create_mainwin (void) gtk_widget_set_size_request (seekbar, 200, -1); gtk_widget_set_events (seekbar, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); + frame1 = gtk_frame_new (NULL); + gtk_widget_show (frame1); + gtk_box_pack_start (GTK_BOX (vbox1), frame1, TRUE, TRUE, 0); + table1 = gtk_table_new (2, 2, FALSE); gtk_widget_show (table1); - gtk_box_pack_start (GTK_BOX (vbox1), table1, TRUE, TRUE, 0); + gtk_container_add (GTK_CONTAINER (frame1), table1); _ = gtk_hbox_new (FALSE, 0); gtk_widget_show (_); gtk_table_attach (GTK_TABLE (table1), _, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); - gtk_container_set_border_width (GTK_CONTAINER (_), 3); vbox3 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox3); @@ -764,6 +768,7 @@ create_mainwin (void) GLADE_HOOKUP_OBJECT (mainwin, image6, "image6"); GLADE_HOOKUP_OBJECT (mainwin, volumebar, "volumebar"); GLADE_HOOKUP_OBJECT (mainwin, seekbar, "seekbar"); + GLADE_HOOKUP_OBJECT (mainwin, frame1, "frame1"); GLADE_HOOKUP_OBJECT (mainwin, table1, "table1"); GLADE_HOOKUP_OBJECT (mainwin, _, "_"); GLADE_HOOKUP_OBJECT (mainwin, vbox3, "vbox3"); -- cgit v1.2.3