Copyright: Copyright © 1997, P A van Lonkhuyzen
Citation: Copyright © 1997, P A van Lonkhuyzen


AMPMHeadings
Property AMPMHeadings : TStrings

applies to TpvlTimeEdit TpvldbTimeEdit

This stringlist holds alternate captions for the AM and PM Buttons on the dropdown clock.

Only the first 2 will be used.

If ther is no coresponding entry the the defaults of AM and PM will be used.


Alignment
property Alignment: TCalcAlignment

applies to TpvlCalcEdit, TdpvldbCalcEdit

This determins how the number is aligned to the edit control.

caLeft : The Number is left aligned

caRight : The Number is right aligned

caMixed :: The Number is left aligned when editing but right aligned when there is no focus.


Bug Reports

All efforts will be made to fix a bug as quickly as possible but I can only do that if it can easily be reproduced. In the event of you finding a bug, see if you can reproduce it in a simple piece of code and email me that code including the DFM file with a description of the bug. As soon as the bug is fixed you will be sent an intermediate version with the bug fix.

Email : peterv@global.co.za


CalendarColors
property CalendarColors : TpvlGridColors

applies to TpvlDateEdit, TpvldbDateEdit

This property determins how the dropdown calendar will be colored.


CalendarFont
property CalendarFont : TFont

applies to TpvlDateEdit, TpvldbDateEdit

This is the font that is used in the dropdown calendar.


Date (Runtime)
property Date : TDateTime (Runtime)

applies to TpvlDateEdit, TpvldbDateEdit

This property allows you to set the date directly at runtime.


Day
property Day : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the day portion of the date.(It will only be loaded at runtime if LoadDate is true)


DayHeadings
property DayHeadings : TStrings

applies to TpvlDateEdit, TpvldbDateEdit

This is a list of days for the headings in the calendar.

They must start from Sunday irrespective of the StartOfWeek property

If they are not set then the value of ShortDayNames for that day will be used.


Decimals
property Decimals : SmallInt

applies to TpvlCalcEdit,TpvldbCalcEdit

This determins how many decimals get displayed.


DisplayFormat
property DisplayFormat : TDateDisplayFormat

applies to TpvlDateEdit, TpvldbDateEdit, TpvlTimeEdit, TpvldbTimeEdit

This determins how the date/time gets displayed when the control isn't the activecontrol.

If set to dfLong it will use the windows long date/timeformat.

If set to dfShort it will use the windows short date/timeformat.

If set to dfCustom it will use the format given in DisplayFormatMask


DisplayFormatMask
property DisplayFormatMask : String

applies to TpvlDateEdit, TpvldbDateEdit, TpvlTimeEdit, TpvldbTimeEdit, TpvlCalcEdit, TpvldbCalcEdit

This is the mask that will be used when DisplayFormat is set to dfCustom (caCustom for CalcEdits)


Displayformat2
property DisplayFormat : TCalcDisplayFormat

applies to TpvlCalcEdit, TpvldbCalcEdit

This determins how the Number gets displayed when the control isn't the activecontrol.

If set to cfNumber it will use the %n format.

If set to cfCustom it will use the format given in DisplayFormatMask


EditFormat
property EditFormat : TpvlDateEditFormat

applies to TpvlDateEdit, TpvldbDateEdit

This determins how the date gets displayed when the control is the activecontrol.

If set to dfShort it will use the windows short dateformat.

If set to dfCustom it will use the format given in EditFormatMask

Notes

1)Although this control handles date formats without dateseparators. The year must either be last or a 4 digit year must be specified.

e.g. YYMMDD - Invalid

       DDMMYY - valid

       YYYYMMDD - valid.

2) You may not enter a edit format that accepts text.


EditFormatMask
property EditFormatMask : String

applies to TpvlDateEdit, TpvldbDateEdit

This is the mask that will be used when EditFormat is set to dfCustom.

Note Although this control handles date formats without dateseparators. The year must either be last or a 4 digit year must be specified.

e.g. YYMMDD - Invalid

       DDMMYY - valid

       YYYYMMDD - valid.


Edtool
Edtool - Editing components for Delphi

Edtool is a collection of 11 Different editing components for Delphi 32 Bit.

Unfortunately no 16 bit version exists because of a few required API calls which were only introduced in Win32.

