beautypg.com

Pitney Bowes MapXtreme User Manual

Page 479

background image

Appendix B: Customizing MapXtreme

Workspace Manager Extensions

MapXtreme v7.1

486

Developer Guide

void ShowPropertiesDialog(IWin32Window owner);

IWorkspaceManagerNotifications Load(IWorkspaceManager callback);

void Unload();

}

To create an extension, create an assembly with at least one class that implements the
IWorkspaceManagerExtension interface. The class should have a constructor that takes no
arguments.

Load Method

The main method on IWorkspaceManagerExtension is:

IWorkspaceManagerNotifications Load(IWorkspaceManager callback);

This method is called after the extension class is constructed. It is passed an instance of an object
that implements IWorkspaceManager which allows the class to call back into Workspace Manager to
access elements of the user interface such as menus, toolstrips, tabcontrol and to execute
commands such as loading and saving workspaces.

public interface IWorkspaceManager

{

bool NewWorkspace();
bool LoadWorkspace(string filename);
void SaveWorkspace(string filename);
void MarkWorkspaceChanged();
bool HasWorkspaceChanged();

string LoadedWorkspaceFileName{get;}

int AddMapTab(MapInfo.Mapping.Map map);
int FindMapTab(MapInfo.Mapping.Map map);
int AddLegendTab(MapInfo.Mapping.Legends.Legend legend);
int FindLegendTab(MapInfo.Mapping.Legends.Legend legend);
void RemoveTab(int tab);

Microsoft.Win32.RegistryKey GetRegistryKey();

MapInfo.Windows.Controls.MapControl MapControl{get;}

MapInfo.Windows.Controls.MapControl GetMapControlFromTab(int tab);

MapInfo.Windows.Controls.LegendControl GetLegendControlFromTab(int tab);

MapInfo.Windows.Controls.LayerControl LayerControl{get;}

System.Windows.Forms.Form MainForm{get;}

System.Windows.Forms.MenuStrip Menu{get;}
System.Windows.Forms.ToolStrip FileToolStrip{get;}
System.Windows.Forms.ToolStrip MapToolStrip{get;}
System.Windows.Forms.ToolStrip ToolsToolStrip{get;}
System.Windows.Forms.StatusStrip StatusStrip{get;}