Author: danw
Date: 2005-03-21 09:29:24 -0500 (Mon, 21 Mar 2005)
New Revision: 42049
Removed:
trunk/stetic/libstetic/ParamFlags.cs
Modified:
trunk/stetic/ChangeLog
trunk/stetic/glue/paramspec.c
trunk/stetic/libstetic/Makefile.am
trunk/stetic/libstetic/ParamSpec.cs
trunk/stetic/libstetic/libstetic.dll.config
trunk/stetic/libstetic/wrapper/Container.cs
Log:
* glue/paramspec.c:
* libstetic/ParamSpec.cs: Simplify based on the latest version of
the patch in #70061.
* libstetic/ParamFlags.cs: gone; we never used this
* libstetic/libstetic.dll.config: add libgtk to the map
Modified: trunk/stetic/ChangeLog
===================================================================
--- trunk/stetic/ChangeLog 2005-03-21 14:22:52 UTC (rev 42048)
+++ trunk/stetic/ChangeLog 2005-03-21 14:29:24 UTC (rev 42049)
@@ -1,3 +1,13 @@
+2005-03-21 Dan Winship <[EMAIL PROTECTED]>
+
+ * glue/paramspec.c:
+ * libstetic/ParamSpec.cs: Simplify based on the latest version of
+ the patch in #70061.
+
+ * libstetic/ParamFlags.cs: gone; we never used this
+
+ * libstetic/libstetic.dll.config: add libgtk to the map
+
2005-03-18 Dan Winship <[EMAIL PROTECTED]>
* libstetic/editor/Image.cs: editor that allows selecting a stock
Modified: trunk/stetic/glue/paramspec.c
===================================================================
--- trunk/stetic/glue/paramspec.c 2005-03-21 14:22:52 UTC (rev 42048)
+++ trunk/stetic/glue/paramspec.c 2005-03-21 14:29:24 UTC (rev 42049)
@@ -1,164 +1,110 @@
-/* Copyright (c) 2004 Novell, Inc. */
+/* Copyright (c) 2004-2005 Novell, Inc. */
#include <glib-object.h>
-#include <gtk/gtkcontainer.h>
-GParamSpec *stetic_param_spec_for_property (GType type, const char
*property_name);
-GParamSpec *stetic_param_spec_for_child_property (GType type, const char
*property_name);
-
-GParamSpec *
-stetic_param_spec_for_property (GType type, const char *property_name)
-{
- GObjectClass *klass = g_type_class_ref (type);
- GParamSpec *pspec;
-
- pspec = g_object_class_find_property (klass, property_name);
- g_type_class_unref (klass);
- return pspec;
-}
-
-GParamSpec *
-stetic_param_spec_for_child_property (GType type, const char *property_name)
-{
- GtkContainerClass *klass = g_type_class_ref (type);
- GParamSpec *pspec;
-
- pspec = gtk_container_class_find_child_property (g_type_class_peek
(type), property_name);
- g_type_class_unref (klass);
- return pspec;
-}
-
-GParamFlags stetic_param_spec_get_flags (GParamSpec *pspec);
GType stetic_param_spec_get_value_type (GParamSpec *pspec);
-GType stetic_param_spec_get_owner_type (GParamSpec *pspec);
+gboolean stetic_param_spec_get_minimum (GParamSpec *pspec, GValue *value);
+gboolean stetic_param_spec_get_maximum (GParamSpec *pspec, GValue *value);
+gboolean stetic_param_spec_get_default (GParamSpec *pspec, GValue *value);
-GParamFlags
-stetic_param_spec_get_flags (GParamSpec *pspec)
-{
- return pspec->flags;
-}
-
GType
stetic_param_spec_get_value_type (GParamSpec *pspec)
{
return pspec->value_type;
}
-GType
-stetic_param_spec_get_owner_type (GParamSpec *pspec)
+gboolean
+stetic_param_spec_get_minimum (GParamSpec *pspec, GValue *value)
{
- return pspec->owner_type;
-}
+ g_value_init (value, pspec->value_type);
-#define STETIC_PARAM_SPEC_RANGE_TYPE(name, typename, type)
\
-type stetic_param_spec_##name##_get_minimum (GParamSpec##typename *pspec);
\
-type stetic_param_spec_##name##_get_maximum (GParamSpec##typename *pspec);
\
-type stetic_param_spec_##name##_get_default (GParamSpec##typename *pspec);
\
-
\
-type
\
-stetic_param_spec_##name##_get_minimum (GParamSpec##typename *pspec)
\
-{
\
- return pspec->minimum;
\
-}
\
-
\
-type
\
-stetic_param_spec_##name##_get_maximum (GParamSpec##typename *pspec)
\
-{
\
- return pspec->maximum;
\
-}
\
-
\
-type
\
-stetic_param_spec_##name##_get_default (GParamSpec##typename *pspec)
\
-{
\
- return pspec->default_value;
\
+ if (G_IS_PARAM_SPEC_CHAR (pspec))
+ g_value_set_char (value, G_PARAM_SPEC_CHAR (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_UCHAR (pspec))
+ g_value_set_uchar (value, G_PARAM_SPEC_UCHAR (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_INT (pspec))
+ g_value_set_int (value, G_PARAM_SPEC_INT (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_UINT (pspec))
+ g_value_set_uint (value, G_PARAM_SPEC_UINT (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_LONG (pspec))
+ g_value_set_long (value, G_PARAM_SPEC_LONG (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_ULONG (pspec))
+ g_value_set_ulong (value, G_PARAM_SPEC_ULONG (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_INT64 (pspec))
+ g_value_set_int64 (value, G_PARAM_SPEC_INT64 (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_UINT64 (pspec))
+ g_value_set_uint64 (value, G_PARAM_SPEC_UINT64
(pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_FLOAT (pspec))
+ g_value_set_float (value, G_PARAM_SPEC_FLOAT (pspec)->minimum);
+ else if (G_IS_PARAM_SPEC_DOUBLE (pspec))
+ g_value_set_double (value, G_PARAM_SPEC_DOUBLE
(pspec)->minimum);
+ else
+ return FALSE;
+ return TRUE;
}
-#define STETIC_PARAM_SPEC_DEFAULTABLE_TYPE(name, typename, type)
\
-type stetic_param_spec_##name##_get_default (GParamSpec##typename *pspec);
\
-
\
-type
\
-stetic_param_spec_##name##_get_default (GParamSpec##typename *pspec)
\
-{
\
- return pspec->default_value;
\
-}
-
-#define STETIC_PARAM_SPEC_ACCESSOR(name, typename, type, field)
\
-type stetic_param_spec_##name##_get_##field (GParamSpec##typename *pspec);
\
-
\
-type
\
-stetic_param_spec_##name##_get_##field (GParamSpec##typename *pspec)
\
-{
\
- return pspec->field;
\
-}
-
-STETIC_PARAM_SPEC_RANGE_TYPE (char, Char, char)
-STETIC_PARAM_SPEC_RANGE_TYPE (uchar, UChar, guchar)
-STETIC_PARAM_SPEC_DEFAULTABLE_TYPE (boolean, Boolean, gboolean)
-STETIC_PARAM_SPEC_RANGE_TYPE (int, Int, int)
-STETIC_PARAM_SPEC_RANGE_TYPE (uint, UInt, guint)
-STETIC_PARAM_SPEC_RANGE_TYPE (long, Long, long)
-STETIC_PARAM_SPEC_RANGE_TYPE (ulong, ULong, gulong)
-STETIC_PARAM_SPEC_RANGE_TYPE (int64, Int64, gint64)
-STETIC_PARAM_SPEC_RANGE_TYPE (uint64, UInt64, guint64)
-STETIC_PARAM_SPEC_DEFAULTABLE_TYPE (unichar, Unichar, gunichar)
-STETIC_PARAM_SPEC_DEFAULTABLE_TYPE (enum, Enum, int)
-STETIC_PARAM_SPEC_DEFAULTABLE_TYPE (flags, Flags, guint)
-STETIC_PARAM_SPEC_RANGE_TYPE (float, Float, float)
-STETIC_PARAM_SPEC_ACCESSOR (float, Float, float, epsilon)
-STETIC_PARAM_SPEC_RANGE_TYPE (double, Double, double)
-STETIC_PARAM_SPEC_ACCESSOR (double, Double, double, epsilon)
-STETIC_PARAM_SPEC_DEFAULTABLE_TYPE (string, String, const char *)
-STETIC_PARAM_SPEC_ACCESSOR (value_array, ValueArray, guint, fixed_n_elements)
-STETIC_PARAM_SPEC_ACCESSOR (value_array, ValueArray, GParamSpec *,
element_spec)
-STETIC_PARAM_SPEC_ACCESSOR (override, Override, GParamSpec *, overridden)
-
-int stetic_param_spec_enum_get_minimum (GParamSpecEnum *pspec);
-int stetic_param_spec_enum_get_maximum (GParamSpecEnum *pspec);
-
-int
-stetic_param_spec_enum_get_minimum (GParamSpecEnum *pspec)
+gboolean
+stetic_param_spec_get_maximum (GParamSpec *pspec, GValue *value)
{
- return pspec->enum_class->minimum;
-}
+ g_value_init (value, pspec->value_type);
-int
-stetic_param_spec_enum_get_maximum (GParamSpecEnum *pspec)
-{
- return pspec->enum_class->maximum;
-}
-
-const char *stetic_param_spec_enum_get_value_name (GParamSpecEnum *pspec, int
value);
-
-const char *
-stetic_param_spec_enum_get_value_name (GParamSpecEnum *pspec, int value)
-{
- GEnumValue *ev;
-
- ev = g_enum_get_value (pspec->enum_class, value);
- if (ev)
- return ev->value_nick;
+ if (G_IS_PARAM_SPEC_CHAR (pspec))
+ g_value_set_char (value, G_PARAM_SPEC_CHAR (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_UCHAR (pspec))
+ g_value_set_uchar (value, G_PARAM_SPEC_UCHAR (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_INT (pspec))
+ g_value_set_int (value, G_PARAM_SPEC_INT (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_UINT (pspec))
+ g_value_set_uint (value, G_PARAM_SPEC_UINT (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_LONG (pspec))
+ g_value_set_long (value, G_PARAM_SPEC_LONG (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_ULONG (pspec))
+ g_value_set_ulong (value, G_PARAM_SPEC_ULONG (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_INT64 (pspec))
+ g_value_set_int64 (value, G_PARAM_SPEC_INT64 (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_UINT64 (pspec))
+ g_value_set_uint64 (value, G_PARAM_SPEC_UINT64
(pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_FLOAT (pspec))
+ g_value_set_float (value, G_PARAM_SPEC_FLOAT (pspec)->maximum);
+ else if (G_IS_PARAM_SPEC_DOUBLE (pspec))
+ g_value_set_double (value, G_PARAM_SPEC_DOUBLE
(pspec)->maximum);
else
- return NULL;
+ return FALSE;
+ return TRUE;
}
-guint stetic_param_spec_flags_get_mask (GParamSpecFlags *pspec);
-
-guint
-stetic_param_spec_flags_get_mask (GParamSpecFlags *pspec)
+gboolean
+stetic_param_spec_get_default (GParamSpec *pspec, GValue *value)
{
- return pspec->flags_class->mask;
-}
+ g_value_init (value, pspec->value_type);
-const char *stetic_param_spec_flags_get_value_name (GParamSpecFlags *pspec,
guint value);
-
-const char *
-stetic_param_spec_flags_get_value_name (GParamSpecFlags *pspec, guint value)
-{
- GFlagsValue *fv;
-
- fv = g_flags_get_first_value (pspec->flags_class, value);
- if (fv)
- return fv->value_nick;
+ if (G_IS_PARAM_SPEC_CHAR (pspec))
+ g_value_set_char (value, G_PARAM_SPEC_CHAR
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_UCHAR (pspec))
+ g_value_set_uchar (value, G_PARAM_SPEC_UCHAR
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_INT (pspec))
+ g_value_set_int (value, G_PARAM_SPEC_INT
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_UINT (pspec))
+ g_value_set_uint (value, G_PARAM_SPEC_UINT
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_LONG (pspec))
+ g_value_set_long (value, G_PARAM_SPEC_LONG
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_ULONG (pspec))
+ g_value_set_ulong (value, G_PARAM_SPEC_ULONG
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_INT64 (pspec))
+ g_value_set_int64 (value, G_PARAM_SPEC_INT64
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_UINT64 (pspec))
+ g_value_set_uint64 (value, G_PARAM_SPEC_UINT64
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_FLOAT (pspec))
+ g_value_set_float (value, G_PARAM_SPEC_FLOAT
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_DOUBLE (pspec))
+ g_value_set_double (value, G_PARAM_SPEC_DOUBLE
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_BOOLEAN (pspec))
+ g_value_set_boolean (value, G_PARAM_SPEC_BOOLEAN
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_UNICHAR (pspec))
+ g_value_set_uint (value, G_PARAM_SPEC_UNICHAR
(pspec)->default_value);
+ else if (G_IS_PARAM_SPEC_STRING (pspec))
+ g_value_set_static_string (value, G_PARAM_SPEC_STRING
(pspec)->default_value);
else
- return NULL;
+ return FALSE;
+ return TRUE;
}
Modified: trunk/stetic/libstetic/Makefile.am
===================================================================
--- trunk/stetic/libstetic/Makefile.am 2005-03-21 14:22:52 UTC (rev 42048)
+++ trunk/stetic/libstetic/Makefile.am 2005-03-21 14:29:24 UTC (rev 42049)
@@ -15,7 +15,6 @@
IWidgetSite.cs \
ObjectWrapper.cs \
ObjectWrapperAttribute.cs \
- ParamFlags.cs \
ParamSpec.cs \
PropertyDescriptor.cs \
PropertyEditorAttribute.cs \
Deleted: trunk/stetic/libstetic/ParamFlags.cs
===================================================================
--- trunk/stetic/libstetic/ParamFlags.cs 2005-03-21 14:22:52 UTC (rev
42048)
+++ trunk/stetic/libstetic/ParamFlags.cs 2005-03-21 14:29:24 UTC (rev
42049)
@@ -1,32 +0,0 @@
-// GLib.ParamFlags.cs : GParamFlags
-//
-// Copyright (c) 2004 Novell, Inc.
-//
-// This program is free software; you can redistribute it and/or
-// modify it under the terms of version 2 of the Lesser GNU General
-// Public License as published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this program; if not, write to the
-// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-// Boston, MA 02111-1307, USA.
-
-
-namespace GLib {
-
- using System;
-
- [Flags]
- public enum ParamFlags {
- Readable = 1 << 0,
- Writable = 1 << 1,
- Construct = 1 << 2,
- ConstructOnly = 1 << 3,
- LaxValidation = 1 << 4
- }
-}
Modified: trunk/stetic/libstetic/ParamSpec.cs
===================================================================
--- trunk/stetic/libstetic/ParamSpec.cs 2005-03-21 14:22:52 UTC (rev 42048)
+++ trunk/stetic/libstetic/ParamSpec.cs 2005-03-21 14:29:24 UTC (rev 42049)
@@ -1,35 +1,15 @@
-// GLib.ParamSpec.cs - ParamSpec implementation
-//
-// Copyright (c) 2004 Novell, Inc.
-//
-// This program is free software; you can redistribute it and/or
-// modify it under the terms of version 2 of the Lesser GNU General
-// Public License as published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this program; if not, write to the
-// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-// Boston, MA 02111-1307, USA.
-
-
using GLib;
using Gtk;
+using System;
+using System.Collections;
+using System.Runtime.InteropServices;
namespace Stetic {
- using System;
- using System.Collections;
- using System.Runtime.InteropServices;
-
- public class ParamSpec : IWrapper, IDisposable {
+ public class ParamSpec : IDisposable {
IntPtr _obj;
- protected ParamSpec (IntPtr raw)
+ public ParamSpec (IntPtr raw)
{
Raw = raw;
}
@@ -45,16 +25,7 @@
GC.SuppressFinalize (this);
}
- [DllImport("libgobject-2.0-0.dll")]
- static extern void g_param_spec_ref (IntPtr obj);
-
- [DllImport("libgobject-2.0-0.dll")]
- static extern void g_param_spec_unref (IntPtr obj);
-
- [DllImport("libgobject-2.0-0.dll")]
- static extern void g_param_spec_sink (IntPtr obj);
-
- protected IntPtr Raw {
+ IntPtr Raw {
get {
return _obj;
}
@@ -69,63 +40,62 @@
}
}
- public IntPtr Handle {
- get {
- return _obj;
- }
- }
-
- [DllImport("libgobject-2.0-0.dll")]
- static extern IntPtr g_param_spec_get_name (IntPtr obj);
-
public string Name {
get {
- return Marshal.PtrToStringAnsi
(g_param_spec_get_name (_obj));
+ return GLib.Marshaller.Utf8PtrToString
(g_param_spec_get_name (_obj));
}
}
- [DllImport("libgobject-2.0-0.dll")]
- static extern IntPtr g_param_spec_get_nick (IntPtr obj);
-
public string Nick {
get {
- return Marshal.PtrToStringAnsi
(g_param_spec_get_nick (_obj));
+ return GLib.Marshaller.Utf8PtrToString
(g_param_spec_get_nick (_obj));
}
}
- [DllImport("libgobject-2.0-0.dll")]
- static extern IntPtr g_param_spec_get_blurb (IntPtr obj);
-
public string Blurb {
get {
- return Marshal.PtrToStringAnsi
(g_param_spec_get_blurb (_obj));
+ return GLib.Marshaller.Utf8PtrToString
(g_param_spec_get_blurb (_obj));
}
}
- public virtual object Minimum {
- get {
- return null;
- }
- }
+ [DllImport("libsteticglue")]
+ static extern bool stetic_param_spec_get_minimum (IntPtr pspec,
ref GLib.Value value);
- public virtual object Maximum {
+ public object Minimum {
get {
- return null;
+ GLib.Value value = new GLib.Value ();
+
+ if (stetic_param_spec_get_minimum (Raw, ref
value))
+ return value.Val;
+ else
+ return null;
}
}
- public virtual object Default {
+ [DllImport("libsteticglue")]
+ static extern bool stetic_param_spec_get_maximum (IntPtr pspec,
ref GLib.Value value);
+
+ public object Maximum {
get {
- return null;
+ GLib.Value value = new GLib.Value ();
+
+ if (stetic_param_spec_get_maximum (Raw, ref
value))
+ return value.Val;
+ else
+ return null;
}
}
[DllImport("libsteticglue")]
- static extern ParamFlags stetic_param_spec_get_flags (IntPtr
obj);
-
- public ParamFlags Flags {
+ static extern bool stetic_param_spec_get_default (IntPtr pspec,
ref GLib.Value value);
+ public object Default {
get {
- return stetic_param_spec_get_flags (_obj);
+ GLib.Value value = new GLib.Value ();
+
+ if (stetic_param_spec_get_default (Raw, ref
value))
+ return value.Val;
+ else
+ return null;
}
}
@@ -138,588 +108,87 @@
}
}
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_get_owner_type (IntPtr
obj);
+ static Hashtable props = new Hashtable (), childProps = new
Hashtable ();
- public IntPtr OwnerType {
- get {
- return stetic_param_spec_get_owner_type (_obj);
- }
- }
-
- static Hashtable typemap;
-
- [DllImport("libglibsharpglue-2.dll")]
- static extern int gtksharp_get_type_id (IntPtr raw);
-
- static public ParamSpec Wrap (IntPtr raw)
- {
- Type type = typemap[gtksharp_get_type_id (raw)] as Type;
-
- if (type != null) {
- object[] args = { raw };
- return (ParamSpec)
System.Activator.CreateInstance (type, args);
- } else
- return new ParamSpec (raw);
- }
-
private class ParamSpecTypeHack : GLib.Object {
private ParamSpecTypeHack () : base (IntPtr.Zero) {}
- public static new GType LookupGType (System.Type t)
+ static Hashtable classes = new Hashtable ();
+
+ public static IntPtr LookupGTypeClass (System.Type t)
{
- return GLib.Object.LookupGType (t);
+ if (classes[t] == null) {
+ GType gtype = GLib.Object.LookupGType
(t);
+ classes[t] = g_type_class_ref
(gtype.Val);
+ }
+
+ return (IntPtr)classes[t];
}
}
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_for_property (GLib.GType
type, string property_name);
-
- static public ParamSpec LookupObjectProperty (Type type, string
property)
+ public static ParamSpec LookupObjectProperty (Type type, string
name)
{
- IntPtr raw_ret = stetic_param_spec_for_property
(ParamSpecTypeHack.LookupGType (type), property);
- if (raw_ret == IntPtr.Zero)
+ string key = type.FullName + ":" + name;
+ if (props[key] != null)
+ return (ParamSpec)props[key];
+
+ IntPtr klass = ParamSpecTypeHack.LookupGTypeClass
(type);
+ if (klass == IntPtr.Zero)
return null;
- else
- return ParamSpec.Wrap (raw_ret);
- }
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_for_child_property
(GLib.GType type, string property_name);
-
- static public ParamSpec LookupChildProperty (Type type, string
property)
- {
- IntPtr raw_ret = stetic_param_spec_for_child_property
(ParamSpecTypeHack.LookupGType (type), property);
- if (raw_ret == IntPtr.Zero)
+ IntPtr pspec_raw = g_object_class_find_property (klass,
name);
+ if (pspec_raw == IntPtr.Zero)
return null;
- else
- return ParamSpec.Wrap (raw_ret);
+
+ ParamSpec pspec = new ParamSpec (pspec_raw);
+ props[key] = pspec;
+ return pspec;
}
- [DllImport("libgobject-2.0-0.dll")]
- static extern int g_type_from_name (string name);
-
- static ParamSpec ()
+ public static ParamSpec LookupChildProperty (Type type, string
name)
{
- typemap = new Hashtable ();
+ string key = type.FullName + ":" + name;
+ if (childProps[key] != null)
+ return (ParamSpec)childProps[key];
- typemap[g_type_from_name ("GParamChar")] = typeof
(ParamSpecChar);
- typemap[g_type_from_name ("GParamUChar")] = typeof
(ParamSpecUChar);
- typemap[g_type_from_name ("GParamInt")] = typeof
(ParamSpecInt);
- typemap[g_type_from_name ("GParamUInt")] = typeof
(ParamSpecUInt);
- typemap[g_type_from_name ("GParamLong")] = typeof
(ParamSpecLong);
- typemap[g_type_from_name ("GParamULong")] = typeof
(ParamSpecULong);
- typemap[g_type_from_name ("GParamInt64")] = typeof
(ParamSpecInt64);
- typemap[g_type_from_name ("GParamUInt64")] = typeof
(ParamSpecUInt64);
- typemap[g_type_from_name ("GParamFloat")] = typeof
(ParamSpecFloat);
- typemap[g_type_from_name ("GParamDouble")] = typeof
(ParamSpecDouble);
- typemap[g_type_from_name ("GParamBoolean")] = typeof
(ParamSpecBoolean);
- typemap[g_type_from_name ("GParamEnum")] = typeof
(ParamSpecEnum);
- typemap[g_type_from_name ("GParamFlags")] = typeof
(ParamSpecFlags);
- typemap[g_type_from_name ("GParamUnichar")] = typeof
(ParamSpecUnichar);
- typemap[g_type_from_name ("GParamString")] = typeof
(ParamSpecString);
- typemap[g_type_from_name ("GParamParam")] = typeof
(ParamSpecParam);
- typemap[g_type_from_name ("GParamBoxed")] = typeof
(ParamSpecBoxed);
- typemap[g_type_from_name ("GParamPointer")] = typeof
(ParamSpecPointer);
- typemap[g_type_from_name ("GParamValueArray")] = typeof
(ParamSpecValueArray);
- typemap[g_type_from_name ("GParamObject")] = typeof
(ParamSpecObject);
- typemap[g_type_from_name ("GParamOverride")] = typeof
(ParamSpecOverride);
- }
- }
-
- public class ParamSpecChar : ParamSpec {
- public ParamSpecChar (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern sbyte stetic_param_spec_char_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_char_get_minimum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern sbyte stetic_param_spec_char_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_char_get_maximum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern sbyte stetic_param_spec_char_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_char_get_default (Raw);
- }
- }
- }
-
- public class ParamSpecUChar : ParamSpec {
- public ParamSpecUChar (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern byte stetic_param_spec_uchar_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_uchar_get_minimum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern byte stetic_param_spec_uchar_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_uchar_get_maximum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern byte stetic_param_spec_uchar_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_uchar_get_default
(Raw);
- }
- }
- }
-
- public class ParamSpecBoolean : ParamSpec {
- public ParamSpecBoolean (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern bool stetic_param_spec_boolean_get_default
(IntPtr obj);
-
- public override object Default {
- get {
- return stetic_param_spec_boolean_get_default
(Raw);
- }
- }
- }
-
- public class ParamSpecInt : ParamSpec {
- public ParamSpecInt (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_int_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_int_get_minimum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_int_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_int_get_maximum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_int_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_int_get_default (Raw);
- }
- }
- }
-
- public class ParamSpecUInt : ParamSpec {
- public ParamSpecUInt (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_uint_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_uint_get_minimum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_uint_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_uint_get_maximum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_uint_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_uint_get_default (Raw);
- }
- }
- }
-
- public class ParamSpecLong : ParamSpec {
- public ParamSpecLong (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_long_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_long_get_minimum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_long_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_long_get_maximum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_long_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_long_get_default (Raw);
- }
- }
- }
-
- public class ParamSpecULong : ParamSpec {
- public ParamSpecULong (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_ulong_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_ulong_get_minimum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_ulong_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_ulong_get_maximum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_ulong_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_ulong_get_default
(Raw);
- }
- }
- }
-
- public class ParamSpecInt64 : ParamSpec {
- public ParamSpecInt64 (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern long stetic_param_spec_int64_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_int64_get_minimum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern long stetic_param_spec_int64_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_int64_get_maximum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern long stetic_param_spec_int64_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_int64_get_default
(Raw);
- }
- }
- }
-
- public class ParamSpecUInt64 : ParamSpec {
- public ParamSpecUInt64 (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern ulong stetic_param_spec_uint64_get_minimum
(IntPtr obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_uint64_get_minimum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern ulong stetic_param_spec_uint64_get_maximum
(IntPtr obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_uint64_get_maximum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern ulong stetic_param_spec_uint64_get_default
(IntPtr obj);
-
- public override object Default {
- get {
- return stetic_param_spec_uint64_get_default
(Raw);
- }
- }
- }
-
- public class ParamSpecUnichar : ParamSpec {
- public ParamSpecUnichar (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_unichar_get_default
(IntPtr obj);
-
- public override object Default {
- get {
- return Marshaller.GUnicharToChar
(stetic_param_spec_unichar_get_default (Raw));
- }
- }
- }
-
- public class ParamSpecEnum : ParamSpec {
- public ParamSpecEnum (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_enum_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_enum_get_minimum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_enum_get_maximum (IntPtr
obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_enum_get_maximum (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern int stetic_param_spec_enum_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_enum_get_default (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_enum_get_value_name
(IntPtr obj, int value);
-
- public string ValueName (int value) {
- IntPtr raw_ret = stetic_param_spec_enum_get_value_name
(Raw, value);
- if (raw_ret == IntPtr.Zero)
+ IntPtr klass = ParamSpecTypeHack.LookupGTypeClass
(type);
+ if (klass == IntPtr.Zero)
return null;
- else
- return Marshal.PtrToStringAnsi (raw_ret);
- }
- }
- public class ParamSpecFlags : ParamSpec {
- public ParamSpecFlags (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_flags_get_mask (IntPtr
obj);
-
- public uint Mask {
- get {
- return stetic_param_spec_flags_get_mask (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern uint stetic_param_spec_flags_get_default (IntPtr
obj);
-
- public override object Default {
- get {
- return stetic_param_spec_flags_get_default
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_flags_get_value_name
(IntPtr obj, uint value);
-
- public string ValueName (uint value) {
- IntPtr raw_ret = stetic_param_spec_flags_get_value_name
(Raw, value);
- if (raw_ret == IntPtr.Zero)
+ IntPtr pspec_raw =
gtk_container_class_find_child_property (klass, name);
+ if (pspec_raw == IntPtr.Zero)
return null;
- else
- return Marshal.PtrToStringAnsi (raw_ret);
- }
- }
- public class ParamSpecFloat : ParamSpec {
- public ParamSpecFloat (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern float stetic_param_spec_float_get_minimum (IntPtr
obj);
-
- public override object Minimum {
- get {
- return stetic_param_spec_float_get_minimum
(Raw);
- }
+ ParamSpec pspec = new ParamSpec (pspec_raw);
+ childProps[key] = pspec;
+ return pspec;
}
- [DllImport("libsteticglue")]
- static extern float stetic_param_spec_float_get_maximum (IntPtr
obj);
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern void g_param_spec_ref (IntPtr obj);
- public override object Maximum {
- get {
- return stetic_param_spec_float_get_maximum
(Raw);
- }
- }
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern void g_param_spec_unref (IntPtr obj);
- [DllImport("libsteticglue")]
- static extern float stetic_param_spec_float_get_default (IntPtr
obj);
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern void g_param_spec_sink (IntPtr obj);
- public override object Default {
- get {
- return stetic_param_spec_float_get_default
(Raw);
- }
- }
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_param_spec_get_name (IntPtr obj);
- [DllImport("libsteticglue")]
- static extern float stetic_param_spec_float_get_epsilon (IntPtr
obj);
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_param_spec_get_nick (IntPtr obj);
- public float Epsilon {
- get {
- return stetic_param_spec_float_get_epsilon
(Raw);
- }
- }
- }
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_param_spec_get_blurb (IntPtr obj);
- public class ParamSpecDouble : ParamSpec {
- public ParamSpecDouble (IntPtr raw) : base (raw) {}
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_type_class_ref (IntPtr gtype);
- [DllImport("libsteticglue")]
- static extern double stetic_param_spec_double_get_minimum
(IntPtr obj);
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_object_class_find_property (IntPtr
klass, string name);
- public override object Minimum {
- get {
- return stetic_param_spec_double_get_minimum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern double stetic_param_spec_double_get_maximum
(IntPtr obj);
-
- public override object Maximum {
- get {
- return stetic_param_spec_double_get_maximum
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern double stetic_param_spec_double_get_default
(IntPtr obj);
-
- public override object Default {
- get {
- return stetic_param_spec_double_get_default
(Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern double stetic_param_spec_double_get_epsilon
(IntPtr obj);
-
- public double Epsilon {
- get {
- return stetic_param_spec_double_get_epsilon
(Raw);
- }
- }
+ [DllImport("libgtk-win32-2.0-0.dll")]
+ static extern IntPtr gtk_container_class_find_child_property
(IntPtr klass, string name);
}
-
- public class ParamSpecString : ParamSpec {
- public ParamSpecString (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_string_get_default
(IntPtr obj);
-
- public override object Default {
- get {
- return Marshal.PtrToStringAnsi
(stetic_param_spec_string_get_default (Raw));
- }
- }
- }
-
- public class ParamSpecParam : ParamSpec {
- public ParamSpecParam (IntPtr raw) : base (raw) {}
- }
-
- public class ParamSpecBoxed : ParamSpec {
- public ParamSpecBoxed (IntPtr raw) : base (raw) {}
- }
-
- public class ParamSpecPointer : ParamSpec {
- public ParamSpecPointer (IntPtr raw) : base (raw) {}
- }
-
- public class ParamSpecValueArray : ParamSpec {
- public ParamSpecValueArray (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern uint
stetic_param_spec_value_array_get_fixed_n_elements (IntPtr obj);
-
- public uint FixedNElements {
- get {
- return
stetic_param_spec_value_array_get_fixed_n_elements (Raw);
- }
- }
-
- [DllImport("libsteticglue")]
- static extern IntPtr
stetic_param_spec_value_array_get_element_spec (IntPtr obj);
-
- public ParamSpec ElementSpec {
- get {
- IntPtr ret_raw =
stetic_param_spec_value_array_get_element_spec (Raw);
- return ParamSpec.Wrap (ret_raw);
- }
- }
- }
-
- public class ParamSpecObject : ParamSpec {
- public ParamSpecObject (IntPtr raw) : base (raw) {}
- }
-
- public class ParamSpecOverride : ParamSpec {
- public ParamSpecOverride (IntPtr raw) : base (raw) {}
-
- [DllImport("libsteticglue")]
- static extern IntPtr stetic_param_spec_override_get_overridden
(IntPtr obj);
-
- public ParamSpec Overridden {
- get {
- IntPtr ret_raw =
stetic_param_spec_override_get_overridden (Raw);
- return ParamSpec.Wrap (ret_raw);
- }
- }
- }
-
}
Modified: trunk/stetic/libstetic/libstetic.dll.config
===================================================================
--- trunk/stetic/libstetic/libstetic.dll.config 2005-03-21 14:22:52 UTC (rev
42048)
+++ trunk/stetic/libstetic/libstetic.dll.config 2005-03-21 14:29:24 UTC (rev
42049)
@@ -1,4 +1,5 @@
<configuration>
<dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0.so.0"/>
<dllmap dll="libglibsharpglue-2.0.dll" target="libglibsharpglue-2.0.so"/>
+ <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0"/>
</configuration>
Modified: trunk/stetic/libstetic/wrapper/Container.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/Container.cs 2005-03-21 14:22:52 UTC (rev
42048)
+++ trunk/stetic/libstetic/wrapper/Container.cs 2005-03-21 14:29:24 UTC (rev
42049)
@@ -240,7 +240,7 @@
protected virtual void ChildNotifyHandler (object obj,
Gtk.ChildNotifiedArgs args)
{
- ParamSpec pspec = ParamSpec.Wrap (args.Pspec);
+ ParamSpec pspec = new ParamSpec (args.Pspec);
EmitNotify (pspec.Name);
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches