JMN-Tnt

Introduction

It is a summary for Tnt-Delphi of functions, procedures and adaptation of own and not own components.

JMN = Jordi March i Nogué

[Remember JMN-Lib is similar to JMN-Tnt-Lib with not Unicode Controls]

Translations of po files:

Folders

Hierarchy structure

Folders & Packages
JMNCommon
JMNTnt
JMN
JMNTntSm
JMNTntBl
Object Repository
JMNTntObjReposSm
JMNTntObjReposBl

Contents

JMNCommon

It contains the shared packages for all below directories and packages (included [of JMN libraries] JMN, JMNSm and JMNBl). Also contains two components.

Look at here for more info.

JMNTnt

It contains the shared packages and components for all below directories and packages (JMNTntSm and JMNTntBl).

Look at here for more info.

JMNTntSm

Sm=Simple.

Look at here for more info.

JMNTntBl

Bl=Blind.

It enables to make a program for people with visual difficulty or blind.

Look at here for more info.

Installation

Previous

It is required:

Install the libraries:

JVCL (JEDI Visual Component Library) : http://www.delphi-jedi.org/. Check dxgettext support.

Tnt

TntEx

SynEdit of several authors: http://synedit.sourceforge.net/.

TExtendedList of Sébastien Doeraene's SJRDUnits: http://sjrd.developpez.com/. You can use the version that is attached with my source.

It is not required:

(But used):

ImageFileLib of Michael Vinther: http://www.logicnet.dk/lib/
TGIFImage of Finn Tolderlund: http://www.tolderlund.eu/delphi/
TPMath of Jean Debord: http://www.unilim.fr/pages_perso/jean.debord/tpmath/tpmath.htm
TDBF from http://tdbf.sourceforge.net/

Because their source code is among JMN-Lib one.

Steps

The installer program has been created the next folders:

  1. $INSTDIR\Delphi7\Lib\SAPI5
  2. $INSTDIR\Delphi7\Lib\JMNTnt
  3. $INSTDIR\Delphi7\Lib\JMNTntBl
  4. $INSTDIR\Delphi7\Lib\JMNTntSm
  5. $INSTDIR\Delphi7\JMNTntObjReposBl
  6. $INSTDIR\Delphi7\JMNTntObjReposSm

Where $INSTDIR = C:\Prg

JMNCommon

-1: From Environment Options window of Delphi IDE: Add the next directories in Library Path:

$(DELPHI)\Lib\SJRD\

Compile: $(DELPHI)\Lib\SJRD\SJRDUnits.dpk

0. If an old version already installed: close Delphi and delete JMN*.bpl.

1. Install from http://www.tntware.com/delphicontrols/unicode/downloads.htm:

a. Packages: TntEx (from original Francisco Leong) Update from Jordi March's compilation (then another libraries and units are also required, read Readme.rtf in there library).

b. Stanley Xu's TntIniFiles unit.

2. The installer program has been copied the folders inside to one directory, for example in $(DELPHI)\Lib.

3. From Environment Options window of Delphi IDE: Add the next directories in Library Path:

  1. $(DELPHI)\Lib\JMNCommon\Source
  2. $(DELPHI)\Lib\JMNCommon\Source\ImageFileLib0
  3. $(DELPHI)\Lib\JMNCommon\Source\TPMath

4. Open Common_DX.bpg from JMNCommon\Packages folder and compile/install the packages sequentially:

  1. JMNCommon_Basic_DXR.dpk
  2. JMNCommon_Basic_DXD.dpk
  3. ImageFileLib0_DXR.dpk

Look at here for content info.

JMNTnt

JMNCommon packages are required.

From Environment Options window of Delphi IDE: Add the next directories in Library Path:

  1. $(DELPHI)\Lib\JMNTnt\Source
  2. $(DELPHI)\Lib\JMNTnt\Source\TntImageFileLib

Open JMNTnt_DX.bpg from JMNTnt\Packages folder and compile/install the packages sequentially:

  1. JMNTnt_dbf_dXr.dpk
  2. JMNTnt_dbf_dXd.dpk
  3. TntImageFileLib_DXR.dpk
  4. JMNTnt_SmBl_DXR.dpk
  5. JMNTnt_SmBl_DXD.dpk

Look at here for content info.

JMNTntSm

JMNCommon and JMNTnt packages are required.

From Environment Options window of Delphi IDE: Add the next directories in Library Path:

  1. $(DELPHI)\Lib\JMNTntSm\Source
  2. $(DELPHI)\Lib\JMNTntSm\Source\TntCCopy
  3. $(DELPHI)\Lib\JMNTntSm\Source\TntDBFldStat
  4. $(DELPHI)\JMNTntObjReposSm

Open JMNTntSm_DX.bpg from JMNTntSm\Packages folder and compile/install the packages sequentially:

  1. JMNTnt_Sm1_DXR.dpk
  2. JMNTnt_Sm1_DXD.dpk
  3. JMNTnt_CCopy_DXR.dpk
  4. JMNTnt_CCopy_DXD.dpk
  5. JMNTnt_Sm2_DXR.dpk
  6. JMNTnt_Sm2_DXD.dpk

Look at here for content info.

JMNTntBl

JMNCommon and JMNTnt packages are required.

From Environment Options window of Delphi IDE: Add the next directories in Library Path:

  1. $(DELPHI)\Lib\SAPI5
  2. $(DELPHI)\Lib\JMNTntBl\Source
  3. $(DELPHI)\Lib\JMNTntBl\Source\TntDBFldStat
  4. $(DELPHI)\JMNTntObjReposBl

Open DCLSAPI51DX.dpk from SAPI5\Delphi X package folder and compile/install its package.

Open JMNTntBl_DX.bpg from JMNTntBl\Packages folder and compile/install the packages sequentially (before remember to inspect the directive values for WithPoF (contained in PerhapsPoF.inc), ForBlind and ForBlindSpk (contained in PerhapsBlind.inc)):

  1. JMNTnt_Bl0_DXR.dpk
  2. JMNTnt_Bl0_DXD.dpk
  3. JMNTnt_Bl_DXR.dpk
  4. JMNTnt_Bl_DXD.dpk

Look at here for content info.

JMNCommon

It contains several packages:

JMNCommon_Basic
ImageFileLib0

Look at here for installation.

JMNCommon_Basic_DXR.dpk and JMNCommon_Basic_DXD.dpk

Functions, procedures, ...
Data modules
Objets and components

Functions, procedures, ...

Not-Unicode specifics. They are:

DataSetCom

Data set utilities.

DateTime00, DateTimeA0

Var and type for dates.

Dialogs0

Single components that hold a form.

GrTypFun

General type and functions.

StrNumU

String-number conversions.

VCtrls

Controls position procedures

Data modules

DMTrans

TDMTranslate is an ancestor for all TDataModule that will perhaps require a translation.

DMWinPlot0

TDMPlot0 is the ancestor for TTntDMPlot.

Objets and components

DIMime

of Ralf Junker.

GIFImage

for load/save GIF Images of Anders Melander.

MinModal

Minimizer for modal windows of Zecos Software.

ParseClass0

With any Draw types and functions; and TIntegerList0 (from SjrdLists.TExtendedList), TExtendedList0 and TRPointList0.

OObjects and ParseClass0

Used for TTntMathParser.

TPMath\*.pas: of J. Debord, used for TMathParser (ATCalc program).

ImageFileLib0_DXR.dpk

ImageFileLib\*.pas: shared files for ImageFileLib and TntImageFileLib.

JMNTnt

It contains several packages:

JMNTnt_dbf
TntImageFileLib
JMNTnt_SmBl

Units not included in the previous packages

Look at here for installation.

JMNTnt_dbf_dXr.dpk and JMNTnt_dbf_dXd.dpk

Modified from tdbf_dXr.dpk and dbf_dXd.dpk, which units are adapted to WideString path, table and index name.

TntImageFileLib_DXR.dpk

Used by JMNTnt_VNew.

JMNTnt_SmBl_DXR.bpl and JMNTnt_SmBl_DXD.bpl

Paradox components
Edit controls
Database controls
Ohter controls
Functions, procedures, ...
Data modules

Required validation: some edit controls have a Required property, if the text is empty, Required = True and in run-time the color is changed to TntEdiDaTi.clEdiBgWarning (by default, rose color). This controls contain a Valid public function.

Paradox components

Units: Tntdn*.pas

Modification from Dieter Nöth's library, a Paradox mask acts as a template that formats an edit.