Note if you were using the TpvlDateEdit Components prior to version 2 see version history for important differences

Installation Instructions

Components included in Edtool :

TpvlDualSpeedButton : Derived from TSpeedbutton but registers both left and right clicks

TpvlSpeedButton : Derived from TSpeedbutton but will repeat clicks while the mouse stays down.

TpvlClock :An analogue clock component.

TpvlMoreEdit : An editbox with a button built into the right edge typically used for more information

TpvlDateEdit : A Date editbox with a dropdown calendar

TpvlCalcEdit: A Numerical editbox with a dropdown calculator

TpvlTimeEdit : A Time editbox with a dropdown clock.

TpvldbMoreEdit : A Data aware version of TpvlMoreEdit

TpvldbDateEdit: A Data aware version of TpvlDateEdit

TpvldbCalcEdit: A Data aware version of TpvlCalcEdit

TpvldbTimeEdit : A Data aware version of TpvlTimeEdit


Glyph
property Glyph : TBitmap

applies to TpvlMoreEdit,TpvldbMoreEdit,TpvlDateEdit,TpvldbDateEdit,TpvlCalcEdit,TpvldbCalcEdit,TpvlTimeEdit,TpvldbTimeEdit

This property determins what gets shown on the button in the box

the default is ... for TpvlMoreEdit and TpvldbMoreEdit while it is [image] (OBM_COMBO) for the others.


HighlightDays
property HighlightDays : set of [Sun..Sat]

applies to TpvlDateEdit, TpvldbDateEdit

These are the days that are shown in a highlight color.

Default [Sun,Sat]


Hour
Property Hour : Word

applies to TpvlTimeEdit, TpvldbTimeEdit

This allows you to set the hour portion of the time.(It will only be loaded at runtime if LoadTime is true)


How to obtain the source code

The Source code to Edtool is available directly from the author at a cost of US $10.00 for this you will receive the source to all future versions of Edtool (including intermediate bug fix releases) due to the price the source can only be distributed via the WWW.

NB Please include a note with a contact email address with all cheques.

It's often quite difficult to reconcile personal email addresses with company cheques.

The author can be contacted at

E-mail :

peterv@global.co.za

Postal Services (Snail Mail) :

P van Lonkhuyzen

PO Box 1041

Randpark Ridge

2156

South Africa


ImpliedCenturyStart
Property ImpliedCenturyStart : word

applies to TpvlDateEdit, TpvldbDateEdit

This determins how to handle the century if only a 2 digit year is supplied.

If set to 0 then the current century will be added

If set to anything else then the implied century will start at that year

e.g. if set to 1980 then the following will occur

      80 will be read as 1980

      00 will be read as 2000

      79 will be read as 2079

This has no effect if the user enters a 4 digit year.


Installation Instructions

Note if you were using the TpvlDateEdit Components prior to version 2 see version history for important differences

If you are using Delphi 3.xx Please first copy *.DC3 to *.DCU

If you are using the source versions and wish to retain the old names

1) copy edtool.ocr to edtool.dcr

2) copy dbedtool.ocr dbedtool.dcr

3) edit edtool.inc and add change the line

{.DEFINE NOPVL}

to

{$DEFINE NOPVL}

To Install the Non data-aware Components

1. Choose the Install option from the component menu.

2. Press the Add Button

3. Select EDTOOL.DCU (EDTOOL.OBJ for C++ Builder) changing the path if neccesary.

4. Press OK Twice.

5. The components are now installed onto Peter's Components tab of the component selector.

To Install the data-aware Components

1. Choose the Install option from the component menu.

2. Press the Add Button

3. Select DBEDTOOL.DCU (DBEDTOOL.OBJ for C++ Builder) changing the path if neccesary.

4. Press OK Twice.

5. The components are now installed onto Peter's Components tab of the component selector.

To Install the Component Help Delphi 2.xx/C++ Builder

(These instructions assume that your copy of Delphi is installed in C:\DELPHI

 If not adjust the paths accordingly)

1. Copy EDTOOL.KWF to C:\DELPHI\HELP.

2. Copy EDTOOL.HLP to C:\DELPHI\BIN.

3. Run HELPINST from your delphi folder.

