+
+ private char a_property;
+ property CHAR a_property
+ (nick = _("Nick"),
+ blurb = _("Blurb"),
+ minimum = 'a',
+ maximum = 'Z',
+ default_value = 'C',
+ export)
+ set { self->_priv->a_property = g_value_get_char (VAL); }
+ get { g_value_set_char (VAL, self->_priv->a_property); };
+
+ property OBJECT foobarblahllll1
+ (nick = "xxxxxxx1",
+ blurb = "yyyyyy",
+ object_type = Gtk:Button)
+ get { /* FOO1 */ };
+ property OBJECT foobarblahllll2
+ (nick = "xxxxxxx2",
+ blurb = "yyyyyy",
+ object_type = G:Object)
+ set { /* FOO2 */ };
+
+ private double dblnum;
+ property DOUBLE dblnum
+ (nick = _("dblnum"),
+ blurb = _("dblnum"),
+ minimum = 0.1,
+ maximum = 99.1,
+ default_value = 0.3,
+ flags = CONSTRUCT|CONSTRUCT_ONLY,
+ export,
+ link);
+
+ private char *b_property;
+ property STRING b_property
+ (nick = _("Nick b"),
+ blurb = _("Blurb b"),
+ default_value = "default",
+ type = char *,
+ flags = CONSTRUCT,
+ export,
+ link);
+
+ private Test:Object *objectproperty;
+ property OBJECT objectproperty (nick = "object",
+ blurb = "obj property",
+ object_type = Test:Object,
+ link);
+
+ private Test:Enum enum_property;
+ property ENUM enum_property (nick = "enumprop",
+ blurb = "enumprop",
+ enum_type = Test:Enum,
+ link);
+
+ private Some:Flags flags_property;
+ property ENUM flags_property (nick = "flagsprop",
+ blurb = "flagsprop",
+ flags_type = Some:Flags,
+ link);
+
+ private PackageBoxed *prop;
+ property BOXED prop (nick="prop",
+ blurb="prop",
+ boxed_type=Package:Boxed,
+ link);
+ /* testing old semantics */
+ private PackageBoxed *prop2;
+ property BOXED prop2 (nick="prop2",
+ blurb="prop2",
+ boxed_type=PACKAGE_TYPE_BOXED,
+ link);
+
+