FLImaging 6.5.8.1
GUITreeContainerItem.h
1#pragma once
10#include "GUIDefinitions.h"
11#include "GUITreeContainer.h"
12#include <set>
13#include <list>
14
16namespace FLImaging
17{
19 namespace GUI
20 {
21 class CGUIMenuItemBase;
22
30 class FL_EXPORT CGUITreeContainerItem : public Base::CFLBase
31 {
32 public:
41
52
64 CGUITreeContainerItem(CGUIMenuItemBase* pMenuItem);
65
76
87
96
110 virtual const CResult Assign(const CGUITreeContainerItem& rhs);
111
125 virtual const CResult Assign(const CGUITreeContainerItem* pRhs);
126
141
156
170 virtual const CResult Clear(bool bDestroyItem);
171
188
205
225 virtual const CResult InsertChild(CGUITreeContainerItem* pItem, int32_t i32InsertPosition);
226
250 virtual const CResult InsertChild(CGUITreeContainerItem* pItem, CGUITreeContainerItem* pItemPosition, EInsertPosition eInsertAt = EInsertPosition_After);
251
267 virtual const CResult RemoveChild(CGUITreeContainerItem* pItem, bool bDestroyChildItem);
268
280 virtual const std::list<CGUITreeContainerItem*>& GetChildren() const;
281
301 virtual const CResult GetChildrenAll(std::vector<CGUITreeContainerItem*>& vctOut, ETraverseMode eMode = ETraverseMode_DFS) const;
302
314 virtual Base::CFLBase* GetData() const;
315
327 virtual CGUIMenuItemBase* GetMenuItem() const;
328
341
353 virtual ETreeItemIcon GetIcon() const;
354
370 virtual const CResult SetIcon(ETreeItemIcon eIcon);
371
383 virtual ETreeContainerItemSortPriority GetSortPriority() const;
384
400 virtual const CResult SetSortPriority(ETreeContainerItemSortPriority eSortPriority);
401
423 virtual const CResult SortChildren(ESortOrder eSortOrder);
424
434 virtual bool IsVisible() const;
435
449 virtual const CResult Show(bool bShow);
450
460 virtual bool IsEnabled() const;
461
475 virtual const CResult Enable(bool bEnable);
476
486 virtual bool IsExpanded() const;
487
501 virtual const CResult SetData(Base::CFLBase* pData);
502
503 SupportToDuplicateObject(CGUITreeContainerItem, *this);
504 DeclareGetClassType();
505
506 protected:
507
523 virtual const CResult SetText(const Base::CFLString<wchar_t>& str);
524
534 virtual void SetExpand(bool bExpand);
535
536 protected:
537 std::list<CGUITreeContainerItem*>& m_listChildren;
538
539 Base::CFLBase* m_pData;
540 Base::CFLString<wchar_t> m_strText;
541 Base::CFLString<wchar_t> m_strAlias;
542 ETreeItemIcon m_eIcon;
543 bool m_bShow;
544 bool m_bEnabled;
545 bool m_bExpand;
546 ETreeContainerItemSortPriority m_eSortPriority;
547
548 friend class CGUITreeContainer;
549 };
550 }
551}
Top-level base class of FLImaging.
Definition FLBase.h:36
Template type string class.
Definition INIUtilities.h:20
FLImaging module execution result object.
Definition ResultsDef.h:1514
A data structure class that stores a tree hierarchy.
Definition GUITreeContainer.h:57
Tree item (a component of CGUITreeContainer)
Definition GUITreeContainerItem.h:31
virtual ETreeContainerItemSortPriority GetSortPriority() const
Retrieves the sort priority of the tree container item.
virtual const CResult AssignShallowCopy(const CGUITreeContainerItem *pRhs)
Performs a shallow copy assignment from another CGUITreeContainerItem object using a pointer.
virtual bool IsVisible() const
Checks if the tree container item is visible.
virtual Base::CFLString< wchar_t > GetText() const
Retrieves the text of the tree container item.
virtual const CResult InsertChild(CGUITreeContainerItem *pItem, CGUITreeContainerItem *pItemPosition, EInsertPosition eInsertAt=EInsertPosition_After)
Inserts a menu item relative to a specified reference item. Integrity check is not performed except w...
virtual const CResult PushBackChild(CGUITreeContainerItem *pItem)
Push back the child item of the current tree item. Integrity check is not performed except when pItem...
virtual const CResult SortChildren(ESortOrder eSortOrder)
Sorts the child items of this based on predefined rules.
virtual const std::list< CGUITreeContainerItem * > & GetChildren() const
Retrieves all direct children of the current tree item.
virtual Base::CFLBase * GetData() const
Retrieves the data associated with the tree item.
virtual const CResult SetSortPriority(ETreeContainerItemSortPriority eSortPriority)
Sets the sort priority of the tree container item.
virtual const CResult SetIcon(ETreeItemIcon eIcon)
Sets the icon for the tree container item.
virtual bool IsEnabled() const
Checks if the tree container item is enabled.
virtual const CResult Show(bool bShow)
Sets the visibility of the tree container item.
virtual ~CGUITreeContainerItem()
Virtual destructor for the CGUITreeContainerItem class.
virtual CGUIMenuItemBase * GetMenuItem() const
Retrieves the stored data if it is of type CGUIMenuItemBase*.
virtual ETreeItemIcon GetIcon() const
Retrieves the icon associated with the tree container item.
virtual const CResult InsertChild(CGUITreeContainerItem *pItem, int32_t i32InsertPosition)
Inserts a menu item at the specified position. Integrity check is not performed except when pItem == ...
CGUITreeContainerItem(const CGUITreeContainerItem &rhs)
Copy constructor for the CGUITreeContainerItem class.
virtual const CResult Assign(const CGUITreeContainerItem &rhs)
Assigns properties from another CGUITreeContainerItem object using a reference.
virtual const CResult Assign(const CGUITreeContainerItem *pRhs)
Assigns properties from another CGUITreeContainerItem object using a pointer.
virtual bool IsExpanded() const
Checks whether the tree item is expanded.
virtual const CResult Clear(bool bDestroyItem)
Clears the data and resets all connections of the tree item.
CGUITreeContainerItem(const CGUITreeContainerItem *pRhs)
Pointer-based copy constructor for the CGUITreeContainerItem class.
virtual const CResult PushFrontChild(CGUITreeContainerItem *pItem)
Push front the child item of the current tree item. Integrity check is not performed except when pIte...
virtual const CResult SetData(Base::CFLBase *pData)
Sets the data associated with the tree item.
CGUITreeContainerItem(Base::CFLBase *pData)
Default constructor for the CGUITreeContainerItem class.
virtual const CResult RemoveChild(CGUITreeContainerItem *pItem, bool bDestroyChildItem)
Removes a child item.
CGUITreeContainerItem()
Default constructor for the CGUITreeContainerItem class.
virtual void SetExpand(bool bExpand)
Sets whether the tree item is expanded.
virtual const CResult GetChildrenAll(std::vector< CGUITreeContainerItem * > &vctOut, ETraverseMode eMode=ETraverseMode_DFS) const
Retrieves all child items in a specified traversal order.
virtual const CResult Enable(bool bEnable)
Enables or disables the tree container item.
CGUITreeContainerItem(CGUIMenuItemBase *pMenuItem)
Default constructor for the CGUITreeContainerItem class.
virtual const CResult AssignShallowCopy(const CGUITreeContainerItem &rhs)
Performs a shallow copy assignment from another CGUITreeContainerItem object.
virtual const CResult SetText(const Base::CFLString< wchar_t > &str)
Sets the text of the tree container item.
EInsertPosition
Definition GUIDefinitions.h:10716
ETraverseMode
Definition GUIDefinitions.h:10736
ESortOrder
Sorting order.
Definition GUIDefinitions.h:8642