Video: Installing Valentina ADK for Cocoa on Mac OS X

Installing Valentina ADK for CocoaIf you are developing native Cocoa applications with Apple Xcode you will want to check out how to install and get started with Valentina ADK. You can build ultra fast database applications with Valentina DB ADK for Cocoa, and embed visually stunning reports in your applications with Valentina Reports ADK for Cocoa.

This video covers the following topics:



  • Downloading the single ADK archive for both products
  • Installing the single archive from the installer image
  • Linking to the Valentina framework in Apple Xcode
  • Importing the main Valentina header
  • Adding a new button to initiate / shut down Valentina Client
  • Adding code to connect to a remote Valentina Server
  • Adding some SELECT code to display some records

If you are developing fast database applications for Mac OS X, you can use Valentina Reports ADK for Cocoa to display and format your data better than any other commercial reports framework.

[NEW] VKERNEL now can create journal at a specified location + Sandboxed Mac Apps with V4CC.

Frank have contact us with request add ability for V4CC (Valentina for Cocoa) developers to specify the location of journal of a database. This is important for sandboxed applications, which on default can access only their sandbox folder and a file(s) that user specify explicitly.

PROBLEM is that if a user choose somedb.vdb file in the SelectFile dialog , then Valentina engine needs yet to create a journal file near to .vdb file. But for a sandboxed application this is prohibited by OS X. This is why developer want to be able specify another location for journal file.

Btw, this problem exists more of year for SQLite database that is used e.g. in CoreData of Apple, when it is used by a sandboxed app. Strange, but the only advice from Apple is – disable journal file.

We have spend couple of days to add into C++ level  and into V4CC ADK this feature. Rest ADKs soon.

Now you can write the following in V4CC:

Continue reading [NEW] VKERNEL now can create journal at a specified location + Sandboxed Mac Apps with V4CC.

[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.

[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

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.

[NEW] 64-bit ADK added to MAC OS X: C++, Cocoa, PHP

We introduce our first 64-bit ADKs for MAC OS X:

  • Valentina for C++ (VSDK)
  • Valentina for  Cocoa (V4CC)
  • Valentina for  PHP Standalone (VPHP)

It is clear that we cannot make V4RB, V4REV and such to be 64-bits because their IDEs do not support this.

Next our step in this direction, will be introduction of 64 bit ADKs for Windows, VSDK, VNET, …

Changes in Valentina for Cocoa API.

Erne have report bug in Valentina for Cocoa (V4CC).

Problem was that VField.value in ObjC implemented as pair of methods (in other Valentina ADKs, e.g. Valentina for REALbasic it is a true property of class). So if to override this pair in the sub-classes then always will be called overridden methods.

To resolve issue, we have decide to rename these methods in all VField sub-classes. Rules now are simple:

Continue reading Changes in Valentina for Cocoa API.