Re: Adjustment problem



Here is a working patch.  Although, really its more of a work around.
Someone should ask on the gtk list whats going on with this class.
Its kind of schizophrenic.  The GtkAdjustment structure contains six
member variables that are also listed as properties. Murray might know
better, but I've been under the impression that properties are stored
and retrieved using functions that operate on the gobject.

Ie, the value, lower, upper, et al values are stored as *both*
properties and structure member variables.

What appears to be happening, is that when gtkmm instantiates an
Adjustment, the property values are set correctly, but not the
structure member variables, but when other gtkmm objects access the
adjustment properties, they're accessing the structure values..... (I
think)

Anyway, this patch seems to fix things.

Amadeus, I don't think jhbuild does rpms. I'm not sure how that
process works.  Although, I imagine that it wouldn't be too hard to
apply these changes to an existing source tree and repackage because
no files are created or destroyed.

And it should be abi compatible too. I think...

Paul

PS, Murray, do you some nifty program to do your change log editing?

On 10/31/06, Amadeus W.M. <amadeus84 verizon net> wrote:
On Tue, 31 Oct 2006 13:52:09 -0600, Paul Davis wrote:

> I think I've got a patch thats compiling right now, but I'll have to
> wait and see.

Excellent!

>
> I recommend building using jhbuild, it makes everything pretty simple,
> the first build takes awhile cause it builds all the dependancies it
> needs, but its fairly automatic.
>

Can I make rpms after it compiles with jhbuild? I've never used it.
I'll probably try to get a .spec file from existing src.rpms and see if I
can do it that way.


> I'll let you know when this is done if it worked
>
> Paul
>
> PS I wasn't paying to much attention to gmail's outgoing message format, my bad.
>

No problem.



_______________________________________________
gtkmm-list mailing list
gtkmm-list gnome org
http://mail.gnome.org/mailman/listinfo/gtkmm-list

? adjustment.patch
? MSVC_Net2003/examples/printing/Makefile
? MSVC_Net2003/examples/printing/Makefile.in
? examples/arrow/.deps
? examples/book/drag_and_drop/.deps
? examples/book/drag_and_drop/.libs
? examples/book/drawingarea/arcs/.deps
? examples/book/drawingarea/arcs/.libs
? examples/book/drawingarea/clock/.deps
? examples/book/drawingarea/clock/.libs
? examples/book/drawingarea/curve/.deps
? examples/book/drawingarea/curve/.libs
? examples/book/drawingarea/joins/.deps
? examples/book/drawingarea/joins/.libs
? examples/book/drawingarea/simple/.deps
? examples/book/drawingarea/simple/.libs
? examples/book/helloworld/.deps
? examples/book/helloworld/.libs
? examples/book/helloworld2/.deps
? examples/book/helloworld2/.libs
? examples/book/iconview/.deps
? examples/book/iconview/.libs
? examples/book/printing/advanced/.deps
? examples/book/printing/advanced/.libs
? examples/book/printing/simple/.deps
? examples/book/printing/simple/.libs
? examples/book/timeout/.deps
? examples/book/timeout/.libs
? examples/book/treeview/listviewtext/.deps
? examples/book/treeview/listviewtext/.libs
? examples/book/treeview/popup/.deps
? examples/book/treeview/popup/.libs
? examples/book/update_ui/.deps
? examples/book/update_ui/.libs
? examples/calendar/.deps
? examples/dnd/.deps
? examples/dnd/.libs
? examples/exception/.deps
? examples/exception/.libs
? examples/gdk/.deps
? examples/rulers/.deps
? examples/statusbar/.deps
? examples/stock/.deps
? examples/stock/.libs
? examples/tictactoe/.deps
? examples/window/.deps
? tools/extra_defs_gen/.deps
? tools/extra_defs_gen/.libs
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gtkmm/ChangeLog,v
retrieving revision 1.586
diff -u -p -r1.586 ChangeLog
--- ChangeLog	11 Oct 2006 13:37:01 -0000	1.586
+++ ChangeLog	31 Oct 2006 20:17:32 -0000
@@ -1,3 +1,9 @@
+2006-10-31  Paul Davis  <pjdavis engineering uiowa edu>
+
+	* gtk/src/adjustment.hg
+	* gtk/src/adjustment.ccg: Unwrapped the constructor so that I could
+	set the GtkAdjustment structure variables by hand.
+
 2006-10-11  Murray Cumming  <murrayc murrayc com>
 
 	* docs/tutorial/gtkmm-tut.xml: Added an appendix describing the optional 
Index: gtk/src/adjustment.ccg
===================================================================
RCS file: /cvs/gnome/gtkmm/gtk/src/adjustment.ccg,v
retrieving revision 1.2
diff -u -p -r1.2 adjustment.ccg
--- gtk/src/adjustment.ccg	15 Dec 2005 16:32:14 -0000	1.2
+++ gtk/src/adjustment.ccg	31 Oct 2006 20:17:33 -0000
@@ -24,6 +24,22 @@
 namespace Gtk
 {
 
+Adjustment::Adjustment(double value, double lower, double upper, double step_increment, double page_increment, double page_size)
+:
+  Glib::ObjectBase(0), //Mark this class as gtkmmproc-generated, rather than a custom class, to allow vfunc optimisations.
+  Gtk::Object(Glib::ConstructParams(adjustment_class_.init(), "value", value, "lower", lower, "upper", upper, "step_increment", step_increment, "page_increment", page_increment, "page_size", page_size, (char*) 0))
+{
+	gobj()->value = value ;
+	gobj()->lower = lower ;
+	gobj()->upper = upper ;
+	gobj()->step_increment = step_increment ;
+	gobj()->page_increment = page_increment ;
+	gobj()->page_size = page_size ;
+
+}
+
+
+
 void Adjustment::set_lower(double lower)
 {
   gobj()->lower = lower;
Index: gtk/src/adjustment.hg
===================================================================
RCS file: /cvs/gnome/gtkmm/gtk/src/adjustment.hg,v
retrieving revision 1.4
diff -u -p -r1.4 adjustment.hg
--- gtk/src/adjustment.hg	15 Dec 2005 16:32:16 -0000	1.4
+++ gtk/src/adjustment.hg	31 Oct 2006 20:17:33 -0000
@@ -60,7 +60,7 @@ public:
    * @param page_increment The page increment
    * @param page_size The page size
    */
-  _WRAP_CTOR(Adjustment(double value, double lower, double upper, double step_increment = 1, double page_increment = 10, double page_size = 0), gtk_adjustment_new)
+   Adjustment(double value, double lower, double upper, double step_increment = 1, double page_increment = 10, double page_size = 0) ;
   
   _WRAP_METHOD(void changed(), gtk_adjustment_changed)
   _WRAP_METHOD(void value_changed(), gtk_adjustment_value_changed)


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