Files

81 lines
1.9 KiB
ObjectPascal

unit UserReg;
interface
{$R CompsSer.dcr}
{$I compilers.inc}
procedure Register;
implementation
uses Classes , {RegisterComponent}
{$IFDEF DELPHI_6_UP}
DesignIntf, DesignEditors,
{$ELSE}
DsgnIntf, { RegisterComponentEditor}
{$ENDIF}
TypInfo, {propiedad Dataset del QREDBimage}
DB, {para acceder al Dataset del reporte}
{ PictEdit, {TGraphicEditor }
// qrEDBimage,
edbimage; { mis componentes }
{type
TQREDBImageFieldProperty = Class (TStringProperty)
public
function GetAttributes : TPropertyAttributes; override;
procedure GetValues(Proc : TGetStrProc); override;
procedure GetValueList(List : TStrings);
end;}
{ TQREDBImageFieldProperty }
{function TQREDBImageFieldProperty.GetAttributes: TPropertyAttributes;
begin
Result := [paValueList, paSortList, paMultiSelect];
end;
procedure TQREDBImageFieldProperty.GetValueList(List: TStrings);
var
Instance: TComponent;
PropInfo: PPropInfo;
DataSet: TDataSet;
begin
Instance := TComponent(GetComponent(0));
PropInfo := TypInfo.GetPropInfo(Instance.ClassInfo, 'DataSet');
if (PropInfo <> nil) and (PropInfo^.PropType^.Kind = tkClass) then
begin
DataSet := TObject(GetOrdProp(Instance, PropInfo)) as TDataSet;
if (DataSet <> nil) then
DataSet.GetFieldNames(List);
end;
end;
procedure TQREDBImageFieldProperty.GetValues(Proc: TGetStrProc);
var
I: Integer;
Values: TStringList;
begin
Values := TStringList.Create;
try
GetValueList(Values);
for I := 0 to Values.Count - 1 do Proc(Values[I]);
finally
Values.Free;
end;
end;}
procedure Register;
begin
RegisterComponents('Data Controls', [TEDBImage]);
//RegisterComponents('QReport',[TQREDBImage]);
//RegisterPropertyEditor(TypeInfo(string), TQREDBImage, 'DataField', TQREDBImageFieldProperty); {<-- do not resource }
end;
end.