📄 s2.tools.ts2field.pas
字号:
unit S2.Tools.TS2Field;
interface
uses
S2.Tools.TS2Object, S2.Tools.IS2Field, S2.Core.IS2Cloneable, S2.Tools.IS2DictItem;
type
TS2Field = class(TS2Object, IS2Field, IS2Cloneable, IS2DictItem)
private
FieldName: string;
FieldCaption: string;
_IsClone: Boolean;
function GetVariantValue: Variant;
public // S2.Tools.IS2Field
function GetFieldCatpion: string; virtual;
function GetFieldName: string; virtual;
procedure SetFieldCapion(const FieldCaption: string); virtual;
procedure SetFieldName(const FieldName: string); virtual;
function GetValueAsObject: TS2Object; virtual;
procedure SetValueAsObject(O: TS2Object); virtual;
public // S2.Core.IS2Cloneable
function Clone: IS2Cloneable; virtual;
function IsClone: Boolean; virtual;
public // S2.Core.TS2Object
function GetObjectName: string; override;
function GetCaption: string; override;
function ToString: string; override;
function IsActive: Boolean; override;
function IsValid: Boolean; override;
public
function GetName: string; virtual;
function GetObject: TObject; virtual;
public
constructor Create;
end;
implementation
uses
S2.Error.S2AbstractException;
{ TS2Field }
function TS2Field.Clone: IS2Cloneable;
var
NewObject: TS2Field;
begin
NewObject := TS2Field.Create;
NewObject.FieldName := FieldName;
NewObject.FieldCaption := FieldCaption;
NewObject._IsClone := True;
Result := NewObject;
end;
constructor TS2Field.Create;
begin
_IsClone := False;
end;
function TS2Field.GetCaption: string;
begin
Result := ClassName;
end;
function TS2Field.GetFieldCatpion: string;
begin
Result := FieldCaption;
end;
function TS2Field.GetFieldName: string;
begin
Result := FieldName;
end;
function TS2Field.GetName: string;
begin
Result := FieldName;
end;
function TS2Field.GetObject: TObject;
begin
Result := Self;
end;
function TS2Field.GetObjectName: string;
begin
Result := ClassName;
end;
function TS2Field.GetValueAsObject: TS2Object;
begin
raise S2AbstractException.Create(ClassName, 'GetValueAsObject');
end;
function TS2Field.GetVariantValue: Variant;
begin
raise S2AbstractException.Create(ClassName, 'GetVariantValue');
end;
function TS2Field.IsActive: Boolean;
begin
Result := True;
end;
function TS2Field.IsClone: Boolean;
begin
Result := _IsClone;
end;
function TS2Field.IsValid: Boolean;
begin
Result := True;
end;
procedure TS2Field.SetFieldCapion(const FieldCaption: string);
begin
Self.FieldName := FieldCaption;
end;
procedure TS2Field.SetFieldName(const FieldName: string);
begin
Self.FieldName := FieldName;
end;
procedure TS2Field.SetValueAsObject(O: TS2Object);
begin
end;
function TS2Field.ToString: string;
begin
Result := GetCaption;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -