JMN-Lib  v 2.1

Look here for Versions.

Click here for download.

Copyleft 2011  Jordi March i Nogué (jmarch@comg.cat)

[Remember JMN-Tnt-Lib is similar to JMN-Lib with Unicode (WideString) controls, functions ans procedures].

Folders

Hierarchy structure

Folders & Packages
JMNCommon
JMN
JMNTnt
JMNSm
JMNBl
Object Repository
JMNObjReposSm
JMNObjReposBl
Folders & Packages
JMNBde
JMNSql
Object Repository
JMNBdeObjRepos
JMNSqlObjRepos

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.

JMN

It contains the shared packages and components for all below directories and packages (JMNSm and JMNBl).

Look at here for more info.

JMNSm

Sm=Simple.

It contains the shared packages and components for the two below directories and packages (JMNBde and JMNSql).

Look at here for more info.

JMNBde

Components for (Borland Database Engine) BDE programs. Obsolete.

Look at here for more info.

JMNSql

Components for SQL programs, using Zeos Library.

Look at here for more info.

JMNBl

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:

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

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.

Apprehend Screen Capture of William Miller: http://www.hicomponents.com/apprehend/Apprehend.htm.

For database programs:

tDBF component for Delphi: https://sourceforge.net/projects/tdbf/
ZeosDBO-6.6.5-stable from Zeos Development Group: http://www.sourceforge.net/projects/zeoslib

For some database programs also are recommended:

(c) TeeChart Pro v5 from David Berneda: http://www.steema.com
(c) QuicReport Pro de QuSoft: http://www.qusoft.com

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
HTMLHelpViewer de Jan Goyvaerts: http://download.jgsoft.com/helpscribble/UseHTMLHelp.zip

Because their source code is among JMN-Lib one.

Steps

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. The installer program has been copied the folders inside to one directory, for example in $(DELPHI)\Lib.

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

3. Open Common_DX.bpg from JMNCommon folder and compile the packages sequentially:

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

JMN

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

  1. $(DELPHI)\JMNObjRepos
  2. $(DELPHI)\Lib\JMN\Source
  3. $(DELPHI)\Lib\JMN\Source\Ef   (if you like a labeled edits)
  4. $(DELPHI)\Lib\JMN\Source\ImageFileLib

Open JMN_DX.bpg from JMN folder and compile/install the packages sequentially:

  1. ImageFileLib_DXR.dpk
  2. JMN_SmBl_DXD.dpk
  3. JMN_EF_DXD.dpk  (if you like a labeled edits).

If appears: 'Registration Procedure Register2000.Register in package ... raised exception class EFileError: A Class named TWordApplication already exists'. Look at http://www.add-in-express.com/forum/read.php?FID=1&TID=705.

JMNSm

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

  1. $(DELPHI)\Lib\JMN\Source
  2. $(DELPHI)\Lib\JMN\Source\CCopy
  3. $(DELPHI)\Lib\JMN\Source\DBFldStat
  4. $(DELPHI)\JMNObjReposSm

Open JMN_DX.bpg from JMN folder and compile/install the packages sequentially:

  1. JMN_Sm1_DXR.dpk
  2. JMN_Sm1_DXD.dpk
  3. JMN_CCopy_DXR.dpk
  4. JMN_CCopy_DXD.dpk
  5. JMN_Sm2_DXR.dpk
  6. JMN_Sm2_DXD.dpk
  7. JMN_FilterSQL0_DXR

If appears: 'Registration Procedure Register2000.Register in package ... raised exception class EFileError: A Class named TWordApplication already exists'. Look at http://www.add-in-express.com/forum/read.php?FID=1&TID=705.

JMNBl

If you need use my programs: ATCalc and BdeToSQL

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

  1. $(DELPHI)\Lib\JMNBl\Source
  2. $(DELPHI)\Lib\JMNBl\Source\DBFldStat
  3. $(DELPHI)\JMNObjReposBl

B. Open JMNBl_DX.bpg and compile the packages (before remember to inspect the directive values for WithPoF (contained in PerhapsPoF.inc), ForBlind and ForBlindSpk (contained in PerhapsBlind.inc)):

  1. JMN_Bl0_DXD.dpk
  2. JMN_Bl0_DXR.dpk
  3. JMN_Bl_DXD.dpk
  4. JMN_Bl_DXR.dpk

JMNBde

If you need use old version of my program: WDents:

