Re: TreeView column autoresize
- From: David Nečas (Yeti) <yeti physics muni cz>
- To: Gavin Romig-Koch <gavin redhat com>, gtk-list gnome org
- Subject: Re: TreeView column autoresize
- Date: Fri, 22 Dec 2006 19:52:22 +0100
On Fri, Dec 22, 2006 at 01:46:43PM -0500, Gavin Romig-Koch wrote:
>
> _gtk_tree_view_column_cell_set_dirty is often called repeatedly on the same
> column, for instance by gtk_tree_view_column_set_attributesv which calls it
> through gtk_tree_view_column_clear_attributes, and then again through
> gtk_tree_view_column_add_attribute. Because _set_dirty sets resized_width
> to the max of requested_width and button_request, and also sets
> requested_width to -1:
>
> tree_column->resized_width = MAX (tree_column->requested_width,
> tree_column->button_request);
> tree_column->requested_width = -1;
>
> repeatedly calling _set_dirty will force resized_width to
> button_request. This
> can be seen in Nautilus by resizing the File Name column and then
> changing the
> zoom level.
>
> It does not make sense for _gtk_tree_view_column_cell_set_dirty to be
> changing
> resized_width. _set_dirty is used to tell the column cell that one or more
> display related attributes of the cell have changed, and that the cell needs
> to be re-rendered and re-displayed. resized_width keeps track of the fact
> that the user has resized a column directly with the mouse, and what
> size they
> resized it to.
This makes sense and AFAIK no one requests making
_gtk_tree_view_column_cell_set_dirty() recalculate the
requested width again.
But that's quite different from recalculating the width when
the user double-clicks on the column separator. If this was
a feature, the recalculation should be restored somewhere
else in the code handling this event (I haven't looked at
the code paths, so I can't tell where).
Yeti
--
Whatever.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]