unit ULOFObju;
{ Generated by MakeComp 1.03 from ULOFTYPE.PAS. Don't modify manually !!! }
interface
uses Classes, SysUtils, Graphics, UlanType, ULRecTyp, ULObju, 
  ULOFType;

type
  TULOFObj = class(TULObj)
  protected
    function GetFieldName: TULObjFieldName;
    procedure SetFieldName(AFieldName: TULObjFieldName);
    function GetCaption: string;
    procedure SetCaption(ACaption: string);
    function GetHint: string;
    procedure SetHint(AHint: string);
    function GetEditWidth: integer;
    procedure SetEditWidth(AEditWidth: integer);
    function GetBrowseWidth: integer;
    procedure SetBrowseWidth(ABrowseWidth: integer);
    function GetTheFlags: longint;
    procedure SetTheFlags(ATheFlags: longint);
    function GetUserCoef: TUserCoef;
    procedure SetUserCoef(AUserCoef: TUserCoef);
    function GetNumDec: integer;
    procedure SetNumDec(ANumDec: integer);
    function GetValuesSourceRecID: TULRecID;
    procedure SetValuesSourceRecID(AValuesSourceRecID: TULRecID);
    function GetFieldColorsList: string;
    procedure SetFieldColorsList(AFieldColorsList: string);
    function GetFilter: string;
    procedure SetFilter(AFilter: string);
    function GetLeft: integer;
    procedure SetLeft(ALeft: integer);
    function GetTop: integer;
    procedure SetTop(ATop: integer);
    function GetWidth: integer;
    procedure SetWidth(AWidth: integer);
    function GetHeight: integer;
    procedure SetHeight(AHeight: integer);
    function GetDefDir: string;
    procedure SetDefDir(ADefDir: string);
    function GetStripPrefix: string;
    procedure SetStripPrefix(AStripPrefix: string);
    function GetEditMask: string;
    procedure SetEditMask(AEditMask: string);
    function GetMaxID: integer;
    procedure SetMaxID(AMaxID: integer);
    function GetKeyFieldName: string;
    procedure SetKeyFieldName(AKeyFieldName: string);
    function GetListFieldName: string;
    procedure SetListFieldName(AListFieldName: string);
    function GetTyp: string;
    procedure SetTyp(ATyp: string);
    function GetVarSize: boolean;
    procedure SetVarSize(AVarSize: boolean);
    function GetPasType: string;
    procedure SetPasType(APasType: string);
    function GetDefVal: string;
    procedure SetDefVal(ADefVal: string);
    function GetMinRecLen: TULRecLen; override;
  public
    constructor Create(AOwner:TULObj);
    function GetULRecDesc: PULRecDesc; override;
  published
    property FieldName: TULObjFieldName
      read GetFieldName write SetFieldName;
    property Caption: string
      read GetCaption write SetCaption;
    property Hint: string
      read GetHint write SetHint;
    property EditWidth: integer
      read GetEditWidth write SetEditWidth;
    property BrowseWidth: integer
      read GetBrowseWidth write SetBrowseWidth;
    property TheFlags: longint
      read GetTheFlags write SetTheFlags;
    property UserCoef: TUserCoef
      read GetUserCoef write SetUserCoef;
    property NumDec: integer
      read GetNumDec write SetNumDec;
    property ValuesSourceRecID: TULRecID
      read GetValuesSourceRecID write SetValuesSourceRecID;
    property FieldColorsList: string
      read GetFieldColorsList write SetFieldColorsList;
    property Filter: string
      read GetFilter write SetFilter;
    property Left: integer
      read GetLeft write SetLeft;
    property Top: integer
      read GetTop write SetTop;
    property Width: integer
      read GetWidth write SetWidth;
    property Height: integer
      read GetHeight write SetHeight;
    property DefDir: string
      read GetDefDir write SetDefDir;
    property StripPrefix: string
      read GetStripPrefix write SetStripPrefix;
    property EditMask: string
      read GetEditMask write SetEditMask;
    property MaxID: integer
      read GetMaxID write SetMaxID;
    property KeyFieldName: string
      read GetKeyFieldName write SetKeyFieldName;
    property ListFieldName: string
      read GetListFieldName write SetListFieldName;
    property Typ: string
      read GetTyp write SetTyp;
    property VarSize: boolean
      read GetVarSize write SetVarSize;
    property PasType: string
      read GetPasType write SetPasType;
    property DefVal: string
      read GetDefVal write SetDefVal;
  end;

const
  ULOFFldDescs: array[0..24] of TULFldDesc = (
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'FieldName';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Caption';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Hint';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'EditWidth';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'BrowseWidth';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'TheFlags';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'UserCoef';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'NumDec';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'ValuesSourceRecID';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'FieldColorsList';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Filter';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Left';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Top';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Width';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Height';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'DefDir';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'StripPrefix';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'EditMask';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'MaxID';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'KeyFieldName';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'ListFieldName';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'Typ';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'VarSize';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'PasType';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4096;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: '';
     EditMask: '';
     MaxID: 0;
     FieldName: 'DefVal';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
    )
  );

  ULOFRecDesc: TULRecDesc = (
    Caption: 'Field definition/options';
    ChildRecIDsStr: '';
    ChildRecIDs: nil;
    ChildRecIDCount: 0;
    FldCount: 25;
    Flds: @ULOFFldDescs;
    Flags: rfHasRecName OR rfEnabled OR rfVisible;
    SortExp: '';
    EditFieldList: '';
    BrowseFieldList: '';
    MenuFieldList: '';
    BrowseChildRecIDs: '';
    NameProp: '';
    MainProp: '';
    DefDir: '';
    OpenFilter: '';
    SaveFilter: '';
    Table: ''
   );

