The SDL Component Suite is an industry leading collection of components supporting scientific and engineering computing. Please visit the SDL Web site for more information.... |
Home GeoPack GeoAtlas Interface of SDL_GeoAtlas | |
See also: Using TGeoAtlas | |
Interface of SDL_GeoAtlas |
|
const MAX_GA_MAPS = 200; {$IFDEF PAIDVERS} SDLVersionInfo = 'geoatlas_r1200_full'; IsLightEd = false; {$ELSE} SDLVersionInfo = 'geoatlas_r1200_lighted'; IsLightEd = true; {$ENDIF} Release = 1200; type TMapDefinition = record MapFName : string; Caption : string; Resolution : double; Corners : TCornerArray; end; TGeoAtlas = class(TCustomControl) private FGeoMap : TGeoMap; FCPanel : TPanel; FSBZoom : TSpeedButton; FSBPoint : TSpeedButton; FCboxMaps : TComboBox; FMapOLColor : TColor; FMapOLVisible : boolean; FMinResDiff : double; // minimum required resolution // difference for zooming (in percent) FNumRegMaps : integer; // number of registered maps FRegMaps : array[1..MAX_GA_MAPS] of TMapDefinition; FOnZoomButClick : TNotifyEvent; FOnPoiButClick : TNotifyEvent; FOnCBxMapsChg : TNotifyEvent; FCurrentMapIdx : integer; // currently selected map; procedure CBoxMapsChange (sender: TObject); procedure FGeoMapDataRendered(Sender: TObject; Canvas: TCanvas); procedure FGeoMapMouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FGeoMapMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FGeoMapMouseMove (Sender: TObject; Shift: TShiftState; X,Y: integer); procedure FGeoMapImgRequest (Sender: TObject; var FileName: string); procedure FGeoMapClick(Sender: TObject); procedure FGeoMapDblClick(Sender: TObject); procedure FSBZoomClick(Sender: TObject); procedure FSBPointClick(Sender: TObject); procedure SetMapOLColor (value: TColor); procedure SetMapOLVisible (value: boolean); function GetCPnlVis: boolean; procedure SetCPnlVis (value: boolean); function GetMapDef (ix: integer): TMapDefinition; protected procedure CreateWnd; override; public constructor Create(AOwner: TComponent); override; destructor Destroy; override; property CmdPanel: TPanel read FCPanel write FCPanel; property CurrentMap: TGeoMap read FGeoMap write FGeoMap; property NumRegMaps: integer read FNumRegMaps; property Maps[ix: integer]: TMapDefinition read GetMapDef; property MapSelector: TComboBox read FCBoxMaps write FCBoxMaps; property PointerButton: TSpeedButton read FSBPoint write FSBPoint; function SelectMap (Index: integer): boolean; function RegisterMap (MapFName: string): boolean; procedure UnregisterMap (index: integer); property ZoomButton: TSpeedButton read FSBZoom write FSBZoom; function ZoomIn (CurrentLat, CurrentLong, CurrentResolution: double): boolean; function ZoomOut (CurrentLat, CurrentLong, CurrentResolution: double): boolean; published property Align; property CmdPanelVisible: boolean read GetCPnlVis write SetCPnlVis; property MapOutlineColor: TColor read FMapOLColor write SetMapOLColor; property MapOutlineVisible: boolean read FMapOLVisible write SetMapOLVisible; property MinResDiff: double read FMinResDiff write FMinResDiff; {$IFDEF GE_LEV17} (**) property StyleElements; {$ENDIF} property Visible; property OnMouseMove; property OnMouseDown; property OnMouseUp; property OnClick; property OnDblClick; property OnZoomButClick: TNotifyEvent read FOnZoomButClick write FOnZoomButClick; property OnPointerButClick: TNotifyEvent read FOnPoiButClick write FOnPoiButClick; property OnCBoxMapsChange: TNotifyEvent read FOnCBxMapsChg write FOnCBxMapsChg; end;
|