FLImaging
7.8.25.3
Toggle main menu visibility
FLImagingFoundation
FLImagingGUI
GUIMenuItemFavorite.h
1
#pragma once
2
3
#include "GUIMenuItemBase.h"
4
#include <set>
5
6
namespace
FLImaging
7
{
8
namespace
GUI
9
{
10
class
CGUITreeCtrl;
11
12
class
FL_EXPORT CGUIMenuItemFavorite :
public
CGUIMenuItemBase
13
{
14
public
:
15
CGUIMenuItemFavorite();
16
virtual
~CGUIMenuItemFavorite();
17
18
virtual
bool
OnRButtonClick();
19
virtual
bool
ClearAllFavoriteItems();
20
virtual
bool
AddFavoriteItem(CGUIMenuItemBase* pItem,
bool
bSaveToConfig =
true
);
21
virtual
bool
RemoveFromFavorite
(CGUIMenuItemBase* pItem,
bool
bSaveToConfig =
true
);
22
23
// hItem 이 Favorite 에 등록되어 있는지 확인
24
virtual
bool
IsItemOnFavorite(HTREEITEM hItem, HTREEITEM hParent, CGUITreeCtrl* pTree);
25
26
// pItem 이 Favorite 에 등록되어 있는지 확인
27
virtual
bool
IsItemOnFavorite(CGUIMenuItemBase* pItem, HTREEITEM hParent, CGUITreeCtrl* pTree);
28
29
// pItem 이 Favorite 에 등록되어 있다면 pItem 에 해당하는 HTREEITEM 리턴, 없으면 NULL 리턴
30
virtual
HTREEITEM GetHTREEITEM(CGUIMenuItemBase* pItem, HTREEITEM hParent, CGUITreeCtrl* pTree);
31
32
// hItem 을 hParentDst 아래에 복사 붙여 넣기, 이미 있으면 수행하지 않음, bDuplicateChildren = true 이면 자식 아이템까지 복제
33
// hItem 의 Parent 가 hParentDst 아래에 없으면 Parent 까지 복제
34
virtual
HTREEITEM DuplicateHTREEITEM(HTREEITEM hItem, HTREEITEM hParentDst, CGUITreeCtrl* pTree,
bool
bDuplicateChildren =
true
);
35
36
// Favorite 하위 아이템 중, 현재 검색 결과에 걸린 것만 pTreeDst 로 복제
37
// - Favorite 아이템 자체는 항상 생성(검색 결과가 없어도 빈 Favorite 노드는 만들어짐)
38
// - 중간 부모 노드는 하위에 결과가 있을 때만 생성
39
// - bRegisterToFoundList = true 이면 복제된 노드도 m_vctFound 에 등록
40
// 반환값: pTreeDst 에 생성(또는 이미 존재하던) Favorite 아이템 핸들, 실패 시 NULL
41
virtual
HTREEITEM DuplicateHTREEITEMFoundItemsOnly(CGUITreeCtrl* pTreeSrc, CGUITreeCtrl* pTreeDst,
bool
bRegisterToFoundList =
false
);
42
43
protected
:
44
virtual
void
InsertKeptNodesRecursive(HTREEITEM hItemSrc, HTREEITEM hParentDst, CGUITreeCtrl* pTreeSrc, CGUITreeCtrl* pTreeDst,
const
std::unordered_set<HTREEITEM>& setKeep,
const
std::unordered_map<const void*, size_t>& mapFoundIndex,
bool
bRegisterToFoundList);
45
46
virtual
void
OnReceiveBroadcast(
const
Base::CBroadcastMessage* pMessage)
override
;
47
std::set<CGUIMenuItemBase*>& m_setFavoriteItems;
48
49
friend
class
CGUITreeCtrl;
50
};
51
}
52
}
53
FLImaging::GUI
Definition
D2DObject.h:12
FLImagingCLR::GUI::EMenuItemPaneMenuTree::RemoveFromFavorite
@ RemoveFromFavorite
Remove from favorites.
Definition
DefinitionsGUI.h:10648
FLImaging
Generated on
for FLImaging by
1.17.0