A. Compile the package:

  1. JMN_FilterSQL0_DXR.dpk.

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

  1. $(DELPHI)\Lib\JMNBde\Source
  2. $(DELPHI)\Lib\JMNBde\Source\DBFilter
  3. $(DELPHI)\JMNBdeObjRepos

C. Open JMN_BDE_DX.bpg from JMNBde folder and compile/install the packages sequentially:

  1. JMN_BDE_Sh1_DXR.dpk
  2. JMN_BDE_Sh1_DXD.dpk
  3. JMN_BDE_FilterSQL_DXR.dpk
  4. JMN_BDE_FilterSQL_DXD.dpk

JMNSql

If you need use my programs: ICDManager and WDents:

A. Compile the package:

  1. JMN_FilterSQL0_DXR.dpk.

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

  1. $(DELPHI)\Lib\JMNSQL\Source
  2. $(DELPHI)\Lib\JMNSQL\Source\DBFilter
  3. $(DELPHI)\JMNSQLObjRepos

C. Open JMN_SQL_DX.bpg from JMNSQL folder and compile/install the packages sequentially:

  1. JMN_SQL_Sh1_DXR.dpk
  2. JMN_SQL_Sh1_DXD.dpk
  3. JMN_SQL_FilterSQL_DXR.dpk
  4. JMN_SQL_FilterSQL_DXD.dpk

Packages

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

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

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

ImageFileLib0_DXR.dpk

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

JMN

It contains several packages:

ImageFileLib
JMN_SmBl
JMN_EF

Units not included in the previous packages

Look at here for installation.

ImageFileLib_DXR.dpk

Used by JMN_VNew.

JMN_SmBl_DXR.dpk and JMN_SmBl_DXD.dpk

Paradox components
Edit controls
Database controls
Others 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 EdiDaTi.clEdiBgWarning (by default, rose color). This controls contain a Valid public function.

Paradox mask and components

Units: dn*.pas

TPxMaskEdit, TPxComboBox, TPxGrid (and others described below) are components 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{#}

Registers:

Fields: TPxStringField.

View database components here.

Edit controls

BBFont

TBBFont, TIBFont: enable on click self to select a Font from TFontDialog, then Caption := CaptionLabel + FontSize, where Font := FontDialog.Font. TIBFont it is similar.

EdiCpx0

TEditCpx0 is a complex input, with Required validation.

EdiDateAppr0

TDateEditAppr, 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

EdiTAmp0

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

TCustomRadioGroupR,
TCustomEditR,
TCustomEditFileNameExt
, not supports '\:.'
TCustomEditOnlyFileName,
TCustomEditTxt,
TCustomEditName,
TCustomJvSpinEditR,
TCustomComboBoxR,
TCustomComboBoxRWLI
, remembers last input
TCustomPxMaskEditR,
TCustomPxComboBoxR,
TCustomPxComboBoxRWLI
.

EdiTime0

TEditTime, TEditTimeLim, TEditTimeMP, 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

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

IABasicCtrls, IADBCtrls0, IAExtCtrls0

TCustomIACheckBox, TCustomIARadioButton, TCustomIARadioGroup, TCustomIADBCheckBox, TCustomIADBRadioGroup: are controls similar to TCheckBox, TRadioButton, TRadioGroup, TDBCheckBox, TDBRadioGroup, 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.

ExtMemo

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

IBFont

TIBFont, similar to TBBFont, but is child of TJvImgBtn.

JvSpinR0

TJvSpinEditR derived from TJvSpinEdit where initially Text = '', with Required validation.

LB1ColStr

TListBox1ColStr: TListBox with several procedures: clear selection, conmute selection, delete current item or selected, move item up or down, copy to clipboard.

RfEdit0

TRFilterEdit: an implementation of a TEdit with ValidChars string filter, with Required validation.

RZNEdit0

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;): TEditVReal0, TEditVInteger0 and TEditVCardinal0, with Required validation.

With value (between range MinValue MaxValue): TEditReal0, TEditInteger0, TEditCardinal0.

Modified from Robert Kratz's components.

StrGrids

TStringGridCPC: with new procedures/functions: clear all or selection, copy or cut to clipboard, paste from clipboard, insert or delete rows...

SynEditWP

TSynEditWP: TSynEdit with especial paste (used in ATCalc).

Database controls

DBDateTimePicker

TDBDateTimePicker: from Argus Software Pty Ltd.

DbNavNew0

TmoDBNav0 is a 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 TmoDBInsert, installed by JMN_Sm1_DXD.

DbNum0

