Componentes.Terceros.jvcl/official/3.39/run/JvDynControlEngineVCLDB.pas
2010-01-18 16:55:50 +00:00

1953 lines
53 KiB
ObjectPascal

{-----------------------------------------------------------------------------
The contents of this file are subject to the Mozilla Public License
Version 1.1 (the "License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/MPL-1.1.html
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either expressed or implied. See the License for
the specific language governing rights and limitations under the License.
The Initial Developer of the Original Code is Jens Fudickar [jens dott fudickar att oratool dott de]
All Rights Reserved.
Contributor(s):
Jens Fudickar [jens dott fudickar att oratool dott de]
You may retrieve the latest version of this file at the Project JEDI's JVCL home page,
located at http://jvcl.delphi-jedi.org
Known Issues:
-----------------------------------------------------------------------------}
// $Id: JvDynControlEngineVCLDB.pas 12563 2009-10-19 23:55:49Z jfudickar $
unit JvDynControlEngineVCLDB;
{$I jvcl.inc}
{$I crossplatform.inc}
interface
uses
{$IFDEF UNITVERSIONING}
JclUnitVersioning,
{$ENDIF UNITVERSIONING}
Classes, ExtCtrls, ExtDlgs, Graphics, Buttons, Controls, Dialogs, FileCtrl,
Forms, DBCtrls, DB, DBGrids, StdCtrls,
JvDynControlEngine, JvDynControlEngineDB, JvDynControlEngineIntf,
JvDynControlEngineDBIntf;
type
TJvDynControlVCLDBEdit = class(TDBEdit, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlReadOnly, IJvDynControlEdit,
IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetReadOnly(Value: Boolean);
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
//IJvDynControlEdit
procedure ControlSetPasswordChar(Value: Char);
procedure ControlSetEditMask(const Value: string);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBButtonEdit = class(TPanel, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlReadOnly, IJvDynControlEdit,
IJvDynControlButtonEdit, IJvDynControlButton, IJvDynControlDatabase)
private
FEditControl: TDBEdit;
FButton: TBitBtn;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure ControlSetDefaultProperties;
procedure ControlSetReadOnly(Value: Boolean);
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
//IJvDynControlEdit
procedure ControlSetPasswordChar(Value: Char);
procedure ControlSetEditMask(const Value: string);
//IJvDynControlButtonEdit
procedure ControlSetOnButtonClick(Value: TNotifyEvent);
procedure ControlSetButtonCaption(const Value: string);
//IJvDynControlButton
procedure ControlSetGlyph(Value: TBitmap);
procedure ControlSetNumGlyphs(Value: Integer);
procedure ControlSetLayout(Value: TButtonLayout);
procedure ControlSetDefault(Value: Boolean);
procedure ControlSetCancel(Value: Boolean);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBFileNameEdit = class(TPanel, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlFileName,
IJvDynControlReadOnly, IJvDynControlDatabase)
private
FEditControl: TDBEdit;
FButton: TBitBtn;
FInitialDir: string;
FFilterIndex: Integer;
FFilter: string;
FDialogOptions: TOpenOptions;
FDialogKind: TJvDynControlFileNameDialogKind;
FDialogTitle: string;
FDefaultExt: string;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure DefaultOnButtonClick(Sender: TObject);
procedure ControlSetDefaultProperties;
procedure ControlSetReadOnly(Value: Boolean);
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
// IJvDynControlFileName
procedure ControlSetInitialDir(const Value: string);
procedure ControlSetDefaultExt(const Value: string);
procedure ControlSetDialogTitle(const Value: string);
procedure ControlSetDialogOptions(Value: TOpenOptions);
procedure ControlSetFilter(const Value: string);
procedure ControlSetFilterIndex(Value: Integer);
procedure ControlSetDialogKind(Value: TJvDynControlFileNameDialogKind);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBDirectoryEdit = class(TPanel, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlDirectory,
IJvDynControlReadOnly, IJvDynControlDatabase)
private
FEditControl: TDBEdit;
FButton: TBitBtn;
FInitialDir: string;
FDialogOptions: TSelectDirOpts;
FDialogTitle: string;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure DefaultOnButtonClick(Sender: TObject);
procedure ControlSetDefaultProperties;
procedure ControlSetReadOnly(Value: Boolean);
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
// IJvDynControlDirectory
procedure ControlSetInitialDir(const Value: string);
procedure ControlSetDialogTitle(const Value: string);
procedure ControlSetDialogOptions(Value: TSelectDirOpts);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBCheckBox = class(TDBCheckBox, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlDatabase,
IJvDynControlDBCheckbox)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
//IJvDynControlDBCheckbox
procedure ControlSetValueChecked(Value: Variant);
procedure ControlSetValueUnChecked(Value: Variant);
end;
TJvDynControlVCLDBMemo = class(TDBMemo, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlItems, IJvDynControlMemo,
IJvDynControlReadOnly, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetReadOnly(Value: Boolean);
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
procedure ControlSetSorted(Value: Boolean);
procedure ControlSetItems(Value: TStrings);
function ControlGetItems: TStrings;
procedure ControlSetWantTabs(Value: Boolean);
procedure ControlSetWantReturns(Value: Boolean);
procedure ControlSetWordWrap(Value: Boolean);
procedure ControlSetScrollBars(Value: TScrollStyle);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
//IJvDynControlFont
function ControlGetFont: TFont;
procedure ControlSetFont(Value: TFont);
end;
TJvDynControlVCLDBRadioGroup = class(TDBRadioGroup, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlItems,
IJvDynControlRadioGroup, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
procedure ControlSetSorted(Value: Boolean);
procedure ControlSetItems(Value: TStrings);
function ControlGetItems: TStrings;
procedure ControlSetColumns(Value: Integer);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBListBox = class(TDBListBox, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlItems, IJvDynControlDblClick,
IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
procedure ControlSetSorted(Value: Boolean);
procedure ControlSetItems(Value: TStrings);
function ControlGetItems: TStrings;
procedure ControlSetOnDblClick(Value: TNotifyEvent);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBComboBox = class(TDBComboBox, IUnknown,
IJvDynControl, IJvDynControlData, IJvDynControlItems, IJvDynControlComboBox,
IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnChange(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetValue(Value: Variant);
function ControlGetValue: Variant;
procedure ControlSetSorted(Value: Boolean);
procedure ControlSetItems(Value: TStrings);
function ControlGetItems: TStrings;
procedure ControlSetNewEntriesAllowed(Value: Boolean);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBImage = class(TDBImage, IUnknown,
IJvDynControl, IJvDynControlImage, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
procedure ControlSetAutoSize(Value: Boolean);
procedure ControlSetIncrementalDisplay(Value: Boolean);
procedure ControlSetCenter(Value: Boolean);
procedure ControlSetProportional(Value: Boolean);
procedure ControlSetStretch(Value: Boolean);
procedure ControlSetTransparent(Value: Boolean);
procedure ControlSetPicture(Value: TPicture);
procedure ControlSetGraphic(Value: TGraphic);
function ControlGetPicture: TPicture;
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBText = class(TDBText, IUnknown,
IJvDynControl, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBGrid = class(TDBGrid, IUnknown,
IJvDynControl, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlVCLDBNavigator = class(TDBNavigator, IUnknown,
IJvDynControl, IJvDynControlDatabase)
public
procedure ControlSetDefaultProperties;
procedure ControlSetCaption(const Value: string);
procedure ControlSetTabOrder(Value: Integer);
procedure ControlSetHint(const Value: string);
procedure ControlSetOnEnter(Value: TNotifyEvent);
procedure ControlSetOnExit(Value: TNotifyEvent);
procedure ControlSetOnClick(Value: TNotifyEvent);
//IJvDynControlDatabase
procedure ControlSetDataSource(Value: TDataSource);
function ControlGetDataSource: TDataSource;
procedure ControlSetDataField(const Value: string);
function ControlGetDataField: string;
procedure ControlSetAnchors(Value : TAnchors);
end;
TJvDynControlEngineVCLDB = class(TJvDynControlEngineDB)
public
function GetDataSourceFromDataComponent(ADataComponent: TComponent): TDataSource; override;
procedure RegisterControls; override;
end;
function DynControlEngineVCLDB: TJvDynControlEngineDB;
{$IFDEF UNITVERSIONING}
const
UnitVersioning: TUnitVersionInfo = (
RCSfile: '$URL: https://jvcl.svn.sourceforge.net/svnroot/jvcl/tags/JVCL3_39/run/JvDynControlEngineVCLDB.pas $';
Revision: '$Revision: 12563 $';
Date: '$Date: 2009-10-20 01:55:49 +0200 (mar., 20 oct. 2009) $';
LogPath: 'JVCL\run'
);
{$ENDIF UNITVERSIONING}
implementation
uses
Variants, SysUtils,
JvDynControlEngineTools, JvDynControlEngineVCL, JvConsts, JvJCLUtils;
var
IntDynControlEngineVCLDB: TJvDynControlEngineDB = nil;
//=== { TJvDynControlVCLDBEdit } =============================================
procedure TJvDynControlVCLDBEdit.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBEdit.ControlSetReadOnly(Value: Boolean);
begin
ReadOnly := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBEdit.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
OnChange := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBEdit.ControlSetValue(Value: Variant);
begin
Text := Value;
end;
function TJvDynControlVCLDBEdit.ControlGetValue: Variant;
begin
Result := Text;
end;
procedure TJvDynControlVCLDBEdit.ControlSetPasswordChar(Value: Char);
begin
PasswordChar := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetEditMask(const Value: string);
begin
//EditMask := Value;
end;
procedure TJvDynControlVCLDBEdit.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBEdit.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBEdit.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBEdit.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBEdit.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBButtonEdit } =======================================
constructor TJvDynControlVCLDBButtonEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FEditControl := TDBEdit.Create(AOwner);
FEditControl.Parent := Self;
FButton := TBitBtn.Create(AOwner);
FButton.Parent := Self;
FButton.Align := alRight;
FButton.Caption := '...';
Height := FEditControl.Height;
FButton.Width := Height;
FEditControl.Align := alClient;
BevelInner := bvNone;
BevelOuter := bvNone;
end;
destructor TJvDynControlVCLDBButtonEdit.Destroy;
begin
FreeAndNil(FEditControl);
FreeAndNil(FButton);
inherited Destroy;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetDefaultProperties;
begin
Self.Caption := ' ';
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetReadOnly(Value: Boolean);
begin
FEditControl.ReadOnly := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
FEditControl.OnChange := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
FEditControl.OnClick := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetValue(Value: Variant);
begin
FEditControl.Text := Value;
end;
function TJvDynControlVCLDBButtonEdit.ControlGetValue: Variant;
begin
Result := FEditControl.Text;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetPasswordChar(Value: Char);
begin
FEditControl.PasswordChar := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetEditMask(const Value: string);
begin
//FEditControl.EditMask := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetOnButtonClick(Value: TNotifyEvent);
begin
FButton.OnClick := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetButtonCaption(const Value: string);
begin
FButton.Caption := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetGlyph(Value: TBitmap);
begin
FButton.Glyph.Assign(Value);
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetNumGlyphs(Value: Integer);
begin
FButton.NumGlyphs := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetLayout(Value: TButtonLayout);
begin
FButton.Layout := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetDefault(Value: Boolean);
begin
FButton.Default := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetCancel(Value: Boolean);
begin
FButton.Cancel := Value;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetDataSource(Value: TDataSource);
begin
FEditControl.DataSource := Value;
end;
function TJvDynControlVCLDBButtonEdit.ControlGetDataSource: TDataSource;
begin
Result := FEditControl.DataSource;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetDataField(const Value: string);
begin
FEditControl.DataField := Value;
end;
function TJvDynControlVCLDBButtonEdit.ControlGetDataField: string;
begin
Result := FEditControl.DataField;
end;
procedure TJvDynControlVCLDBButtonEdit.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBFileNameEdit } =====================================
constructor TJvDynControlVCLDBFileNameEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FEditControl := TDBEdit.Create(AOwner);
FEditControl.Parent := Self;
FButton := TBitBtn.Create(AOwner);
FButton.Parent := Self;
FButton.Align := alRight;
FButton.OnClick := DefaultOnButtonClick;
FButton.Caption := '...';
Height := FEditControl.Height;
FButton.Width := Height;
FEditControl.Align := alClient;
FDialogOptions := [ofHideReadOnly,ofEnableSizing];
BevelInner := bvNone;
BevelOuter := bvNone;
FDialogKind := jdkOpen;
end;
destructor TJvDynControlVCLDBFileNameEdit.Destroy;
begin
FreeAndNil(FEditControl);
FreeAndNil(FButton);
inherited Destroy;
end;
procedure TJvDynControlVCLDBFileNameEdit.DefaultOnButtonClick(Sender: TObject);
begin
case FDialogKind of
jdkOpen:
with TOpenDialog.Create(Self) do
try
Options := FDialogOptions;
Title := FDialogTitle;
Filter := FFilter;
FilterIndex := FFilterIndex;
InitialDir := FInitialDir;
DefaultExt := FDefaultExt;
FileName := ControlGetValue;
if Execute then
ControlSetValue(FileName);
finally
Free;
end;
jdkOpenPicture:
with TOpenPictureDialog.Create(Self) do
try
Options := FDialogOptions;
Title := FDialogTitle;
Filter := FFilter;
FilterIndex := FFilterIndex;
InitialDir := FInitialDir;
DefaultExt := FDefaultExt;
FileName := ControlGetValue;
if Execute then
ControlSetValue(FileName);
finally
Free;
end;
jdkSave:
with TSaveDialog.Create(Self) do
try
Options := FDialogOptions;
Title := FDialogTitle;
Filter := FFilter;
FilterIndex := FFilterIndex;
InitialDir := FInitialDir;
DefaultExt := FDefaultExt;
FileName := ControlGetValue;
if Execute then
ControlSetValue(FileName);
finally
Free;
end;
jdkSavePicture:
with TSavePictureDialog.Create(Self) do
try
Options := FDialogOptions;
Title := FDialogTitle;
Filter := FFilter;
FilterIndex := FFilterIndex;
InitialDir := FInitialDir;
DefaultExt := FDefaultExt;
FileName := ControlGetValue;
if Execute then
ControlSetValue(FileName);
finally
Free;
end;
end;
if FEditControl.CanFocus then
FEditControl.SetFocus;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDefaultProperties;
begin
Caption := ' ';
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetReadOnly(Value: Boolean);
begin
FEditControl.ReadOnly := Value;
FButton.Enabled := not Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
FEditControl.OnEnter := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
FEditControl.OnExit := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
FEditControl.OnChange := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetValue(Value: Variant);
begin
FEditControl.Text := Value;
end;
function TJvDynControlVCLDBFileNameEdit.ControlGetValue: Variant;
begin
Result := FEditControl.Text;
end;
// IJvDynControlFileName
procedure TJvDynControlVCLDBFileNameEdit.ControlSetInitialDir(const Value: string);
begin
FInitialDir := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDefaultExt(const Value: string);
begin
FDefaultExt := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDialogTitle(const Value: string);
begin
FDialogTitle := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDialogOptions(Value: TOpenOptions);
begin
FDialogOptions := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetFilter(const Value: string);
begin
FFilter := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetFilterIndex(Value: Integer);
begin
FFilterIndex := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDialogKind(Value: TJvDynControlFileNameDialogKind);
begin
FDialogKind := Value;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDataSource(Value: TDataSource);
begin
FEditControl.DataSource := Value;
end;
function TJvDynControlVCLDBFileNameEdit.ControlGetDataSource: TDataSource;
begin
Result := FEditControl.DataSource;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetDataField(const Value: string);
begin
FEditControl.DataField := Value;
end;
function TJvDynControlVCLDBFileNameEdit.ControlGetDataField: string;
begin
Result := FEditControl.DataField;
end;
procedure TJvDynControlVCLDBFileNameEdit.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBDirectoryEdit } ====================================
constructor TJvDynControlVCLDBDirectoryEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FEditControl := TDBEdit.Create(AOwner);
FEditControl.Parent := Self;
FButton := TBitBtn.Create(AOwner);
FButton.Parent := Self;
FButton.Align := alRight;
FButton.OnClick := DefaultOnButtonClick;
FButton.Caption := '...';
Height := FEditControl.Height;
FButton.Width := Height;
FEditControl.Align := alClient;
BevelInner := bvNone;
BevelOuter := bvNone;
end;
destructor TJvDynControlVCLDBDirectoryEdit.Destroy;
begin
FreeAndNil(FEditControl);
FreeAndNil(FButton);
inherited Destroy;
end;
procedure TJvDynControlVCLDBDirectoryEdit.DefaultOnButtonClick(Sender: TObject);
var
Opt: TSelectDirOpts;
Dir: string;
begin
Dir := ControlGetValue;
if Dir = '' then
if FInitialDir <> '' then
Dir := FInitialDir
else
Dir := PathDelim;
if not DirectoryExists(Dir) then
Dir := PathDelim;
if SelectDirectory(Dir, Opt, HelpContext) then
ControlSetValue(Dir);
if FEditControl.CanFocus then
FEditControl.SetFocus;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetDefaultProperties;
begin
Self.Caption := ' ';
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetReadOnly(Value: Boolean);
begin
FEditControl.ReadOnly := Value;
FButton.Enabled := not Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
FEditControl.OnEnter := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
FEditControl.OnExit := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
FEditControl.OnChange := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetValue(Value: Variant);
begin
FEditControl.Text := Value;
end;
function TJvDynControlVCLDBDirectoryEdit.ControlGetValue: Variant;
begin
Result := FEditControl.Text;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetInitialDir(const Value: string);
begin
FInitialDir := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetDialogTitle(const Value: string);
begin
FDialogTitle := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetDialogOptions(Value: TSelectDirOpts);
begin
FDialogOptions := Value;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetDataSource(Value: TDataSource);
begin
FEditControl.DataSource := Value;
end;
function TJvDynControlVCLDBDirectoryEdit.ControlGetDataSource: TDataSource;
begin
Result := FEditControl.DataSource;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetDataField(const Value: string);
begin
FEditControl.DataField := Value;
end;
function TJvDynControlVCLDBDirectoryEdit.ControlGetDataField: string;
begin
Result := FEditControl.DataField;
end;
procedure TJvDynControlVCLDBDirectoryEdit.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBCheckBox } =========================================
procedure TJvDynControlVCLDBCheckBox.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetCaption(const Value: string);
begin
Caption := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetOnChange(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetValue(Value: Variant);
begin
Checked := JvDynControlVariantToBoolean(Value);
end;
function TJvDynControlVCLDBCheckBox.ControlGetValue: Variant;
begin
Result := Checked;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBCheckBox.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBCheckBox.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetValueChecked(Value: Variant);
begin
ValueChecked := Value;
end;
procedure TJvDynControlVCLDBCheckBox.ControlSetValueUnChecked(Value: Variant);
begin
ValueUnChecked := Value;
end;
//=== { TJvDynControlVCLDBMemo } =============================================
procedure TJvDynControlVCLDBMemo.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBMemo.ControlSetReadOnly(Value: Boolean);
begin
ReadOnly := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBMemo.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetOnChange(Value: TNotifyEvent);
begin
OnChange := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetValue(Value: Variant);
begin
Text := Value;
end;
function TJvDynControlVCLDBMemo.ControlGetValue: Variant;
begin
Result := Text;
end;
procedure TJvDynControlVCLDBMemo.ControlSetSorted(Value: Boolean);
begin
end;
procedure TJvDynControlVCLDBMemo.ControlSetItems(Value: TStrings);
begin
Lines.Assign(Value);
end;
function TJvDynControlVCLDBMemo.ControlGetItems: TStrings;
begin
Result := Lines;
end;
procedure TJvDynControlVCLDBMemo.ControlSetWantTabs(Value: Boolean);
begin
WantTabs := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetWantReturns(Value: Boolean);
begin
WantReturns := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetWordWrap(Value: Boolean);
begin
WordWrap := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetScrollBars(Value: TScrollStyle);
begin
ScrollBars := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBMemo.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBMemo.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBMemo.ControlGetDataField: string;
begin
Result := DataField;
end;
function TJvDynControlVCLDBMemo.ControlGetFont: TFont;
begin
Result := Font;
end;
procedure TJvDynControlVCLDBMemo.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
procedure TJvDynControlVCLDBMemo.ControlSetFont(Value: TFont);
begin
Font.Assign(Value);
end;
//=== { TJvDynControlVCLDBRadioGroup } =======================================
procedure TJvDynControlVCLDBRadioGroup.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetCaption(const Value: string);
begin
Caption := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetOnChange(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetValue(Value: Variant);
begin
if VarIsInt(Value) then
ItemIndex := Value
else
ItemIndex := Items.IndexOf(Value);
end;
function TJvDynControlVCLDBRadioGroup.ControlGetValue: Variant;
begin
Result := ItemIndex;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetSorted(Value: Boolean);
begin
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetItems(Value: TStrings);
begin
Items.Assign(Value);
end;
function TJvDynControlVCLDBRadioGroup.ControlGetItems: TStrings;
begin
Result := Items;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetColumns(Value: Integer);
begin
Columns := Value;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBRadioGroup.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBRadioGroup.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBRadioGroup.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBListBox } ==========================================
procedure TJvDynControlVCLDBListBox.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBListBox.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBListBox.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetOnChange(Value: TNotifyEvent);
begin
// OnChange := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetValue(Value: Variant);
begin
if VarIsInt(Value) then
ItemIndex := Value
else
ItemIndex := Items.IndexOf(Value);
end;
function TJvDynControlVCLDBListBox.ControlGetValue: Variant;
begin
Result := ItemIndex;
end;
procedure TJvDynControlVCLDBListBox.ControlSetSorted(Value: Boolean);
begin
Sorted := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetItems(Value: TStrings);
begin
Items.Assign(Value);
end;
function TJvDynControlVCLDBListBox.ControlGetItems: TStrings;
begin
Result := Items;
end;
procedure TJvDynControlVCLDBListBox.ControlSetOnDblClick(Value: TNotifyEvent);
begin
OnDblClick := Value;
end;
procedure TJvDynControlVCLDBListBox.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBListBox.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBListBox.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBListBox.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBListBox.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBComboBox } =========================================
procedure TJvDynControlVCLDBComboBox.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBComboBox.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBComboBox.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetOnChange(Value: TNotifyEvent);
begin
// OnChange := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetValue(Value: Variant);
begin
if Style = csDropDownList then
ItemIndex := Items.IndexOf(Value)
else
Text := Value;
end;
function TJvDynControlVCLDBComboBox.ControlGetValue: Variant;
begin
Result := Text;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetSorted(Value: Boolean);
begin
Sorted := Value;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetItems(Value: TStrings);
begin
Items.Assign(Value);
end;
function TJvDynControlVCLDBComboBox.ControlGetItems: TStrings;
begin
Result := Items;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetNewEntriesAllowed(Value: Boolean);
const
Styles: array [Boolean] of TComboBoxStyle =
(csDropDownList, csDropDown);
begin
Style := Styles[Value];
end;
procedure TJvDynControlVCLDBComboBox.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBComboBox.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBComboBox.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBComboBox.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBImage } ============================================
procedure TJvDynControlVCLDBImage.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBImage.ControlSetCaption(const Value: string);
begin
Caption := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetTabOrder(Value: Integer);
begin
// TabOrder := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetOnEnter(Value: TNotifyEvent);
begin
// OnEnter := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetOnExit(Value: TNotifyEvent);
begin
// OnExit := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetOnClick(Value: TNotifyEvent);
begin
OnClick := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetAutoSize(Value: Boolean);
begin
AutoSize := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetIncrementalDisplay(Value: Boolean);
begin
// IncrementalDisplay := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetCenter(Value: Boolean);
begin
Center := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetProportional(Value: Boolean);
begin
// Proportional := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetStretch(Value: Boolean);
begin
Stretch := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetTransparent(Value: Boolean);
begin
// Transparent := Value;
end;
procedure TJvDynControlVCLDBImage.ControlSetPicture(Value: TPicture);
begin
Picture.Assign(Value);
end;
procedure TJvDynControlVCLDBImage.ControlSetGraphic(Value: TGraphic);
begin
Picture.Assign(Value);
end;
function TJvDynControlVCLDBImage.ControlGetPicture: TPicture;
begin
Result := Picture;
end;
procedure TJvDynControlVCLDBImage.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBImage.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBImage.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBImage.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBImage.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBText } =============================================
procedure TJvDynControlVCLDBText.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBText.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBText.ControlSetTabOrder(Value: Integer);
begin
end;
procedure TJvDynControlVCLDBText.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBText.ControlSetOnEnter(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBText.ControlSetOnExit(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBText.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBText.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBText.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBText.ControlSetDataField(const Value: string);
begin
DataField := Value;
end;
function TJvDynControlVCLDBText.ControlGetDataField: string;
begin
Result := DataField;
end;
procedure TJvDynControlVCLDBText.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBGrid } =============================================
procedure TJvDynControlVCLDBGrid.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBGrid.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBGrid.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBGrid.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBGrid.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBGrid.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBGrid.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBGrid.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBGrid.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBGrid.ControlSetDataField(const Value: string);
begin
end;
function TJvDynControlVCLDBGrid.ControlGetDataField: string;
begin
Result := '';
end;
procedure TJvDynControlVCLDBGrid.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlVCLDBNavigator } ========================================
procedure TJvDynControlVCLDBNavigator.ControlSetDefaultProperties;
begin
end;
procedure TJvDynControlVCLDBNavigator.ControlSetCaption(const Value: string);
begin
end;
procedure TJvDynControlVCLDBNavigator.ControlSetTabOrder(Value: Integer);
begin
TabOrder := Value;
end;
procedure TJvDynControlVCLDBNavigator.ControlSetHint(const Value: string);
begin
Hint := Value;
end;
procedure TJvDynControlVCLDBNavigator.ControlSetOnEnter(Value: TNotifyEvent);
begin
OnEnter := Value;
end;
procedure TJvDynControlVCLDBNavigator.ControlSetOnExit(Value: TNotifyEvent);
begin
OnExit := Value;
end;
procedure TJvDynControlVCLDBNavigator.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
procedure TJvDynControlVCLDBNavigator.ControlSetDataSource(Value: TDataSource);
begin
DataSource := Value;
end;
function TJvDynControlVCLDBNavigator.ControlGetDataSource: TDataSource;
begin
Result := DataSource;
end;
procedure TJvDynControlVCLDBNavigator.ControlSetDataField(const Value: string);
begin
end;
function TJvDynControlVCLDBNavigator.ControlGetDataField: string;
begin
Result := '';
end;
procedure TJvDynControlVCLDBNavigator.ControlSetAnchors(Value : TAnchors);
begin
Anchors := Value;
end;
//=== { TJvDynControlEngineVCLDB } ===========================================
function DynControlEngineVCLDB: TJvDynControlEngineDB;
begin
Result := IntDynControlEngineVCLDB;
end;
procedure TJvDynControlEngineVCLDB.RegisterControls;
begin
RegisterControlType(jctDBText, TJvDynControlVCLDBText);
RegisterControlType(jctDBEdit, TJvDynControlVCLDBEdit);
RegisterControlType(jctDBImage, TJvDynControlVCLDBImage);
RegisterControlType(jctDBCheckBox, TJvDynControlVCLDBCheckBox);
RegisterControlType(jctDBComboBox, TJvDynControlVCLDBComboBox);
RegisterControlType(jctDBListBox, TJvDynControlVCLDBListBox);
RegisterControlType(jctDBRadioGroup, TJvDynControlVCLDBRadioGroup);
RegisterControlType(jctDBDateTimeEdit, TJvDynControlVCLDBEdit);
RegisterControlType(jctDBTimeEdit, TJvDynControlVCLDBEdit);
RegisterControlType(jctDBDateEdit, TJvDynControlVCLDBEdit);
//// RegisterControlType(jctDBCalculateEdit, TJvDynControlVCLDBEdit);
//// RegisterControlType(jctDBSpinEdit, TJvDynControlVCLDBEdit);
RegisterControlType(jctDBDirectoryEdit, TJvDynControlVCLDBDirectoryEdit);
RegisterControlType(jctDBFileNameEdit, TJvDynControlVCLDBFileNameEdit);
RegisterControlType(jctDBMemo, TJvDynControlVCLDBMemo);
RegisterControlType(jctDBButtonEdit, TJvDynControlVCLDBButtonEdit);
RegisterControlType(jctDBGrid, TJvDynControlVCLDBGrid);
RegisterControlType(jctDBNavigator, TJvDynControlVCLDBNavigator);
end;
type TAccessDBLookupControl = class(TDBLookupControl);
function TJvDynControlEngineVCLDB.GetDataSourceFromDataComponent(ADataComponent: TComponent): TDataSource;
begin
if not Assigned(ADataComponent) then
Result := nil
else
if ADataComponent is TCustomDBGrid then
Result := TCustomDBGrid(ADataComponent).DataSource
else
if ADataComponent is TDBEdit then
Result := TDBEdit(ADataComponent).DataSource
else
if ADataComponent is TDBNavigator then
Result := TDBNavigator(ADataComponent).DataSource
else
if ADataComponent is TDBListBox then
Result := TDBListbox(ADataComponent).DataSource
else
if ADataComponent is TDBLookupControl then
Result := TAccessDBLookupControl(ADataComponent).DataSource
else
if ADataComponent is TDBImage then
Result := TDBImage(ADataComponent).DataSource
else
if ADataComponent is TDBMemo then
Result := TDBMemo(ADataComponent).DataSource
else
if ADataComponent is TDBRadioGroup then
Result := TDBRadioGroup(ADataComponent).DataSource
else
if ADataComponent is TDBRichEdit then
Result := TDBRichEdit(ADataComponent).DataSource
else
if ADataComponent is TDBText then
Result := TDBText(ADataComponent).DataSource
else
if ADataComponent is TDBCheckBox then
Result := TDBCheckBox(ADataComponent).DataSource
else
Result := inherited GetDataSourceFromDataComponent(ADataComponent);
end;
initialization
{$IFDEF UNITVERSIONING}
RegisterUnitVersion(HInstance, UnitVersioning);
{$ENDIF UNITVERSIONING}
IntDynControlEngineVCLDB := TJvDynControlEngineVCLDB.Create;
SetDefaultDynControlEngineDB(IntDynControlEngineVCLDB);
finalization
FreeAndNil(IntDynControlEngineVCLDB);
{$IFDEF UNITVERSIONING}
UnregisterUnitVersion(HInstance);
{$ENDIF UNITVERSIONING}
end.