|
OpenAssetIO
An abstract API for generalising interactions between a host application and an asset management system
|
Abstract interface encapsulating a UI Delegate request that may change over time. More...
#include <UIDelegateRequestInterface.hpp>
Public Types | |
| using | Ptr = UIDelegateRequestInterfacePtr |
| using | ConstPtr = UIDelegateRequestInterfaceConstPtr |
| using | StateChangedCallback = std::function< void(UIDelegateStatePtr)> |
| Callback type for the UI delegate to notify the host of state changes. More... | |
Public Member Functions | |
| virtual | ~UIDelegateRequestInterface ()=default |
| Defaulted destructor. More... | |
| virtual std::any | nativeData () |
| Arbitrary data object included with the request. More... | |
| virtual EntityReferences | entityReferences () |
| List of entity references associated with the request. More... | |
| virtual trait::TraitsDatas | entityTraitsDatas () |
| List of traits and their properties associated with the request. More... | |
| virtual std::optional< StateChangedCallback > | stateChangedCallback () |
| Callback to be called by the UI delegate to notify the host of state changes. More... | |
Abstract interface encapsulating a UI Delegate request that may change over time.
The host is expected to subclass this class and implement its methods. Instances are then provided to a UI delegate when initiating a request for UI delegation, and when updating an ongoing request.
This class also holds a callback, which the UI delegate can use to notify the host of relevant updates to the delegated UI's internal state.
| using Ptr = UIDelegateRequestInterfacePtr |
| using StateChangedCallback = std::function<void(UIDelegateStatePtr)> |
Callback type for the UI delegate to notify the host of state changes.
|
virtualdefault |
Defaulted destructor.
|
virtual |
List of entity references associated with the request.
For example, this could be the "current selection", for which the UI delegate is expected to provide actions or additional information.
The default implementation returns an empty list.
|
virtual |
List of traits and their properties associated with the request.
For example, this could be data that's intended to be published, allowing the UI delegate a chance to augment or finesse the published data.
The default implementation returns an empty list.
|
virtual |
Arbitrary data object included with the request.
It is up to the host to document what will be placed in here, if anything.
For example, it could be a container widget to be populated by the UI delegate.
Note that for Python UI delegates, this must contain a CPython PyObject*.
The default implementation returns an empty std::any.
|
virtual |
Callback to be called by the UI delegate to notify the host of state changes.
For example, when the user selects an entity in a browser.
The default implementation returns an empty std::optional.
Copyright 2013-2023 The Foundry Visionmongers Ltd. OpenAssetIO is released under the Apache 2.0 License