Once installed: see the sample or click in the right button that appears at right of PxMask property input.

At next there are grouped by type: the characters to use and their description:

Syntax:
Especial

#          Any digit (0-9).
?          Any letter (A-Z, a-z, including international characters).
&          Any letter (converted to uppercase).
~          Any letter (converted to lowercase).
@         Any character.
!           Any character (converted to uppercase).

Of function

;           Interpret the next character as a literal.
[]          Optional operator. For e.g. [###] = three digits or none.
{}          Grouping operator. For e.g. {a,b,c} = a, b or c.
,           Used within grouping operator
*           Any number of repeats of the following character. For instance *& means convert any number of characters to uppercase. To specify a specific number of times, follow the * with a number. For instance, to specify exactly 5 numbers in a row, you would use *5{#}. To specify from 0 to 5 numbers in a row, you would use *5[#].

All the other ones

Are taken literally

Example: imagine that you wants to enter the numbers of fixed telephone and mobile: it can have two possibilities:

{*6{#}[#],[## ]*7{#},[### ]*6{#}

Edit controls

TntBBFont

TTntBBFont, enables on click self to select a Font from TFontDialog, then Caption := CaptionLabel + FontSize, where Font := FontDialog.Font.Font. TTntIBFont it is similar.

TntEdiCpx0

TTntEditCpx0 is a complex input, with Required validation.

TntEdiDateAppr0

TTntDateEditAppr0, with Required validation, for input an approach dates (and keep this dates as is) in a special way:

s = Semester
t = Trimester
f = Fortnight
w = Week

Then, the next inputs are valid:

1990
7/2007 = july/2007
1s/2007 = 1st semester/2007
3w/2/1980 = 3rt week/2/1980

TntEdiTAmp0

Custom controls with with Required validation and some modifications of chars when typing (for edit inputs), for TntEdiTAmp and TntEdiTAmpBl.

TTntCustomRadioGroupR,
TTntCustomEditR,
TTntCustomEditOnlyFileName, not supports '\:.'
TTntCustomEditTxt,
TTntCustomEditName,
TTntCustomComboBoxR,
TTntCustomComboBoxRWLI, remembers last input.

TntEdiTime0

TTntEditTime0, TTntEditTimeLim0, TTntEditTimeMP0, with Required validation.

You can input a time in a special way:

1d = 1 day
1w = 1 week
1m = 1 month
1y = 1 year
1h = 1 hour
1m 15d = 1 month and 15 days

TTntEditTimeMP is also a T multi-panel control for time conversion.

TntExtMemo

TTntMemoExt, TTntMemoExtPresL: TMemo that it can get the cursor-position, modified from Alexander Meeder.

TntIABasicCtrls, TntIADBCtrls0, TntIAExtCtrls0

TTntCustomIACheckBox, TTntCustomIARadioButton, TTntCustomIARadioGroup, TTntCustomIADBCheckBox, TTntCustomIADBRadioGroup: are controls similar to TTntCheckBox, TTntRadioButton, TTntRadioGroup, TTntDBCheckBox, TTntDBRadioGroup, with:

Multiline Caption, when WordWrap = False. Also in radio group.
Correct Alignment of text. New possibility: center alignment of text with (checkbox or round button) image at top or bottom.
The images are changed to a bigger ones when TFont.Size > 12.
AutoSize, by default, and exists an adjust size procedure.

This components are a modification from Igor Andronov's IACheckControl.

TntIBFont

TTntIBFont, similar to TTntBBFont, but is child of TTntJvImgBtn.

TntJvSpinR0

TTntJvSpinEditR derived from TTntJvSpinEdit where initially Text = '', with Required validation.

TntRfEdit0

TTntRFilterEdit0, an implementation of a TTntEdit with ValidChars string filter, with Required validation.

TntRZNEdit0

Numeric input controls with ranges (nothing, Max, Min or both) and validation functions.

It comes with three types, each handling its special input range (real, integer and cardinal) and two groups:

Without value (record Valid: Boolean; Num: TNumType; end;): TTntEditVReal0, TTntEditVInteger0, TTntEditVCardinal0, with Required validation.

With value (between range MinValue MaxValue): TTntEditReal0, TTntEditInteger0, TTntEditCardinal0.

Modified from Robert Kratz's components.

Database controls

TntDbNavNew0

TTntmoDBNav0 is a common dataset navigator, with: 2 points of memory localization of records and their relocation
1 point of modified memory of the last modified record,
buttons of adding a record before the current record and the "normal" with a new image at the end.
buttons of to cancel and to accept in colour,
search button.

preset Hits,
possibility of vertical position of the bar.

Modified from Maggie Owens's control.

Other is: TTntmoDBInsert, installed by JMNTnt_Sm1_DXD.

TntDbNum0

TTntCustomDBIntegerEdit, TTntCustomDBFloatEdit: from TTntCustomDBEditR with Max and Min limits.

TntDBRText

TTntDBRText is a TntDBText within rectangle.

TntEdiDaTi

Resourcestrings for edits with Required validation and its warning background color.

TntEdiTAmp0

Controls (which ancestors in TntEdiTAmp0):

TTntCustomDBRadioGroupR, TTntCustomDBEditR, TTntCustomDBEditTxt, TTntCustomDBEditName

Ohter controls

TntButtonWithColor0

A BitBtn with background color. It is an update from UtilMind's ButtonWithColor.

TntCCopyDlg0

Modified from Arnt Kern's component. It contains a convenient controls whit copy, move and delete files:

TTntCCopyMoveBoxDlg0
TTntCDelBoxDlg0
TTntCopyMoveBoxDlg0
TTntDelBoxDlg0

TntDirMon

TTntDirMon, a Directory Changes Monitoring Component: notifies by changes in a directory such as: File/Directory: Create/Delete/Modify/Rename

TntIBFont

TTntIBFont, enables on click self to select a Font from TFontDialog, then Caption := CaptionLabel + FontSize, where Font := FontDialog.Font. Similar to TTntBBFont.

TntJv0TipOfDay

There are TTntJv0TipOfDay and TntJv0TipOfDayF: an adaptation of JVCL's JvTipOfDay:

adds:

ShowTipsOnStartup

ReplaceTabForLineBreak

when Application.BiDiMode = bdRightToLeft do:

FlipChildren (True);
FTipLabel.Alignment := taRightJustify; 

and changes arrow glyphs

now uses: JvGnugettext.TranslateComponent.

TntParseClass, TntParseExpr0, TntParser0

TTntMathParser0: A complet math parser (used in ATCalc). Several examples.

With a lot of functions (arithmetical, trigonometric, statistical, complex numbers, etc.), you can create variables in run time. For example, with α variable: (Ln (α+15) * 25) - 45.

Funtions, procedures, ...

TntCtrlPS

Several objects, that store position and size of a TForm; also DBGrid columns width and order. Optionally save-load from/of ini file.

TntDataSetUCom

Procedures for handling datasets, to write dataset to clipboard, string from record, etc.

TntDataSetU

Procedures for handling datasets, write or read records to or from Unicode text files, with normal messages.

TntDateTime0

Date and time constants and functions for exact date (new version will support approached dates).

TntDateTimeA

Date and time constants and functions for non exact date (approach).

TntDbCStatPres0

It contains (for statistical calculations for quantitative variables) TTntQtVStatCalcPres0. Its ancestor is DbCStatPres00.TQtVStatCalcPres00.

TntDIMime

A single DIMime unit adaptation to WideString.

TntEdiDaTi

Resourcestrings and warning background color forwith Required validation.

TntELog0

TExceptionLog0W: handles critical errors and write them to a log file.

TntFileUtilJv, TntFileUtil1, TntFileUtilM0

Several file functions.

TntHtmlHelpAPI0

Only contains TntHelpFile: the help filename (used by TntHtmlHelpAPI and TntHtmlHelpAPIBl units)

TntMabSave0

TTntNewIniFile0 from TTntMemIniFile, with read/write Char, WChar and TTntStrings.

TTntHlpIniFLoadSave0 a TComponent, that contains: ApplicationName, ApplicationPath, IniFile, assigns Application.HelpFile.

TntMessFont0

Contains resourcestrings, var and functions used by TntMessFont and TntMessFontBl.

TntMessUsual

Standard messages with only one parameter, the message: WideMessageBoxInfo, WideMessageBoxError, WideUserSayYes, ...

Messages with autoclosing: WideMessageBoxInfoTimer, WideMessageBoxErrorTimer,...

TntPBAppInstC

Check for the program instances (also used by TntPBJustOne and TntPBJustOneBl). If AllowedInstances = 0, it don't check.

TntSeveral

Handling font: read and write to ini files. Height and Width of text.

Load images.

TntStrAnal

WideString search and replace procedures.

TntStrUtil0

Functions for handling WideString.

Data modules

TntDMWinPlot

Data module that enables to plot functions, draw shapes, lines, etc. (used in ATCalc).

An image of the example:

Units not included in the previous packages

TntInst0

TTntInstApp0: For to make a link to the program, association with any program according the file extension, and modifications of Windows registers.

TntVCtrls

Some procedures with BiDiMode.

TntWAVFile

TTntWAVFile: Read a WAV file header.

JMNTntSm

It contains several packages:

JMNTnt_Sm1
JMNTnt_CCopy
JMNTnt_Sm2

Units not included in the previous packages

Look at here for installation.

JMNTnt_Sm1_DXR.dpk and JMNTnt_Sm1_DXD.dpk

Edit controls
Database controls
Other controls
Functions, procedures, ...
Dialogs

Edit controls

TntEdiCpx

Control (which ancestor in TntEdiCpx0) with Unicode standard error messages: TTntEditCpx.

TntEdiDateAppr

Controls (which ancestors in TntEdiDateAppr0) with Unicode standard error messages: TTntDateEditAppr:

TntEdiTime

Controls (which ancestors in TntEdiTime0) with Unicode standard error messages: TTntEditTime, TTntEditTimeLim, TTntEditTimeMP.

TntEdiTAmp

Controls (which ancestors in TntEdiTAmp0) with Unicode standard error messages:

TTntRadioGroupR
TTntEditR
TTntEditOnlyFileName
TTntEditTxt
TTntEditName
TTntComboBoxR
TTntComboBoxRWLI

Also look at database components.

TntIAExtCtrls

Control (which ancestor in TntIAExtCtrls0) with Unicode standard error messages: TTntIARadioGroup.

TntJvSpinR

Control (which ancestor in TntJvSpinR0) with Unicode standard error messages: TTntJvSpinEditR.

TntRfEdit

Control (which ancestor in TntRfEdit0) with Unicode standard error messages: TTntRFilterEdit.

TntRZNEdit

Controls (which ancestors in TntRZNEdit0) with Unicode standard error messages:

TTntEditVReal, TTntEditVInteger and TTntEditVCardinal.
TTntEditReal, TTntEditInteger, TTntEditCardinal.

Database controls

TntDbNavNew

Control (which ancestors in TntDbNavNew0) with Unicode standard error messages: TTntmoDBNav.

TntDbNum

Controls (which ancestors in TntDbNum0) with Unicode standard error messages: TTntDBIntegerEdit, TTntDBFloatEdit.

TntEdiTAmp

Controls (which ancestors in TntEdiTAmp0), with Unicode standard error messages: TTntDBEditR, TTntDBEditTxt, TTntDBEditName.

TntIADBCtrls

Controls (which ancestors in TntIADBCtrls0) with Unicode standard error messages: TTntIADBCheckBox and TTntIADBRadioGroup.

Ohter controls

TntButtonWithColor

Control (which ancestor in TntButtonWithColor0) with Unicode standard error message.

TntPBJustOne

TTntPBJustOne enables only one unique instance of an application at each time. Modified from Patrick Brisacier's component.

TntParseExpr, TntParser

Control (which ancestor in TntParser) with Unicode standard error messages: TTntMathParser.

Funtions, procedures, ...

TntDataSetU

Procedures for handling datasets, write or read records to or from text files, with Unicode standard messages.

TntELog

TExceptionLogW: TExceptionLogW0 (from TntELog0), with Unicode standard messages.

TntFileUtilM

Functions for handling files, some with Unicode standard messages.

TntHtmlHelpAPI

Open TntHelpFile (.chm file).

TntMabSave

Objects from TntMabSave0, with Unicode standard messages.

TntMessFont

Procedures and functions inherited from WideMessageDlg with a Font.

Input functions:

InputBool, from a prompt
InputString
InputInteger
InputIntegerFromList, integer from a TStringList displayed in a TRadioGroup
InputOkRBtnAnswerFromList, answer is OK from a TStringList displayed in a TRadioGroup
InputIntegerSE, integer from TSpinEdit
Input2IntegerSE, 2 integers from TSpinEdit
InputExtended
Input2Extended
InputEDate, exact date
InputADate, approximate date
InputTime
InputCpx, complex number
InputRMatrix, real matrix
InputStringList

Two modes: centered dialogs or remember position (and size) of the dialogs. InputBool, InputString, InputIntegerFromList and InputOkRBtnAnswerFromList also can display in their resizable dialogs a text, htm and images.

TntMessOther

Dialogs with a prompt and a customize (non-standard) buttons.

Dialogs

TntFBF

The default TTntForm: TFormBF, with: AutoScroll = False, Position = poScreenCenter, ShowHint = True. Almost all the forms in JMNTntObjReposSm descend of this.

JMNTnt_CCopy_DXR.dpk and JMNTnt_CCopy_DXD.dpk

TntCCopy

Inherited from TntCCopyDlg0, with Unicode standard messages.

TTntCCopyMoveBoxDlg
TTntCDelBoxDlg
TTntCopyMoveBoxDlg
TTntDelBoxDlg

JMNTnt_Sm2_DXR.dpk and JMNTnt_Sm2_DXD.dpk

DbCStatPres, FResShCopy, FResStat
PPastDateL

Units not included in the previous packages

TntInst

TTntInstApp: TTntInstApp0 (from TntInst0) with an implementation of standard error messages.

JMNTntBl

It enables to make a program for people with visual difficulty or blind.

It contains several packages:

DCLSAPI51
JMNTnt_Bl0
JMNTnt_Bl

Units not included in the previous packages

Look at here for installation.

DCLSAPI51DX.dpk

SpeechLib_TLB

Contains a lot of objects (TOleServer), TSpVoice is the speak engine used by the next packages. In a separated directory (SAPI5). Examples. For SAPI 4 use TntmSpeech.

JMNTnt_Bl0_DXR and JMNTnt_Bl0_DXD

Edit controls
Database controls
Other controls

Edit controls

TntGridsBl

TTntStringGridBl.

TntExtMemoBl

TTntMemoExtBl, TTntMemoExtPresLBl.

TntIABasicCtrlsBl

Controls (which ancestor in TntIABasicCtrls) with adapted messages: TTntIACheckBoxBl, TTntIARadioButtonBl.

TntStdCtrlsBl

TTntListBoxBl, TTntComboBoxBl.

Database controls

TntDBCtrlsBl

TTntDBComboBoxBl.

Other controls

TntLabelWC

You should change TTntLabel for TTntLabelWC for NVDA screen reader access to labels of your program. Look at here for more info.

JMNTnt_Bl_DXR and JMNTnt_Bl_DXD

Edit controls
Database controls
Other controls
Functions, procedures, ...
Data modules
Forms

Edit controls

TntComCtrlsBl

TTntPageControlBl.

TntDialogsBl

TTntOpenDialogBl, TTntSaveDialogBl.

TntEdiCpxBl

Control (which ancestor in TntEdiCpx0) with adapted messages: TTntEditCpxBl.

TntEdiDateApprBl

Control (which ancestor in TntEdiDateAppr0) with adapted messages: TTntDateEditApprBl.

TntEdiTAmpBl

Controls (which ancestors in TntEdiTAmp0), with adapted messages.

TTntEditRBl
TTntEditFileNameExtBl
TTntEditOnlyFileNameBl
TTntEditTxtBl
TTntEditNameBl
TTntComboBoxRBl
TTntComboBoxRWLIBl
TTntPxMaskEditRBl

TntEdiTimeBl

Controls (which ancestors in TntEdiTime0) with adapted messages: TTntEditTimeBl, TTntEditTimeLimBl and TTntEditTimeMPBl.

TntFileCtrl2Bl

TTntFileListBoxBl, TTntDirectoryListBoxBl.

TntIAExtCtrlsBl

Control (which ancestor in TntIAExtCtrls0) with adapted messages: TTntIARadioGroupBl.

TntJvSpinRBl

Control (which ancestor in TntJvSpinR0) with adapted messages: TTntJvSpinEditRBl.

TntJvToolEditBl

TTntJvFilenameEditBl, TTntJvDirectoryEditBl, TTntJvDateEditBl.

TntRfEditBl

Control (which ancestor in TntRfEdit0) with adapted messages: TTntRFilterEditBl.

TntRZNEditBl

Controls (which ancestors in TntRZNEdit0) with adapted messages: TTntEditRealBl, TTntEditIntegerBl, TTntEditCardinalBl, TTntEditVRealBl, TTntEditVIntegerBl, TTntEditVCardinalBl.

Database controls

TntDbNavNewWBI

Id TntDbNavNew0 but with optional large images: TTntmoDBNavWBI0, TTntmoDBInsertWB.

TntDbNumBl

Controls (which ancestors in TntDbNum0) with adapted messages: TTntDBIntegerEditBl, TTntDBFloatEditBl.

TntEdiTAmpBl

Controls (which ancestors in TntEdiTAmp0), with adapted messages: TTntDBEditRBl, TTntDBEditTxtBl, TTntDBEditNameBl.

TntIADBCtrlsBl

Controls (which ancestors in TntIADBCtrls0) with adapted messages: TTntIADBCheckBoxBl and TTntIADBRadioGroupBl.

TntJvDBGridSBl

TTntJvDBGridSBl, from TTntJvDBGridS, with events do say the cell content.

TntJvMemoryDatasetBl

TTntJvMemoryData with PostError and DisplayText, with adapted messages.

Other controls

TntButtonWithColorBl

Control (which ancestor in TntButtonWithColor0) with adapted message.

TntJv0TipOfDayBl

Control (which ancestor in TntJv0TipOfDay) with adapted messages: TTntJv0TipOfDayBl.

TntParseExprBl, TntParserBl

Control (which ancestor in TntParser) with adapted messages: TTntMathParserBl.

Functions, procedures, ...

TntDataSetUBl

Procedures for handling datasets, write or read records to or from text files, with adapted messages.

TntELogBl

TExceptionLogWBl: TExceptionLogW0 (from TntELog0), with adapted messages.

TntFileUtilMBl

Functions for handling files, with adapted messages.

TntHtmlHelpAPIBl

Open TntHelpFile (.chm file).

TntMabSave

Objects from TntMabSave0, with adapted messages.

TntMessFontBl

Similar to TntMessFont, with similar style to adapted messages.

TntMessOtherBl

Similar to TntMessOther, with similar style to adapted messages.

TntShFont

Contains the more used messages used from TntMessUsual and TntMessOther, using the TntModIniLLSF.Font: MessageSFBoxInfo, MessageSFBoxError, UserSFSayYes, MessageSFBoxInfoTimer, MessageXSFDlg, ...

Data modules

TntDMBlind0

TntDMBld0. Your project must contain a TntDMBld0 child.

TntDMIniGLLSSF

TTntModIniLLSF is t he main DataModule, contains the shared font, if the user is blind, the screen reader (Jaws or NVDA), short cuts for several procedures used by blind users, ancestor for image lists, program language, several procedures for resize the controls,.... Your project must contain a TTntModIniLLSF child.

Forms

TntFTrans

TTntFTrans must be the ancestor for any form of your project. It controls the activation of the forms, the focus changes, assigns the hotkeys, etc..

Contains two compiler directives:

ForBlind: if the user requires a screen reader, on pressing F6 the program displays an information message referred to current control, and with F7 to current form.

ForBlindSpk: the program emulates a screen reader sending the messages to Speech Engine (SAPI 4 or 5.1).

xTntFSelItem

TTntFrSelItem is the ancestor frame of TTntFrSelField.

xTntFSField

TTntFrSelField is the field selector used by TTntFSelSortFlds.

TntFSortFldsS

TTntFSelSortFlds uses three TTntFrSelField for to select the fields to sort the dataset.

Units not included in the previous packages

TntInstBl

TTntInstAppSF: TTntInstApp0 (from TntInst0) with adapted messages.

TntmSpeech

TntTextToSpeech is a WideString adaptation to TextToSpeech: enables to speech wide text (for Russian, Japanese, Korean). You need installed the Lernout & Hauspie (L&H) voices from free (http://www.vioio.com/voices.htm) or payment (Arabic, Danish, Greek, Norwegian, Polish, Swedish from http://www.nextup.com/TextAloud/SpeechEngine/voices.html) voices. An adaption from mSpeech.pas of Chen Yu (SAPI 4). Examples. For SAPI 5.1 use SpeechLib_TLB.