Overview of widgets, map tools, and feature actions
By creating an add-in, custom widgets, map tools, map toolbars, and feature actions can be added to the application.
Custom widgets show information to users
Custom widgets add functionality that is specific to the domain or organization into a dockable window in the application.
Some widgets are linked to a specific map widget, as the legend widget is linked to a specific map widget. For example, a custom widget may provide a weather report based on the current extent of a specific map widget.
Some widgets are linked to data sources that are provided by a feature service, for example a custom area chart widget could be linked to a data source to show cumulated totals of values over time, based on attribute values from a data source. Most out-of-the-box widgets consume a specific data source and display information from it, for example the bar chart, feature details, gauge, histogram, indicator, list, pie chart, query, and summary widgets. Widgets that require a data source are not available in the Add Widget dialog box if there are no data sources defined in the current operation view. Simple methods for querying the data in a data source are available for use by a widget that consumes a data source.
Custom map tools and toolbars allow users to interact with a map widget
Custom map tools can add new functionality to the toolbar of a specific map widget. For example, a custom selection tool may be created to allow selection of all features within a certain radius of a location clicked on a map widget.
Custom map toolbars can be set by other customizations to replace the existing toolbar of a map widget. For example, a custom map tool for measuring features could be provided; when clicked this may replace the existing toolbar with a specific toolbar that reports the coordinates, length, or area of features selected in the map while the toolbar is active, with a button allowing the user to stop measuring features and return to the default toolbar. For example, the out-of-the-box measure tool and toolbar allow a user to find coordinates, lengths and areas of shapes that are defined by the user tracking the shape on the map widget.
Custom feature actions act on features from data sources
Custom feature actions provide new options for dealing with a single feature from a data source, and are made available in some widgets that represent information for individual features. The out-of-the-box map, chat, feature details, and list widgets, and also the pie and bar chart when displaying features as bars, allow an operation view author to determine the feature actions that are available from the widget for a specific feature.
A custom feature action could, for example, be used to add drive time rings around a specific feature by calling a geoprocessing service to perform the calculation, and then adding the results to the map.
Widgets, map tools and feature actions can be configurable
All out-of-the-box widgets, and some feature actions and map tools, are configurable by the operation view author. Widgets generally allow the author to define which data sources or map widgets that specific widget works with, and most also allow the author to change other properties about how data is used or displayed. Custom widgets can also be configurable; for example, a custom widget that shows information about a data source can allow the author to define which data source is used. All widgets provided out-of-the-box that consume a specific data source allow the author to configure which data source is used.
Map tools and feature actions can also be configurable if required. For example, the Find Places map tool allows the author to configure the type of coordinate notation used, and the Highlight feature action allows the author to determine if the map is also panned or zoomed to the highlighted feature.
A number of controls are provided to make it simpler to add configurability to your add-ins. The DataSourceSelector allows an author to choose from the available data sources at run time. The FeatureActionList and FeatureActionSelector allow the author to select and configure feature actions for use in a custom widget, and the FeatureActionContextMenu provides a simple way to display and execute feature actions in a consistent manner with out-of-the-box widgets.
Add-in classes can access the Map, ContentBrowser and other functionality
Any class in an add-in can make use of the public API for the application. The map contained in a map widget is available, allowing you to investigate the layers contained in the map, and to add temporary graphics. A ContentBrowser dialog box can also be shown, allowing users to browse and select items from ArcGIS Online or a Portal for ArcGIS.
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.