Re: GType stuff again!
- From: "Timothy M. Shead" <tshead k-3d com>
- To: gtkmm-list gnome org
- Subject: Re: GType stuff again!
- Date: Tue, 19 Sep 2006 07:44:55 -0600
On Tue, 2006-09-19 at 14:03 +0200, Murray Cumming wrote:
> > On Tue, 2006-09-19 at 11:43 +0200, Johannes Schmid wrote:
> >> -----BEGIN PGP SIGNED MESSAGE-----
> >> Hash: SHA1
> >>
> >> Hi!
> >>
> >> I tried out the examples in gtkmm to find out if they are able to handle
> >> their GTypenames correclty. Unfortunately they do not:
> >>
> >> std::cout << g_type_name(get_type()) << std::endl;
>
> Maybe get_type() isn't returning what we think it's returning, but I'm
> fairly sure that custom gtypes are being created.
>
> >> in the cellrenderercustom example just gives me
> >> "gtkmm__GtkCellRenderer". But of course g_object_new(type) will give not
> >> give me a custom but a standart CellRenderer.
> >>
> >> Anyway, I still need something that gives me a custom type that
> >> g_object_new can handle.
> >
> > i am confused. since g_object_new cannot possibly instantiate a C++
> > object, what is the value of get_type() returning a value that can be
> > used at the C level?
> >
> > you can't create C++ objects (the ones that gtkmm is composed of) from C
> > without a *lot* more glue code (eg. factory functions declared extern
> > "C" that return each type of object as a gpointer etc etc)
>
> But maybe we really can make it work, by registering an appropriate init
> function for our new GType. It would be clever though.
Seems as if what the questioner wants is a virtual copy constructor, it
ought to be trivial to do this using the C++ type system instead of
messing around in C.
Cheers,
Tim
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]