[gtk+/native-layout] Added gtk_tree_view_column_get_desired_size() as its a corner case that does not fall under the two
- From: Tristan Van Berkom <tvb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/native-layout] Added gtk_tree_view_column_get_desired_size() as its a corner case that does not fall under the two
- Date: Tue, 6 Apr 2010 07:09:01 +0000 (UTC)
commit 3128bd0937afc828ea6a1ff6293dd9491675758d
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date: Tue Apr 6 03:03:55 2010 -0400
Added gtk_tree_view_column_get_desired_size() as its a corner case
that does not fall under the two categories.
gtk/gtktreeviewcolumn.c | 44 ++++++++++++++++++++++++--------------------
gtk/gtktreeviewcolumn.h | 3 +++
2 files changed, 27 insertions(+), 20 deletions(-)
---
diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c
index 7dcc29a..8597643 100644
--- a/gtk/gtktreeviewcolumn.c
+++ b/gtk/gtktreeviewcolumn.c
@@ -26,7 +26,7 @@
#include "gtkbutton.h"
#include "gtkalignment.h"
#include "gtklabel.h"
-#include "gtkextendedlayout.h"
+#include "gtkextendedcell.h"
#include "gtkhbox.h"
#include "gtkmarshalers.h"
#include "gtkarrow.h"
@@ -156,17 +156,13 @@ static void gtk_tree_view_column_clear_attributes_by_info (GtkTreeViewColum
/* GtkBuildable implementation */
static void gtk_tree_view_column_buildable_init (GtkBuildableIface *iface);
-static void gtk_tree_view_column_extended_layout_init (GtkExtendedLayoutIface *iface);
-
static guint tree_column_signals[LAST_SIGNAL] = { 0 };
G_DEFINE_TYPE_WITH_CODE (GtkTreeViewColumn, gtk_tree_view_column, GTK_TYPE_OBJECT,
G_IMPLEMENT_INTERFACE (GTK_TYPE_CELL_LAYOUT,
gtk_tree_view_column_cell_layout_init)
G_IMPLEMENT_INTERFACE (GTK_TYPE_BUILDABLE,
- gtk_tree_view_column_buildable_init)
- G_IMPLEMENT_INTERFACE (GTK_TYPE_EXTENDED_LAYOUT,
- gtk_tree_view_column_extended_layout_init))
+ gtk_tree_view_column_buildable_init))
@@ -2648,8 +2644,9 @@ gtk_tree_view_column_cell_get_real_size (GtkTreeViewColumn *tree_column,
nat_req.width += tree_column->spacing;
}
- gtk_extended_layout_get_desired_size (GTK_EXTENDED_LAYOUT (info->cell),
- &min_req, &nat_req);
+ gtk_extended_cell_get_desired_size (GTK_EXTENDED_CELL (info->cell),
+ tree_column->tree_view,
+ &min_req, &nat_req);
min_req.width += focus_line_width * 2;
min_req.height += focus_line_width * 2;
@@ -3826,22 +3823,29 @@ gtk_tree_view_column_get_tree_view (GtkTreeViewColumn *tree_column)
return tree_column->tree_view;
}
-static void
-gtk_tree_view_column_extended_layout_get_desired_size (GtkExtendedLayout *layout,
- GtkRequisition *minimal_size,
- GtkRequisition *desired_size)
+
+/**
+ * gtk_tree_view_column_get_desired_size:
+ * @tree_column: A #GtkTreeViewColumn
+ * @minimum_size: location for storing the minimum size, or %NULL
+ * @natural_size: location for storing the preferred size, or %NULL
+ *
+ *
+ * Retreives @tree_column's minimum and natural size.
+ *
+ * Since: 3.0
+ */
+void
+gtk_tree_view_column_get_desired_size (GtkTreeViewColumn *column,
+ GtkRequisition *minimal_size,
+ GtkRequisition *desired_size)
{
- gtk_tree_view_column_cell_get_real_size (GTK_TREE_VIEW_COLUMN (layout),
+ g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (column));
+
+ gtk_tree_view_column_cell_get_real_size (column,
NULL, NULL, NULL,
minimal_size, desired_size);
}
-static void
-gtk_tree_view_column_extended_layout_init (GtkExtendedLayoutIface *iface)
-{
- iface->get_desired_size = gtk_tree_view_column_extended_layout_get_desired_size;
-}
-
-
#define __GTK_TREE_VIEW_COLUMN_C__
#include "gtkaliasdef.c"
diff --git a/gtk/gtktreeviewcolumn.h b/gtk/gtktreeviewcolumn.h
index 75b4c5a..5b9cd2a 100644
--- a/gtk/gtktreeviewcolumn.h
+++ b/gtk/gtktreeviewcolumn.h
@@ -229,6 +229,9 @@ void gtk_tree_view_column_cell_get_size (GtkTreeViewCol
gint *y_offset,
gint *width,
gint *height);
+void gtk_tree_view_column_get_desired_size (GtkTreeViewColumn *column,
+ GtkRequisition *minimal_size,
+ GtkRequisition *desired_size);
gboolean gtk_tree_view_column_cell_is_visible (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_focus_cell (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]