www.ntkproject.com

'The NTK Project', what is it exactly?

The NTK (New Technology Kit) Project, is a professionnal framework designed for [x]Harbour, providing a set of tools that allow xBase developpers (Clipper, [x]harbour, clip-4-Win and others) to create modern Win32 GUI programs.

NTK Project propose two main approaches of programming MS-Windows applications:

-The first method consists in using NTK's built-in RAD (Rapid Application Development) API, which is the more modern, the more easy and rapid way to create robust apps. From the syntax point of view, it is also more xBase like...

-The second technic is the CORE approach, also called 'Traditional manner', because it lets the developer free to directly access to the Win32's API functions by handling and processing messages, as it is used to be done in low-level languages like C/C++. But don't worry, unlike C, NTK is far more friendly !

In other words, the NTK programmer will mostly use the RAD API to develop efficiently and concentrate its efforts on the business logic, but sometimes will require NTK's CORE API for special or complex tasks.

NTK Project for xHarbour, it's also :

- A powerful DLL call engine (dynamic wrapper) built-in to the CORE layer.

- A syntax backward compatibility with most of Clip-4-Win 16 bit functions.

- A syntax backward compatibility with a lot Clipper-Dos commands and functions. But now, they run in GUI mode, with Windows look and feel.

e.g. SET COLOR TO R+/W, @ y,x GET ..., @ y,x SAY..., NtkINKEY()

NTK Project for xHarbour will enable you to :

- Easily develop true 32 bit GUI applications for MS-Windows environments, the way you want: Core, Rad or Both...

- Provide fast and powerful GUI features in your [x]Harbour programs without know anything about C/C++ language.

i.e. .32 bit common dialogs (Open/Save/Color/Font/Dir/Folder,...)

.32 bit controls (MaskEdit, Gauge, Listview, Sliders, Toolips, Treeview, Transparent windows, etc)

.Bitmap APIs manipulation (including support of bmp, ico, gif and jpeg formats)

.Tons of functions from different themes (Accelerators, Bit manupulation, Buttons, Caret, Cursor, ClipBoard, Dialogs, Drawing, .Files, GDI, INI files and RegEdit, Menus, Keyboard, Mouse, Run and ShellExecute, Disks and Directories, and so on...)

.A full functionnal and ready to use set of functions allowing you to directly call Crystal API's print engine.

.Lot of Contribs, Core and Rad samples...

- Port a lot of your old Win16 Clip-4-Win code with less changes, saving the essential of the main business logic.

- Access MS-Windows APIs and other OEM manufacturer DLL via NTKDll's call engine without having to write a single line of C code.

- And far more...

The Pro version of NTK Project is provided with NTKDic, a real Databases and Index Management system.

NTKDic is achitectured in two parts :

First part is the Dictionary Manager itself, which is an external application allowing you to create, modify and print data and index application Dictionaries :

-The Info-Base is a template Dictionary describing all DBF structures of your application database.

-The Index-Base is a template Dictionary associated to the Info-Base allowing to define index files and their index keys that have to be applied to the DBF structures.

Second part is a Static Library of functions to be added to your makefile project.

This API allows a program to automatically read both template dictionaries. Then, it checks and compares each structure or index description from the dictionnaries to those of real database and index files contained into the application's storage folder. Thus, if needed, it is able to create new files or update existing ones.

So, from now, this is the end of headaches due to making complex database update programs!

Instead of hassling around with such problems, you can be more productive and concentrate your efforts only on the business logic of your projects.



Special notes

NTK Project supports a third alternative way of programming, known as 'data-driven' application development. That consists to detach the interface code from the engine code.
The program's interface (named 'Resource Dialog') is designed externally from a visual resource editor like Borland Workshop, MS-Visual studio, etc.. then, the resulting .RES file is linked with the program itself, which one, simply calls something like :

NTK_DialogBox( hInst, "SAMPLE_DLG", hWnd )

to connect the Dialog to the business logic code during runtime.