4. Use.FILE|OPEN to open C:\DELPHI\BIN\DELPHI.HDX.

5. Use KEYWORDS|ADD KEYWORD FILE to add C:\DELPHI\HELP\EDTOOL.KWF.

6. Use FILE|SAVE to Compile and save the new HDX file.

7. Online help is now installed.

To Install the Component Help Delphi 3.xx

(These instructions assume that your copy of Delphi is installed in C:\PROGRAM FILES\BORLAND\DELPHI 3

 If not adjust the paths accordingly)

1. Load C:\PROGRAM FILES\BORLAND\DELPHI 3\HELP\DELPHI3.CFG in the notepad

2. Add a Link statement help file to the "Third-Party Help" section of DELPHI3.CFG.

:Link :Link EdTool.hlp

3. Use FILE|SAVE to safe the new cfg file

4  Delete the hidden file DELPHI3.GID (This is the portion Borland forgot to tell us)

cd "C:\PROGRAM FILES\BORLAND\DELPHI 3\HELP"

attrib -h Delphi3.GID

del Delphi3.GID

5. Online help is now installed.


InvalidDays
property InvalidDays : Set of [Sun..Sat]

applies to TpvlDateEdit, TpvldbDateEdit

These are the days that can't be selected.

Default []


LastMinuteSeg
Function LastMinuteSeg : Integer

applies to TpvlClock

This returns the last minute that was clicked (0..59)


LastTime
Function LastTime : TDateTime

applies to TpvlClock

This returns what time was clicked on last.


LastWithinHourHand
Function LastWithinHourHand : Boolean

applies to TpvlClock

This will return true if the last click was within the hour hand circle.


LastXY
Function LastXY : TPoint

applies to TpvlClock

Get the last point clicked on the clock.


LoadDate
property LoadDate : Boolean

applies to TpvlDateEdit, TpvldbDateEdit

This determins if Day,Month,Year get loaded when the component is loaded.


LoadTime
Property LoadTime : Boolean

applies to TpvlTimeEdit TpvldbTimeEdit

This determins if Hour,Mins and Secs get loaded when the component is loaded


Max
property Max : Double/TDateTime

applies to TpvlCalcEdit,TpvldbCalcEdit Runtime Only in TpvlDateEdit, TpvldbDateEdit

This sets the minimum alowable Value/Date

if both Min and Max are 0 then no restrictions apply.


MaxDay
property MaxDay : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the day portion of the Max Date.


MaxMonth
property MaxMonth : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the month portion of the Max Date.


MaxYear
property MaxYear : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the year portion of the Max Date.


Min
property Min : Double/TDateTime

applies to TpvlCalcEdit,TpvldbCalcEdit Runtime Only in TpvlDateEdit, TpvldbDateEdit

This sets the minimum alowable Value./Date

if both Min and Max are 0 then no restrictions apply.


MinDay
property MinDay : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the day portion of the Min Date.


MinMaxHandler
property MinMaxHandler : TMinMaxHandler

applies to TpvlCalcEdit,TpvldbCalcEdit, TpvlDateEdit, TpvldbDateEdit

This Property determins what happens when the value falls outside the Min/Max Range.

TmmAdjust : The component will silently adjust the value.

TmmException : The Component will raise an ERangeError Exception.

TmmDialog : The Component will display a messagebox of type mtError containing a formatted form of MinMaxString.

TmmEvent : The Component will trigger an OnMinMaxError event.


MinMaxString
property MinMaxString : String

applies to TpvlCalcEdit,TpvldbCalcEdit,TpvlDateEdit,TpvldbDateEdit

This property determins what gets displayed if the value/Date falls outside Min / Max and MinMaxHandler is set TmmDialog.

In the TpvlCalcEdit controls

This is a formatting string which gets passed to the Format function with 4 float parameters in the following sequence Min, Max, Newvalue , Value for more information see the VCL help on Format Strings.

These following examples assumed that min=0 max=100 and that the user entered 300

'The value should be between %.0f and %.0f'	becomes

'The value should be between 0 and 100'

You have entered %2:f this is changed to %3:f	becomes

You have entered 300.00 this is changed to 100.00

In the TpvlDateEdit controls

This is a formatting string which gets passed to the Formatdatetime function with the attempted date as the parameter, for more information see the VCL help on FormatDateTime.


