+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
+Mon Nov 19 15:30:51 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
+ "resizable" property, to get rid of the
+ GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
+ (gtk_tree_view_column_set_resizable): New function to set resizable.
+ (gtk_tree_view_column_set_resizable): getter.
+
+ * tests/testtreecolumns.c (add_clicked): modify for above change.
+
+ * Makefile.am (install-data-hook): remove old .pc files before
+ installing the new one. We used to symlink this, and it will
+ break old installs.
+
2001-11-19 Havoc Pennington <hp@pobox.com>
* tests/testtext.c (fill_example_buffer): put in a test for
gtk+-$(GDKTARGET)-2.0-uninstalled.pc \
gdk-$(GDKTARGET)-2.0-uninstalled.pc
-## symlink gdk-2.0.pc and gtk+-2.0.pc to default target for the platform
+## copy the default target for this platform to gdk-2.0.pc and gtk+-2.0.pc
DEFAULT_GDKTARGET=x11
install-data-hook:
(cd $(DESTDIR)$(pkgconfigdir) && \
test -e gdk-$(DEFAULT_GDKTARGET)-2.0.pc && \
test -e gtk+-$(DEFAULT_GDKTARGET)-2.0.pc && \
- cp -f gdk-$(DEFAULT_GDKTARGET)-2.0.pc gdk-2.0.pc && \
- cp -f gtk+-$(DEFAULT_GDKTARGET)-2.0.pc gtk+-2.0.pc) || \
+ rm -f gdk-2.0.pc && cp -f gdk-$(DEFAULT_GDKTARGET)-2.0.pc gdk-2.0.pc && \
+ rm -f gtk+-2.0.pc && cp -f gtk+-$(DEFAULT_GDKTARGET)-2.0.pc gtk+-2.0.pc) || \
(cd $(DESTDIR)$(pkgconfigdir) && \
- cp -f gdk-$(GDKTARGET)-2.0.pc gdk-2.0.pc && \
- cp -f gtk+-$(GDKTARGET)-2.0.pc gtk+-2.0.pc)
+ rm -f gdk-2.0.pc && cp -f gdk-$(GDKTARGET)-2.0.pc gdk-2.0.pc && \
+ rm -f gtk+-2.0.pc && cp -f gtk+-$(GDKTARGET)-2.0.pc gtk+-2.0.pc)
dist-hook: gtk+.spec
if test -e $(srcdir)/INSTALL.in && test -e $(srcdir)/README.in ; then \
column = list->data;
if (column->visible == FALSE)
continue;
- if (column->column_type == GTK_TREE_VIEW_COLUMN_RESIZABLE)
+ if (column->resizable)
{
gdk_window_raise (column->window);
gdk_window_show (column->window);
{
column = list->data;
if (event->window == column->window &&
- column->column_type == GTK_TREE_VIEW_COLUMN_RESIZABLE &&
+ column->resizable &&
column->window)
{
gpointer drag_data;
{
PROP_0,
PROP_VISIBLE,
+ PROP_RESIZABLE,
PROP_WIDTH,
PROP_SIZING,
PROP_FIXED_WIDTH,
TRUE,
G_PARAM_READABLE | G_PARAM_WRITABLE));
+ g_object_class_install_property (object_class,
+ PROP_RESIZABLE,
+ g_param_spec_boolean ("resizable",
+ _("Resizable"),
+ _("Column is user-resizable"),
+ FALSE,
+ G_PARAM_READABLE | G_PARAM_WRITABLE));
+
g_object_class_install_property (object_class,
PROP_WIDTH,
g_param_spec_int ("width",
tree_column->max_width = -1;
tree_column->column_type = GTK_TREE_VIEW_COLUMN_GROW_ONLY;
tree_column->visible = TRUE;
+ tree_column->resizable = FALSE;
tree_column->clickable = FALSE;
tree_column->dirty = TRUE;
tree_column->sort_order = GTK_SORT_ASCENDING;
gtk_widget_show_now (tree_column->button);
if (tree_column->window)
{
- if (tree_column->column_type == GTK_TREE_VIEW_COLUMN_RESIZABLE)
+ if (tree_column->resizable)
{
gdk_window_show (tree_column->window);
gdk_window_raise (tree_column->window);
return tree_column->visible;
}
+void
+gtk_tree_view_column_set_resizable (GtkTreeViewColumn *tree_column,
+ gboolean resizable)
+{
+ g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_column));
+
+ resizable = !! resizable;
+
+ if (tree_column->resizable == resizable)
+ return;
+
+ if (resizable && tree_column->column_type == GTK_TREE_VIEW_COLUMN_AUTOSIZE)
+ gtk_tree_view_column_set_sizing (tree_column, GTK_TREE_VIEW_COLUMN_GROW_ONLY);
+
+ gtk_tree_view_column_update_button (tree_column);
+
+ g_object_notify (G_OBJECT (tree_column), "resizable");
+}
+
+gboolean
+gtk_tree_view_column_get_resizable (GtkTreeViewColumn *tree_column)
+{
+ g_return_val_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_column), FALSE);
+
+ return tree_column->resizable;
+}
+
+
/**
* gtk_tree_view_column_set_sizing:
* @tree_column: A #GtkTreeViewColumn.
if (type == tree_column->column_type)
return;
+ if (type == GTK_TREE_VIEW_COLUMN_AUTOSIZE)
+ gtk_tree_view_column_set_resizable (tree_column, FALSE);
+
+#if 0
+ /* I was clearly on crack when I wrote this. I'm not sure what's supposed to
+ * be below so I'll leave it until I figure it out.
+ */
if (tree_column->column_type == GTK_TREE_VIEW_COLUMN_AUTOSIZE &&
tree_column->requested_width != -1)
{
gtk_tree_view_column_set_sizing (tree_column, tree_column->requested_width);
}
+#endif
tree_column->column_type = type;
gtk_tree_view_column_update_button (tree_column);
- if (type != GTK_TREE_VIEW_COLUMN_AUTOSIZE)
g_object_notify (G_OBJECT (tree_column), "sizing");
}
typedef enum
{
GTK_TREE_VIEW_COLUMN_GROW_ONLY,
- GTK_TREE_VIEW_COLUMN_RESIZABLE,
GTK_TREE_VIEW_COLUMN_AUTOSIZE,
GTK_TREE_VIEW_COLUMN_FIXED
} GtkTreeViewColumnSizing;
/* Flags */
guint visible : 1;
+ guint resizable : 1;
guint clickable : 1;
guint dirty : 1;
guint show_sort_indicator : 1;
void gtk_tree_view_column_set_visible (GtkTreeViewColumn *tree_column,
gboolean visible);
gboolean gtk_tree_view_column_get_visible (GtkTreeViewColumn *tree_column);
+void gtk_tree_view_column_set_resizable (GtkTreeViewColumn *tree_column,
+ gboolean resizable);
+gboolean gtk_tree_view_column_get_resizable (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_sizing (GtkTreeViewColumn *tree_column,
GtkTreeViewColumnSizing type);
GtkTreeViewColumnSizing gtk_tree_view_column_get_sizing (GtkTreeViewColumn *tree_column);
column = gtk_tree_view_column_new_with_attributes (label, cell, "text", 0, NULL);
g_object_set_data_full (G_OBJECT (column), column_data, label, g_free);
gtk_tree_view_column_set_reorderable (column, TRUE);
- gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_RESIZABLE);
+ gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_GROW_ONLY);
+ gtk_tree_view_column_set_resizable (column, TRUE);
gtk_list_store_append (GTK_LIST_STORE (left_tree_model), &iter);
gtk_list_store_set (GTK_LIST_STORE (left_tree_model), &iter, 0, label, 1, column, -1);
i++;
g_object_set (G_OBJECT (renderer),
"xalign", 0.0,
- "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE,
NULL);
gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (tree_view),
-1, "Editable",