ShapeUp Loader Plugin API


A loader plugin is responsible for creating shapes and deliver them to ShapeUp main executable. Where the data comes from is entierly up to the loader. E.g. data sources can be files, databases, web servers, GPS equipment etc.

Additional information can be found in the Loader Plugin Overview .

The following functions must be exported by the loader plugin:

fnGetName Return a name to be used in menues for the user to choose from.
fnGetLastErrMsg Return a string containing error information to be displayed to the user if something went wrong.
fnLoadShapes Push new shapes to ShapeUp main executable.
fnSupportsType Report what type(s) of shapes this loader is able to supply.
fnThemeCount Number of different themes that will be loaded from the plugin.
fnVersion Return interface version information.

The following functions are optionally implemented and exported:

fnGetAttributeCount Return the number of attribute columns this theme manages.
fnGetAttributeName Return a string containing the name of an attribute column.
fnGetAttributeType Return a value describing the type of an attribute column.
fnGetAttribute Return attribute data for a given shape.
fnRemoveShapes This function gets called before a theme is unloaded.
fnPreLoadShapes This function gets called just before fnLoadShapes, fnThemeCount and fnSupportsType. Initialize plugin here.
fnSettings If there are settings for this plugin that has a longer life span than just one ShapeUp session, this is a good place to hook up.
fnGetInfo Return string data describing this plugin, what it does and optionally copyright notices.
fnSerialize This function enables serialization of the plugin, which is triggered when the user opens or saves a workspace.
fnGetCustomMenu Adds layer specific menu items.
fnHandleEvent This function is triggered by user actions on this plugins shapes.
fnHandleCustomEvent This function is called if the plugin requests an update of its data, or if the user selects a supplied custom menu.