FLImaging 7.3.3.3
GUIManagerPropertyItem.h
1#pragma once
2#include "DefinitionsGUI.h"
3
11
13namespace FLImaging
14{
16 namespace GUI
17 {
19 class CGUIStoragePropertyItem;
23
46 {
47 public:
64
74 virtual const CResult Clear();
75
93 virtual const CResult AddItem(CGUIPropertyItemBase* pItem, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
94
118 virtual const CResult AddItem(CGUIPropertyItemBase* pItem, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout, CGUIMenuItemProperty* pMIP);
119
155 virtual const CResult InsertItem(CGUIPropertyItemBase* pItem, const CGUIPropertyItemBase* pItemBefore, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
156
194 virtual const CResult InsertItem(CGUIPropertyItemBase* pItem, const CGUIPropertyItemBase* pItemBefore, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout, CGUIMenuItemProperty* pMIP);
195
213 virtual const CResult RemoveItem(CGUIPropertyItemBase* pItem, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
214
251 virtual const CResult MoveItem(CGUIPropertyItemBase* pItem, const CGUIPropertyItemBase* pItemNewParent, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
252
291 virtual const CResult MoveItem(CGUIPropertyItemBase* pItem, EInsertPosition eInsertPosition, const CGUIPropertyItemBase* pItemInsertPosition, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
292
331 virtual const CResult MoveItem(CGUIPropertyItemBase* pItem, const Base::CFLString<wchar_t>& strParentItemFullPath, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
332
371 virtual const CResult MoveItem(CGUIPropertyItemBase* pItem, EInsertPosition eInsertPosition, const Base::CFLString<wchar_t>& strInsertPositionItemFullPath, CGUIPropertyGridCtrl* pPGC, bool bAdjustLayout);
372
382 virtual int64_t GetItemCount() const;
383
399 virtual int64_t GetItemCountByName(const Base::CFLString<wchar_t>& strName, bool bLock = true) const;
400
414 virtual CGUIPropertyItemBase* GetItem(int64_t i64Index) const;
415
435 virtual CGUIPropertyItemBase* FindItemByName(const Base::CFLString<wchar_t>& strName, bool bNocase = true, size_t stIndex = 0) const;
436
454 virtual CGUIPropertyItemBase* FindItemByFullPath(const Base::CFLString<wchar_t>& strFullPath, bool bNocase = true) const;
455
467 virtual CGUIPropertyItemBase* FindItemByHash(uint32_t u32Hash) const;
468
487 virtual std::vector<CGUIPropertyItemBase*> FindItemsByPath(const Base::CFLString<wchar_t>& strPath, bool bNocase = true) const;
488
511 virtual const CResult FindItemsByPath(const Base::CFLString<wchar_t>& strPath, std::vector<CGUIPropertyItemBase*>& vctItems, bool bNocase = true) const;
512
524 virtual int64_t GetPropertyItemFigureCount() const;
525
540
554 virtual bool DoesSameFullPathExist(const Base::CFLString<wchar_t>& flstrFullPath, bool bLock = true) const;
555
569 virtual bool DoesItemExistInVector(const CGUIPropertyItemBase* pItem, bool bLock = true) const;
570
580 virtual std::vector<CGUIPropertyItemBase*>& GetItems() const;
581
591 virtual std::unordered_map<uint32_t, CGUIPropertyItemBase*>& GetItemsHashMap() const;
592
593 protected:
594 virtual const CResult InternalRemoveItemFromHashMap(const CGUIPropertyItemBase* pItem, bool bLock);
595 virtual const CResult InternalInsertItemToVector(CGUIPropertyItemBase* pItem, const CGUIPropertyItemBase* pItemNewParent, EAppendPosition eAppendPosition, bool bLock);
596 virtual const CResult InternalInsertItemToVector(CGUIPropertyItemBase* pItem, EInsertPosition eInsertPosition, const CGUIPropertyItemBase* pItemInsertPosition, bool bLock);
597
598 protected:
599 CGUIStoragePropertyItem* m_pStorage;
600 };
601 }
602}
Template type string class.
Definition FLString.h:34
FLImaging module execution result object.
Definition ResultsDef.h:1676
virtual ~CGUIManagerPropertyItem()
Destructor for CGUIManagerPropertyItem. Cleans up any resources used by the CGUIManagerPropertyItem i...
virtual int64_t GetItemCountByName(const Base::CFLString< wchar_t > &strName, bool bLock=true) const
Retrieves the count of items by name.
virtual const CResult RemoveItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Function to remove a property item from CGUIPropertyGridCtrl.
virtual const CResult InsertItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemBefore, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Inserts an item at the specified position. If pItem already exists, the item is not inserted; in this...
virtual bool DoesSameFullPathExist(const Base::CFLString< wchar_t > &flstrFullPath, bool bLock=true) const
Checks whether an item with the same full path already exists.
virtual const CResult AddItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout, CGUIMenuItemProperty *pMIP)
Function to add a property item to the end of the CGUIPropertyGridCtrl.
virtual const CResult AddItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Function to add a property item to the end of the CGUIPropertyGridCtrl.
virtual CGUIPropertyItemBase * FindItemByHash(uint32_t u32Hash) const
Finds an item by its hash value.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, EInsertPosition eInsertPosition, const Base::CFLString< wchar_t > &strInsertPositionItemFullPath, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Moves an existing property item relative to a reference item specified by full path....
CGUIManagerPropertyItem()
Default constructor for CGUIManagerPropertyItem.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, EInsertPosition eInsertPosition, const CGUIPropertyItemBase *pItemInsertPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Moves an existing property item relative to a reference item. The item's parent becomes the same as t...
virtual CGUIPropertyItemBase * FindItemByFullPath(const Base::CFLString< wchar_t > &strFullPath, bool bNocase=true) const
Finds an item by its full path.
virtual std::vector< CGUIPropertyItemBase * > FindItemsByPath(const Base::CFLString< wchar_t > &strPath, bool bNocase=true) const
Retrieves items that match the specified path.
virtual const CResult Clear()
Clears all managed property items and resets internal containers.
virtual int64_t GetItemCount() const
Retrieves the number of property items.
virtual const CResult InsertItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemBefore, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout, CGUIMenuItemProperty *pMIP)
Inserts an item at the specified position. If pItem already exists, the item is not inserted; in this...
virtual CGUIPropertyItemBase * FindItemByName(const Base::CFLString< wchar_t > &strName, bool bNocase=true, size_t stIndex=0) const
Finds an item by name.
virtual CGUIPropertyItemViewImageFigure * GetPropertyItemFigure(int32_t i32Index) const
Retrieves the pointer to the CGUIPropertyItemViewImageFigure at the specified index.
virtual int64_t GetPropertyItemFigureCount() const
Retrieves the count of CGUIPropertyItemViewImageFigure items.
virtual const CResult FindItemsByPath(const Base::CFLString< wchar_t > &strPath, std::vector< CGUIPropertyItemBase * > &vctItems, bool bNocase=true) const
Retrieves items that match the specified path.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, const Base::CFLString< wchar_t > &strParentItemFullPath, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Moves an existing property item under a new parent item using the parent's full path....
virtual bool DoesItemExistInVector(const CGUIPropertyItemBase *pItem, bool bLock=true) const
Checks whether the specified item exists in the internal vector container.
virtual CGUIPropertyItemBase * GetItem(int64_t i64Index) const
Retrieves the item at the specified index.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemNewParent, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
Moves an existing property item under a new parent item. The item is placed at the front or back amon...
virtual std::unordered_map< uint32_t, CGUIPropertyItemBase * > & GetItemsHashMap() const
Returns reference to the internal hash map used for fast lookup.
virtual std::vector< CGUIPropertyItemBase * > & GetItems() const
Returns reference to the internal ordered item container.
The menu item class associated with the property pane.
Definition GUIMenuItemProperty.h:48
A class of property grid control.
Definition GUIPropertyGridCtrl.h:51
Property item base class.
Definition GUIPropertyItemBase.h:346
A class of Figure property.
Definition GUIPropertyItemViewImageFigure.h:31
Definition D2DObject.h:12
EInsertPosition
Definition DefinitionsGUI.h:11373
EAppendPosition
Definition DefinitionsGUI.h:11393