Re: 'reloading' gtktreeview when model changes drastically

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 2007-08-04 at 17:00 +0200, Philip Van Hoof wrote:

> The model itself is the source. The view is just a viewer for it. The
> source itself doesn't change. The content of the source changes. The
> view, being an observer of the model in the MVC paradigm, should adapt
> to the changes. It should not require a sudden set and unset of its
> model.

I'm a big user of MVC. Although on some level I agree with you, I would
ask what the difference is between:

void gtk_treeview_freeze (GtkTreeView* tv) { 
      /* store model in tv, then unset */
}
void gtk_treeview_thaw (GtkTreeView* tv) {
      /* reset model in tv */
}

and just calling gtk_treeview_set_model (NULL) and
gtk_treeview_set_model (NOTNULL).

there are additional issues: freeze/thaw semantics require use of a
counter, so that, for example, if 3 nested contexts call "freeze", only
the 3rd subsequent call to "thaw" actually unfreezes. contrast this to
the simplicity of code in which only the top level sets+unsets the
model, and all lower levels act on the model regardless of whether its
connected to a view or not.




_______________________________________________
gtk-list mailing list
gtk-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gtk-list

[Index of Archives]     [Touch Screen Library]     [GIMP Users]     [Gnome]     [KDE]     [Yosemite News]     [Steve's Art]

  Powered by Linux