896 lines
29 KiB
ObjectPascal
896 lines
29 KiB
ObjectPascal
unit mckCCtrls;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|
ComCtrls, ExtCtrls, mirror, mckCtrls, KOLCCtrls;
|
|
|
|
{$I KOLDEF.INC}
|
|
|
|
type
|
|
TKOLTrackBar = class(TKOLControl)
|
|
private
|
|
FOptions: TTrackbarOptions;
|
|
FPosition: Integer;
|
|
FRangeMin: Integer;
|
|
FSelStart: Integer;
|
|
FThumbLen: Integer;
|
|
FRangeMax: Integer;
|
|
FLineSize: Integer;
|
|
FPageSize: Integer;
|
|
FSelEnd: Integer;
|
|
FOnScroll: TOnScroll;
|
|
procedure SetOptions(const Value: TTrackbarOptions);
|
|
procedure SetPosition(const Value: Integer);
|
|
procedure SetLineSize(const Value: Integer);
|
|
procedure SetPageSize(const Value: Integer);
|
|
procedure SetRangeMax(const Value: Integer);
|
|
procedure SetRangeMin(const Value: Integer);
|
|
procedure SetSelEnd(const Value: Integer);
|
|
procedure SetSelStart(const Value: Integer);
|
|
procedure SetThumbLen(const Value: Integer);
|
|
procedure SetOnScroll(const Value: TOnScroll);
|
|
protected
|
|
function AdditionalUnits: string; override;
|
|
function TabStopByDefault: Boolean; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
function SetupParams(const AName, AParent: string): string; override;
|
|
procedure SetupConstruct(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
constructor Create(AOwner: TComponent); override;
|
|
published
|
|
property Options: TTrackbarOptions read FOptions write SetOptions;
|
|
property Position: Integer read FPosition write SetPosition;
|
|
property RangeMin: Integer read FRangeMin write SetRangeMin;
|
|
property RangeMax: Integer read FRangeMax write SetRangeMax;
|
|
property PageSize: Integer read FPageSize write SetPageSize;
|
|
property LineSize: Integer read FLineSize write SetLineSize;
|
|
property ThumbLen: Integer read FThumbLen write SetThumbLen;
|
|
property SelStart: Integer read FSelStart write SetSelStart;
|
|
property SelEnd: Integer read FSelEnd write SetSelEnd;
|
|
property OnScroll: TOnScroll read FOnScroll write SetOnScroll;
|
|
property TabStop;
|
|
property TabOrder;
|
|
end;
|
|
|
|
{ SPC CONTROLS }
|
|
|
|
TSPCDirectoryEditBox = class(TKOLControl)
|
|
private
|
|
{ Private declarations }
|
|
fPath: string;
|
|
fCaptionEmpty: string;
|
|
fTitle: string;
|
|
fNotAvailable: Boolean;
|
|
procedure SetTitle(Value: string);
|
|
procedure SetCaptionEmpty(Value: string);
|
|
procedure SetPath(Value: string);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property Path: string read fPath write SetPath;
|
|
property Title: string read fTitle write SetTitle;
|
|
property Font;
|
|
property CaptionEmpty: string read fCaptionEmpty write SetCaptionEmpty;
|
|
property OnChange;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property OnScroll: Boolean read FNotAvailable;
|
|
property OnResize: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
property OnMouseDblClk: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
TSortBy = (sbName, sbExtention);
|
|
TSPCFileListBox = class(TKOLListBox)
|
|
private
|
|
{ Private declarations }
|
|
fIntegralHeight: Boolean;
|
|
fDoCase: TCase;
|
|
fPath: string;
|
|
fFilters: string;
|
|
FNotAvailable: Boolean;
|
|
fExecuteOnDblClk: Boolean;
|
|
fSortBy: TSortBy;
|
|
procedure SetPath(Value: string);
|
|
procedure SetFilters(Value: string);
|
|
procedure SetIntegralHeight(Value: Boolean);
|
|
procedure SetCase(Value: TCase);
|
|
procedure SetExecuteOnDblClk(Value: Boolean);
|
|
procedure SetSortBy(Value: TSortBy);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property SortBy: TSortBy read fSortBy write SetSortBy;
|
|
property Path: string read fPath write SetPath;
|
|
property ExecuteOnDblClk: Boolean read fExecuteOnDblClk write SetExecuteOnDblClk;
|
|
property Filters: string read fFilters write SetFilters;
|
|
property DoCase: TCase read fDoCase write SetCase;
|
|
property IntegralHeight: Boolean read fIntegralHeight write SetIntegralHeight;
|
|
property OnChange: Boolean read FNotAvailable;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property OnResize: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
// property OnMOuseDblClk: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnMeasureItem: Boolean read FNotAvailable;
|
|
property OnLeave: Boolean read FNotAvailable;
|
|
property OnKeyUp: Boolean read FNotAvailable;
|
|
property OnKeyDown: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEnter: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDropDown: Boolean read FNotAvailable;
|
|
property OnDrawItem: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnCloseUp: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
property OnChar: Boolean read FNotAvailable;
|
|
property OnScroll: Boolean read FNotAvailable;
|
|
// property Items: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
TSPCDirectoryListBox = class(TKOLListView)
|
|
private
|
|
{ Private declarations }
|
|
fIntegralHeight: Boolean;
|
|
fDoIndent: Boolean;
|
|
fPath: string;
|
|
FNotAvailable: Boolean;
|
|
fFileListBox: TSPCFileListBox;
|
|
procedure SetPath(Value: string);
|
|
procedure SetIndent(Value: Boolean);
|
|
procedure SetIntegralHeight(Value: Boolean);
|
|
procedure SetFileListBox(Value: TSPCFileListBox);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
procedure SetupLast(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property FileListBox: TSPCFileListBox read fFileListBox write SetFileListBox;
|
|
property Items: Boolean read FNotAvailable;
|
|
property ImageListState: Boolean read FNotAvailable;
|
|
property ImageListSmall: Boolean read FNotAvailable;
|
|
property ImageListNormal: Boolean read FNotAvailable;
|
|
property Path: string read fPath write SetPath;
|
|
property IntegralHeight: Boolean read fIntegralHeight write SetIntegralHeight;
|
|
property DoIndent: Boolean read fDoIndent write SetIndent;
|
|
// property OnChange: Boolean read FNotAvailable;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property OnResize: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnMeasureItem: Boolean read FNotAvailable;
|
|
property OnLeave: Boolean read FNotAvailable;
|
|
property OnKeyUp: Boolean read FNotAvailable;
|
|
property OnKeyDown: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEnter: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDropDown: Boolean read FNotAvailable;
|
|
property OnDrawItem: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnCloseUp: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
property OnChar: Boolean read FNotAvailable;
|
|
property OnScroll: Boolean read FNotAvailable;
|
|
property OnLVStateChange: Boolean read FNotAvailable;
|
|
property OnLVData: Boolean read FNotAvailable;
|
|
property OnLVDelete: Boolean read FNotAvailable;
|
|
property OnEndEditLVItem: Boolean read FNotAvailable;
|
|
property OnDeleteLVItem: Boolean read FNotAvailable;
|
|
property OnDeleteAllLVItems: Boolean read FNotAvailable;
|
|
property OnCompareLVItems: Boolean read FNotAvailable;
|
|
property OnColumnClick: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
TSPCDriveComboBox = class(TKOLComboBox)
|
|
private
|
|
{ Private declarations }
|
|
fDrive: char;
|
|
FNotAvailable: Boolean;
|
|
fDirectoryListBox: TSPCDirectoryListBox;
|
|
procedure SetDrive(Value: char);
|
|
procedure SetDirectoryListBox(Value: TSPCDirectoryListBox);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
procedure SetupLast(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property DirectoryListBox: TSPCDirectoryListBox read fDirectoryListBox write SetDirectoryListBox;
|
|
property Drive: char read fDrive write SetDrive;
|
|
property OnSelChange: Boolean read FNotAvailable;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property OnResize: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
property OnMOuseDblClk: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnMeasureItem: Boolean read FNotAvailable;
|
|
property OnLeave: Boolean read FNotAvailable;
|
|
property OnKeyUp: Boolean read FNotAvailable;
|
|
property OnKeyDown: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEnter: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDropDown: Boolean read FNotAvailable;
|
|
property OnDrawItem: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnCloseUp: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
property OnChar: Boolean read FNotAvailable;
|
|
property Items: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
TSPCFilterComboBox = class(TKOLComboBox)
|
|
private
|
|
{ Private declarations }
|
|
fLines: TStrings;
|
|
FNotAvailable: Boolean;
|
|
fFileListBox: TSPCFileListBox;
|
|
// procedure SetText(Value: TStrings);
|
|
// function GetText: TStrings;
|
|
procedure SetFileListBox(Value: TSPCFileListBox);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
procedure SetupLast(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property FileListBox: TSPCFileListBox read fFileListBox write SetFileListBox;
|
|
// property Items: Boolean read FNotAvailable;
|
|
// property Filters: TStrings read GetText write SetText;
|
|
property OnSelChange: Boolean read FNotAvailable;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property OnResize: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
property OnMOuseDblClk: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnMeasureItem: Boolean read FNotAvailable;
|
|
property OnLeave: Boolean read FNotAvailable;
|
|
property OnKeyUp: Boolean read FNotAvailable;
|
|
property OnKeyDown: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEnter: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDropDown: Boolean read FNotAvailable;
|
|
property OnDrawItem: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnCloseUp: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
property OnChar: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
TSPCStatusBar = class(TKOLControl)
|
|
private
|
|
{ Private declarations }
|
|
FNotAvailable: Boolean;
|
|
fSimpleStatusText: string;
|
|
fSizeGrip: Boolean;
|
|
procedure SetSimpleStatusText(Value: string);
|
|
procedure SetSizeGrip(Value: Boolean);
|
|
protected
|
|
{ Protected declarations }
|
|
function AdditionalUnits: string; override;
|
|
procedure SetupFirst(SL: TStringList; const AName, AParent, Prefix: string); override;
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(Owner: TComponent); override;
|
|
published
|
|
{ Published declarations }
|
|
property SizeGrip: Boolean read fSizeGrip write SetSizeGrip;
|
|
property OnShow: Boolean read FNotAvailable;
|
|
property SimpleStatusText: string read fSimpleStatusText write SetSimpleStatusText;
|
|
property Caption: Boolean read FNotAvailable;
|
|
property OnPaint: Boolean read FNotAvailable;
|
|
property OnMove: Boolean read FNotAvailable;
|
|
property OnMouseWheel: Boolean read FNotAvailable;
|
|
property OnMouseUp: Boolean read FNotAvailable;
|
|
property OnMouseMove: Boolean read FNotAvailable;
|
|
property OnMouseLeave: Boolean read FNotAvailable;
|
|
property OnMouseEnter: Boolean read FNotAvailable;
|
|
property OnMouseDown: Boolean read FNotAvailable;
|
|
property OnMOuseDblClk: Boolean read FNotAvailable;
|
|
property OnMessage: Boolean read FNotAvailable;
|
|
property OnMeasureItem: Boolean read FNotAvailable;
|
|
property OnLeave: Boolean read FNotAvailable;
|
|
property OnKeyUp: Boolean read FNotAvailable;
|
|
property OnKeyDown: Boolean read FNotAvailable;
|
|
property OnHide: Boolean read FNotAvailable;
|
|
property OnEnter: Boolean read FNotAvailable;
|
|
property OnDropFiles: Boolean read FNotAvailable;
|
|
property OnDropDown: Boolean read FNotAvailable;
|
|
property OnDrawItem: Boolean read FNotAvailable;
|
|
property OnDestroy: Boolean read FNotAvailable;
|
|
property OnEraseBkgnd: Boolean read FNotAvailable;
|
|
property OnCloseUp: Boolean read FNotAvailable;
|
|
property OnClick: Boolean read FNotAvailable;
|
|
property OnChar: Boolean read FNotAvailable;
|
|
property Items: Boolean read FNotAvailable;
|
|
end;
|
|
|
|
procedure Register;
|
|
|
|
(*)
|
|
{$R mckCCtrls.dcr}
|
|
(*)
|
|
|
|
implementation
|
|
|
|
procedure Register;
|
|
begin
|
|
RegisterComponents('KOLAddons', [TKOLTrackBar, TSPCDirectoryEditBox,
|
|
TSPCDirectoryListBox, TSPCDriveComboBox, TSPCFileListBox, TSPCFilterComboBox,
|
|
TSPCStatusBar]);
|
|
end;
|
|
|
|
{ TKOLTrackBar }
|
|
|
|
function TKOLTrackBar.AdditionalUnits: string;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
constructor TKOLTrackBar.Create(AOwner: TComponent);
|
|
begin
|
|
inherited;
|
|
Width := 200;
|
|
DefaultWidth := Width;
|
|
Height := 40;
|
|
DefaultHeight := Height;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetLineSize(const Value: Integer);
|
|
begin
|
|
FLineSize := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetOnScroll(const Value: TOnScroll);
|
|
begin
|
|
FOnScroll := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetOptions(const Value: TTrackbarOptions);
|
|
begin
|
|
FOptions := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetPageSize(const Value: Integer);
|
|
begin
|
|
FPageSize := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetPosition(const Value: Integer);
|
|
begin
|
|
FPosition := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetRangeMax(const Value: Integer);
|
|
begin
|
|
FRangeMax := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetRangeMin(const Value: Integer);
|
|
begin
|
|
FRangeMin := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetSelEnd(const Value: Integer);
|
|
begin
|
|
FSelEnd := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetSelStart(const Value: Integer);
|
|
begin
|
|
FSelStart := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetThumbLen(const Value: Integer);
|
|
begin
|
|
FThumbLen := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetupConstruct(SL: TStringList; const AName,
|
|
AParent, Prefix: string);
|
|
var
|
|
S : string;
|
|
begin
|
|
S := GenerateTransparentInits;
|
|
SL.Add(Prefix + AName + ' := PTrackbar( New' + TypeName + '( '
|
|
+ SetupParams(AName, AParent) + ' )' + S + ');');
|
|
end;
|
|
|
|
procedure TKOLTrackBar.SetupFirst(SL: TStringList; const AName, AParent,
|
|
Prefix: string);
|
|
begin
|
|
inherited;
|
|
if RangeMin <> 0 then
|
|
SL.Add(Prefix + AName + '.RangeMin := ' + IntToStr(RangeMin) + ';');
|
|
if RangeMax <> 0 then
|
|
SL.Add(Prefix + AName + '.RangeMax := ' + IntToStr(RangeMax) + ';');
|
|
if PageSize <> 0 then
|
|
SL.Add(Prefix + AName + '.PageSize := ' + IntToStr(PageSize) + ';');
|
|
if LineSize <> 0 then
|
|
SL.Add(Prefix + AName + '.LineSize := ' + IntToStr(LineSize) + ';');
|
|
if Position <> 0 then
|
|
SL.Add(Prefix + AName + '.Position := ' + IntToStr(Position) + ';');
|
|
if ThumbLen <> 0 then
|
|
SL.Add(Prefix + AName + '.ThumbLen := ' + IntToStr(ThumbLen) + ';');
|
|
if SelStart <> 0 then
|
|
SL.Add(Prefix + AName + '.SelStart := ' + IntToStr(SelStart) + ';');
|
|
if SelEnd <> 0 then
|
|
SL.Add(Prefix + AName + '.SelEnd := ' + IntToStr(SelEnd) + ';');
|
|
end;
|
|
|
|
function TKOLTrackBar.SetupParams(const AName, AParent: string): string;
|
|
var
|
|
S : string;
|
|
begin
|
|
S := '';
|
|
if trbAutoTicks in Options then S := 'trbAutoTicks,';
|
|
if trbEnableSelRange in Options then S := S + 'trbEnableSelRange,';
|
|
if trbFixedLength in Options then S := S + 'trbFixedLength,';
|
|
if trbNoThumb in Options then S := S + 'trbNoThumb,';
|
|
if trbNoTicks in Options then S := S + 'trbNoTicks,';
|
|
if trbTooltips in Options then S := S + 'trbTooltips,';
|
|
if trbTopLeftMarks in Options then S := S + 'trbTopLeftMarks,';
|
|
if trbVertical in Options then S := S + 'trbVertical,';
|
|
if trbNoBorder in Options then S := S + 'trbNoBorder,';
|
|
S := Copy(S, 1, Length(S) - 1);
|
|
Result := AParent + ', [' + S + '], ';
|
|
if TMethod(OnScroll).Code <> nil then
|
|
Result := Result + 'Result.' + ParentForm.MethodName(TMethod(OnScroll).Code)
|
|
else
|
|
Result := Result + 'nil';
|
|
end;
|
|
|
|
function TKOLTrackBar.TabStopByDefault: Boolean;
|
|
begin
|
|
Result := TRUE;
|
|
end;
|
|
|
|
{ TSPCDirectoryEditBox }
|
|
|
|
constructor TSPCDirectoryEditBox.Create;
|
|
var
|
|
TS : string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 21;
|
|
Title := 'Select folder:';
|
|
GetDir(0, TS);
|
|
Path := TS;
|
|
Font.FontHeight := -11;
|
|
Color := $FFFFFF;
|
|
end;
|
|
|
|
function TSPCDirectoryEditBox.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
procedure TSPCDirectoryEditBox.SetPath(Value: string);
|
|
begin
|
|
if DirectoryExists(Value) then fPath := Value else fPath := '';
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDirectoryEditBox.SetCaptionEmpty(Value: string);
|
|
begin
|
|
fCaptionEmpty := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDirectoryEditBox.SetTitle(Value: string);
|
|
begin
|
|
fTitle := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDirectoryEditBox.SetupFirst;
|
|
begin
|
|
inherited;
|
|
SL.Add(Prefix + AName + '.Color:=' + IntToStr(Color) + ';');
|
|
SL.Add(Prefix + AName + '.Title:=''' + Title + ''';');
|
|
SL.Add(Prefix + AName + '.CaptionEmpty:=''' + CaptionEmpty + ''';');
|
|
SL.Add(Prefix + AName + '.Initialize;');
|
|
SL.Add(Prefix + AName + '.Path:=''' + Path + ''';');
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
end;
|
|
|
|
{ TSPCDirectoryListBox }
|
|
|
|
procedure TSPCDirectoryListBox.SetIndent(Value: Boolean);
|
|
begin
|
|
fDoIndent := Value;
|
|
Change;
|
|
end;
|
|
|
|
constructor TSPCDirectoryListBox.Create;
|
|
var
|
|
TS : string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 105;
|
|
DoIndent := True;
|
|
GetDir(0, TS);
|
|
Path := TS;
|
|
end;
|
|
|
|
function TSPCDirectoryListBox.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
function Boolean2Str(b: Boolean): string;
|
|
begin
|
|
if b then
|
|
Result := 'True'
|
|
else
|
|
Result := 'False';
|
|
end;
|
|
|
|
procedure TSPCDirectoryListBox.SetupFirst;
|
|
//var St: string;
|
|
begin
|
|
inherited;
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
SL.Add(Prefix + AName + '.DoIndent:=' + Boolean2Str(DoIndent) + ';');
|
|
SL.Add(Prefix + AName + '.IntegralHeight:=' + Boolean2Str(IntegralHeight) + ';');
|
|
SL.Add(Prefix + AName + '.Path:=''' + Path + ''';');
|
|
end;
|
|
|
|
procedure TSPCDirectoryListBox.SetupLast(SL: TStringList; const AName, AParent, Prefix: string);
|
|
begin
|
|
if Assigned(fFileListBox) then if Length(fFileListBox.Name) > 0 then SL.Add(Prefix + AName + '.FileListBox:=Result.' + fFileListBox.Name + ';');
|
|
end;
|
|
|
|
procedure TSPCDirectoryListBox.SetFileListBox(Value: TSPCFileListBox);
|
|
begin
|
|
fFileListBox := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDirectoryListBox.SetIntegralHeight(Value: Boolean);
|
|
begin
|
|
fIntegralHeight := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDirectoryListBox.SetPath(Value: string);
|
|
var
|
|
fT : string;
|
|
begin
|
|
fT := Value;
|
|
if Value[Length(Value)] = '\' then fT := Value else
|
|
if Length(Value) = 1 then fT := Value + ':\' else fT := Value + '\';
|
|
if DirectoryExists(fT) then fPath := fT else fPath := '';
|
|
Change;
|
|
end;
|
|
|
|
{ TSPCDriveComboBox }
|
|
|
|
constructor TSPCDriveComboBox.Create;
|
|
var
|
|
TS : string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 22;
|
|
Color := clWhite;
|
|
GetDir(0, TS);
|
|
Drive := TS[1];
|
|
end;
|
|
|
|
function TSPCDriveComboBox.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
procedure TSPCDriveComboBox.SetupFirst;
|
|
begin
|
|
inherited;
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
SL.Add(Prefix + AName + '.Color:=' + IntToStr(Color) + ';');
|
|
SL.Add(Prefix + AName + '.Drive:=''' + Drive + ''';');
|
|
end;
|
|
|
|
procedure TSPCDriveComboBox.SetupLast(SL: TStringList; const AName, AParent, Prefix: string);
|
|
begin
|
|
if Assigned(fDirectoryListBox) then if Length(fDirectoryListBox.Name) > 0 then SL.Add(Prefix + AName + '.DirectoryListBox:=Result.' + fDirectoryListBox.Name + ';');
|
|
end;
|
|
|
|
procedure TSPCDriveComboBox.SetDirectoryListBox(Value: TSPCDirectoryListBox);
|
|
begin
|
|
fDirectoryListBox := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCDriveComboBox.SetDrive;
|
|
var
|
|
fC : Char;
|
|
begin
|
|
fC := Value;
|
|
if DirectoryExists(fC + ':') then
|
|
fDrive := Value;
|
|
Change;
|
|
end;
|
|
|
|
{ TSPCFileListBox }
|
|
|
|
constructor TSPCFileListBox.Create;
|
|
var
|
|
TS : string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 105;
|
|
Filters := '*.*';
|
|
DoCase := ctLower;
|
|
GetDir(0, TS);
|
|
Path := TS;
|
|
Font.FontHeight := -11;
|
|
end;
|
|
|
|
function TSPCFileListBox.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetupFirst;
|
|
var
|
|
St : string;
|
|
begin
|
|
inherited;
|
|
case DoCase of
|
|
ctDefault: St := 'ctDefault';
|
|
ctLower: St := 'ctLower';
|
|
ctUpper: St := 'ctUpper';
|
|
end;
|
|
SL.Add(Prefix + AName + '.DoCase:=' + St + ';');
|
|
SL.Add(Prefix + AName + '.IntegralHeight:=' + Boolean2Str(IntegralHeight) + ';');
|
|
SL.Add(Prefix + AName + '.Filters:=''' + Filters + ''';');
|
|
SL.Add(Prefix + AName + '.Color:=' + IntToStr(Color) + ';');
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
SL.Add(Prefix + AName + '.Path:=''' + Path + ''';');
|
|
SL.Add(Prefix + AName + '.ExecuteOnDblClk:=' + Boolean2Str(ExecuteOnDblClk) + ';');
|
|
case fSortBy of
|
|
sbName: SL.Add(Prefix + AName + '._SortBy:=sbName;');
|
|
sbExtention: SL.Add(Prefix + AName + '._SortBy:=sbExtention;');
|
|
end;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetCase(Value: TCase);
|
|
begin
|
|
fDoCase := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetIntegralHeight(Value: Boolean);
|
|
begin
|
|
fIntegralHeight := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetFilters(Value: string);
|
|
begin
|
|
fFilters := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetPath(Value: string);
|
|
begin
|
|
if DirectoryExists(Value) then
|
|
begin
|
|
if Value[Length(Value)] = '\' then fPath := Value else fPath := Value + '\';
|
|
end else fPath := '';
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetExecuteOnDblClk(Value: Boolean);
|
|
begin
|
|
fExecuteOnDblClk := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCFileListBox.SetSortBy(Value: TSortBy);
|
|
begin
|
|
fSortBy := Value;
|
|
Change;
|
|
end;
|
|
|
|
{ TSPCFilterComboBox }
|
|
|
|
constructor TSPCFilterComboBox.Create;
|
|
//var
|
|
// TS: string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 22;
|
|
Color := clWhite;
|
|
fLines := TStringList.Create;
|
|
Font.FontHeight := -11;
|
|
end;
|
|
|
|
function TSPCFilterComboBox.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
procedure TSPCFilterComboBox.SetFileListBox(Value: TSPCFileListBox);
|
|
begin
|
|
fFileListBox := Value;
|
|
Change;
|
|
end;
|
|
|
|
{procedure TSPCFilterComboBox.SetText;
|
|
begin
|
|
fLines.Text:=Value.Text;
|
|
Change;
|
|
end;
|
|
|
|
function TSPCFilterComboBox.GetText: TStrings;
|
|
begin
|
|
Result:=fLines;
|
|
end;}
|
|
|
|
procedure TSPCFilterComboBox.SetupFirst;
|
|
//var
|
|
// i: Integer;
|
|
begin
|
|
inherited;
|
|
if (Length(FLines.Text) > 0) then
|
|
AddLongTextField(SL, Prefix, AName + '.Text:=', FLines.Text, ';');
|
|
SL.Add(Prefix + AName + '.Color:=' + IntToStr(Color) + ';');
|
|
// SL.Add( Prefix + AName + '.BuildList;');
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
end;
|
|
|
|
procedure TSPCFilterComboBox.SetupLast(SL: TStringList; const AName, AParent, Prefix: string);
|
|
begin
|
|
if Assigned(fFileListBox) then if Length(fFileListBox.Name) > 0 then SL.Add(Prefix + AName + '.FileListBox:=Result.' + fFileListBox.Name + ';');
|
|
end;
|
|
|
|
{ TSPCStatusBar }
|
|
|
|
constructor TSPCStatusBar.Create;
|
|
//var
|
|
// TS: string;
|
|
begin
|
|
inherited;
|
|
Width := 145;
|
|
Height := 19;
|
|
Align := TKOLAlign(caBottom);
|
|
end;
|
|
|
|
function TSPCStatusBar.AdditionalUnits;
|
|
begin
|
|
Result := ', KOLCCtrls';
|
|
end;
|
|
|
|
procedure TSPCStatusBar.SetupFirst;
|
|
//var
|
|
// St: string;
|
|
begin
|
|
inherited;
|
|
SL.Add(Prefix + AName + '.Top:=' + IntToStr(Top) + ';');
|
|
SL.Add(Prefix + AName + '.Left:=' + IntToStr(Left) + ';');
|
|
SL.Add(Prefix + AName + '.Width:=' + IntToStr(Width) + ';');
|
|
SL.Add(Prefix + AName + '.Height:=' + IntToStr(Height) + ';');
|
|
SL.Add(Prefix + AName + '.SimpleStatusText:=''' + SimpleStatusText + ''';');
|
|
SL.Add(Prefix + AName + '.SizeGrip:=' + Boolean2Str(SizeGrip) + ';');
|
|
end;
|
|
|
|
procedure TSPCStatusBar.SetSimpleStatusText(Value: string);
|
|
begin
|
|
fSimpleStatusText := Value;
|
|
Change;
|
|
end;
|
|
|
|
procedure TSPCStatusBar.SetSizeGrip(Value: Boolean);
|
|
begin
|
|
fSizeGrip := Value;
|
|
Change;
|
|
end;
|
|
|
|
end.
|
|
|