Re: [Vala] [ANNOUNCE] Vala 0.3.3 - Compiler for the GObject type system



On Tue, 2008-06-03 at 14:58 -0700, Michael Lawrence wrote:
On Tue, Jun 3, 2008 at 2:18 PM, Jürg Billeter <j bitron ch> wrote:
        Vala 0.3.3 is now available for download at:
          http://download.gnome.org/sources/vala/0.3/
        
        Changes since 0.3.2
         * Support overriding default method handlers of signals.

Signals often have a virtual default method handler, it's now possible
to override this handler in derived classes in Vala, that's for example
necessary to implement custom widgets and convenient in other places.
The syntax is the same as for overriding normal methods, an example
custom widget can be found in the Wiki[1].

         * Support dynamic access to properties and signals of
        GObjects.

Every time a new Vala release comes out, there are features that I
don't understand. Maybe these are obvious to everyone else, but what
does "dynamic access to properties" mean? 

This enables reading and setting property values from GObjects in a
similar way as the dynamic D-Bus client support. This can for example be
useful for GStreamer elements where you might not have bindings for all
plugins.

dynamic Element spectrum = ElementFactory.make ("spectrum", "spectrum");
spectrum.width = 256;

valac will generate calls to g_object_set for unknown properties, if the
variable of the corresponding object has been declared with the
`dynamic' modifier.

         * Experimental support for nullable value types.

Structs and basic types can now also be marked as nullable, this has the
effect of boxing the value.

    int? foo = null;
    int? bar = 42;

         * Improve support for classes not deriving from GLib.Object.

All classes without the [Compact] attribute will now be registered with
GType and therefore will have support for virtual methods, runtime type
information, and reference counting, even if the class doesn't derive
from GLib.Object. Classes without a base class will be registered as new
fundamental types in GType.

We still recommend to derive all classes from GLib.Object unless you
require higher performance for object instantiation.

         * Support """verbatim strings""".

Verbatim strings may contain line breaks, backslashes, and quotes,
however, they don't provide an escape mechanism.

         * Add parser for Genie (Jamie McCracken)

Best explained in the Wiki[2]

HTH,

Juerg

[1] http://live.gnome.org/Vala/GTKSample
[2] http://live.gnome.org/Genie




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