Overview of developing add-ins
How are add-ins created?
Developers can create add-ins for Operations Dashboard for ArcGIS that provide custom widgets, map tools, map toolbars and feature actions. They do this by installing the ArcGIS Runtime SDK for WPF, that provides the public API, help, samples, and Visual Studio templates and tools to aid this development.
What can add-ins do?
By developing add-ins you can provide additional functionality to Operations Dashboard for ArcGIS users.
- Custom widgets add functionality that is specific to the domain or organization into a dockable window in the application.
- Custom map tools can add new functionality to the toolbar of a specific map widget. Custom map toolbars can be set to replace the existing toolbar of a map widget.
- Custom feature actions that provide new options for dealing with a single feature from a data source.
All out-of-the-box widgets, and some feature actions and map tools, are configurable by the operation view author. Custom widgets, map tools, and feature actions can also be configurable. In order to provide a certain workflow in an operation view, custom feature actions, widgets and map tools could work together. Additionally, any class in an add-in can make use of the public API for the application, providing access to the Map of map widgets, amongst other functionality. Add-ins can also re-use the same styles that are used in the application user interface in order to share a consistent appearance with out-of-the-box functionality.
How do authors and end users get add-ins?
Add-ins are uploaded to ArcGIS Online, and from there an operation view author can include the add-in within an operation view. The author should share the add-in with the same users that the operation view and other online resources are shared with.
When a user opens the operation view, the add-in is automatically downloaded to the local machine. Updates to add-ins are also automatically downloaded. End users of the application are not generally aware of the difference between functionality provided by add-ins and out-of-the-box system functionality.