MinMonth
property MinMonth : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the month portion of the Min Date.


MinYear
property MinYear : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the year portion of the Min Date.


Mins
Property Mins : Word

applies to TpvlTimeEdit, TpvldbTimeEdit

This allows you to set the minutes portion of the time.(It will only be loaded at runtime if LoadTime is true)


MinuteSegfromPoint
function MinuteSegfromPoint(p : TPoint) : Integer

applies to TpvlClock

This function will return the minute (0..59) that sits on a given point


Month
property Month : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the month portion of the date (It will only be loaded at runtime if LoadDate is true).


MonthHeading
property MonthHeading : String

applies to TpvlDateEdit, TpvldbDateEdit

This is the the string that appears on the month up and down buttons on the dropdown calendar.

If left blank "Mth" will be used


Glyph


NullDay
property NullDay : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the day portion of the Null Date.(It will only be loaded at runtime if UseNullDate is true)


NullMonth
property NullMonth : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the month portion of the Null date (It will only be loaded at runtime if UseNullDate is true).


NullYear
property NullYear : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the year portion of the null date.(It will only be loaded at runtime if UseNullDate is true)


OnButtonClick
property OnButtonClick : TNotifyEvent

applies to TpvlMoreEdit,TpvldbMoreEdit

This event gets fired when the button of the control gets clicked using the left mouse button.


OnDateChanged
event OnDateChanged : TNotifyEvent

applies to TpvlDateEdit, TpvldbDateEdit

This event gets trigerred whenever the date property changes.

Its prefereable to use this event over the onchange event as it doesn't get triggered when you drop down the calendar and the text changed due to the different formats.


OnMinMaxError
event OnMinMaxError : TMinMaxEvent

applies to TpvlCalcEdit,TpvldbCalcEdit

event OnMinMaxError : TMinMaxDateEvent

applies to TpvlDateEdit,TpvldbDateEdit

This event gets triggered if the value/Date falls outside Min / Max and MinMaxHandler is set to TmmEvent.

Parameters

Sender this is the object that triggered the event.

Newvalue : This is the value the user tried to enter

min,max : These are the current settings of min and max.

Value : This is the default new value for the component.


OnRButtonClick
property OnRButtonClick : TNotifyEvent

applies to TpvlMoreEdit,TpvldbMoreEdit

This event gets fired when the button of the control gets clicked using the right mouse button.


OnRClick
property OnRClick:TNotifyEvent

applies to TpvlDualSpeedButton

This Event gets fired whenever the right mouse button is clicked over the control.


OnValueChanged
event OnValueChanged : TNotifyEvent

applies to TpvlCalcEdit, TpvldbCalcEdit

This event gets trigerred whenever the Value property changes.

Its prefereable to use this event over the onchange event as it doesn't get triggered when you use the calculator and the text changed due to the partial calculations.


OnWantForm
property OnWantForm : TWantFormEvent

applies to TpvlMoreEdit, TpvldbCalcEdit, TpvlDateEdit,TpvldbDateEdit, TpvlTimeEdit, TpvldbTimeEdit

This event gets triggered when the button gets pressed using the left mouse button.

If you pass it back a form in Subf then that form will be shown modal and will be aligned alongside the control. The control will dispose of the form when it is released;

Note : If used with Calc,Date and Time edits the the default Calendar/Calculator or clock will be disabled, in the case of the calculator this also means that it will stop responding to /+* as well as to - if it isn't the first character.

It is also the function of the new form to update the Date/Time or Value property respectively


QuickChangeType
property QuickChangeType : TQuickChangeType

applies to TpvlDateEdit, TpvldbDateEdit ,TpvlTimeEdit; TpvldbTimeEdit

This determins the behaviour of the + and - keys in the editing block

qcNone :	The keys have no effect

qcWhole :	The keys go to the previous/next day

qcSection :	The keys increment the section e.g  the month.

This option uses the QuickChangeWrap property to determin what to do if the section wraps.

Notes :

1. Beware when using this option that some international forms of dates could use the - as the date separator. then the alternate decrementer will be 'M'.

2. If there is no dateseparator then qcSection will act as qcWhole.


QuickChangeWrap
property QuickChangeWrap : Boolean

