// EmbeddedFrame.h // // (c)1998-2025 Codejock Software, All Rights Reserved. // // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN // CONSENT OF CODEJOCK SOFTWARE. // // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A // SINGLE COMPUTER. // // CONTACT INFORMATION: // support@codejock.com // http://www.codejock.com // ///////////////////////////////////////////////////////////////////////////// #if !defined(AFX_EMBEDDEDFRAME_H__51FE6C04_80EB_47DB_8E62_BE28CBCA1F57__INCLUDED_) # define AFX_EMBEDDEDFRAME_H__51FE6C04_80EB_47DB_8E62_BE28CBCA1F57__INCLUDED_ # if _MSC_VER > 1000 # pragma once # endif // _MSC_VER > 1000 # include "EmbeddedView.h" # include "ResourceManager.h" class CCommandBarsDesignerView; class CCommandBarsDesignerDesignerView; struct PREVIEW_SETTINGS; struct IEmbeddedFramePreview { virtual void OnSetPreviewSettings(const PREVIEW_SETTINGS* pSettings) = 0; virtual void OnCommandBarsUpdated(LPCTSTR xmlData) = 0; virtual void OnTitleUpdated(LPCTSTR lpTitle) = 0; virtual void OnWorkspaceColorUpdated(COLORREF crBackground) = 0; virtual void OnHideMenu() = 0; }; ///////////////////////////////////////////////////////////////////////////// // CEmbeddedFrame frame class CEmbeddedFrame : public CXTPFrameWnd , CXTPOffice2007FrameHook { public: DECLARE_DYNCREATE(CEmbeddedFrame) CEmbeddedFrame(); // protected constructor used by dynamic creation public: void UpdatePreview(); void DoPropExchange(CXTPPropExchange* pPX); virtual void Serialize(CArchive& ar); void Clear(); void CommitContextMenu(); void OnHideMenu(); void OnThemeUpdated(); CResourceManager* ResourceManager() { return &m_resourceManager; } void SetPreview(IEmbeddedFramePreview* pPreview); void SetPreviewSettings(const PREVIEW_SETTINGS* pSettings); static void ForceVectorDelete(); XTPPaintTheme m_theme; CString m_strPreviewINIStyle; BOOL m_bThemeOffice2016; BOOL m_bCustomizable; CXTPToolBar* m_pContextMenu; CXTPControls* m_pControls; CCommandBarsDesignerDesignerView* m_pHostView; CPoint m_ptContextMenu; protected: virtual ~CEmbeddedFrame(); virtual BOOL PreCreateWindow(CREATESTRUCT& cs); afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg LRESULT OnNcHitTest(CPoint point); afx_msg LRESULT OnDragControlChanged(WPARAM, LPARAM); afx_msg void OnSimpleCommand(UINT); afx_msg void OnUpdateSimpleCommand(CCmdUI* pCmdUI); DECLARE_MESSAGE_MAP() private: void ReplaceControls(CXTPToolBar* pCommandBar, CXTPControls* pControls); BOOL BuildControls(); BOOL AddCategory(CString strCategory, CMenu* pMenu); CEmbeddedView m_wndView; CResourceManager m_resourceManager; IEmbeddedFramePreview* m_pPreview; PREVIEW_SETTINGS* m_pPreviewSettings; }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_EMBEDDEDFRAME_H__51FE6C04_80EB_47DB_8E62_BE28CBCA1F57__INCLUDED_)