Pro 2.9 provides many exciting new features, like Dynamic Feature Clustering, Animated Symbols, Knowledge Graphs, Presence-only Prediction, and support for Cloud Data Warehouses (Snowflake, Amazon Redshift, and Google BigQuery). Pro developers will find new opportunities to support and streamline organizational workflows with custom tools built with the SDK.
Here are some of the SDK highlights of the release with links to new documentation and resources.
New Item Templates
The new Layout Tool item template allows developers to create a layout tool for adding/editing graphics in layout and map views and elements in layout. The Layout tool also provides virtual methods that can be overridden to perform actions when keyboard and mouse events occur in the map view and layout view. It also provides properties that can be set to configure the behavior of the tool, as well as methods that wrap common functions when interacting with the view.
A Layout Tool sample creating graphics on a map view and a layout:
For more information, see the new LayoutTool section in the ProConcepts Layout document. You can also try the new GraphicElementSymbolPicker community sample which demonstrates a complete workflow using the LayoutTool.
Table Construction Tool
Another new item template for Visual Studio is the Table Construction Tool. The template creates a table construction tool which provides the foundation for creating rows in standalone tables. It’s also possible for Table construction tools to be modified to become sketching construction tools. In this sketching scenario, you can build a construction tool that will obtain certain attributes from features on the map and have them be populated in your table row.
More information on table construction tool implementations can be found in the new Table Construction Tools section of the ProConcepts Editing document. Also, see the new TableConstructionTool sample which provides examples of table construction tools including two sketching construction tools. For further background on the Table control, see the TableControl section of the ProConcepts Map Exploration document. Also, the ProGuide TableControl provides a walk-through on the control and discusses the sample.
As with each release, there has also been updates to the many existing Pro API. The following are the main API updates at 2.9.
For the Content API, there are new enhancements for accessing Geodatabase content, files and CAD data, allowing developers to work directly with these items from the Catalog pane. To support this, a number of methods have been added to the ItemFactory class to facilitate retrieval of dataset and data definition – GetDatasetType, GetDataset and GetDefinition.
You can find out more in the Geodatabase Content section of the ProConcepts Content document
At 2.9, a subset of Pro application options are now available via the ApplicationOptions class. The class allows developers to get and set the option settings for use in workflows, to save time and ensure consistency.
Available options in the API are organized via a series of classes, which loosely correspond to the same organization of options on the Pro application “Options” dialog. Some of these available classes include: DownloadOptions, EditingOptions, GeneralOptions, GeoprocessingOptions LayoutOptions, TextAndGraphicsElementsOptions and VersioningOptions.
New at 2.9 is the added ability to create Table templates. The ability to create feature templates has been previously available with the Editing API, and in a similar way, table templates allow the user to better facilitate the creation of records. For example, a table template can set the assignment of default values for the attributes of a new record in a table. Pro 2.9 introduces the CreateTemplate extension method for table templates that helps you create templates with default attribute values assigned to it.
You can learn more in an expanded Feature Templates and Table Templates section in the ProConcepts Editing document.
Starting with Pro 2.9, you can now manage sketch symbology customization. You can change the symbology of the vertices and segments of the sketch feedback in your custom MapTool. There are 4 different types of vertices – unselected vertex, selected vertex, unselected current vertex, and selected current vertex. See the Sketch Feedback and Sketch Symbology section of the ProConcepts Editing doc for more information. Also, see the new CustomToolSketchSymbology community sample to see this new capability in action.
Coordinate Geometry (COGO) is a feature editing technique used primarily in the land records industry and is characterized by the capturing of the dimensions depicted on land record documents as attributes for line features. At 2.9, there’s a new ProConcepts COGO document available which covers the API detailing the classes and methods used to query and edit COGO-enabled line feature classes.
The 2.9 release expands on the 2.8 Data Definition Language (DDL) API release for geodatabase schema management, with new support for creating and deleting annotation feature classes. See the new Annotation section in the ProConcepts DDL document for information and code snippets. Another new feature is the ability to create and delete mobile geodatabases.
New at 2.9, there is support for adding tables to group layers and layer documents (.lyrx). Tables can be added to either the map in the Standalonetables collection or now, starting at 2.9, to a group layer. See the Working with Tables section of ProConcepts Map Authoring for more information.
At 2.9 there are new TableControl enhancements like GoTo and Find with respective UI updates. You can display the GoTo UI using the CanGoTo and GoTo methods, and similarly the Find UI can be displayed via CanFind and Find methods in code.
A TableControl sample demonstrating the Find and GoTo methods:
See the TableControl section of ProConcepts Map Exploration for more details. Also, see the ProGuide TableControl which provides additional context and walks through points seen in the community sample here.
At 2.9, there’s new support for retrieving and executed named trace configurations stored as part of a utility network. See the Named trace configuration section of the ProConcepts Utility Network for more information.
There’s also a new capability to traverse multiple levels of utility network associations in a single call. This is important for some utility network data models such as telecommunications. See the Association Traversal section to learn more.
All 2.9 API Changes
For a complete listing of all of the 2.9 API updates available, see the API Changes section of the What’s New for Developers at 2.9 page in the API Reference Guide.
Installation and Documentation
Check out all of the information resources on the SDK documentation site with all the concept and guide documents and links to the many community samples.
Collaborate and Share your Feedback
As always, we invite you to send us your feedback and needs for the Pro SDK. Let us know, find out more and collaborate with others in the Esri Community Pro SDK Group. The group is very active and allows developers an opportunity to ask technical questions, search for answers on existing threads, and answer questions as well. We look forward to hearing about your new work with 2.9.
For more information on all the key updates in ArcGIS Pro 2.9, see the What’s New in ArcGIS Pro 2.9 page, which includes the following video highlighting exciting new features.