Skip To Content ArcGIS for Developers Sign In Dashboard

PopupManager QML Type

Manages the viewing and editing of a Popup. More...

Import Statement: import Esri.ArcGISRuntime 100.9
Since: Esri.ArcGISRuntime 100.0
Inherits:

Object

Properties

Signals

Methods

Detailed Description

This class works in conjunction with the PopupView in the ArcGIS Runtime Toolkit. The PopupView is used to display information about a GeoElement. For example, a PopupView could be used to display the attributes of an ArcGISFeature that is stored in a Feature Service. PopupManager provides the PopupView with the content to display in the view. It also contains many helper functions and properties to assist the PopupView with displaying and editing information related to the associated GeoElement.

An example workflow for displaying a PopupView using a PopupManager would be:

  • Declare a PopupView and anchor it to a desired location.
  • Perform an identify operation on a GeoView and select a Feature from the identify result.
  • Create a Popup from the Feature.
  • Optionally obtain the Popup's PopupDefinition and set the title, whether to show attachments, and so on.
  • Create a PopupManager from the Popup.
  • Assign the PopupView's popupManager property the PopupManager created in the previous step.
  • Call the show() method to display the PopupView.
  • Call the dismiss() method to hide the PopupView.

This QML type supports the following default properties. A default property may be declared inside another declared object without being assigned explicitly to a property.

Note: Each time a change is made to the Popup, PopupDefinition, PopupManager, or any of their properties, the PopupManager must be re-set to the PopupView.

Property Documentation

attachmentManager : PopupAttachmentManager

Returns the PopupAttachmentManager for this PopupManager (read-only).

Returns null if there is no associated PopupAttachmentManager.

This property was introduced in Esri.ArcGISRuntime 100.1.


customHtmlDescription : string

Returns the Popup's custom HTML description (read-only).

If PopupDefinition::expressions is not empty, the custom HTML description may be using expressions with Arcade FeatureSet functions. Use PopupManager::evaluateExpressions() to evaluate the Arcade expressions before trying to get the customHtmlDescription, otherwise it may not return the correct description.


deleteAllowed : bool

Returns whether deleting the GeoElement is allowed (read-only).


displayedFields : PopupAttributeListModel

Returns the fields for display use as a PopupAttributeListModel (read-only).


editGeometryAllowed : bool

Returns whether geometry editing is allowed (read-only).


editSummary : string

Returns the current edit summary (read-only).


editableFields : PopupAttributeListModel

Returns the editable fields as a PopupAttributeListModel (read-only).


editing : bool

Returns whether the PopupManager is currently in editing mode (read-only).


editingAllowed : bool

Returns whether attribute editing is allowed (read-only).


editingError : Error

The Error object for when an editing error occurs (read-only).

The editingErrorChanged signal will emit when there is a new error.


[default] editingGeometryBuilder : GeometryBuilder

The GeometryBuilder used to edit the GeoElement's geometry.


evaluateExpressionsResults : list<PopupExpressionEvaluation>

Returns a list of results from an evaluate of expressions operation.

The results are asynchronously evaluated expressions, including Arcade FeatureSet functions, available at PopupDefinition::expressions. If there are no PopupDefinition::expressions then the result list will be empty.

Obtain the results once the evaluateExpressionsStatusChanged signal emits, and the evaluateExpressionsStatus is complete.

This property was introduced in Esri.ArcGISRuntime 100.8.


evaluateExpressionsStatus : Enums.TaskStatus

The status for the task of evaluating popup expressions.

This property was introduced in Esri.ArcGISRuntime 100.8.

See also Enums.TaskStatus.


featureTypes : list<FeatureType>

Returns a list of FeatureTypes (read-only), or an empty list if the GeoElement is not an ArcGISFeature in an ArcGISFeatureTable.


geoElementValid : bool

Returns whether the GeoElement is valid (read-only).


The Popup that is to be managed.

Note: This must be set in order to instantiate a PopupManager.


showAttachments : bool

Returns whether attachments should be shown (read-only).


showCustomHtmlDescription : bool

Returns whether the custom HTML description should be shown (read-only).


showEditSummary : bool

Returns whether the showEditSummary should be shown (read-only).


showMedia : bool

Returns whether media should be shown (read-only).


symbol : Symbol

Returns the Symbol of the Popup (read-only).


title : string

Returns the popup's custom HTML title text (read-only).


Signal Documentation

attachmentManagerChanged()

Emitted when the attachmentManager property changes.

Note: The corresponding handler is onAttachmentManagerChanged.

This signal was introduced in Esri.ArcGISRuntime 100.1.


customHtmlDescriptionChanged()

Emitted when the customHtmlDescription property changes.

Note: The corresponding handler is onCustomHtmlDescriptionChanged.


deleteAllowedChanged()

Emitted when the deleteAllowed property changes.

Note: The corresponding handler is onDeleteAllowedChanged.


displayedFieldsChanged()

Emitted when the displayedFields property changes.

Note: The corresponding handler is onDisplayedFieldsChanged.


editGeometryAllowedChanged()

Emitted when the editGeometryAllowed property changes.

Note: The corresponding handler is onEditGeometryAllowedChanged.


editSummaryChanged()

Emitted when the editSummary property changes.

Note: The corresponding handler is onEditSummaryChanged.


editableFieldsChanged()

Emitted when the editableFields property changes.

Note: The corresponding handler is onEditableFieldsChanged.


editingAllowedChanged()

Emitted when the editingAllowed property changes.

Note: The corresponding handler is onEditingAllowedChanged.


editingChanged()

Emitted when the editing property changes.