TCustomDBIntegerEdit, TCustomDBFloatEdit: from TCustomDBEditR with Max and Min limits.

EdiTAmp

Controls (which ancestors in EdiTAmp0) with standard error messages:

TDBRadioGroupR, TDBEditR, TDBEditTxt, TDBEditName, TDBLookupComboBoxR:

DbNum0

TDBIntegerEdit, TDBFloatEdit: from TDBEditR with Max and Min limits.

DBRText

TDBRText: TDBText, with its text within rectangle.

DBSpinEdit

TDBSpinEdit: obvious.

JvDBRecCountLabel

TJvDBRecCountLabel: A simple label with a RecNo/RecordCount (useful for DBGrid forms).

Ohter controls

ButtonWithColor

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

CCopyDlg0

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

TCCopyMoveBoxDlg0
TCDelBoxDlg0
TCopyMoveBoxDlg0
TDelBoxDlg0

DbCStat

Dataset statistics calculations (QtV: for quantitative variables).

TStatCalc -> TQtVStatCalc0 -> TQtVStatCalc

DirMon

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

IpHtml, ipanim, ipconst, ipfilebroker, IpHtmlPv, ipmsg, ipstrms, iputils

TIpHtmlPanel: A htm file viewer (requires nothing internet explorer).

Jv0TipOfDay

TJv0TipOfDay, TJv0TipOfDayF: is and adaptation of JVCL's JvTipOfDay.

ParseClass, ParseExpr0, Parser0

TMathParser: 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 a variable: (Ln (a+15) * 25) - 45.

TScnFile0

TFileScan0: a file scanning utility of Bradley MacDonald, full modified.

Funtions, procedures, ...

CopyCalc

TCopyCalc type.

CtrlPS

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

DataSetUCom

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

DateTime0

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

DateTimeA

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

DbCStatPres0

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

EdiDaTi

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

ELog0

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

FileUtilJv, FileUtil1, FileUtilM0

Several file functions.

GoogleTrans

Translation for short phrases, using the Google Traductor.

LangUtils

For conversion from plural to singular forms in Catalan ans Spanish

MabSave0

TNewIniFile0 from TMemIniFile, with read/write Char, and TStrings.

THlpIniFLoadSave0 contains: ApplicationName, ApplicationPath, IniFile, assigns Application.HelpFile.

MessFont0

Contains resourcestrings, var and functions used by MessFont and MessFontBl.

MessUsual

Standard messages with only one parameter, the message: MessageBoxInfo, MessageBoxError, UserSayYes, ...

Messages with autoclosing: MessageBoxInfoTimer, MessageBoxErrorTimer,...

PBAppInstC

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

RegExpr

Andrey V. Sorokin's Regular Expressions: TRegExpr. Used by TScnFile.

Several

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

StrAnal

String search and replace procedures.

Data modules

DMWinPlot

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

An image of the example:

JMN_EF_DXD.dpk

They are labeled components:

TEnhMemo, TEnhLabel, TLblEdit, TLblMemo, TLblComboBox, TLblMaskEdit.

TDbLblEdit,TDbLblMemo,TDbLblComboBox.

Units not included in the previous packages

Inst0

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

WAVFile

TWAVFile. Read a WAV file header.

JMNSm

It contains several packages:

JMN_Sm1
JMN_CCopy
JMN_Sm2
JMN_FilterSQL0

Look at here for installation.

JMN_Sm1_DXR.dpk and JMN_Sm1_DXD.dpk

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

Edit controls

EdiCpx

Control (which ancestor in EdiCpx0) with standard error messages: TEditCpx.

EdiDateAppr

Controls (which ancestors in EdiDateAppr0) with standard error messages: TDateEditAppr:

EdiTime

Controls (which ancestors in EdiTime0) with standard error messages: TEditTime, TEditTimeLim, TEditTimeMP.

EdiTAmp

Controls (which ancestors in EdiTAmp0) with standard error messages:

TRadioGroupR
TEditR
TEditFileNameExt

TEditOnlyFileName
TEditTxt
TEditName
TJvSpinEditR
TComboBoxR
TComboBoxRWLI

TPxMaskEditR
TPxComboBoxR
TPxComboBoxRWLI

Also look at database components.

IAExtCtrls

Control (which ancestor in IAExtCtrls0) with standard error messages: TIARadioGroup.

JvSpinR

Control (which ancestor in JvSpinR0) with standard error messages: TJvSpinEditR.

MEditReq

