unit UPOObju;
{ Generated by MakeComp 1.03 from UPOTYPE.PAS. Don't modify manually !!! }
interface
uses Classes, SysUtils, Graphics, UlanType, ULRecTyp, ULObju, 
  USPType,
  UPOType;

type
  TUPOObj = class(TULObj)
  protected
    function GetProcessorName: TProcessorName;
    procedure SetProcessorName(AProcessorName: TProcessorName);
    function GetProcessorDesc: TProcessorDesc;
    procedure SetProcessorDesc(AProcessorDesc: TProcessorDesc);
    function GetMinRecLen: TULRecLen; override;
  public
    constructor Create(AOwner:TULObj);
    function GetULRecDesc: PULRecDesc; override;
  published
    property ProcessorName: TProcessorName
      read GetProcessorName write SetProcessorName;
    property ProcessorDesc: TProcessorDesc
      read GetProcessorDesc write SetProcessorDesc;
  end;

const
  UPOChildRecIDs: array[0..0] of TULRecID = (
    USPID
  );
  UPOFldDescs: array[0..1] of TULFldDesc = (
    (
     Caption: 'Processor Name';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4097;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'ProcessorName';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'TProcessorName';
    ),
    (
     Caption: 'Processor Desc.';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4097;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'ProcessorDesc';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'TProcessorDesc';
    )
  );

  UPORecDesc: TULRecDesc = (
    Caption: 'Processor';
    ChildRecIDsStr: 'USPID';
    ChildRecIDs: @UPOChildRecIDs;
    ChildRecIDCount: 1;
    FldCount: 2;
    Flds: @UPOFldDescs;
    Flags: rfChildAllowed OR rfRootChild OR rfAskForSave OR rfEnabled OR rfVisible;
    SortExp: '';
    EditFieldList: '';
    BrowseFieldList: '';
    MenuFieldList: '';
    BrowseChildRecIDs: '';
    NameProp: 'ProcessorName';
    MainProp: '';
    DefDir: '';
    OpenFilter: '';
    SaveFilter: '';
    Table: '';
    Indexes: ''
   );

implementation

{TUPOObj}
function TUPOObj.GetMinRecLen: TULRecLen;
begin
  GetMinRecLen := sizeof(TUPORec);
end;

constructor TUPOObj.Create(AOwner: TULObj);
begin
  inherited Create(TComponent(AOwner), UPOID);
end;

function TUPOObj.GetULRecDesc: PULRecDesc;
begin
  Result := @UPORecDesc;
end;

procedure TUPOObj.SetProcessorName(AProcessorName: TProcessorName);
begin
  if PUPORec(Rec)^.ProcessorName <> AProcessorName then begin
    PUPORec(Rec)^.ProcessorName := AProcessorName;
    if UPOFldDescs[0].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TUPOObj.GetProcessorName: TProcessorName;
begin
  GetProcessorName := PUPORec(Rec)^.ProcessorName;
end;

procedure TUPOObj.SetProcessorDesc(AProcessorDesc: TProcessorDesc);
begin
  if PUPORec(Rec)^.ProcessorDesc <> AProcessorDesc then begin
    PUPORec(Rec)^.ProcessorDesc := AProcessorDesc;
    if UPOFldDescs[1].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TUPOObj.GetProcessorDesc: TProcessorDesc;
begin
  GetProcessorDesc := PUPORec(Rec)^.ProcessorDesc;
end;

{/TUPOObj}

end.