implementation

{TULOFObj}
function TULOFObj.GetMinRecLen: TULRecLen;
begin
  GetMinRecLen := sizeof(TULOFRec);
end;

constructor TULOFObj.Create(AOwner: TULObj);
begin
  inherited Create(TComponent(AOwner), ULOFID);
end;

function TULOFObj.GetULRecDesc: PULRecDesc;
begin
  Result := @ULOFRecDesc;
end;

procedure TULOFObj.SetFieldName(AFieldName: TULObjFieldName);
begin
  if PULOFRec(Rec)^.FieldName <> AFieldName then begin
    PULOFRec(Rec)^.FieldName := AFieldName;
    if ULOFFldDescs[0].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetFieldName: TULObjFieldName;
begin
  GetFieldName := PULOFRec(Rec)^.FieldName;
end;

procedure TULOFObj.SetCaption(ACaption: string);
begin
  if PULOFRec(Rec)^.Caption <> ACaption then begin
    PULOFRec(Rec)^.Caption := ACaption;
    if ULOFFldDescs[1].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetCaption: string;
begin
  GetCaption := PULOFRec(Rec)^.Caption;
end;

procedure TULOFObj.SetHint(AHint: string);
begin
  if PULOFRec(Rec)^.Hint <> AHint then begin
    PULOFRec(Rec)^.Hint := AHint;
    if ULOFFldDescs[2].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetHint: string;
begin
  GetHint := PULOFRec(Rec)^.Hint;
end;

procedure TULOFObj.SetEditWidth(AEditWidth: integer);
begin
  if PULOFRec(Rec)^.EditWidth <> AEditWidth then begin
    PULOFRec(Rec)^.EditWidth := AEditWidth;
    if ULOFFldDescs[3].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetEditWidth: integer;
begin
  GetEditWidth := PULOFRec(Rec)^.EditWidth;
end;

