Re: [Vala] Properties == GObject properties?



2013/10/11 Tal Hadad <tal_hd hotmail com>

 Hi,

On Fri, Oct 11, 2013 at 9:34 AM, Tal Hadad <tal_hd hotmail com> wrote:
First time I hear not all properties are GObject.

Suppose I have this property:

...
public int 1numbered { get; set; }
...

This is not a GObject property, since it's started with a number.

You can't have that at all, see
https://wiki.gnome.org/Vala/Tutorial#Syntax_Overview :

"For identifier names the same rules apply as for C identifiers: the
first character must be one of [a-z], [A-Z] or an underscore,
subsequent characters may additionally be digits [0-9]."

Signal names also must start with a letter:


https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-new

Regards, Simon

But suppose there's a property which is valid for Vala, but can't be
GObject property,
what then would be the answer for my questions?


Hi,

the answer would be: yes, you would _not_ be able to connect to a 'notify'
signal for a property that's not backed by GObject managed properties
(such as would happen for Compact classes), and yes, you should still be
able to emit a custom signal from withing any getter/setter, as those are
just syntactical sugar that turn

    obj.a = 14;

into

    myobj_set_a(obj, 14);

Of course you would have to declare the 'notify' signal.

Jonas


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