applies to TpvlDateEdit, TpvldbDateEdit, TpvlTimeEdit; TpvldbTimeEdit

This Property only has an effect when QuickChangeType has the value of qcSection.

If false then the section will start over without affecting the other sections when the section's maximum is reached.

If true it will change the value of the next section when the section's maximum is reached.

e.g. if the date is 12 Dec 1997 and the active section is the month then + will change the date to 12 Jan 1998 if his property is true while the date will become 12 Jan 1997 if this property is false.


RClick
procedure RClick

applies to TpvlDualSpeedButton

This simulates a right mouse button click on the button.


Restrictions on use

There are no restrictions placed on the use of Edtool in compiled DCU format or linked into an EXE or DLL..

The source code is licenced to the purchaser to use in any of his/her development but remains copyrighted to P van Lonkhuyzen and may not be distributed in to any other parties without the written permission of P van Lonkhuyzen.

If you don't wish to get the source code you are still encouraged to send me an email with suggestions or even just to tell me that you're using it. (That way I can show my wife that these late nights are not spent in vain) in return you will be notified of all future versions of the component.

email : peterv@global.co.za


Secs
Property Secs : Word

applies to TpvlTimeEdit, TpvldbTimeEdit

This allows you to set the Seconds portion of the time.(It will only be loaded at runtime if LoadTime is true)


SeparateHourHand
property SeparateHourHand : Boolean

applies to TpvlTimeEdit, TpvlDbTimeEdit

If true clicking within the Hour Segment on the dropdownclock only the hour hand will move

If false the hour hand will move to the clicked spot an the minute hand will move to the correct position.


StartOfWeek
property StartOfWeek : Sun..Sat

applies to TpvlDateEdit, TpvldbDateEdit

This holds the left most day in the dropdown calendar.

Default Sun

Note in versions prior to version 2.0 this was 0..6 where 0 = sunday and 6 = saturday.

Unfortunately the Delphi streaming can't handle this change and will stop loading all components on the form. To Fix this edit the form i.e. load the DFM file into the editor and delete the line

StartOfWeek = xxx where xxx is 0..6. Save the file and all is fine again.


TCalcAlignment =(caLeft,caRight,caMixed)


TCalcDisplayFormat = (cfnumber,cfCustom)


TClockStyle
Class TClockStyle

This class defines the visual appearence of the clock.

Properties

BackgroundColor : TColor; The colour of the clock face default clBtnFace.

HandsColor : TColor; The colour of the minute and hour hands default clRed.

MajorColor : TColor; The colour of the major markings (1..12) default clWhite.

LineColor : TColor; The colour of all other lines default clBlack.

ShowSeconds : Boolean; Determins the visibility of the second hand default False.

ShowCircle : Boolean; If True a circle is drawn around the clock default False.

ShowMinor : Boolean; If True the minor ticks are visible default False


TDateDisplayFormat = (dfLong,dfShort,dfCustom)


OnDateChanged

OnMinMaxError

OnWantForm


OnRClick:


TMinMaxDateEvent = procedure(Sender: TObject;Newvalue,min,max : extended;var Value : Extended) of object


TMinMaxhandler = (TmmAdjust,TmmException,TmmDialog,TmmEvent)


TQuickChangeType = (qcNone,qcWhole,qcSection);


TTimeEditFormat = (teIncludeSecs,teExcludeSecs)


TWantFormEvent = procedure(Sender: TObject;var Subf : Tform) of object


Time
property Time : TDateTime (Runtime)

applies to TpvlClock ;TpvlTimeEdit, TpvldbTimeEdit

This property allows you to set the time directly at runtime.


Timefrompoint
function Timefrompoint(p : TPoint) : TDateTime

applies to TpvlClock

This will calculate at what time a point is situated.


TpvlCalcEdit
class TpvlCalcEdit/TpvldbCalcEdit

new properties	new events

TpvlCalcEdit is a numeric editor that has a dropdown calculator.

the calculator will be invoked by pressing the button on the control or by pressing +,-,/,*


OnValueChanged

OnMinMaxError

OnWantForm


Alignment

Decimals

DisplayFormat

DisplayFormatMask

Glyph

Min

MinMaxHandler

MinMaxString

Max

Value


TpvlClock
Class TpvlClock