Note: The corresponding handler is onEditingChanged.


editingCompleted()

Emitted finishEditingAsync completes.

Note: The corresponding handler is onEditingCompleted.


editingErrorChanged()

Emitted when the editingError property changes.

Note: The corresponding handler is onEditingErrorChanged.


editingGeometryBuilderChanged()

Emitted when the editingGeometryBuilder property changes.

Note: The corresponding handler is onEditingGeometryBuilderChanged.


evaluateExpressionsStatusChanged()

Emitted when the evaluateExpressions property changes.

Note: The corresponding handler is onEvaluateExpressionsStatusChanged.

This signal was introduced in Esri.ArcGISRuntime 100.8.


featureTypeChanged()

Emitted when the featureTypes property changes.

Note: The corresponding handler is onFeatureTypeChanged.


featureTypesChanged()

Emitted when the featureTypes property changes.

Note: The corresponding handler is onFeatureTypesChanged.


geoElementValidChanged()

Emitted when the geoElementValid property changes.

Note: The corresponding handler is onGeoElementValidChanged.


geometryBuilderRequired()

Emitted when the editingGeometryBuilder property changes.

Note: The corresponding handler is onGeometryBuilderRequired.


popupChanged()

Emitted when the popup property changes.

Note: The corresponding handler is onPopupChanged.


showAttachmentsChanged()

Emitted when the showAttachments property changes.

Note: The corresponding handler is onShowAttachmentsChanged.


showCustomHtmlDescriptionChanged()

Emitted when the showCustomHtmlDescription property changes.

Note: The corresponding handler is onShowCustomHtmlDescriptionChanged.


showEditSummaryChanged()

Emitted when the showEditSummary property changes.

Note: The corresponding handler is onShowEditSummaryChanged.


showMediaChanged()

Emitted when the showMedia property changes.

Note: The corresponding handler is onShowMediaChanged.


symbolChanged()

Emitted when the symbol property changes.

Note: The corresponding handler is onSymbolChanged.


titleChanged()

Emitted when the title property changes.

Note: The corresponding handler is onTitleChanged.


Method Documentation

void cancelEditing()

Cancels the editing session.

Any edits that have been made since starting will be discarded.


bool cancelTask(taskId)

Cancel the task with the ID taskId.

Returns false if the task cannot be cancelled or there is no task with the specified id taskId.

See also Cancelable.


bool doesChangeRequireNotification(featureTemplate)

Returns whether changes to the specified featureTemplate requires a notification to the user that some data may be overwritten by the change.


Domain domain(popupField)

Returns the Domain of the specified popupField.


string evaluateExpressions()

Asynchronously evaluates all expressions, including Arcade FeatureSet functions, available at PopupDefinition::expressions. This method must be called before displaying the popup information in a UI so you can use synchronous methods Popup::formattedValue() and PopupManager::substitute() to get the formatted string representation. If there are no PopupDefinition::expressions then the result list will be empty.

The PopupExpression may be used in the PopupDefinition::fields, PopupDefinition::media, PopupDefinition::title and PopupDefinition::description.

This method was introduced in Esri.ArcGISRuntime 100.8.


PopupField fieldByName(fieldName)

Returns the PopupField object corresponding to the specified fieldName.

This will return null if there is no such field or if the GeoElement is not an ArcGISFeature with fields.


string fieldLabel(popupField)

Returns the label of the specified popupField.

If the field is based on a PopupExpression, the title of the expression will be returned.

This method was introduced in Esri.ArcGISRuntime 100.3.


Enums.FieldType fieldType(popupField)

Returns the Enums.FieldType of the specified popupField.

See also Enums.FieldType.


var fieldValue(popupField)

Returns the value of the specified popupField.


void finishEditingAsync()

Finishes the editing session.

This runs asynchronously, and the editingCompleted signal emits once the editing session has ended.

Note: The PopupManager does not automatically call applyEdits on the associated GeoElement's ServiceFeatureTable. To commit any edits to the source data, call applyEdits on the associated ServiceFeatureTable.


string formattedValue(popupField)

Returns a formatted string representation of the specified popupField.

If PopupDefinition::expressions is not empty, the PopupField may be using expressions with Arcade FeatureSet functions. Use PopupManager::evaluateExpressions() to evaluate the Arcade expressions before trying to get the formatted string representation of the popup field's value, otherwise it may return an empty string.


bool isFeatureType(popupField)

Returns whether the specified popupField is a FeatureType field.


bool isNullable(popupField)

Returns whether the specified popupField is nullable.


int maxLength(popupField)

Returns the maximum allowed length of the specified popupField.


Error rangeDomainValidationText(popupField)

Returns a string that can be used to hint the acceptable values for a RangeDomain in a popupField.


bool startEditing()

Initiates an editing session with the Popup.

Returns true if editing was started successfully and false if editing is already started or not allowed.


string substitute(templateString)

Substitutes attribute values for attribute place-holders in a given templateString.

If PopupDefinition::expressions is not empty, the input string may be using expressions with Arcade FeatureSet functions. Use PopupManager::evaluateExpressions() to evaluate the Arcade expressions before trying to get the substitute string, otherwise it may return an empty string.


Error updateValue(newValue, PopupField popupField)

Updates the value of the specified popupField to the specified newValue.


Error updateValueFromTemplate(featureTemplate, Enums.FeatureTypeChangeMode changeMode)

Updates the GeoElement's featureTemplate, which in turn updates the values of its attribute table to match those in the feature template, dependent on the changeMode.


Error validationError(popupField)

Returns the validation Error for the specified popupField.



Feedback on this topic?