Implementation class for ActivityHostConcept. More...
#include <kanzi/ui/node/concept/activity/activity_host_concept_impl.hpp>
Public Member Functions | |
void | deserialize (string_view data) override |
ActivityElement::deserialize implementation. | |
void | notifyChildrenNodeTreeAvailable () override |
ActivityElement::notifyChildrenNodeTreeAvailable implementation. | |
string | serialize () override |
ActivityElement::serialize implementation. | |
Public Member Functions inherited from kanzi::ActivityElementImpl< TBaseClass, TDerivedClass > | |
const Node * | getNode () const override |
Gets the underlying Node object. | |
Node * | getNode () override |
Gets the underlying Node object. | |
Public Member Functions inherited from kanzi::ActivityElement | |
vector< NodeSharedPtr >::const_iterator | beginChildHosts () const |
Returns the begin iterator to the registered child Activity Host. | |
vector< NodeSharedPtr >::const_iterator | endChildHosts () const |
Returns the end iterator to the registered child Activity Host. | |
Node * | findChildHost (string_view hostName) |
Finds a child Activity Host by name. | |
vector< string > | getCommands () const |
Gets the list of commands handled by code behind of this activity element. | |
ActivityHistoryManager * | getHistoryManager () const |
Gets the history manager of this activity element. | |
ActivityElement * | getParentElement () |
Gets the parent ActivityElement type node. | |
bool | isLeafActivityNode () const |
Returns whether an ActivityElement has a child Activity Host. | |
void | setCodeBehind (CodeBehindSharedPtr codeBehind) |
Attaches a code behind object. | |
void | setCodeBehind (const Metaclass *metaclass) |
Instantiates and attaches a code behind object by specifying its metaclass. | |
virtual | ~ActivityElement ()=default |
Destructor. | |
Public Member Functions inherited from kanzi::ActivityHostConcept | |
virtual vector< string > | getActivatingNames ()=0 |
Returns the names of activating Activities in this Activity Host. | |
virtual void | onActivateActivityOverride (string_view activationPath, bool resetHistory)=0 |
Derived classes implement this method to react to ActivateActivity message. | |
virtual void | resolveFocusWithPolicy (Node &activityNode)=0 |
Focuses a given Activity if the focusing policy of this Activity Host instructs so. | |
virtual void | setActivationModifier (string_view activityName, BindingTokenWeakPtr weakModifier)=0 |
Sets a property modifier to apply activation to a child Activity Node of an Activity Host. | |
virtual | ~ActivityHostConcept ()=default |
Destructor. | |
Protected Member Functions | |
ActivityHostConceptImpl (Domain *domain, string_view name) | |
Constructor. | |
void | clearCurrentActivationTarget () const |
Clears current activation target. | |
virtual vector< NodeWeakPtr > | getActiveOrAttachedActivating ()=0 |
Returns all nodes of already attached Activity nodes except deactivating ones. | |
virtual optional< ActivityHostConcept::ActivityInfo > | getActivityInfo (string_view name) const =0 |
Gets the information for child Activity node with the given name. | |
virtual vector< NodeWeakPtr > | getAttachedActivityNodes ()=0 |
Returns all nodes of already attached Activity nodes. | |
void | initialize () |
Initializes this Activity Host Concept. | |
void | registerInParentActivityElement () final |
ActivityElement::registerInParentActivityElement implementation. | |
void | resolveFocusOnActivated (Node &activityNode) |
Performs the necessary operations to fix the application focus when an Activity has activated in this Activity Host. | |
void | unregisterInParentActivityElement () final |
ActivityElement::unregisterInParentActivityElement implementation. | |
virtual | ~ActivityHostConceptImpl ()=default |
Destructor. | |
Protected Member Functions inherited from kanzi::ActivityElementImpl< TBaseClass, TDerivedClass > | |
ActivityElementImpl (Domain *domain, string_view name) | |
Constructor. | |
void | initialize () |
Initializes the activity element. | |
void | onAttached () override |
Node::onAttached implementation. | |
virtual void | onAttachedOverride () |
Overrides the onAttached method. | |
void | onDetached () override |
Node::onDetached implementation. | |
void | onNodePropertyChanged (AbstractPropertyType propertyType, PropertyNotificationReason reason) override |
Node::onNodePropertyChanged implementation. | |
~ActivityElementImpl () override=default | |
Destructor. | |
Protected Member Functions inherited from kanzi::ActivityElement | |
optional< ActivityBrowserController::ActivityID > | getActivityID () const |
Gets the unique ID that is used by the implementation of the Activity Browser. | |
string | getPathInParent () |
Gets the activation path of this activity element relative to its parent. | |
void | initialize () |
Initializes the activity element. | |
bool | isRootActivityElement () const |
Returns whether an ActivityElement is the root Activity Host node of the Screen node. | |
void | onForceTrigger (const ActivityBrowserController::ForceTriggerMessageArguments &args) |
Message handler for ActivityBrowserController::ForceTriggerMessage. | |
void | onNodeInfoTreeAvailable (const ActivityBrowserController::NodeInfoTreeAvailableArguments &) |
Message handler for ActivityBrowserController::NodeInfoTreeAvailableMessage. | |
void | registerChildHost (string_view hostPath) |
Registers a child host in this activity element. | |
void | setActivityID (optional< ActivityBrowserController::ActivityID > activityID) |
Sets the unique ID that is used by the implementation of the Activity Browser. | |
void | unregisterChildHost (string_view hostName) |
Unregisters a child host from this activity element. | |
void | updateActivityBrowserProperties () |
Triggers the Activity Browser to update the properties of the Activity Element. | |
Protected Attributes | |
string | m_activationTarget |
The name of the Activity that is the candidate to be the activation target. | |
bool | m_deserializing |
Indicates that this Activity Host is performing property deserialization. | |
bool | m_hostHadFocus |
Indicates that the Activity Host had focus before it started to activate new activation target Activity. | |
Additional Inherited Members | |
Public Types inherited from kanzi::ActivityHostConcept | |
enum class | ActivationStatus { PreparingForActivation , ParallelAnimation , ExclusiveAnimation } |
Specifies possible stages for internal tracking of activation of an Activity. More... | |
using | ActivityInfoContainer |
enum class | DeactivationStatus { ExclusiveAnimation , ParallelAnimation , WaitingForRelease } |
Specifies possible stages for internal tracking of deactivation of an Activity. More... | |
Static Public Member Functions inherited from kanzi::ActivityElement | |
static string | getFirstElement (string_view activationSequence) |
Gets the first element of the activation sequence. | |
static string | getRestToForward (string_view activationSequence) |
Gets the remainder of the activation sequence. | |
template<typename Type > | |
static bool | isActivityElement (const Type &object) |
Returns whether an object is an ActivityElement. | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
Static Public Member Functions inherited from kanzi::ActivityHostConcept | |
template<typename Type > | |
static bool | isActivityHost (const Type &object) |
Determines if an object is an ActivityHost. | |
static bool | isActivityHostMetaclass (const Metaclass *metaclass) |
Checks whether the given Metaclass is an ActivityHostConcept metaclass or contains it as a mixin metaclass. | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
Static Public Attributes inherited from kanzi::ActivityElement | |
static PropertyType< bool > | AttachedProperty |
static PropertyType< bool > | PreserveHistoryProperty |
Enables the preservation of Activity property values when that Activity becomes inactive. | |
Static Public Attributes inherited from kanzi::ActivityHostConcept | |
static MessageType< ActivationMessageArguments > | ActivateActivityMessage |
You can send ActivateActivity to the Activity Host to activate an Activity. | |
static MessageType< ActivationMessageArguments > | DeactivateActivityMessage |
You can send DeactivateActivity to the Activity Host to deactivate an Activity. | |
static MessageType< ActivityPrefabMessageArguments > | ActivityPrefabAttachedMessage |
An Activity Host sends this message when it attaches the prefab of the Activity that is activated. | |
static MessageType< ActivityPrefabMessageArguments > | ActivityPrefabDetachedMessage |
An Activity Host sends this message when it attaches the prefab of the Activity that is activated. | |
static MessageType< RegisterActivityElementInternalMessageArguments > | RegisterHostInternalMessage |
Internal message sent by an Activity Host to its parent Activity or Activity Host to register the Activity Host in the parent. | |
static MessageType< UnregisterActivityElementInternalMessageArguments > | UnregisterHostInternalMessage |
Internal message sent by an Activity Host to its parent Activity or Activity Host to unregister the Activity Host from the parent. | |
Implementation class for ActivityHostConcept.
|
protectedvirtualdefault |
Destructor.
|
explicitprotected |
Constructor.
domain | The domain the new node belongs to. |
name | The name of the node. |
|
overridevirtual |
ActivityElement::notifyChildrenNodeTreeAvailable implementation.
Notifies also the Activity nodes that are already attached to an Activity Host node.
Reimplemented from kanzi::ActivityElement.
|
overridevirtual |
ActivityElement::serialize implementation.
Reimplemented from kanzi::ActivityElement.
|
overridevirtual |
ActivityElement::deserialize implementation.
Reimplemented from kanzi::ActivityElement.
Reimplemented in kanzi::ExclusiveActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::ExclusiveActivityHostImpl< ContentLayout2D, ExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostImpl< ContentLayout3D, ExclusiveActivityHost3D >, kanzi::ParallelActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::ParallelActivityHostImpl< ContentLayout2D, ParallelActivityHost2D >, and kanzi::ParallelActivityHostImpl< ContentLayout3D, ParallelActivityHost3D >.
|
finalprotectedvirtual |
ActivityElement::registerInParentActivityElement implementation.
Implements kanzi::ActivityElement.
|
finalprotectedvirtual |
ActivityElement::unregisterInParentActivityElement implementation.
Implements kanzi::ActivityElement.
|
protected |
Initializes this Activity Host Concept.
|
protectedpure virtual |
Returns all nodes of already attached Activity nodes except deactivating ones.
Implemented in kanzi::ExclusiveActivityHostBaseImpl< TBaseClass, TDerivedClass >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, DataDrivenExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, ExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, DataDrivenExclusiveActivityHost3D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, ExclusiveActivityHost3D >, kanzi::ParallelActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::ParallelActivityHostImpl< ContentLayout2D, ParallelActivityHost2D >, and kanzi::ParallelActivityHostImpl< ContentLayout3D, ParallelActivityHost3D >.
|
protectedpure virtual |
Returns all nodes of already attached Activity nodes.
Implemented in kanzi::ExclusiveActivityHostBaseImpl< TBaseClass, TDerivedClass >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, DataDrivenExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, ExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, DataDrivenExclusiveActivityHost3D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, ExclusiveActivityHost3D >, kanzi::ParallelActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::ParallelActivityHostImpl< ContentLayout2D, ParallelActivityHost2D >, and kanzi::ParallelActivityHostImpl< ContentLayout3D, ParallelActivityHost3D >.
|
protectedpure virtual |
Gets the information for child Activity node with the given name.
Implemented in kanzi::DataDrivenExclusiveActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::DataDrivenExclusiveActivityHostImpl< ContentLayout2D, DataDrivenExclusiveActivityHost2D >, kanzi::DataDrivenExclusiveActivityHostImpl< ContentLayout3D, DataDrivenExclusiveActivityHost3D >, kanzi::ExclusiveActivityHostBaseImpl< TBaseClass, TDerivedClass >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, DataDrivenExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout2D, ExclusiveActivityHost2D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, DataDrivenExclusiveActivityHost3D >, kanzi::ExclusiveActivityHostBaseImpl< ContentLayout3D, ExclusiveActivityHost3D >, kanzi::ParallelActivityHostImpl< TBaseClass, TDerivedClass >, kanzi::ParallelActivityHostImpl< ContentLayout2D, ParallelActivityHost2D >, and kanzi::ParallelActivityHostImpl< ContentLayout3D, ParallelActivityHost3D >.
|
protected |
Performs the necessary operations to fix the application focus when an Activity has activated in this Activity Host.
activityNode | The activated Activity. |
|
protected |
Clears current activation target.
|
protected |
The name of the Activity that is the candidate to be the activation target.
|
protected |
Indicates that this Activity Host is performing property deserialization.
|
protected |
Indicates that the Activity Host had focus before it started to activate new activation target Activity.
Kanzi uses this flag the determine whether it applies the focusing policy to the activating Activity.