new properties	 new methods

TpvlClock is a configurable component for displaying time in an analogue method.


TpvlDateEdit
class TpvlDateEdit/TpvldbDateEdit

new properties	new events

TpvlDateEdit is a date editor with a dropdown calendar.

It also handles implied centuries so that the year 2000 can be entered as 00 for more information on this see ImpliedCenturyStart


TpvlDateEditFormat = dfShort..dfCustom


CalendarColors

CalendarFont	Day

DayHeadings	Date (Runtime)

DisplayFormat	DisplayFormatMask

EditFormat	EditFormatMask

Glyph 	HighlightDays

ImpliedCenturyStart

InvalidDays

LoadDate	Max

MaxDay,	MaxMonth

MaxYear	Min

MinDay	MinMonth

MinMaxHandler,	MinMaxString

MinYear,	Month

MonthHeading	NullDay

NullMonth	NullYear

QuickChangeType	QuickChangeWrap

StartOfWeek	UseNullDate

Year	YearHeading


TpvlDualSpeedButton
class TpvlDualSpeedButton

New Events	New Methods

This component is derived from TSpeedButton and all the existing properties still remain.

There is just one new event OnRClick which gets triggered whenever the right mouse button gets clicked on the control.

The main reason for this component's existence is that it is included in all the other components in edtool


TpvlGridColors
Class TpvlGridColors

This holds the appearence properties of the dropdown calendar grid.

CalColor : This is the background color of the Calendar Grid. Default clWhite

HighlightColor : This is the color of days that are highlighted. Default clRed

InvalidColor : This is the color of days that may not be selected. Default clBlue

NormalColor : This is the standard color of the dates in the calendar grid. Default clBlack

TodayColor : This is the color of the circle around todays date if showtoday is true. Default clRed

ShowToday : This determins if the current system date is circled.Default True


TpvlMoreEdit
Class TpvlMoreEdit/TpvldbMoreEdit

New Properties	New Events

TpvlMoreEdit is a multipurpose editor that contains a button on the righthand side to denote that more information is available.

When the Button gets pressed the Onwantform Event gets fired where yo can give the editor a form to display modaly. The form will be aligned to the control. and will be destroyed when it gets released.


TpvlSpeedButton
Class TpvlSpeedButton

This component is derived from TSpeedButton and all its properties remain unchanged.

The only change is that it will repeat clicks while the mouse stays down.

The main reason for this component's existence is that it is included on the date and time forms.


TpvlTimeEdit
Class TpvlTimeEdit/TpvlDbTimeEdit

new properties	new events

TpvlTimeEdit is a Time editor with a dropdown clock.

The Dropdown Clock has a clickable face to change the time.


UseNullDate
property UseNullDate : Boolean

applies to TpvlDateEdit, TpvldbDateEdit

This property allows a date to be interpreted as a null date.

The date that gets used can be set using the NullYear, NullMonth and NullDay Properties


Value
property Value : Double

applies to TpvlCalcEdit,TpvldbCalcEdit

This contains the current value.

It must fit the restrictions of Min and Max


Version History

Ver 2.10

Added SeparateHourHand to change the faceclick in TpvlTimeEdit

Published OnWantForm event in TpvlTimeEdit,TPvlCalcEdit and TPvlDateEdit to allow for custom calculators,calendars etc.

Added CalColor to Calendarcolors to allow for the calendar background to be changed

Ver 2.00a

Minor change to allow the IDE break on exception to work better by preempting certain handled exceptions.

Ver 2.00

Added Support for C++Builder

Added TpvlTimeEdit and TpvldbTimeEdit

These are Time Editors with a Dropdown clock

Added TpvlClock

This is a clickable analogue clock face component.

Added TpvlspeedButton

This is a auto repeating button

TpvlCalcEdit

Added DisplayFormat and DisplayFormatMask Properties To Customise the non focused display.

Added the Alignment Property do handle the aligment of the number

TpvlDateEdit

Added the CalendarColors property to taylor the look if the dropdown calendar

Added the InvalidDays Property to exclude certain weekdays of being selected.

Added HighlightDays Property to display weekends etc.

Changed the StartofWeek property from 0..6 to Sun..Sat

Note in versions prior to version 2.0 this was 0..6 where 0 = sunday and 6 = saturday.

