[Glade-users] Adding CSharp support to catalog.



On Wed, Oct 7, 2009 at 8:12 AM, Aidin Gharibnavaz <aidin at aidinhut.com> wrote:
Hi!

Is there anyway to add a custom widget, written in CSharp, to Glade's
catalog?

As far as I know, I should write a catalog like:

<?xml version="1.0" encoding="UTF-8"?>
<glade-catalog name="csharptest" library="GladeCustomWidget01.dll">
<glade-widget-classes>
?<glade-widget-class name="Class1" title="widget">
?</glade-widget-class>
</glade-widget-classes>
?<glade-widget-group name="gtk-actions" title="TEST">
??<glade-widget-class-ref name="csharptest"/>
?</glade-widget-group>
</glade-catalog>

'GladeCustomWIdget01.dll' is my custom widget. But it don't work. It says:

GladeUI-WARNING **: Failed to load external library
'GladeCustomWidget01.dll'

But the library is there. I also set the GLADE_MODULE_PATH and
GLADE_CATALOG_PATH in a way that they point to the right places.

I search up and down, but couldn't find any guide, reference, or like that
about
this issue. I tried to edit the catalog in other ways, but I couldn't make
it
work.

Any idea?
It would be great if you give me a working sample, or a document (Those
Galde's docs couldn't help)


Hi, with Glade you can fake the widget and its properties and then back it
in runtime with a language independant widget (if you can load that widget
by type by GtkBuilder, which should work fine with most or all bindings).

As far as loading real types in the Glade runtime goes, we support native
widgets/objects written in C, and we also have a special plugin that runs
an interpretor to load python widgets... I'm not sure how the CSharp bindings
are made, Im sure it would be quite possible to load but we've never done
it before and that might require a special plugin (I explored writing a gtkmm
plugin before and it was possible but just not useful enough for me to work
on it).

Note, in the Glade reference docs you should have available documentation
about all the xml catalog syntax for faking widgets and properties,
its definitely
not a tutorial or a howto, but hopefully the reference documentation can help.

Note the main element you are looking for to fake a widget is to specify
its "parent" class, since Glade needs a known parent class to derive a fake
type from.

Regards,
        -Tristan




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