FLImaging 7.3.19.2
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 public:
599 CGUIStoragePropertyItem* m_pStorage;
600 };
601 }
602}
Template type 의 문자열 클래스
Definition FLString.h:34
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1676
virtual ~CGUIManagerPropertyItem()
CGUIManagerPropertyItem의 소멸자. CGUIManagerPropertyItem 에서 사용된 모든 리소스를 정리합니다.
virtual int64_t GetItemCountByName(const Base::CFLString< wchar_t > &strName, bool bLock=true) const
이름으로 항목의 수를 가져옵니다.
virtual const CResult RemoveItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 제거하는 함수입니다.
virtual const CResult InsertItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemBefore, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
아이템을 지정된 위치에 삽입하는 함수입니다. 이미 pItem 이 존재하는 경우에는 삽입되지 않으며, 이 경우에는 MoveItem() 함수를 사용해야 합니다.
virtual bool DoesSameFullPathExist(const Base::CFLString< wchar_t > &flstrFullPath, bool bLock=true) const
동일한 전체 경로를 가진 item 존재 여부를 확인합니다.
virtual const CResult AddItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout, CGUIMenuItemProperty *pMIP)
프로퍼티 아이템을 CGUIPropertyGridCtrl 의 맨 끝에 추가하는 함수입니다.
virtual const CResult AddItem(CGUIPropertyItemBase *pItem, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 CGUIPropertyGridCtrl 의 맨 끝에 추가하는 함수입니다.
virtual CGUIPropertyItemBase * FindItemByHash(uint32_t u32Hash) const
해시 값으로 항목을 찾습니다.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, EInsertPosition eInsertPosition, const Base::CFLString< wchar_t > &strInsertPositionItemFullPath, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 기준 아이템의 이전/이후 위치로 이동하는 함수입니다. 이동 후 pItem의 부모는 기준 아이템의 부모와 동일해집니다.
CGUIManagerPropertyItem()
CGUIManagerPropertyItem의 기본 생성자입니다.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, EInsertPosition eInsertPosition, const CGUIPropertyItemBase *pItemInsertPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 기준 아이템의 이전/이후 위치로 이동하는 함수입니다. 이동 후 pItem의 부모는 기준 아이템(pItemInsertPosition)의 부모와 동일해집니다.
virtual CGUIPropertyItemBase * FindItemByFullPath(const Base::CFLString< wchar_t > &strFullPath, bool bNocase=true) const
전체 경로로 항목을 찾습니다.
virtual std::vector< CGUIPropertyItemBase * > FindItemsByPath(const Base::CFLString< wchar_t > &strPath, bool bNocase=true) const
Path 가 일치하는 아이템들을 얻어 옵니다.
virtual const CResult Clear()
관리 중인 모든 property item 을 제거하고 내부 컨테이너를 초기화합니다.
virtual int64_t GetItemCount() const
프로퍼티 아이템 개수를 얻어 옵니다.
virtual const CResult InsertItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemBefore, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout, CGUIMenuItemProperty *pMIP)
아이템을 지정된 위치에 삽입하는 함수입니다. 이미 pItem 이 존재하는 경우에는 삽입되지 않으며, 이 경우에는 MoveItem() 함수를 사용해야 합니다.
virtual CGUIPropertyItemBase * FindItemByName(const Base::CFLString< wchar_t > &strName, bool bNocase=true, size_t stIndex=0) const
이름으로 항목을 찾습니다.
virtual CGUIPropertyItemViewImageFigure * GetPropertyItemFigure(int32_t i32Index) const
지정한 인덱스의 CGUIPropertyItemViewImageFigure 포인터를 얻어 옵니다.
virtual int64_t GetPropertyItemFigureCount() const
CGUIPropertyItemViewImageFigure 개수를 얻어 옵니다.
virtual const CResult FindItemsByPath(const Base::CFLString< wchar_t > &strPath, std::vector< CGUIPropertyItemBase * > &vctItems, bool bNocase=true) const
Path 가 일치하는 아이템들을 얻어 옵니다.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, const Base::CFLString< wchar_t > &strParentItemFullPath, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 새 부모 아이템 하위로 이동하는 함수입니다. 이동 후 위치는 새 부모의 자식 목록에서 맨 앞 또는 맨 뒤로 배치됩니다.
virtual bool DoesItemExistInVector(const CGUIPropertyItemBase *pItem, bool bLock=true) const
지정한 item 이 내부 vector 컨테이너에 존재하는지 확인합니다.
virtual CGUIPropertyItemBase * GetItem(int64_t i64Index) const
지정된 인덱스의 항목을 가져옵니다.
virtual const CResult MoveItem(CGUIPropertyItemBase *pItem, const CGUIPropertyItemBase *pItemNewParent, EAppendPosition eAppendPosition, CGUIPropertyGridCtrl *pPGC, bool bAdjustLayout)
프로퍼티 아이템을 새로운 부모 아이템 하위로 이동하는 함수입니다. 이동 후 위치는 새 부모의 자식 목록에서 맨 앞 또는 맨 뒤로 배치됩니다.
virtual std::unordered_map< uint32_t, CGUIPropertyItemBase * > & GetItemsHashMap() const
빠른 탐색을 위한 hash map 참조를 반환합니다.
virtual std::vector< CGUIPropertyItemBase * > & GetItems() const
내부 추가 순서를 유지하는 item vector 참조를 반환합니다.
프로퍼티 창에 연결된 메뉴 아이템 클래스
Definition GUIMenuItemProperty.h:48
속성 그리드 컨트롤 클래스
Definition GUIPropertyGridCtrl.h:52
프로퍼티 아이템 베이스 클래스
Definition GUIPropertyItemBase.h:318
UI 상의 프로퍼티 창에서 Figure 설정 시 사용되는 클래스
Definition GUIPropertyItemViewImageFigure.h:31
Definition D2DObject.h:12
EInsertPosition
Definition DefinitionsGUI.h:11493
EAppendPosition
Definition DefinitionsGUI.h:11513