TMEditDate: a single date input

RfEdit

Control (which ancestor in RfEdit0) with standard error messages: TRFilterEdit.

RZNEdit

Controls (which ancestors in RZNEdit0) with standard error messages:

TEditVReal, TEditVInteger and TEditVCardinal.
TEditReal, TEditInteger, TEditCardinal.

Database controls

DbNavNew

Control (which ancestors in DbNavNew0) with standard error messages: TmoDBNav.

DbNum

Controls (which ancestors in DbNum0) with standard error messages: TDBIntegerEdit, TDBFloatEdit.

dnDBPxG, dnDBPxM

Components with Paradox format: dnDBPxG and dnDBPxM: TDBPxEdit, TDBPxComboBox, TDBPxGrid, TDBPxEditR and TDBPxComboBoxR.

EdiTAmp

Controls (which ancestors in EdiTAmp0), with standard error messages: TDBEditR, TDBEditTxt, TDBEditName.

IADBCtrls

Controls (which ancestors in IADBCtrls0) with standard error messages: TIADBCheckBox and TIADBRadioGroup.

JvDBPxGrid

A TJvDBGrid with support with Paradox format: TJvDBPxGrid.

scExcelExport

TscExcelExport: export dataset to MS Excel, of Stefan Cruysberghs.

Ohter controls

PBJustOne

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

ParseExpr, Parser

Control (which ancestor in Parser0) with standard error messages: TMathParser.

TScnFile

TFileScan (which ancestor in TScnFile0).

Funtions, procedures, ...

DataSetU

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

ELog

Inherited from TExceptionLog0, with standard messages.

FileUtilM

Functions for handling files, some with standard messages.

MabSave

Objects from MabSave0, with standard messages.

MessFont

Procedures and functions inherited from MessageDlg 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.

MessOther

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

Dialogs

FBF

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

JMN_CCopy_DXR.dpk and JMN_CCopy_DXD.dpk

CCopy

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

TCCopyMoveBoxDlg
TCDelBoxDlg
TCopyMoveBoxDlg
TDelBoxDl

JMN_Sm2_DXR.dpk and JMN_Sm2_DXD.dpk

TPPastDateLim: A little panel for past date input from TEdiDateAppr or TEditTime.

DbCStatPres

From DbCStat: TQtVStatCalc0 -> TQtVStatCalcPres, using the units: FResShCopy and FResStat.

FldSel -> FldSelNum (TFFldNumSelect) for select the fields.
FResShCopy -> FResStat (TFResultStatis), for display the results.

A set of math calculators dialogs: TCalcMath, TCalcMC, TCalcMCC, TCalcMCM, TCalcMCSE.

A set of time calculators dialogs: TCalcTime, TCalcTC, TCalcTCC, TCalcTCM, TCalcTCSE.

A set of date dialogs: TSelDateC, TSelDateCC, TSelDateCM, TSelDateCSE, TSelDateDBE, TSelDateDBG.

Units not included in the previous packages

Inst

TInstApp: TInstApp0 with an implementation of standard error messages.

JMNBl

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

It contains several packages:

DCLSAPI51
JMN_Bl0
JMN_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 mSpeech.

JMN_Bl0_DXR.dpk and JMN_Bl0_DXD.dpk

Edit controls
Database controls
Other controls

Edit controls

GridsBl

TStringGridBl.

ExtMemoBl

TMemoExtBl, TMemoExtPresLBl.

FileCtrlBl

TFileListBoxBl, TDirectoryListBoxBl.

IABasicCtrlsBl

Controls (which ancestor in IABasicCtrls) with adapted messages: TIACheckBoxBl, TIARadioButtonBl.

StdCtrlsBl

TListBoxBl, TComboBoxBl

Database controls

DBCtrlsBl

TDBComboBoxBl

Other controls

LabelWC

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

JMN_Bl_DXR.dpk and JMN_Bl_DXD.dpk

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

Edit controls

ComCtrlsBl

TPageControlBl

EdiCpxBl

Control (which ancestor in EdiCpx0) with adapted messages: TEditCpxBl.

EdiDateApprBl

From EdiDateAppr0: TEdiDateApprBl.

EdiTAmpBl

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

TEditRBl
TEditFileNameExtBl

TEditOnlyFileNameBl
TEditTxtBl
TEditNameBl
TJvSpinEditRBl
TComboBoxRBl
TComboBoxRWLIBl

TPxMaskEditRBl
TPxComboBoxRBl
TPxComboBoxRWLIBl

