GNOME Bugzilla – Bug 113688
debian: No checkbox in TreeView for boolean fields
Last modified: 2004-12-22 21:47:04 UTC
Before the upgrade to the new version (2.2.2-1) there were toggle buttons in columns, representing boolean values. After I recompiled some sources, these toggle buttons disapeared and I can se "TRUE" and "FALSE" captions in the boolean columns only. I think this is some header problem only, because it is working correctly in programs, compiled with previous version of gtkmm.
What distro and compiler are you using?
And there is no such version as "2.2.2-1". Is that an rpm version number maybe?
I'm using Debian SID (i386), g++ (GCC) 3.2.3 and the official .deb package. Yesterday I have compiled gtkmm from the gtkmm-2.2.3 tarball and found the same problem. E.g. demos found in the demos subdir are not using togglebutton, but examples/cellrenderercustom/cellrenderertoggle is using it.
I know it takes a while, but maybe it would be interesting to see if the problem still exists with gtkmm 2.2.0 from source.
Please do try. This is clearly important and we need to figure out where the problem is.
Interesting. There are no toggle buttons with newly compiled 2.2.0. Maybe gtk+ headers are not correct. I'm upgrading the system now...
not working after the update :( Next week I will have more time to find the aexact cause.
> I'm upgrading the system now. I'm not sure what that means. There is a known problem with TreeView with the gcc 3.3.0 compiler, which we are told will be fixed with gcc 3.3.1.
Created attachment 17505 [details] [review] Patch for the cellrenderer problem with treeviews (at least on win32)
Here is my patch for the treeview problem. As on debian, toggle buttons and pixbufs were not rendered properly in treeview columns on the win32 platform. Adding explicit declaration of the generate_cellrenderer full template specialization for types bool and Pixbuf solves the problem on win32. I'm confident this will also fix the bug on Debian. Please try...
I've tested this with my regular RedHat 9. This does not cause any problems so please go ahead and commit it. You hint at another bug in the ChangeLog so please open another bug for that if necessary. The stockbrowser part of the demo actually crashes for me, with or without the patch, but I have a funky cvs gtk+. Zsolt, it would be nice if you could test this patch, or a cvs checkout (check the ChangeLog to make sure it has the patch) for debian.
Applied to both branches.
Everything is now working fine on win32. I have uploaded updated DLLs (and a new installer) on my site. In the ChangeLog, the long-standing bug I was talking to was actually the problem described in this bug report : treeview boolean entries being converted to text, as could be seen in the gtk-demo. No need to open a new bug.
Zsolt, please respond.
I applied this patch against 2.2.3 yesterday, but it is not working well yet: I can not see checkboxes. Additionally, I can see a lot of messages like this starting demo/Tree Store: (lt-demo:11869): GLib-GObject-WARNING **: gobject.c:1032: object class `gtkmm__GtkCellRendererText' has no property named `activatable'
Could you try to compile gtkmm statically and post the error log if you get any multiply defined symbols ?
I'm not 100% sure that patching .hg/.ccg files makes any difference to a tarball. Are the changes really in the .h/.cc files. However, I am fairly sure that the debian problem is caused by the unrelated gcc bug.
Right. I think the modifications to the hg and ccg files are propagated to the corresponding h and cc files IF maintainer mode has been enabled in the configure script (--enable-maintainer-mode). So, please Zsolt, if you're listening, try with this configure option or (if it's easier for you) patch treeviewrenderer.h as in the diff file I provided. I'm confident this will solve the treeview problem on debian.
Yes, this --enable-maintainer-mode was new for me, as I'm new to gtkmm. So the checkboxes are working correctly on Debian SID, using Cedric' patch (g++-3.2.3). Thanks a lot!
OK, well done guys. Cedric, please apply your patch.
Seems you already applied the patch to both branches on 2003-06-14. I guess we can change the status of this bug to resolved.
Oh, right, yes.