www.pudn.com > MapLegend.rar > MapLegend_MapTheme.pas


unit MapLegend_MapTheme; 
 
interface 
 
uses Classes, Contnrs, Variants; 
 
type 
  TTheme=class(TObject) 
  private 
    { Private declarations } 
    FName : String; 
    FIndex : integer; 
    FLegendVisible : Boolean; 
  public 
    { Public declarations } 
    property LegendVisible : boolean read FLegendVisible write FLegendVisible; 
    property Index : integer read FIndex write FIndex; 
    property Name : string read FName write FName; 
    constructor Create; 
    destructor Destroy; override; 
  end; 
 
  TThemes = class(TObjectList) 
  private 
    FOwnsObjects: Boolean; 
  protected 
    function GetItem(Index: Integer): TTheme; 
    procedure SetItem(Index: Integer; AObject: TTheme); 
  public 
    function Add(AObject: TTheme): Integer; 
    function Remove(AObject: TTheme): Integer; 
    function IndexOf(AObject: TTheme): Integer; 
    procedure Insert(Index: Integer; AObject: TTheme); 
    property OwnsObjects: Boolean read FOwnsObjects write FOwnsObjects; 
    property Items[Index: Integer]: TTheme read GetItem write SetItem; default; 
    constructor Create; 
    destructor Destroy; override; 
  end; 
 
implementation 
 
//=========================================== 
constructor TTheme.Create; 
begin 
  inherited Create; 
end; 
 
destructor TTheme.Destroy; 
begin 
  inherited Destroy; 
end; 
//============================================= 
 
constructor TThemes.Create; 
begin 
  inherited Create; 
end; 
 
destructor TThemes.Destroy; 
begin 
  inherited Destroy; 
end; 
 
function TThemes.Add(AObject: TTheme): Integer; 
begin 
  Result := inherited Add(AObject); 
end; 
 
function TThemes.GetItem(Index: Integer): TTheme; 
begin 
  Result := TTheme(inherited Items[Index]); 
end; 
 
function TThemes.IndexOf(AObject: TTheme): Integer; 
begin 
  Result := inherited IndexOf(AObject); 
end; 
 
procedure TThemes.Insert(Index: Integer; AObject: TTheme); 
begin 
  inherited Insert(Index, AObject); 
end; 
 
function TThemes.Remove(AObject: TTheme): Integer; 
begin 
  Result := inherited Remove(AObject); 
end; 
 
procedure TThemes.SetItem(Index: Integer; AObject: TTheme); 
begin 
  inherited Items[Index] := AObject; 
end; 
 
end.