PopupView class

A widget that will display a pop-up for an individual feature. This includes showing the feature's title, attributes, custom description, media, and attachments.

The new online Map Viewer allows users to create a pop-up definition by assembling a list of pop-up elements. PopupView will support the display of pop-up elements created by the Map Viewer, including: Text, Fields, Attachments, and Media (Images and Charts).

Overview

Thanks to the backwards compatibility support in the API, it will also work with the legacy pop-up definitions created by the classic Map Viewer. It does not support editing.

Features

  • Display a pop-up for a feature based on the pop-up definition defined in a web map.
  • Supports image refresh intervals on image pop-up media, refreshing the image at a given interval defined in the pop-up element.
  • Supports elements containing Arcade expression and automatically evaluates expressions.
  • Displays media (images and charts) full-screen.
  • Supports hyperlinks in text, media, and fields elements.

Usage

The PopupView contains:

  • A header section with title defined in the Popup.
  • A body, built using a Column and combination of Card and ExpansionTile widgets, consisting of different types of pop-up elements, including text (HTML), fields, media, and attachments.

A pop-up is usually obtained from an identify result and then a PopupView can be created to wrap the pop-up and display its contents in a sized widget, such as a Dialog or a Container:

PopupView(
  popup: popup,
  onClose: () {
    // Optional: handle close action
  },
)
Inheritance

Constructors

PopupView.new({required Popup popup, VoidCallback? onClose, Key? key})
Creates a PopupView widget to display a Popup with optional onClose callback.
const

Properties

hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onClose VoidCallback?
An optional callback function that is called when the PopupView is closed. By default, it closes the view.
final
The Popup object to be displayed.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

build(BuildContext context) Widget
Describes the part of the user interface represented by this widget.
override
createElement() StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited