11#include "DefinitionsGUI.h"
23 class CGUIPaneSystemInformation;
25 class CGUIPaneExampleSNAP;
26 class CGUIPaneViewGraph;
27 class CGUIPaneColorTable;
30 class CGUIPaneProperties;
32 class CGUIMenuItemBase;
34 class CGUIPaneFrameWnd;
48 CGUIManagerPane(
const CGUIManagerPane& rh);
54 EQAMode_LastFocusedPane = 0x01,
55 EQAMode_Serialize = 0x02,
61 typedef struct sStateDataAutoHideBar
63 sStateDataAutoHideBar();
66 DWORD dwCurrentAlignment;
73 }SStateDataAutoHideBar;
75 typedef struct sStateDataPaneContainer
77 sStateDataPaneContainer();
78 virtual ~sStateDataPaneContainer();
82 CRect rtPaneContainer;
86 bool bLeftPaneIsVisible;
87 bool bRightPaneIsVisible;
89 sStateDataPaneContainer* pLeftContainer;
90 sStateDataPaneContainer* pRightContainer;
91 CDockablePane* pLeftPane;
92 CDockablePane* pRightPane;
97 }SStateDataPaneContainer;
99 typedef struct sStateDataPaneContainerManager
101 sStateDataPaneContainerManager();
102 virtual ~sStateDataPaneContainerManager();
107 int32_t i32MaxOffset;
108 int32_t i32MinOffset;
109 int32_t i32ControlBarCount;
111 bool bDefaultDivider;
112 DWORD dwDividerStyle;
114 SStateDataPaneContainer* pRootContainer;
116 }SStateDataPaneContainerManager;
119 virtual ~CGUIManagerPane();
122 static const CResult Initialize();
808 static EDockPosition ConvertAlignmentToDockPosition(DWORD dwAlignment);
809 static DWORD ConvertDockPositionToAlignment(
EDockPosition eDockPos);
811 static CPaneContainer* GetPaneContainer(
const CDockablePane* pPane,
bool* pBIsLeftPane =
nullptr);
814 static const CResult SetQAMode(EQAMode eQAMode);
815 static bool IsQAMode(EQAMode eQAMode);
816 static bool IsPrintLogMode();
818 static const CResult LoadStateAll();
819 static const CResult SaveStateAll();
820 DeclareGetClassType();
823 static const CResult AddUserPane(uint32_t uID,
const CGUIPaneBase* pPane);
824 static CGUIPaneBase* FindUserPaneByCommandID(uint32_t uID);
826 static CGUIManagerPane* GetObject();
827 static const CResult SetPrintLog(
bool bPrintLog);
829 static Base::CFLString<wchar_t> GetPaneNameToDistinguish(
const CBasePane* pPane,
bool bReplaceBracket, CGUIMenuItemBase** pMI =
nullptr);
831 static CGUIMenuItemBase* FindParentMenuItemBySectionName(
const Base::CFLString<wchar_t>& str, int32_t* pI32Idx =
nullptr);
832 static CGUITabbedPane* FindTabbedPaneBySerialNumber(int32_t i32SerialNum);
833 static CGUIPaneFrameWnd* FindMiniFrameBySerialNumber(int32_t i32SerialNum);
836 static const CResult LoadStateAutoHideBars();
837 static const CResult LoadPanesWithoutDeploying();
838 static const CResult LoadTabbedPane();
839 static const CResult LoadStatePaneContainer();
840 static const CResult LoadStatePaneContainerForMiniFrame();
845 static const CResult SavePaneContainer(CPaneContainer* pPaneContainer, CWnd* pParent, CRect rtParent, int32_t i32Level,
const Base::CFLString<wchar_t>& strSectionName);
846 static const CResult SaveMainFramePaneContainers();
848 static const CResult GetStateDataPaneContainerManager(CPaneDivider* pSlider, SStateDataPaneContainerManager& sSDPaneDivider);
849 static const CResult GetStateDataPaneContainer(CPaneContainer* pSlider, SStateDataPaneContainer& sSDPaneContainer,
EDockPosition eDockPosParent);
851 static const CResult SaveMiniFrames(
const std::set<CGUIPaneFrameWnd*>& setMiniFrames);
852 static const CResult SavePanes(
const std::set<CGUIPaneBase*>& setPanes);
853 static const CResult SaveTabCtrls(
const std::set<CGUITabbedPane*>& setTabbedPanes);
855 static const CResult SerializeAutoHideBars(
bool bLoad, std::vector<SStateDataAutoHideBar*>* pVctItems =
nullptr);
856 static const CResult SerializeAutoHideInfo(CDockablePane* pPane,
const Base::CFLString<wchar_t>& strSectionName,
bool bLoad, SStateDataAutoHideBar* pStruct =
nullptr);
859 static const CResult SetMainFrame(CGUIMainFrame* pMF);
861 static const CResult RemovePane(CPane* pPane);
862 static const CResult PreClosePane(CDockablePane* pPane);
864 friend class CGUIMainFrame;
865 friend class CGUIPaneBase;
866 friend class CGUITabbedPane;
867 friend class CGUIPaneFrameWnd;
868 friend class CGUIManager;
869 friend class CGUIMenuItemPaneDialogCustomEmbedded;
870 friend class CGUIViewSNAP;
871 friend class CInternalManagerPane;
872 friend class CGUIMenuItemProperty;
873 friend class CGUIMenuItemAttributePane;
876 std::list<CPane*> m_listPaneFocused;
877 std::map<uint32_t, CGUIPaneBase*> m_mapUserPane;
879 CGUIMainFrame* m_pMainFrame;
885 bool m_bPrintLogMode;
Template type array class.
Definition FLArray.h:71
Top-level base class of FLImaging.
Definition FLBase.h:36
Template type string class.
Definition FLString.h:34
FLImaging module execution result object.
Definition ResultsDef.h:1704
static const CResult ShowPaneMenu(bool bShow)
Displays or disappears CGUIPaneMenu on the screen.
static CGUIPaneViewGraph * GetPaneViewGraph(int32_t i32Index=0)
Returns a pointer to the Graph View pane.
static CGUIPaneLog * GetPaneLog()
Returns a pointer to the Log Pane.
static int32_t GetPaneViewGraphCount()
Returns the count of Graph View panes.
static const CResult FloatPane(CDockablePane *pPane, CRect rt, bool bShow=true)
Floats a specific pane (pPane).
static const CResult GetLeftAlignPanes(std::vector< CDockablePane * > &vctPanes, ESortOrderRect eSortOrder=ESortOrderRect_Left_Asc_Top_Asc)
Returns the panes whose current alignment includes CBRS_ALIGN_LEFT.
static const CResult ShowPane(EPaneType ePaneType, bool bShow)
Displays or disappears specific pane on the screen.
static const CResult ShowPaneSheet(bool bShow)
Displays or disappears CGUIPaneSheet on the screen.
static const CResult DestroyPaneViewGraph(CGUIPaneViewGraph *pPaneViewGraph)
Destroys the specified Graph View pane. The 0-th Graph View pane belongs to the basic MainFrame and c...
static const CResult ShowPaneSystemInformation(bool bShow)
Displays or disappears CGUIPaneSystemInformation on the screen.
static const CResult ShowPaneExampleSNAP(bool bShow)
Displays or disappears CGUIPaneExampleSNAP on the screen.
static CGUIPaneBase * GetPane(EPaneType ePaneType)
Returns the pane corresponding to the specified pane type.
static const CResult GetTopAlignPanes(std::vector< CDockablePane * > &vctPanes, ESortOrderRect eSortOrder=ESortOrderRect_Top_Asc_Left_Asc)
Returns the panes whose current alignment includes CBRS_ALIGN_TOP.
static const CResult ShowPaneColorTable(bool bShow)
Displays or disappears CGUIPaneColorTable on the screen.
static const CResult ShowPaneCode(bool bShow)
Displays or disappears CGUIPaneCode on the screen.
static CGUIPaneProperties * GetLastFocusedPaneProperties()
Returns the pointer to the most recently focused CGUIPaneProperties.
static const CResult ShowPaneViewGraph(bool bShow, CGUIPaneViewGraph *pPaneViewGraph)
Displays or disappears the specified CGUIPaneViewGraph on the screen.
static CGUIPaneCode * GetPaneCode()
Returns the pointer of the code pane.
static CGUIPaneSheet * GetPaneSheet()
Returns the pointer of CGUIPaneSheet.
static const CResult GetRightAlignPanes(std::vector< CDockablePane * > &vctPanes, ESortOrderRect eSortOrder=ESortOrderRect_Right_Desc_Top_Asc)
Returns the panes whose current alignment includes CBRS_ALIGN_RIGHT.
static const CResult AttachPaneAsTab(CDockablePane *pPane, CDockablePane *pPaneDst)
Attaches a specific pane (pPane) as a tab above another pane (pPaneDst).
static const CResult DockPaneToMainFrame(CDockablePane *pPane, EDockPosition eDockPosition, int32_t i32Width, int32_t i32Height)
Docks a specified pane (pPane) at a specific position of another pane (pPaneDst).
static const CResult FindPanesByName(const Base::CFLString< wchar_t > &strPaneName, std::vector< CGUIPaneBase * > &vctResult)
Finds and returns all panes by their name.
static std::list< CPane * > * GetFocusedPaneList()
Returns the list of CPane pointers stored in the order of most recently focused.
static const CResult DockPane(CDockablePane *pPane, CDockablePane *pPaneDst, EDockPosition eDockPosition, int32_t i32Width, int32_t i32Height)
Docks a specified pane (pPane) at a specific position of another pane (pPaneDst).
static const CResult ShowPaneViewGraph(bool bShow, int32_t i32Index=0)
Displays or disappears the i32Index-th CGUIPaneViewGraph on the screen.
static CGUIPaneMenu * GetPaneMenu()
Returns a pointer to the Menu Pane.
static const CResult ShowPaneLog(bool bShow)
Displays or disappears CGUIPaneLog on the screen.
static const CResult GetExactClassPanes(CDockablePane *pPane, std::vector< CDockablePane * > &vctPanes)
Retrieves panes that exactly match the class type of the specified pane.
static int32_t GetPaneViewGraphIndex(CGUIPaneViewGraph *pPane)
Returns the index of the specified Graph View pane.
static CGUIPaneViewGraph * CreatePaneViewGraph()
Creates a new Graph View pane and returns its pointer.
static CGUIPaneExampleSNAP * GetPaneExampleSNAP()
Returns the pointer of the SNAP Sample Pane.
static DWORD GetAlignmentLocal(const CRect &rtDestination, const CRect &rt)
Returns the relative position of rt with respect to rtDestination. For example, if rt is positioned t...
static CGUIPaneColorTable * GetPaneColorTable()
Returns the pointer of CGUIPaneColorTable.
static CPane * GetLastFocusedPane()
Returns the pointer to the most recently focused pane.
static const CResult GetBottomAlignPanes(std::vector< CDockablePane * > &vctPanes, ESortOrderRect eSortOrder=ESortOrderRect_Bottom_Desc_Left_Asc)
Returns the panes whose current alignment includes CBRS_ALIGN_BOTTOM.
static const CResult SetLastFocusedPane(CPane *pPane)
Sets the most recently focused CPane pointer.
static const CResult DestroyPaneViewGraph(int32_t i32Index)
Destroys the i32Index-th Graph View pane. The 0-th Graph View pane belongs to the basic MainFrame and...
static CGUIPaneBase * FindPaneByName(const Base::CFLString< wchar_t > &strPaneName)
Finds and returns a pane by its name.
static bool IsPaneActive(CDockablePane *pPane)
Returns whether the pane is in an active state. This function considers the pane to be visible if it ...
static CGUIPaneSystemInformation * GetPaneSystemInformation()
Returns a pointer to the SystemInformation Pane.
A class of log pane.
Definition GUIPaneLog.h:33
A base class for managing pane placement configurations such as docking and floating within the GUI f...
Definition GUIPanePlacement.h:27
The CGUITabbedPane class is a specialized implementation of a tabbed pane control in a GUI applicatio...
Definition GUITabbedPane.h:29
Definition D2DObject.h:12
ESortOrderRect
Definition DefinitionsGUI.h:14251
@ ESortOrderRect_Left_Asc_Top_Asc
Definition DefinitionsGUI.h:14352
@ ESortOrderRect_Right_Desc_Top_Asc
Definition DefinitionsGUI.h:14412
@ ESortOrderRect_Top_Asc_Left_Asc
Definition DefinitionsGUI.h:14256
@ ESortOrderRect_Bottom_Desc_Left_Asc
Definition DefinitionsGUI.h:14310
EDockPosition
Dock position.
Definition DefinitionsGUI.h:14147
EPaneType
Pane type.
Definition DefinitionsGUI.h:13634