RELEASE 4.8 – New Products, Features…

Hi Everybody!

We have work very hard latest months to introduce next 4.8 release of Valentina Database. Below is the short list of new products and features that we have implement.

[NEW] Valentina Reports NEW Engine (!!!)

Amazing job was done in this direction. During latest 8 months was (re)written Valentina Report engine. We have totally drop dependency on wxWidget library in reports and have start to use new other much more powerful libs.

Improvements are made on two levels:
1) VReports.dll – engine of Valentina Reports itself, which is used by both VStudio and ADKs
2) VStudio Report Editor

[NEW] iValentina – iPhone and iPAD version (!!!)

We are happy introduce iValentina – GUI tool for iPhone and separate version for iPAD, which is analog of Valentina Studio ADMIN. iValentina allow you manage a Valentina Server in any way, as you are used with VStudio ADMIN. (We will submit iValentina into nearest days.)

[NEW] Sqlite plugin for Valentina Studio (!!!)

We introduce preview of new Sqlite plugin for Valentina Studio Pro. Now you can use Valentina Studio to manage a Sqlite database!  You can use powerful Valentina Studio features as Diagram Editor and SQL Builder.

[NEW] Valentina Studio Pro for Linux (!)

We have port Valentina Studio Pro to Linux. So linux guys now can be happy.

[NEW] Valentina for Cocoa – Interface Builder Plugin (!!)

Interface Builder (IB) plugin is an incredible addition to V4CC.framework, which allows to developer bind GUI of his Windows/Dialogs to a Valentina Database  without any line of code!

[NEW] Valentina for Cocoa – KVC, Fast Enumeration, GC, Controllers, Bindings, … (!!)

We have add into V4CC.framework one more folder “V4CC/Cocoa”, which contains additional classes of different Valentina Controllers, categories that extend existed V4CC classes (e.g. VCursor) to support fundamental Cocoa technologies as KVC, Fast Enumerations, Bindings, Controllers, ability for V4CC to be used in projects with enabled garbage collection option.

[NEW] Valentina Servers – MAC OS X Control Panel (!)

We introduce “Valentina Servers” control pannel for OS X, that allow you control in the visual way state of installed Valentina Server(s). You can see state of each VServer (running/stopped), you can change state. Also you can clean vlogs folder of a VServer by button click.

This control panel is able to recognize and work in the same time with Valentina Office and  Embedded, running in 32 and 64 bit modes.

[IMP] Valentina for REAL Studio – Support of Cocoa Target improved.

Latest REAL Studio builds introduce yet experimental feature – Cocoa builds. We have made some fixed in V4RB to make sure Valentina works in this mode.

[NEW][V4CC] Interface Builder Plugin – Zero Lines of Code!

In version 4.8 we add one more cool feature to Valentina for Cocoa (V4CC) ADK – Interface Builder plugin!

V4CC Interface Builder Plugin allows you to develop a Cocoa application with embedded V4CC.framework without writing any code to link GUI with a Valentina database. Instead you will use bindings and few Valentina Controllers.

You can read Manual of V4CC IB plugin and learn few tutorial lessons.

[NEW] SQLite plugin for Valentina Studio Pro (!!!)

In v4.8 we introduce PREVIEW of a new Valentina Studio Pro plugin – SQLite. We do this on few reasons:

1) Around Valentina DB exists many IDEs where SQLite is integrated on default. So we have quite often case when Lite developer want switch to Valentina DB.

2) We going to open Valentina Reports to users of other databases also. First of them with be users of SQLite. So it will be comfortable for them to be able use Valentina Studio to design REPORTS, and in the same time manage their SQLite dbs. The second our step will be – to add other dbs (Postgre, MS SQL, ODBC, …) and also integrate them into Valentina Studio, at least via our ODBC plugin.

Continue reading [NEW] SQLite plugin for Valentina Studio Pro (!!!)

[V4CC][NEW] DataSource for VCursor and VTable classes.

NSTableView class has setDataSource method that allows assign a NSTableDataSource instance to be a data source for that table view.

In v4.8 we have to add VCursorDataSource and VTableDataSource classes that are able to do this job — easy display a cursor or a table into a given NSTableView. As easy as a single line of code:

mCursorDataSource = [[VCursorDataSource alloc] 
                         initWithCursor:mCursor view:tvListBox];

Continue reading [V4CC][NEW] DataSource for VCursor and VTable classes.

[V4CC][NEW] KVC for VCursor and VTable.

In v4.8 we adding support of Key Value Coding (KVC) to VCursor and VTable classes.

This is implemented as VCursor (KVC) category with a couple of methods:

@interface VCursor (KVC)
                // If wrong key is specified then nil is returned.
- (id)		valueForKey:(NSString *)key;

                // If wrong key is specified then nothing is changed.
- (void)	setValue:(id)value forKey:(NSString*)key;

Continue reading [V4CC][NEW] KVC for VCursor and VTable.

[V4CC][New] Extended Support of Cocoa and Obj-C Features

In v4.8 of Valentina for Cocoa we greatly improving support of Cocoa and Obj-C 2.0 features. For this we have add  V4CC/sources/cocoa folder, which contains all additional code for this. In such way, we keep very separate standard Valentina ADK API sources and this additional features sources.

Continue reading [V4CC][New] Extended Support of Cocoa and Obj-C Features

OS X Loads DYLIB from App folder ignoring install_path … Oops?

Our Valentina Studio project has one Application target and dozen of plugins targets. Plugins are made as bundles.
All these targets build products into the same folder “Debug (Native)” or “Release (Universal)”.
Then Run Scripts do copy plugins into App package and using install_name utility correct install paths for them.

Continue reading OS X Loads DYLIB from App folder ignoring install_path … Oops?

NOW V4CC/iV4CC Works with GarbageCollection-enabled apps also

For this we just have set option GarbageCollection = SUPPORTED for V4CC (32/64)  and iV4CC (Dev/Sim)  targets. This means that now these frameworks will work in both kinds of apps: GC-enabled and GC-not-enabled.

Note, that internally V4CC still uses retain/release. Also keep in mind that we very recommending to developers manage lifetimes of database objects manually. Just image that you have allow to GarbageCollector manage a VCursor instance. When you think record locks will be released?

[NEW][API] Valentina.CopyCursorToNewTable()

We introduce a new utility method Valentina.CopyCursorToNewTable(), which is able to save you hundreds of lines of advanced code in your ADK-based applications. This method added into major Valentina ADKs.

You can read detailed description of this new method here.