procedure TULOFObj.SetBrowseWidth(ABrowseWidth: integer);
begin
  if PULOFRec(Rec)^.BrowseWidth <> ABrowseWidth then begin
    PULOFRec(Rec)^.BrowseWidth := ABrowseWidth;
    if ULOFFldDescs[4].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetBrowseWidth: integer;
begin
  GetBrowseWidth := PULOFRec(Rec)^.BrowseWidth;
end;

procedure TULOFObj.SetTheFlags(ATheFlags: longint);
begin
  if PULOFRec(Rec)^.TheFlags <> ATheFlags then begin
    PULOFRec(Rec)^.TheFlags := ATheFlags;
    if ULOFFldDescs[5].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetTheFlags: longint;
begin
  GetTheFlags := PULOFRec(Rec)^.TheFlags;
end;

procedure TULOFObj.SetUserCoef(AUserCoef: TUserCoef);
begin
  if PULOFRec(Rec)^.UserCoef <> AUserCoef then begin
    PULOFRec(Rec)^.UserCoef := AUserCoef;
    if ULOFFldDescs[6].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetUserCoef: TUserCoef;
begin
  GetUserCoef := PULOFRec(Rec)^.UserCoef;
end;

procedure TULOFObj.SetNumDec(ANumDec: integer);
begin
  if PULOFRec(Rec)^.NumDec <> ANumDec then begin
    PULOFRec(Rec)^.NumDec := ANumDec;
    if ULOFFldDescs[7].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetNumDec: integer;
begin
  GetNumDec := PULOFRec(Rec)^.NumDec;
end;

procedure TULOFObj.SetValuesSourceRecID(AValuesSourceRecID: TULRecID);
begin
  if PULOFRec(Rec)^.ValuesSourceRecID <> AValuesSourceRecID then begin
    PULOFRec(Rec)^.ValuesSourceRecID := AValuesSourceRecID;
    if ULOFFldDescs[8].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetValuesSourceRecID: TULRecID;
begin
  GetValuesSourceRecID := PULOFRec(Rec)^.ValuesSourceRecID;
end;

procedure TULOFObj.SetFieldColorsList(AFieldColorsList: string);
begin
  if PULOFRec(Rec)^.FieldColorsList <> AFieldColorsList then begin
    PULOFRec(Rec)^.FieldColorsList := AFieldColorsList;
    if ULOFFldDescs[9].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetFieldColorsList: string;
begin
  GetFieldColorsList := PULOFRec(Rec)^.FieldColorsList;
end;

procedure TULOFObj.SetFilter(AFilter: string);
begin
  if PULOFRec(Rec)^.Filter <> AFilter then begin
    PULOFRec(Rec)^.Filter := AFilter;
    if ULOFFldDescs[10].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetFilter: string;
begin
  GetFilter := PULOFRec(Rec)^.Filter;
end;

procedure TULOFObj.SetLeft(ALeft: integer);
begin
  if PULOFRec(Rec)^.Left <> ALeft then begin
    PULOFRec(Rec)^.Left := ALeft;
    if ULOFFldDescs[11].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetLeft: integer;
begin
  GetLeft := PULOFRec(Rec)^.Left;
end;

procedure TULOFObj.SetTop(ATop: integer);
begin
  if PULOFRec(Rec)^.Top <> ATop then begin
    PULOFRec(Rec)^.Top := ATop;
    if ULOFFldDescs[12].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetTop: integer;
begin
  GetTop := PULOFRec(Rec)^.Top;
end;

procedure TULOFObj.SetWidth(AWidth: integer);
begin
  if PULOFRec(Rec)^.Width <> AWidth then begin
    PULOFRec(Rec)^.Width := AWidth;
    if ULOFFldDescs[13].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetWidth: integer;
begin
  GetWidth := PULOFRec(Rec)^.Width;
end;

procedure TULOFObj.SetHeight(AHeight: integer);
begin
  if PULOFRec(Rec)^.Height <> AHeight then begin
    PULOFRec(Rec)^.Height := AHeight;
    if ULOFFldDescs[14].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetHeight: integer;
