Recently GNOME Calculator has gained a library for math expression parsing and calculation, as a parallel effort to the one used internally for the application, called
GCalc allows to take a string to create an object oriented representation of it and can perform multi-precision calculations, this feature was unable to be used outside, just VDA is using it for math expression parsing, but no-more, yet.
In order to expose
GCalc features to user oriented applications, now a new library called
GCi was added.
GCi provides, for now, a controller for GTK Entries.
GTK Entries controller in
GCi, can add calculation features to your Entry. Once you have created a
GCi.EntryController and set its
entry property to the one in your UI application, a secondary icon using a calculator is added, while allows your users to write
=8*2+1, hit enter or click on the secondary icon and the math expression is replaced by its calculation result (and yes you should use
= in order to establish it as a math expression to replace).
Vala Data Access library has reached a 0.90 Beta 1 release.
VDA provides a set of interfaces to wraps database connection, execution of SQL commands and access to returned values of the queries. Read the previous introduction post.
This version supports:
- First Beta version of VDA
- Native implementation for PostgreSQL
- GDA implementation with support for SQLite and PosgreSQL
SqlValue implementation and conversion between values
- Basic SQL commands parsing support for
UPDATE, using parameters in order to provide the values required to execute it
- Object Oriented API for SQL commands:
- Support for Parameters in queries using GDA declaration syntax
- SQL command parsing use GCalc from GNOME Calculator
- Async queries execution
- Support to map Row’s values to
GObject based classes’ properties using
- Support for row modification/insert using
Vda.SqlValue properties, both generic or specific
DataObject support conversion between
Vda.SqlValue values and between basic properties’ types like
No pre-releases was made, because the API was changed while implementing database providers and included most of the interfaces to implement for better more powerful features.
Vda.SqlValue objects when you access a Table’s row’s column’s value; the provider is responsible to create it when is requested, so no overhead is present for SQL queries execution.