Class TACDateEdit (unit ACDateEd)

Inherits from

TCustomEdit

****************** ACDateEdit Component

Constructors


constructor Create(AOwner: TComponent);

-------------------------------------------------------------} {---------------------- TACDateEdit --------------------------} {-------------------------------------------------------------


Functions

procedure AddValidDate(dt: TDateTime);

******************************************** Maintain list of valid dates.

procedure AfterClick(Sender: TObject);


procedure ClearDate(Sender: TObject);

******************************************** Clear the Date field

procedure ClearValidDates;


procedure CreateParams(var Params: TCreateParams);


function DateInList(dt: TDateTime): Boolean;

******************************************** Is the supplied data in the date list?

destructor Destroy;


procedure DoDate;

******************************************** Transform number in date and assign values

procedure DoEdit;

******************************************** Like DoEnter without Selectall

procedure Loaded;

create the Calendar

procedure PopupCalendar(Sender: TObject);

******************************************** Show (or hide) Popup Calendar when click

procedure SetDateValid(pValue : boolean);


procedure ValidateDate(Sender: TObject);

******************************************** Validate the Date field

procedure AdjustDate;

******************************************** Transform number in date

procedure AdjustEdit;

3.

procedure CMEnabledChanged(var Message: TMessage);


procedure DoEnter;


procedure DoExit;

Act like standard edit controls

function GetDayArray: PDayArray;


function GetMonthArray: PMonthArray;


procedure KeyDown(var Key: Word; Shift: TShiftState);

******************************************** handling procedure (SHORTCUTKEYS)

procedure KeyPress(var Key: char);


function PadTo4Year (aStr : String) : String;

3.

function RemoveChr (aChar : Char; aStr : String) : String;

3.

procedure SetAltOn(value : boolean);

******************************************** Set ALT or CTRL or none

procedure SetBtnDateStyle (value : tDateBtnStyle);


procedure SetBtnStyle (value : tButtonStyle);


procedure SetBtnTabStop (value : boolean);


procedure SetCanClear (value : boolean);


procedure SetCanPopup (value : boolean);

******************************************** Set Buttons

procedure SetCanValidate (value : boolean);


procedure SetCtrlOn(value : boolean);

******************************************** Set ALT or CTRL or none

procedure SetDate(dtArg: TDateTime);

MIO ADDED TO DISABLE TABSTOP

procedure SetShortCutClear(const Value: word);

******************************************** ShortCut Key value for Clear (disable Tab Stop)

procedure SetShortCutPopup(const Value: word);

MIO ADDED TO DISABLE TABSTOP

******************************************** Set ShortCut Key value for Popup (disable Tab Stop)


procedure SetShortCutValidate(const Value: word);

MIO ADDED TO DISABLE TABSTOP

******************************************** Set ShortCut Key value for Validate (disable Tab Stop)


procedure WMSize(var message: TWMSize);


procedure SetStartOfWeek(Value: TDayOfWeek);

MIO

Properties

property About : TAboutMeProperty


property BorderStyle :


property ButtonDateStyle : tDateBtnStyle


property ButtonStyle : tButtonstyle


property ButtonTabStop : boolean


property CanClear : boolean


property CanPopup : boolean


property CanValidate : boolean


property ColorArrow : tColor


property ColorDates : tColor


property ColorError : tColor


property ColorTitle : tColor


property ColorValidDate : TColor


property ColorWeekEnd : tColor


property DayNames : TDayName


property EditEnabled : Boolean


property EmptyAsToday : boolean

MIO

property FocusOnError : boolean


property Font :


property IsMasked : boolean


property IsModal : boolean


property MonthNames : TMonthName


property ParentShowHint :


property PopupToday : boolean


property ShortCutAddAlt : Boolean


property ShortCutAddCtrl : Boolean


property ShortCutClear : Word


property ShortCutPopup : Word

MIO TABSTOP SWITCHING

property ShortCutValidate : Word

MIO TABSTOP SWITCHING

property ShowHint :


property StartOfWeek : TDayOfWeek

MIO TABSTOP SWITCHING

property TabOrder :


property TabStop :


property Date : TDateTime


property DateValid : boolean


property DayArray : PDayArray


property MonthArray : PMonthArray


Events

event OnAfterClick : TNotifyEvent


event OnChange :


event OnEnter :


event OnExit :


event OnValidateClick : TNotifyEvent


Variables

FBtnClear : TBitBtn;


FBtnPopup : TBitBtn;


FBtnValidate : TBitBtn;


NewShortDateFormat : string;


FAbout : TAboutMeProperty;

FourDigitYear : boolean; // MIO

FBtnDateStyle : tDateBtnStyle;


FBtnStyle : tButtonStyle;


FBtnTabStop : boolean;


FCanClear : boolean;

MIO

FCanEdit : boolean;


FCanPopup : boolean;


FCanValidate : boolean;


FColorArrow : TColor;


FColorDates : TColor;


FColorError : TColor;


FColorTitle : TColor;


FColorVal : TColor;


FColorWeekEnd : TColor;


FDate : TDateTime;


FDateValid : boolean;


FDayArray : TDayArray;


FDayName : TDayName;


FEmptyAsToday : boolean;


FFocusOnError : boolean;


FIsMasked : boolean;


FIsModal : boolean;


FMonthArray : TMonthArray;


FMonthName : TMonthName;


FOnAfterClick : TNotifyEvent;


FOnValidate : TNotifyEvent;


FPopupToday : boolean;


frmCalendar : TfrmACCalPop;


FShortCutAlt : Boolean;


FShortCutClear : Word;


FShortCutCtrl : Boolean;


FShortCutPopup : Word;


FShortCutValidate : Word;


FStartOfWeek : TDayOfWeek;


lstDates : TList;



Constructors


constructor Create(AOwner: TComponent);

-------------------------------------------------------------} {---------------------- TACDateEdit --------------------------} {-------------------------------------------------------------


Functions


procedure AddValidDate(dt: TDateTime);

******************************************** Maintain list of valid dates.


procedure AfterClick(Sender: TObject);


procedure ClearDate(Sender: TObject);

******************************************** Clear the Date field


procedure ClearValidDates;


procedure CreateParams(var Params: TCreateParams);


function DateInList(dt: TDateTime): Boolean;

******************************************** Is the supplied data in the date list?


destructor Destroy;


procedure DoDate;

******************************************** Transform number in date and assign values


procedure DoEdit;

******************************************** Like DoEnter without Selectall


procedure Loaded;

create the Calendar


procedure PopupCalendar(Sender: TObject);

******************************************** Show (or hide) Popup Calendar when click


procedure SetDateValid(pValue : boolean);


procedure ValidateDate(Sender: TObject);

******************************************** Validate the Date field


procedure AdjustDate;

******************************************** Transform number in date


procedure AdjustEdit;

3.5

******************************************** Transform date in number


procedure CMEnabledChanged(var Message: TMessage);


procedure DoEnter;


procedure DoExit;

Act like standard edit controls


function GetDayArray: PDayArray;


function GetMonthArray: PMonthArray;


procedure KeyDown(var Key: Word; Shift: TShiftState);

******************************************** handling procedure (SHORTCUTKEYS)


procedure KeyPress(var Key: char);


function PadTo4Year (aStr : String) : String;

3.5

******************************************** Update local ShortDateFormat with 4digits years


function RemoveChr (aChar : Char; aStr : String) : String;

3.5

******************************************** Remove a character from a string


procedure SetAltOn(value : boolean);

******************************************** Set ALT or CTRL or none


procedure SetBtnDateStyle (value : tDateBtnStyle);


procedure SetBtnStyle (value : tButtonStyle);


procedure SetBtnTabStop (value : boolean);


procedure SetCanClear (value : boolean);


procedure SetCanPopup (value : boolean);

******************************************** Set Buttons


procedure SetCanValidate (value : boolean);


procedure SetCtrlOn(value : boolean);

******************************************** Set ALT or CTRL or none


procedure SetDate(dtArg: TDateTime);

MIO ADDED TO DISABLE TABSTOP


procedure SetShortCutClear(const Value: word);

******************************************** ShortCut Key value for Clear (disable Tab Stop)


procedure SetShortCutPopup(const Value: word);

MIO ADDED TO DISABLE TABSTOP

******************************************** Set ShortCut Key value for Popup (disable Tab Stop)


procedure SetShortCutValidate(const Value: word);

MIO ADDED TO DISABLE TABSTOP

******************************************** Set ShortCut Key value for Validate (disable Tab Stop)


procedure WMSize(var message: TWMSize);


procedure SetStartOfWeek(Value: TDayOfWeek);

MIO


Properties


property About : TAboutMeProperty


property BorderStyle :


property ButtonDateStyle : tDateBtnStyle


property ButtonStyle : tButtonstyle


property ButtonTabStop : boolean


property CanClear : boolean


property CanPopup : boolean


property CanValidate : boolean


property ColorArrow : tColor


property ColorDates : tColor


property ColorError : tColor


property ColorTitle : tColor


property ColorValidDate : TColor


property ColorWeekEnd : tColor


property DayNames : TDayName


property EditEnabled : Boolean


property EmptyAsToday : boolean

MIO


property FocusOnError : boolean


property Font :


property IsMasked : boolean


property IsModal : boolean


property MonthNames : TMonthName


property ParentShowHint :


property PopupToday : boolean


property ShortCutAddAlt : Boolean


property ShortCutAddCtrl : Boolean


property ShortCutClear : Word


property ShortCutPopup : Word

MIO TABSTOP SWITCHING


property ShortCutValidate : Word

MIO TABSTOP SWITCHING


property ShowHint :


property StartOfWeek : TDayOfWeek

MIO TABSTOP SWITCHING


property TabOrder :


property TabStop :


property Date : TDateTime


property DateValid : boolean


property DayArray : PDayArray


property MonthArray : PMonthArray


Events


event OnAfterClick : TNotifyEvent


event OnChange :


event OnEnter :


event OnExit :


event OnValidateClick : TNotifyEvent


Variables


FBtnClear : TBitBtn;


FBtnPopup : TBitBtn;


FBtnValidate : TBitBtn;


NewShortDateFormat : string;


FAbout : TAboutMeProperty;

FourDigitYear : boolean; // MIO


FBtnDateStyle : tDateBtnStyle;


FBtnStyle : tButtonStyle;


FBtnTabStop : boolean;


FCanClear : boolean;

MIO


FCanEdit : boolean;


FCanPopup : boolean;


FCanValidate : boolean;


FColorArrow : TColor;


FColorDates : TColor;


FColorError : TColor;


FColorTitle : TColor;


FColorVal : TColor;


FColorWeekEnd : TColor;


FDate : TDateTime;


FDateValid : boolean;


FDayArray : TDayArray;


FDayName : TDayName;


FEmptyAsToday : boolean;


FFocusOnError : boolean;


FIsMasked : boolean;


FIsModal : boolean;


FMonthArray : TMonthArray;


FMonthName : TMonthName;


FOnAfterClick : TNotifyEvent;


FOnValidate : TNotifyEvent;


FPopupToday : boolean;


frmCalendar : TfrmACCalPop;


FShortCutAlt : Boolean;


FShortCutClear : Word;


FShortCutCtrl : Boolean;


FShortCutPopup : Word;


FShortCutValidate : Word;


FStartOfWeek : TDayOfWeek;


lstDates : TList;