Unfortunately the Delphi streaming can't handle this change and will stop loading all components on the form after your first TDateEdit. To Fix this edit the form i.e. load the DFM file into the editor and delete the line StartOfWeek = xxx where xxx is 0..6. Save the file and all is fine again.

TpvldbXXX

Fixed bug where readonly would allow editing via keyboard causing a Dataset not in editing mode exception.

Ver 1.05

All Controls are now renamed to Tpvlxxxx due to conflicting names with a number of other component sets.

Source code users have the option to retain the old names by setting the {$define NOPVL} in the edtool.inc file.

TpvlCalcEdit

Fixed the bug where pressing DEL on an empty calculator would cause an access violation.

Ver 1.04

TpvlDateEdit

Disallowed dfLong in EditFormat

Added MinMaxHandler, MinMaxString,MinDay,MinMonth,MinYear,Min,MaxDay,MaxMonth,MaxYear,max properties and OnMinMaxError event to customise the handling of input range errors.

TpvlCalcEdit

Fixed problem with loading min & max

TxxxxEdit

Changed the ancestor to TCustomMaskedEdit instead of TCustomEdit.

TpvlDateEdit/TpvlCalcEdit

Published the Glyph property.

Ver 1.03

TpvlDateEdit

Implemented Null Dates using UseNullDate, NullDay, NullMonth and NullYear Properties

Ver 1.02

TpvlDateEdit

Fixed problem where LoadDate is set to true and the current month doesn't allow the value of Day  which gets loaded before Month.

Added auto repeat to the buttons in the calendar dialog.

TDbXXXXEdit

Fixed problem with ReadOnly at design time when no table has been assigned or is active.

Ver 1.01

TpvlCalcEdit

Added MinMaxHandler, MinMaxString properties and OnMinMaxError event to customise the handling of input range errors.

TpvlDateEdit

Added CalendarFont, DayHeadings, YearHeading, MonthHeading, StartOfWeek properties : For dropdown calendar customisation.

Added the QuickChangeType and QuickChangeWrap properties for easy date increasing/decreasing.

Work around added for Windows 95 bug in EM_CHARFROMPOS where sometimes the wrong position gets given.

Fixed ability for no dateseparator in edit mask.

General

Fixed problem on certain systems where the stock icons are too large.

Ver 1.00

Initial Release


WithinHourHandfromPoint
Function WithinHourHandfromPoint(p : TPoint):Boolean

applies to TpvlClock

This function determins if a point is within the hour hand radius from the center.


Year
property Year : word

applies to TpvlDateEdit, TpvldbDateEdit

This allows you to set the year portion of the date.(It will only be loaded at runtime if LoadDate is true)


YearHeading
property YearHeading : String

applies to TpvlDateEdit, TpvldbDateEdit

This is the the string that appears on the year up and down buttons on the dropdown calendar.

If left blank "Yr" will be used


MinuteSegfromPoint

LastMinuteSeg

LastTime

LastWithinHourHand

LastXY

Timefrompoint

WithinHourHandfromPoint


Style

Time (RunTime)


editformat2
property EditFormat : TTimeEditFormat

applies to TpvlTimeEdit, TpvldbTimeEdit

This determins how the date gets displayed when the control is the activecontrol.

If set to teIncludeSecs the user will be able to edit seconds

If set to teExcludeSecs the user can't edit seconds.


ent = procedure(Sender: TObject;Newvalue,min,max : extended;var Value : Extended) of object;
TMinMaxEvent = procedure(Sender: TObject;Newvalue,min,max : extended;var Value : Extended) of object;


OnButtonClick

OnRButtonClick

OnWantForm


onTimeChanged
event OnTimeChanged : TNotifyEvent

applies to TpvlTimeEdit, TpvldbTimeEdit

This event gets trigerred whenever the time property changes.

Its prefereable to use this event over the onchange event as it doesn't get triggered when you drop down the clock and the text changed due to the different formats.


tdualspeedmethods
RClick


OnTimeChanged

OnWantForm


AMPMHeadings

DisplayFormat

DisplayFormatMask

EditFormat

Hour

Glyph

Mins

LoadTime

Secs

SeparateHourHand

Time (Run-Time)

QuickChangeType

QuickChangeWrap