GtkTreeModel
- From: Christer Palm <palm nogui se>
- To: gtk-list gnome org
- Subject: GtkTreeModel
- Date: Sun, 31 Aug 2003 20:27:05 +0200
Hi!
A question for all you GtkTreeModel wizards out there;
I have implemented a custom GtkTreeModel to model a directory tree. For
obvious performance reasons, I need to delay the scanning of a
subdirectory until the user actually expands it. Thus, all directories
will initially be assumed to contain subdirectories (i.e. my
gtk_tree_model_iter_has_child() implementation speculatively returns true).
The tricky part is what happens if the user tries to expand a
subdirectory which doesn't happen to contain any subdirectories. Just
like the Windoze explorer (cough) directory view, I want the expander
for that directory to "magically" disappear when the user tries to
expand it.
However, just having the model change its mind turns out to be a very
bad idea. I get messages like:
(DirectoryTreeTest:30175): Gtk-CRITICAL **: file gtktreeview.c: line
3243 (gtk_tree_view_bin_expose): assertion `has_child' failed.
There is a disparity between the internal view of the GtkTreeView,
and the GtkTreeModel. This generally means that the model has changed
without letting the view know. Any display from now on is likely to
be incorrect.
all over the place...
How can I "let the view know" that the model has changed, and is it safe
to do it from within the GtkTreeModel implementation?
Cheers,
--
Christer Palm
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]