begin
  GetHeight := PULOFRec(Rec)^.Height;
end;

procedure TULOFObj.SetDefDir(ADefDir: string);
begin
  if PULOFRec(Rec)^.DefDir <> ADefDir then begin
    PULOFRec(Rec)^.DefDir := ADefDir;
    if ULOFFldDescs[15].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetDefDir: string;
begin
  GetDefDir := PULOFRec(Rec)^.DefDir;
end;

procedure TULOFObj.SetStripPrefix(AStripPrefix: string);
begin
  if PULOFRec(Rec)^.StripPrefix <> AStripPrefix then begin
    PULOFRec(Rec)^.StripPrefix := AStripPrefix;
    if ULOFFldDescs[16].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetStripPrefix: string;
begin
  GetStripPrefix := PULOFRec(Rec)^.StripPrefix;
end;

procedure TULOFObj.SetEditMask(AEditMask: string);
begin
  if PULOFRec(Rec)^.EditMask <> AEditMask then begin
    PULOFRec(Rec)^.EditMask := AEditMask;
    if ULOFFldDescs[17].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetEditMask: string;
begin
  GetEditMask := PULOFRec(Rec)^.EditMask;
end;

procedure TULOFObj.SetMaxID(AMaxID: integer);
begin
  if PULOFRec(Rec)^.MaxID <> AMaxID then begin
    PULOFRec(Rec)^.MaxID := AMaxID;
    if ULOFFldDescs[18].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetMaxID: integer;
begin
  GetMaxID := PULOFRec(Rec)^.MaxID;
end;

procedure TULOFObj.SetKeyFieldName(AKeyFieldName: string);
begin
  if PULOFRec(Rec)^.KeyFieldName <> AKeyFieldName then begin
    PULOFRec(Rec)^.KeyFieldName := AKeyFieldName;
    if ULOFFldDescs[19].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetKeyFieldName: string;
begin
  GetKeyFieldName := PULOFRec(Rec)^.KeyFieldName;
end;

procedure TULOFObj.SetListFieldName(AListFieldName: string);
begin
  if PULOFRec(Rec)^.ListFieldName <> AListFieldName then begin
    PULOFRec(Rec)^.ListFieldName := AListFieldName;
    if ULOFFldDescs[20].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetListFieldName: string;
begin
  GetListFieldName := PULOFRec(Rec)^.ListFieldName;
end;

procedure TULOFObj.SetTyp(ATyp: string);
begin
  if PULOFRec(Rec)^.Typ <> ATyp then begin
    PULOFRec(Rec)^.Typ := ATyp;
    if ULOFFldDescs[21].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetTyp: string;
begin
  GetTyp := PULOFRec(Rec)^.Typ;
end;

procedure TULOFObj.SetVarSize(AVarSize: boolean);
begin
  if PULOFRec(Rec)^.VarSize <> AVarSize then begin
    PULOFRec(Rec)^.VarSize := AVarSize;
    if ULOFFldDescs[22].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetVarSize: boolean;
begin
  GetVarSize := PULOFRec(Rec)^.VarSize;
end;

procedure TULOFObj.SetPasType(APasType: string);
begin
  if PULOFRec(Rec)^.PasType <> APasType then begin
    PULOFRec(Rec)^.PasType := APasType;
    if ULOFFldDescs[23].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetPasType: string;
begin
  GetPasType := PULOFRec(Rec)^.PasType;
end;

procedure TULOFObj.SetDefVal(ADefVal: string);
begin
  if PULOFRec(Rec)^.DefVal <> ADefVal then begin
    PULOFRec(Rec)^.DefVal := ADefVal;
    if ULOFFldDescs[24].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULOFObj.GetDefVal: string;
begin
  GetDefVal := PULOFRec(Rec)^.DefVal;
end;

{/TULOFObj}

end.
