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 & Packages |
JMNCommon |
|||
JMN |
||||
JMNSm |
JMNBl |
|||
Object Repository |
JMNObjReposSm |
JMNObjReposBl |
||
Folders & Packages |
JMNBde |
JMNSql |
||
Object Repository |
JMNBdeObjRepos |
JMNSqlObjRepos |
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.
It contains the shared packages and components for all below directories and packages (JMNSm and JMNBl).
Look at here for more info.
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.
Components for (Borland Database Engine) BDE programs. Obsolete.
Look at here for more info.
Components for SQL programs, using Zeos Library.
Look at here for more info.
Bl=Blind.
It enables to make a program for people with visual difficulty or blind.
Look at here for more info.
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
(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.
-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:
3. Open Common_DX.bpg from JMNCommon folder and compile the packages sequentially:
From Environment Options window of Delphi IDE: Add the next directories in Library Path:
Open JMN_DX.bpg from JMN folder and compile/install the packages sequentially:
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.
From Environment Options window of Delphi IDE: Add the next directories in Library Path:
Open JMN_DX.bpg from JMN folder and compile/install the packages sequentially:
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.
If you need use my programs: ATCalc and BdeToSQL
A. From Environment Options window of Delphi IDE: Add the next directories in Library Path:
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)):
If you need use old version of my program: WDents:
A. Compile the package:
B. From Environment Options window of Delphi IDE: Add the next directories in Library Path:
C. Open JMN_BDE_DX.bpg from JMNBde folder and compile/install the packages sequentially:
If you need use my programs: ICDManager and WDents:
A. Compile the package:
B. From Environment Options window of Delphi IDE: Add the next directories in Library Path:
C. Open JMN_SQL_DX.bpg from JMNSQL folder and compile/install the packages sequentially:
It contains several packages:
Look at here for installation.
Functions, procedures, ...
Data modules
Objets and components
Not-Unicode specifics. They are:
Data set utilities.
Var and type for dates.
Single components that hold a form.
General type and functions.
String-number conversions.
Controls position procedures.
TDMTranslate is an ancestor for all TDataModule that will perhaps require a translation.
TDMPlot0 is the ancestor for TDMPlot.
of Ralf Junker.
for load/save GIF Images of Anders Melander.
Minimizer for modal windows of Zecos Software.
With any Draw types and functions; and TIntegerList0 (from SjrdLists.TExtendedList), TExtendedList0 and TRPointList0.
Used for TMathParser.
TPMath\*.pas: of J. Debord, used for TMathParser (ATCalc program).
ImageFileLib\*.pas: shared files for ImageFileLib and ImageFileLib.
It contains several packages:
Units not included in the previous packages
Look at here for installation.
Used by JMN_VNew.
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.
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:
# 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).
; 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[#].
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.
TBBFont, TIBFont: enable on click self to select a Font from TFontDialog, then Caption := CaptionLabel + FontSize, where Font := FontDialog.Font. TIBFont it is similar.
TEditCpx0 is a complex input, with Required validation.
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
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.
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.
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.
TMemoExt, TMemoExtPresL: TMemo that it can get the cursor-position, modified from Alexander Meeder.
TIBFont, similar to TBBFont, but is child of TJvImgBtn.
TJvSpinEditR derived from TJvSpinEdit where initially Text = '', with Required validation.
TListBox1ColStr: TListBox with several procedures: clear selection, conmute selection, delete current item or selected, move item up or down, copy to clipboard.
TRFilterEdit: an implementation of a TEdit with ValidChars string filter, with Required validation.
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.
TStringGridCPC: with new procedures/functions: clear all or selection, copy or cut to clipboard, paste from clipboard, insert or delete rows...
TSynEditWP: TSynEdit with especial paste (used in ATCalc).
TDBDateTimePicker: from Argus Software Pty Ltd.
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.
TCustomDBIntegerEdit, TCustomDBFloatEdit: from TCustomDBEditR with Max and Min limits.
Controls (which ancestors in EdiTAmp0) with standard error messages:
TDBRadioGroupR, TDBEditR, TDBEditTxt, TDBEditName, TDBLookupComboBoxR:
TDBIntegerEdit, TDBFloatEdit: from TDBEditR with Max and Min limits.
TDBRText: TDBText, with its text within rectangle.
TDBSpinEdit: obvious.
TJvDBRecCountLabel: A simple label with a RecNo/RecordCount (useful for DBGrid forms).
TBitBtnWithColor: A BitBtn with background color. It is an update from UtilMind's ButtonWithColor.
Modified from Arnt Kern's component. It contains a convenient controls whit copy, move and delete files:
TCCopyMoveBoxDlg0
TCDelBoxDlg0
TCopyMoveBoxDlg0
TDelBoxDlg0
Dataset statistics calculations (QtV: for quantitative variables).
TStatCalc -> TQtVStatCalc0 -> TQtVStatCalc
TDirMon, a Directory Changes Monitoring Component: notifies by changes in a directory such as: File/Directory: Create/Delete/Modify/Rename.
TIpHtmlPanel: A htm file viewer (requires nothing internet explorer).
TJv0TipOfDay, TJv0TipOfDayF: is and adaptation of JVCL's JvTipOfDay.
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.
TFileScan0: a file scanning utility of Bradley MacDonald, full modified.
TCopyCalc type.
Several objects, that store position and size of a TForm; also DBGrid columns width and order. Optionally save-load from/of ini file.
Procedures for handling datasets, to write dataset to clipboard, string from record, etc.
Date and time constants and functions for exact date (new version will support approached dates).
Date and time constants and functions for non exact date (approach).
It contains (for statistical calculations for quantitative variables) TQtVStatCalcPres0. Its ancestor is DbCStatPres00.TQtVStatCalcPres00.
Resourcestrings for edits with Required validation and its warning background color.
TExceptionLog0: handles critical errors and write them to a log file.
Several file functions.
Translation for short phrases, using the Google Traductor.
For conversion from plural to singular forms in Catalan ans Spanish
TNewIniFile0 from TMemIniFile, with read/write Char, and TStrings.
THlpIniFLoadSave0 contains: ApplicationName, ApplicationPath, IniFile, assigns Application.HelpFile.
Contains resourcestrings, var and functions used by MessFont and MessFontBl.
Standard messages with only one parameter, the message: MessageBoxInfo, MessageBoxError, UserSayYes, ...
Messages with autoclosing: MessageBoxInfoTimer, MessageBoxErrorTimer,...
Check for the program instances (also used by PBJustOne and PBJustOneBl). If AllowedInstances = 0, it don't check.
Andrey V. Sorokin's Regular Expressions: TRegExpr. Used by TScnFile.
Handling font: read and write to ini files. Height and Width of text. Load images.
String search and replace procedures.
Data module that enables to plot functions, draw shapes, lines, etc. (used in ATCalc).
An image of the example:
They are labeled components:
TEnhMemo, TEnhLabel, TLblEdit, TLblMemo, TLblComboBox, TLblMaskEdit.
TDbLblEdit,TDbLblMemo,TDbLblComboBox.
TInstApp0: For to make a link to the program, association with any program according the file extension, and modifications of Windows registers.
TWAVFile. Read a WAV file header.
It contains several packages:
JMN_Sm1
JMN_CCopy
JMN_Sm2
JMN_FilterSQL0
Look at here for installation.
Edit controls
Database controls
Other controls
Functions, procedures, ...
Dialogs
Control (which ancestor in EdiCpx0) with standard error messages: TEditCpx.
Controls (which ancestors in EdiDateAppr0) with standard error messages: TDateEditAppr:
Controls (which ancestors in EdiTime0) with standard error messages: TEditTime, TEditTimeLim, TEditTimeMP.
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.
Control (which ancestor in IAExtCtrls0) with standard error messages: TIARadioGroup.
Control (which ancestor in JvSpinR0) with standard error messages: TJvSpinEditR.
TMEditDate: a single date input
Control (which ancestor in RfEdit0) with standard error messages: TRFilterEdit.
Controls (which ancestors in RZNEdit0) with standard error messages:
TEditVReal, TEditVInteger and TEditVCardinal.
TEditReal, TEditInteger, TEditCardinal.
Control (which ancestors in DbNavNew0) with standard error messages: TmoDBNav.
Controls (which ancestors in DbNum0) with standard error messages: TDBIntegerEdit, TDBFloatEdit.
Components with Paradox format: dnDBPxG and dnDBPxM: TDBPxEdit, TDBPxComboBox, TDBPxGrid, TDBPxEditR and TDBPxComboBoxR.
Controls (which ancestors in EdiTAmp0), with standard error messages: TDBEditR, TDBEditTxt, TDBEditName.
Controls (which ancestors in IADBCtrls0) with standard error messages: TIADBCheckBox and TIADBRadioGroup.
A TJvDBGrid with support with Paradox format: TJvDBPxGrid.
TscExcelExport: export dataset to MS Excel, of Stefan Cruysberghs.
TPBJustOne: enables only one unique instance of an application at each time. Modified from Patrick Brisacier's component.
Control (which ancestor in Parser0) with standard error messages: TMathParser.
TFileScan (which ancestor in TScnFile0).
Procedures for handling datasets, write or read records to or from text files, with standard messages.
Inherited from TExceptionLog0, with standard messages.
Functions for handling files, some with standard messages.
Objects from MabSave0, with standard messages.
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.
Dialogs with a prompt and a customize (non-standard) buttons.
The default TForm: TFormBF, with: AutoScroll = False, Position = poScreenCenter, ShowHint = True. Almost all the forms in JMNObjReposSm descend of this.
Modified from Arnt Kern's component. It contains a convenient controls whit copy, move and delete files:
TCCopyMoveBoxDlg
TCDelBoxDlg
TCopyMoveBoxDlg
TDelBoxDl
TPPastDateLim: A little panel for past date input from TEdiDateAppr or TEditTime.
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.
TInstApp: TInstApp0 with an implementation of standard error messages.
It enables to make a program for people with visual difficulty or blind.
It contains several packages:
Units not included in the previous packages
Look at here for installation.
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.
Edit controls
Database controls
Other controls
TStringGridBl.
TMemoExtBl, TMemoExtPresLBl.
TFileListBoxBl, TDirectoryListBoxBl.
Controls (which ancestor in IABasicCtrls) with adapted messages: TIACheckBoxBl, TIARadioButtonBl.
TListBoxBl, TComboBoxBl
TDBComboBoxBl
You should change TLabel for TLabelWC for NVDA screen reader access to labels of your program. Look at here for more info.
Edit controls
Database controls
Other controls
Functions, procedures, ...
Data modules
Forms
TPageControlBl
Control (which ancestor in EdiCpx0) with adapted messages: TEditCpxBl.
From EdiDateAppr0: TEdiDateApprBl.
Controls (which ancestors in EdiTAmp0), with adapted messages.
TEditRBl
TEditFileNameExtBl
TEditOnlyFileNameBl
TEditTxtBl
TEditNameBl
TJvSpinEditRBl
TComboBoxRBl
TComboBoxRWLIBl
TPxMaskEditRBl
TPxComboBoxRBl
TPxComboBoxRWLIBl
From EdiTime0: TEditTimeBl, TEditTimeLimBl and TEditTimeMPBl.
Control (which ancestor in IAExtCtrls0) with adapted messages: TIARadioGroupBl.
Control (which ancestor in JvSpinR0) with adapted messages: TJvSpinEditRBl.
TJvFilenameEditBl, TJvDirectoryEditBl, TJvDateEditBl.
TRFilterEditBl.
Similar to RZNE0, etc.. TEditRealBl, TEditIntegerBl, TEditCardinalBl, TEditVRealBl, TEditVIntegerBl, TEditVCardinalBl
From DbCStat: TQtVStatCalc0 -> TQtVStatCalcPres, using the units:
FldSelSF -> FldSelNumSF (TFFldNumSelectSF) for select the fields.
FResShCopySF -> FResStatSF (TFResultStatisSF), for display the results.
Id DbNavNew0 with optional large images: TmoDBNavWBI0, TmoDBInsertWBI.
Controls (which ancestors in DbNum0) with adapted messages: TDBIntegerEditBl, TDBFloatEditBl.
Controls (which ancestors in EdiTAmp0), with adapted messages.
TDBEditRBl
TDBEditTxtBl
TDBEditNameBl
TDBLookupComboBoxRBl
Controls (which ancestors in IADBCtrls0) with adapted messages: TIADBCheckBoxBl and TIADBRadioGroupBl.
TJvDBGridBl.
TJvMemoryDataBl.
TJv0TipOfDayBl,.
Control (which ancestor in Parser0) with adapted messages: TMathParserBl.
Procedures for handling datasets, write or read records to or from text files, with adapted messages.
Inherited from TExceptionLog0, with adapted messages.
Functions for handling files, with adapted messages.
Objects from MabSave0, with adapted messages.
Similar to MessFont, with similar style to adapted messages..
Similar to MessOther, with similar style to adapted messages.
Contains the more used messages used from MessUsual and MessOther, using the ModIniLLSF.Font: MessageSFBoxInfo, MessageSFBoxError, UserSFSayYes, MessageSFBoxInfoTimer, MessageXSFDlg, ...
DMBld0. Your project must contain a DMBld0 child.
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.
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).
TFrSelItem is the ancestor frame of TFrSelField.
TFrSelField is the field selector used by TFSelSortFlds.
TFSelSortFlds uses three TFrSelField for select the fields to sort the dataset.
TInstAppSF: TInstApp0, with adapted messages.
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.
For JMN_BDE_FilterSQL_DXR and JMN_SQL_FilterSQL_DXR.
Look at here for installation.
Controls: TBdeDBNav, TBdeTableLFSIIL.
Controls: TBdeGBFilter0, TBdeGBFilter, TBdeGlobalFilter.
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.
Controls: TSqlDBNav, TSqlTableLFSIIL.
Controls: TSqlGBFilter0, TSqlGBFilter, TSqlGlobalFilter.