[Mono-dev] Cairo on win32?
Idan Gazit
idan at fastmail.fm
Sun Sep 4 07:46:12 EDT 2005
Hi again,
>> I'm trying to compile/run the cairo examples in the samples directory. I
>> can compile OK, however running yields the following error:
>>
>> Unhandled Exception: System.EntryPointNotFoundException:
>> gdk_x11_drawable_get_xid
>> in (wrapper managed-to-native) GtkCairo:gdk_x11_drawable_get_xid (intptr)
>
> This is meant to work on X. Could you try the PNG samples?
A few things:
1. The cairo samples in question pretty specifically reference Win32
(besides the fact that they are distributed in the win32 installer) --
at the top of GtkCairo.cs you have the following import statements:
[DllImport("libgdk-win32-2.0-0.dll")]
static extern IntPtr gdk_x11_drawable_get_xdisplay (IntPtr raw);
[DllImport("libgdk-win32-2.0-0.dll")]
static extern IntPtr gdk_x11_drawable_get_xid (IntPtr raw);
[DllImport("libgdk-win32-2.0-0.dll")]
static extern void gdk_window_get_internal_paint_info(IntPtr raw, out
IntPtr real_drawable, out int x_offset, out int y_offset);
I get it that gdk_x11_... refers to an X call, but I figured that it is
probably remapped inside GDK-win32 to some win32-specific call. Am I
wrong? Is there a win32-equivalent call? Either way it doesn't seem that
gdk_x11_drawable_get_xid is exported on libgdk-win32-2.0-0.dll, hence
the error, right?
2. What are the PNG samples that you're referring to? There are many
samples, none of which are definitively the "PNG Samples".
My goal is to code with Cairo on win32, specifically I'm working on a
new widget which requires some drawing of (vector) graphics. If it's
just not doable with cairo today then please let me know, better to bail
early than to waste time beating a dead horse.
3. Is there a "Right Way" to do vector drawing today? I understand that
GTK will use Cairo as the drawing backend in the future, and also
System.Drawing -- so with the current state of affairs, if I want to
code a custom widget using a DrawingArea, is there an approach I should
be favoring?
Thanks (Hisham) & everybody else. :)
-Idan
More information about the Mono-devel-list
mailing list