Pitney Bowes MapXtreme User Manual
Page 479

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;}