EdiTimeBl

From EdiTime0: TEditTimeBl, TEditTimeLimBl and TEditTimeMPBl.

IAExtCtrlsBl

Control (which ancestor in IAExtCtrls0) with adapted messages: TIARadioGroupBl.

JvSpinRBl

Control (which ancestor in JvSpinR0) with adapted messages: TJvSpinEditRBl.

JvToolEditBl

TJvFilenameEditBl, TJvDirectoryEditBl, TJvDateEditBl.

RfEditBl

TRFilterEditBl.

RZNEditBl

Similar to RZNE0, etc.. TEditRealBl, TEditIntegerBl, TEditCardinalBl, TEditVRealBl, TEditVIntegerBl, TEditVCardinalBl

Database controls

DbCStatPresBl

From DbCStat: TQtVStatCalc0 -> TQtVStatCalcPres, using the units:

FldSelSF -> FldSelNumSF (TFFldNumSelectSF) for select the fields.
FResShCopySF -> FResStatSF (TFResultStatisSF), for display the results.

DbNavNewWBI

Id DbNavNew0 with optional large images: TmoDBNavWBI0, TmoDBInsertWBI.

DbNumBl

Controls (which ancestors in DbNum0) with adapted messages: TDBIntegerEditBl, TDBFloatEditBl.

EdiTAmpBl

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

TDBEditRBl
TDBEditTxtBl
TDBEditNameBl
TDBLookupComboBoxRBl

IADBCtrlsBl

Controls (which ancestors in IADBCtrls0) with adapted messages: TIADBCheckBoxBl and TIADBRadioGroupBl.

JvDBGridBl

TJvDBGridBl.

JvMemoryDatasetBl

TJvMemoryDataBl.

Other controls

Jv0TipOfDayBl

TJv0TipOfDayBl,.

ParseExprSF, ParserSF

Control (which ancestor in Parser0) with adapted messages: TMathParserBl.

Functions, procedures, ...

DataSetUBl

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

ELogBl

Inherited from TExceptionLog0, with adapted messages.

FileUtilMBl

Functions for handling files, with adapted messages.

MabSaveBl

Objects from MabSave0, with adapted messages.

MessFontBl

Similar to MessFont, with similar style to adapted messages..

MessOtherBl

Similar to MessOther, with similar style to adapted messages.

ShFont

Contains the more used messages used from MessUsual and MessOther, using the ModIniLLSF.Font: MessageSFBoxInfo, MessageSFBoxError, UserSFSayYes, MessageSFBoxInfoTimer, MessageXSFDlg, ...

Data modules

DMBlind0

DMBld0. Your project must contain a DMBld0 child.

DMIniGLLSSF

TModIniLLSF is the 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 TModIniLLSF child.

Forms

FTrans

TFTrans must be the ancestor for any form of your project, and controls the activation of the forms, the focus changes, 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).

xFSelItem

TFrSelItem is the ancestor frame of TFrSelField.

xFSField

TFrSelField is the field selector used by TFSelSortFlds.

FSortFldsS

TFSelSortFlds uses three TFrSelField for select the fields to sort the dataset.

Units not included in the previous packages

InstSF

TInstAppSF: TInstApp0, with adapted messages.

mSpeech

TMSpeech. For SAPI 4. 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. Examples. For SAPI 5.1 use SpeechLib_TLB.

JMN_FilterSQL0_DXR.dpk

For JMN_BDE_FilterSQL_DXR and JMN_SQL_FilterSQL_DXR.

JMNBde

Look at here for installation.

JMN_BDE_Sh1_DXR.dpk and JMN_BDE_Sh1_DXD.dpk

Controls: TBdeDBNav, TBdeTableLFSIIL.

JMN_BDE_FilterBDE_DXR.dpk and JMN_BDE_FilterBDE_DXD.dpk

Controls: TBdeGBFilter0, TBdeGBFilter, TBdeGlobalFilter.

JMNSql

You should not install them if you do not require to use my programs: ICDManager and WDents. But maybe be of your interest the unit ZeosSQLU.pas.

Look at here for installation.

JMN_SQL_Sh1_DXR.dpk and JMN_SQL_Sh1_DXD.dpk

Controls: TSqlDBNav, TSqlTableLFSIIL.

JMN_SQL_FilterSQL_DXR.dpk and JMN_SQL_FilterSQL_DXD.dpk

Controls: TSqlGBFilter0, TSqlGBFilter, TSqlGlobalFilter.