FLImaging 6.5.8.1
GUIContextMenuItemBase.h
1#pragma once
2
3namespace FLImaging
4{
5 namespace GUI
6 {
7 class CGUIViewBase;
8
9 class FL_EXPORT CGUIContextMenuItemBase : public Base::CFLBase
10 {
11 SupportToDuplicateAbstractObject(CGUIContextMenuItemBase);
12
13 public:
14
15 CGUIContextMenuItemBase();
16 CGUIContextMenuItemBase(CGUIViewBase* pParentView, uint64_t u64ResourceID, const Base::CFLString<wchar_t>& strName, CGUIContextMenuItemBase* pParentMenuItem = nullptr);
17 virtual ~CGUIContextMenuItemBase();
18
19
20 virtual const CResult Clear();
21
22 virtual uint64_t GetResourceID() const;
23 virtual Base::CFLString<wchar_t> GetName() const;
24
25 virtual const CResult Execute();
26
27
28 virtual int64_t GetChildItemCount() const;
29 virtual const CGUIContextMenuItemBase* GetChildItem() const;
30 virtual const CGUIContextMenuItemBase* GetChildItem(int64_t i64Index) const;
31
32
33 virtual const CResult PushBackChildItem(const CGUIContextMenuItemBase* pChildMenuItem);
34 virtual const CResult PushFrontChildItem(const CGUIContextMenuItemBase* pChildMenuItem);
35 virtual const CResult InsertChildItem(int64_t i64InsertIndex, const CGUIContextMenuItemBase* pChildMenuItem);
36 virtual const CResult RemoveChildItemByIndex(int64_t i64Index);
37 virtual const CResult RemoveChildItemByName(const Base::CFLString<wchar_t>& strName);
38 virtual const CResult RemoveChildItemByResourceID(uint64_t u64ResourceID);
39
40
41 virtual const CGUIViewBase* GetParentView() const;
42 virtual const CGUIContextMenuItemBase* GetParentMenuItem() const;
43
44 DeclareGetClassType();
45
46
47
48 protected:
49
50 CGUIViewBase* m_pParentView;
51 CGUIContextMenuItemBase* m_pParentMenuItem;
52 uint64_t m_u64ResourceID;
53 Base::CFLString<wchar_t> m_strName;
54
55 std::vector<CGUIContextMenuItemBase*>& m_vctChildItems;
56 };
57 }
58}
@ Clear
Clear all the figure objects.