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

type
  TULMFObj = class(TULObj)
  protected
    function GetFilterName: TFilterName;
    procedure SetFilterName(AFilterName: TFilterName);
    function GetFilterType: TFilterType;
    procedure SetFilterType(AFilterType: TFilterType);
    function GetAvgPointCount: longint;
    procedure SetAvgPointCount(AAvgPointCount: longint);
    function GetFilter1: TFilterCoef;
    procedure SetFilter1(AFilter1: TFilterCoef);
    function GetMinRecLen: TULRecLen; override;
  public
    constructor Create(AOwner:TULObj);
    function GetULRecDesc: PULRecDesc; override;
  published
    property FilterName: TFilterName
      read GetFilterName write SetFilterName;
    property FilterType: TFilterType
      read GetFilterType write SetFilterType;
    property AvgPointCount: longint
      read GetAvgPointCount write SetAvgPointCount;
    property Filter1: TFilterCoef
      read GetFilter1 write SetFilter1;
  end;

const
  ULMFFldDescs: array[0..3] of TULFldDesc = (
    (
     Caption: '';
     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: 'FilterName';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'TFilterName';
    ),
    (
     Caption: '';
     Hint: '';
     EditWidth: 0;
     BrowseWidth: 0;
     Flags: 4097;
     UserCoef: 0.00;
     NumDec: 0;
     ValuesSourceRecID: 0;
     FieldColorCount : 0;
     FieldColors : nil;
     Filter: '';
     DefDir: '';
     StripPrefix: 'ft';
     EditMask: '';
     MaxID: 0;
     FieldName: 'FilterType';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'TFilterType';
    ),
    (
     Caption: '';
     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: 'AvgPointCount';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'longint';
    ),
    (
     Caption: '';
     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: 'Filter1';
     KeyFieldName: '';
     ListFieldName: '';
     Typ: '';
     VarSize: false;
     PasType: 'TFilterCoef';
    )
  );

  ULMFRecDesc: TULRecDesc = (
    Caption: 'Filter';
    ChildRecIDsStr: '';
    ChildRecIDs: nil;
    ChildRecIDCount: 0;
    FldCount: 4;
    Flds: @ULMFFldDescs;
    Flags: rfEnabled OR rfVisible;
    SortExp: '';
    EditFieldList: '';
    BrowseFieldList: '';
    MenuFieldList: '';
    BrowseChildRecIDs: '';
    NameProp: '';
    MainProp: '';
    DefDir: '';
    OpenFilter: '';
    SaveFilter: '';
    Table: '';
    Indexes: ''
   );

implementation

{TULMFObj}
function TULMFObj.GetMinRecLen: TULRecLen;
begin
  GetMinRecLen := sizeof(TULMFRec);
end;

constructor TULMFObj.Create(AOwner: TULObj);
begin
  inherited Create(TComponent(AOwner), ULMFID);
end;

function TULMFObj.GetULRecDesc: PULRecDesc;
begin
  Result := @ULMFRecDesc;
end;

procedure TULMFObj.SetFilterName(AFilterName: TFilterName);
begin
  if PULMFRec(Rec)^.FilterName <> AFilterName then begin
    PULMFRec(Rec)^.FilterName := AFilterName;
    if ULMFFldDescs[0].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULMFObj.GetFilterName: TFilterName;
begin
  GetFilterName := PULMFRec(Rec)^.FilterName;
end;

procedure TULMFObj.SetFilterType(AFilterType: TFilterType);
begin
  if PULMFRec(Rec)^.FilterType <> AFilterType then begin
    PULMFRec(Rec)^.FilterType := AFilterType;
    if ULMFFldDescs[1].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULMFObj.GetFilterType: TFilterType;
begin
  GetFilterType := PULMFRec(Rec)^.FilterType;
end;

procedure TULMFObj.SetAvgPointCount(AAvgPointCount: longint);
begin
  if PULMFRec(Rec)^.AvgPointCount <> AAvgPointCount then begin
    PULMFRec(Rec)^.AvgPointCount := AAvgPointCount;
    if ULMFFldDescs[2].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULMFObj.GetAvgPointCount: longint;
begin
  GetAvgPointCount := PULMFRec(Rec)^.AvgPointCount;
end;

procedure TULMFObj.SetFilter1(AFilter1: TFilterCoef);
begin
  if PULMFRec(Rec)^.Filter1 <> AFilter1 then begin
    PULMFRec(Rec)^.Filter1 := AFilter1;
    if ULMFFldDescs[3].VarSize then 
      ClearFieldsLen;
    DoChange;
  end;
end;

function TULMFObj.GetFilter1: TFilterCoef;
begin
  GetFilter1 := PULMFRec(Rec)^.Filter1;
end;

{/TULMFObj}

end.
