diff src/bar.c @ 1383:3c9abbc05792

use standard GtkHPaned for sidebar width
author nadvornik
date Fri, 06 Mar 2009 14:24:11 +0000
parents 5a61fb9adc05
children 6f31fa931d3f
line wrap: on
line diff
--- a/src/bar.c	Fri Mar 06 11:42:25 2009 +0000
+++ b/src/bar.c	Fri Mar 06 14:24:11 2009 +0000
@@ -30,8 +30,8 @@
 #include "histogram.h"
 #include "rcfile.h"
 
-#define BAR_SIZE_INCREMENT 48
-#define BAR_ARROW_SIZE 7
+//#define BAR_SIZE_INCREMENT 48
+//#define BAR_ARROW_SIZE 7
 
 
 typedef struct _BarData BarData;
@@ -223,10 +223,6 @@
 	return;
 }
 
-
-
-
-
 void bar_add(GtkWidget *bar, GtkWidget *pane)
 {
 	GtkWidget *expander;
@@ -278,35 +274,18 @@
 	bar_add(bar, widget);
 }
 
-static void bar_sized(GtkWidget *widget, GtkAllocation *allocation, gpointer data)
+static void bar_size_allocate(GtkWidget *widget, GtkAllocation *allocation, gpointer data)
 {
 	BarData *bd = data;
+	
 	bd->width = allocation->width;
 }
 
-
-static void bar_width(BarData *bd, gint val)
+gint bar_get_width(GtkWidget *bar)
 {
-	gint size;
-
-	size = bd->widget->allocation.width;
-	size = CLAMP(size + val, BAR_SIZE_INCREMENT * 2, BAR_SIZE_INCREMENT * 16);
-
-	gtk_widget_set_size_request(bd->widget, size, -1);
-}
-
-static void bar_larger(GtkWidget *widget, gpointer data)
-{
-	BarData *bd = data;
-
-	bar_width(bd, BAR_SIZE_INCREMENT);
-}
-
-static void bar_smaller(GtkWidget *widget, gpointer data)
-{
-	BarData *bd = data;
-
-	bar_width(bd, -BAR_SIZE_INCREMENT);
+	BarData *bd = g_object_get_data(G_OBJECT(bar), "bar_data");
+	if (!bd) return 0;
+	return bd->width;
 }
 
 void bar_close(GtkWidget *bar)
@@ -343,19 +322,14 @@
 	g_signal_connect(G_OBJECT(bd->widget), "destroy",
 			 G_CALLBACK(bar_destroy), bd);
 
-	g_signal_connect(G_OBJECT(bd->widget), "size_allocate",
-			 G_CALLBACK(bar_sized), bd);
+	g_signal_connect(G_OBJECT(bd->widget), "size-allocate",
+			 G_CALLBACK(bar_size_allocate), bd);
 
-	bd->width = PANEL_DEFAULT_WIDTH;
+	bd->width = SIDEBAR_DEFAULT_WIDTH;
 	gtk_widget_set_size_request(bd->widget, bd->width, -1);
 
 	box = gtk_hbox_new(FALSE, 0);
 
-	sizer = sizer_new(bd->widget, bounding_widget, SIZER_POS_LEFT);
-	sizer_set_limits(sizer, BAR_SIZE_INCREMENT * 2, -1, -1 , -1);
-	gtk_box_pack_start(GTK_BOX(box), sizer, FALSE, FALSE, 0);
-	gtk_widget_show(sizer);
-
 	bd->label_file_name = gtk_label_new("");
 	gtk_label_set_ellipsize(GTK_LABEL(bd->label_file_name), PANGO_ELLIPSIZE_END);
 	gtk_label_set_selectable(GTK_LABEL(bd->label_file_name), TRUE);
@@ -363,28 +337,6 @@
 	gtk_box_pack_start(GTK_BOX(box), bd->label_file_name, TRUE, TRUE, 0);
 	gtk_widget_show(bd->label_file_name);
 
-	button = gtk_button_new();
-	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	g_signal_connect(G_OBJECT(button), "clicked",
-			 G_CALLBACK(bar_smaller), bd);
-	gtk_box_pack_end(GTK_BOX(box), button, FALSE, FALSE, 0);
-	arrow = gtk_arrow_new(GTK_ARROW_RIGHT, GTK_SHADOW_NONE);
-	gtk_widget_set_size_request(arrow, BAR_ARROW_SIZE, BAR_ARROW_SIZE);
-	gtk_container_add(GTK_CONTAINER(button), arrow);
-	gtk_widget_show(arrow);
-	gtk_widget_show(button);
-
-	button = gtk_button_new();
-	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	g_signal_connect(G_OBJECT(button), "clicked",
-			 G_CALLBACK(bar_larger), bd);
-	gtk_box_pack_end(GTK_BOX(box), button, FALSE, FALSE, 0);
-	arrow = gtk_arrow_new(GTK_ARROW_LEFT, GTK_SHADOW_NONE);
-	gtk_widget_set_size_request(arrow, BAR_ARROW_SIZE, BAR_ARROW_SIZE);
-	gtk_container_add(GTK_CONTAINER(button), arrow);
-	gtk_widget_show(arrow);
-	gtk_widget_show(button);
-
 	gtk_box_pack_start(GTK_BOX(bd->widget), box, FALSE, FALSE, 0);
 	gtk_widget_show(box);
 
@@ -420,7 +372,7 @@
 	GtkWidget *bar = bar_new(bounding_widget);
 	
 	gboolean enabled = TRUE;
-	gint width = PANEL_DEFAULT_WIDTH;
+	gint width = SIDEBAR_DEFAULT_WIDTH;
 
 	while (*attribute_names)
 		{