Kanzi Framework  3.9.0
Kanzi Engine API
kanzi::FocusGroup Class Reference

Implements the focus groups. More...

#include <kanzi/core.ui/input/focus_scope.hpp>

Inheritance diagram for kanzi::FocusGroup:
[legend]

Public Member Functions

 FocusGroup (Node &root)
 Constructor. More...
 
FocusManager::FocusScopeType getType () const override
 Returns the type of the focus scope. More...
 
- Public Member Functions inherited from kanzi::FocusScope
bool canFocusEnter () const
 Returns whether the focus can enter the focus scope. More...
 
bool canFocusLeave () const
 Returns whether the focus can leave the focus scope. More...
 
bool canGetLastFocused () const
 Returns whether the focus scope node can be the last-focused node of its owning focus scope. More...
 
FocusChainNode getFocus () const
 Returns the focus node of a focus scope. More...
 
FocusChainSharedPtr getFocusChainSnapshot ()
 Returns a snapshot of the focus chain of a focus scope. More...
 
FocusNavigationManipulatorSharedPtr getFocusNavigationManipulator () const
 Returns the focus navigation manipulator of a focus scope. More...
 
ModalScopegetModalScope () const
 Returns the modal scope that owns the focus scope. More...
 
virtual FocusScopegetParent () const
 If a focus scope has a parent focus scope, returns the parent focus scope. More...
 
NodegetRoot () const
 Returns the focus scope node. More...
 
bool isAttached () const
 Returns whether a focus scope node is attached. More...
 
bool isFocusChainEmpty () const
 Returns whether the focus chain of a focus scope is empty. More...
 
bool isFocused () const
 Returns the focused state of the focus scope. More...
 
virtual bool isNodeInScope (const Node &node) const
 Returns whether a node is in a focus scope. More...
 
void setFocusNavigationManipulator (FocusNavigationManipulatorSharedPtr newManipulator)
 Sets the focus navigation manipulator of the focus scope. More...
 
FocusChainNode tryMoveFocusInScope (FocusManager::FocusChainDirection direction)
 Tries to set the focus to a node relative to the current focus node of the focus scope using the focus chain navigation. More...
 
FocusChainNode tryRestoreScopeFocusedNode (FocusChainNode currentFocus, FocusManager::FocusReason reason, FocusManager::FocusChainDirection direction)
 Tries to restore the focus to the last-focused node of a focus scope. More...
 
Node::VisitorResult visitFocusChain (FocusScopeVisitor &visitor)
 Visits the focus chain of the focus scope, and calls the visitor on each node. More...
 
Node::VisitorResult visitFocusScope (FocusScopeVisitor &visitor)
 Visits the focusable nodes of the focus scope, including nested focus scope nodes. More...
 
virtual ~FocusScope ()
 Destructor. More...
 
FocusChainIndex getLastFocused () const
 Returns the focus chain index of the last-focused node of a focus scope. More...
 
void setLastFocused (const FocusChainIndex &lastFocus)
 Sets the focus chain index of the last-focused node of the focus scope. More...
 
void clearLastFocused ()
 Clears the focus chain index of the last-focused node of a focus scope. More...
 
FocusChainNode getLastFocusedNode () const
 Returns the last-focused node of a focus scope. More...
 
FocusChainNode setLastFocusedNode (const Node &lastFocused)
 Sets the last-focused node of a focus scope. More...
 
void clearLastFocusedNode ()
 Set the Node::FocusedProperty value to false, and clears the last-focused node of a focus scope. More...
 

Additional Inherited Members

- Public Types inherited from kanzi::FocusScope
using FocusChainSharedPtr = shared_ptr< FocusChain >
 The focus chain pointer type. More...
 
- Static Public Member Functions inherited from kanzi::FocusScope
static FocusScopePtr create (FocusManager::FocusScopeType type, Node &rootNode, FocusManager::ScopeStack &scopeStack)
 Creates an instance of a focus scope type, with the rootNode as the focus scope node. More...
 
- Protected Types inherited from kanzi::FocusScope
enum  ScopeFlag {
  ScopeFlag::EnterFocusWithNavigationAllowed, ScopeFlag::LeaveFocusWithNavigationAllowed, ScopeFlag::CanGetLastFocusedNode, ScopeFlag::DisableAll,
  ScopeFlag::EnableAll
}
 Defines the scope flags. More...
 
- Protected Member Functions inherited from kanzi::FocusScope
void focusNavigationHandler (FocusManager::MoveFocusMessageArguments &args)
 Navigates the focus in a scope. More...
 
 FocusScope (Node &scopeNode, ScopeFlag flags)
 Constructor. More...
 
void invalidateFocusChain () override
 Overrides FocusScopeCore::invalidateFocusChain(). More...
 
void joinScope (FocusScope &target) override
 Overrides FocusScopeCore::joinScope(). More...
 
void notifyNodeAttached (Node &node) override
 Overrides FocusScopeCore::notifyNodeAttached(). More...
 
void notifyNodeDetached (Node &node) override
 Overrides FocusScopeCore::notifyNodeDetached(). More...
 
void notifyScopeTypeChange (FocusScope &oldScopeData) override
 Overrides FocusScopeCore::notifyScopeTypeChange(). More...
 
void splitScope (FocusScope *target, FocusChainNode targetLastFocusedNode) override
 Overrides FocusScopeCore::splitScope(). More...
 
void swapScopeData (FocusScope &other)
 Swaps the focus scope data of this scope with the focus scope data of the source scope. More...
 
- Protected Attributes inherited from kanzi::FocusScope
const ScopeFlag m_scopeFlags
 The scope flags. More...
 

Detailed Description

Implements the focus groups.

Since
Kanzi 3.7.0

Constructor & Destructor Documentation

◆ FocusGroup()

kanzi::FocusGroup::FocusGroup ( Node root)
explicit

Constructor.

Member Function Documentation

◆ getType()

FocusManager::FocusScopeType kanzi::FocusGroup::getType ( ) const
overridevirtual

Returns the type of the focus scope.

Returns
Returns FocusManager::FocusScopeType::Group.

Implements kanzi::FocusScope.


The documentation for this class was generated from the following file: