2#include "GUIManagerContextMenuBase.h"
3#include "DefinitionsGUI.h"
4#include "GUIViewImageContextMenuFilter.h"
5#include <unordered_set>
12 class CInternalViewImage;
15 class FL_EXPORT CGUIManagerContextMenuViewImage :
public CGUIManagerContextMenuBase
18 CGUIManagerContextMenuViewImage();
19 CGUIManagerContextMenuViewImage(CGUIViewImage* pParentView);
20 virtual ~CGUIManagerContextMenuViewImage();
21 virtual const CResult
Assign(
const CGUIManagerContextMenuViewImage& rhs);
22 virtual const CResult
Assign(
const CGUIManagerContextMenuViewImage* pRhs);
23 CGUIManagerContextMenuViewImage& operator=(
const CGUIManagerContextMenuViewImage& rhs);
25 virtual const CResult Initialize();
27 static bool IsStaticArrayInitialized();
28 static void InitializeStaticArray();
29 static const Base::CFLString<wchar_t> GetMenuItemString(int64_t i64MenuItem);
31 static const Base::CFLString<wchar_t> GetMenuItemString(EMenuItem eMenuItem);
33 static const Base::CFLString<wchar_t> GetMenuItemString(EMenuItemImageFigure eMenuItem);
34 static EResourceIdBitmap GetMenuItemBmpResourceId(EMenuItemImageFigure eMenuItem);
36 virtual void SetPopupMenuItem(CGUIPopupMenu& cmenuPopup);
37 virtual void SetPopupMenuItemThumbnailView(CGUIPopupMenu& cmenuPopup, int32_t i32RealPageIndexAtCursor);
38 virtual void SetPopupMenuItemMiniMap(CGUIPopupMenu& cmenuPopup);
39 virtual void SetPopupMenuItemPageInfo(CGUIPopupMenu& cmenuPopup);
40 virtual void SetPopupMenuItemMeasure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
42 virtual void AppendMenuParentLoadMore(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
43 virtual void AppendMenuParentLoadDrawings(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
44 virtual void AppendMenuParentSynchronization(CGUIPopupMenu& cmenuPopup,
bool bCreateSubMenu,
bool& bAddedMenu);
45 virtual void AppendMenuParentImageFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
46 virtual void AppendMenuParentShow(CGUIPopupMenu& cmenuPopup,
bool bImgExist,
bool bImgExistRough,
bool& bAddedMenu);
47 virtual void AppendMenuParentPixel(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
48 virtual void AppendMenuParentPixelDisplayMode(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
49 virtual void AppendMenuParentImageOperation(CGUIPopupMenu& cmenuPopup,
bool bImgExistRough,
bool& bAddedMenu);
50 virtual void AppendMenuParentLayer(CGUIPopupMenu& cmenuPopup,
bool bCreateSubMenu,
bool& bAddedMenu);
51 virtual void AppendMenuParentMeasure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
52 virtual void AppendMenuParentPointOfView(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
53 virtual void AppendMenuParentPageControl(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
55 virtual void AppendMenuPageControl(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
56 virtual void AppendMenuCreateFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
57 virtual void AppendMenuZoomFitToLayer(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
58 virtual void AppendMenuConvertLayerToFigureObject(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
59 virtual void AppendMenuConvertSelectedFigureObjectToLayer(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
60 virtual void AppendMenuConvertAllFigureObjectsToLayer(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
61 virtual void AppendMenuParentSyncView(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
62 virtual void AppendMenuSyncView(CGUIPopupMenu& cmenuPopup, EViewImageSyncOption eSyncOption, UINT uFlag,
bool& bAddedMenu);
63 virtual void AppendMenuParentSyncWindow(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
64 virtual void AppendMenuShowLayers(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu,
bool bOnMiniMap);
65 virtual void AppendMenuClearLayers(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
66 virtual void AppendMenuPixelDisplayMode(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
67 virtual void AppendMenuFlip(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
68 virtual void AppendMenuRotate(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
69 virtual void AppendMenuClearFile(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
70 virtual void AppendMenuCreateImage(CGUIPopupMenu& cmenuPopup,
bool bImgExist,
bool bImgExistRough,
bool& bAddedMenu);
71 virtual void AppendMenuCopyAndPasteImage(CGUIPopupMenu& cmenuPopup,
bool bImgExist,
bool bImgExistRough,
bool& bAddedMenu);
72 virtual void AppendMenuFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
73 virtual void AppendMenuImageFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
74 virtual void AppendMenuShowImageMinimap(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
75 virtual void AppendMenuShowImageThumbnail(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
76 virtual void AppendMenuShowImagePageIndex(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
77 virtual void AppendMenuShowGrid(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
78 virtual void AppendMenuShowImageCenter(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
79 virtual void AppendMenuShowPixelValue(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
80 virtual void AppendMenuShowCrosshair(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
81 virtual void AppendMenuShowImageCoordinateOnCursor(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
82 virtual void AppendMenuShowImagePixelValueOnCursor(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
83 virtual void AppendMenuChangeCanvasColor(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
84 virtual void AppendMenuShowToolbar(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
85 virtual void AppendMenuShowStatusbar(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
86 virtual void AppendMenuShowScrollbar(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
88 virtual void AppendMenuShowImageFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
89 virtual void AppendMenuShowImageFigureText(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
90 virtual void AppendMenuHoverImageFigure(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
91 virtual void AppendMenuSetImageFigureRealSizeTextMode(CGUIPopupMenu& cmenuPopup,
bool& bAddedMenu);
92 SupportToDuplicateObject(CGUIManagerContextMenuViewImage);
93 DeclareGetClassType();
97 virtual inline CGUIPopupMenu* InternalAppendSubMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItemParent,
const std::vector<EMenuItem>& vctMenuItem,
bool& bAddedMenu,
bool bCheck);
99 virtual inline void InternalAppendMenu(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& strMenu,
long uFlag,
bool& bAddedMenu);
101 virtual inline void InternalAppendMenu(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
long uFlag,
bool& bAddedMenu);
103 virtual inline void InternalAppendMenu(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
bool& bAddedMenu);
105 virtual inline void InternalAppendMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& strMenu,
bool& bAddedMenu,
bool bCheck);
107 virtual inline void InternalAppendMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
bool& bAddedMenu,
bool bCheck);
109 virtual inline void InternalAppendMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& strMenu,
long uFlag,
bool& bAddedMenu,
bool bCheck);
111 virtual inline void InternalAppendMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
long uFlag,
bool& bAddedMenu,
bool bCheck);
113 virtual inline void InternalAppendMenuEnable(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
bool& bAddedMenu,
bool bEnable);
115 virtual inline void InternalAppendMenuEnableCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
bool& bAddedMenu,
bool bEnable,
bool bCheck);
118 virtual inline CGUIPopupMenu* InternalAppendSubMenuCheck(CGUIPopupMenu* pMenu,
const std::vector<EMenuItem>& vctMenuItem,
const Base::CFLString<wchar_t>& flstrName, EResourceIdBitmap resId,
bool& bAddedMenu,
bool bCheck);
120 virtual inline void InternalAppendMenu(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& flstrName,
const long uFlag, EResourceIdBitmap resId,
bool& bAddedMenu);
122 virtual inline void InternalAppendMenu(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& flstrName, EResourceIdBitmap resId,
bool& bAddedMenu);
124 virtual inline void InternalAppendMenuCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& flstrName, EResourceIdBitmap resId,
bool& bAddedMenu,
bool bCheck);
126 virtual inline void InternalAppendMenuEnableCheck(CGUIPopupMenu* pMenu, EMenuItem eMenuItem,
const Base::CFLString<wchar_t>& flstrName, EResourceIdBitmap resId,
bool& bAddedMenu,
bool bEnable,
bool bCheck);
129 bool IsAvailable(EMenuItem eMenu)
const;
130 void SetAvailable(EMenuItem eMenu,
bool bAvailable);
131 bool IsAnyAvailable(
const EMenuItem* pArr, int64_t i64Count)
const;
132 UINT GetContextMenuFlag(
const CGUIViewImageContextMenuFilter& availSrc, EMenuItem eMenuItem)
const;
133 UINT GetContextMenuFlag(
const CGUIViewImageContextMenuFilter& availSrc, EMenuItem eMenuItem,
long uFlag)
const;
136 CGUIViewImage* m_pParentView;
137 CInternalViewImage* m_pParentViewInternal;
138 std::unordered_set<EMenuItem> m_setMenuItemAdded;
139 std::unordered_set<EMenuItemImageFigure> m_setMenuItemAddedImageFigure;
140 CGUIViewImageContextMenuFilter m_filterAvailableMenu;
143 friend class CGUIViewImage;
A class of image view.
Definition GUIViewImage.h:360
Definition D2DObject.h:12
EGUIViewImageHitArea
The area where the mouse is located on the image view.
Definition DefinitionsGUI.h:8431
EResourceIdBitmap
Resource ID of bitmap.
Definition DefinitionsGUIResource.h:58
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
Definition DefinitionsGUIView3D.h:3531