Initially, NTK is a Clipper-Like language and above all a Clip4Win clone. However, it has evolved through the years to
become a powerful xBase programming environment for Windows platforms. Now, it allows:
1. A backward-compatible syntax with most of the Clipper-Dos commands and functions, which are now capable to run in GUI mode according to the Windows look and feel. e.g.
SET COLOR TO R+/W, @ y,x BROWSE..., @ y,x GET..., @ y,x SAY..., NtkINKEY(), NtkAchoice(), etc.
2. A natural backward compatibility with Clip-4-Win core functions.
3. A robust and highly customizable datagrid object (NtkTbrowse OO class).
4. A collection of extented OO classes: NtkTActiveX, NtkTForm, NtkTTGauge, NtkTTabs, NtkTView, NTKTTrackbar.
5. A powerful DLL call engine (dynamic wrapper).
6. A complete support for manipulating ActiveX & COM objects.
7. A set of valuable contributions. e.g. AT Scheduling, NTKAdoRdd, NTKDic, WComLib, XML Treeview, etc.
7. A complete support for accessing Windows APIs related to manupilation of Gestures and MultiTouchInputs.
9. A collection of add-ons program tools & libraries. e.g. NTKDbu, NTKReportLib, NTKSkinLib, NTKTabManagerLib.
10. A collection of 11 pdf manuals (1400+ pages) covering the unabridged NTK-Framework.
The NTK Project , is a professionnal framework designed
for [x]Harbour, providing a set of tools that allow xBase developers (Clipper, [x]harbour, clip-4-Win
and others) to create modern GUI programs.
NTK Project proposes two main approaches for 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 NTKRad API to develop efficiently and concentrate his efforts on the business logic, but sometimes will require NTKCore API for special or complex tasks.
-A third less used but alternative approach, known as 'data-driven' application development, consists in using Windows Dialog resources. The program UI is designed externally from a resource file (.RC). Usually with a visual resource editor such as: Borland Workshop, MS-Visual studio, ResEdit, etc. Then, the resulting .RES file is linked to the executable.
From the PRG, the call to the resource just looks like something like this:
NTK_DialogBox( hInst, "SAMPLE_DLG", hWnd )
The above excerpt shows how to connect an external DialogBox resource, called 'SAMPLE_DLG', to the business logic code.
An easy and cost efficient means for developping modern applications for all MS-Windows environments by using NTKCore, NTKRad or Both...
The ability to port the most part of your old xBase-Dos or Clip-4-Win (16bit) code with less changes, saving the essential of the main business logic.
The capability to integrate the latest and most cutting-edge Windows resources within your xBase programs, without any knowledge about the C/C++ programming language. i.e.
- 32 bit common dialogs (Open/Save/Color/Font/Dir/Folder,...)
- 32 bit controls (MaskEdit, Gauge, Listview, Sliders, Tabs, Toolips, Treeview, TrackBar, 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, Filelist, Picklist, GDI, INI files and RegEdit, Menus, Keyboard, Mouse, Run and ShellExecute, Disks and Directories, and so on...)
- Lot of free Contributions. e.g. AdoDB & Odbc, AT Scheduling commands, Com Port manipulation, XML integration, etc.
- Dozens of NTKCore and NTKRad tutorials.
An easy access to MS-Windows APIs and other OEM manufacturer DLL via the NTKDll's call engine or NtkActiveX OO class, without having to write a single line of C code.
And far more...