Rhino C++ API  8.13
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
CRhinoTabbedDockBarDialog Class Referenceabstract

#include <RhinoSdkDialog.h>

Inheritance diagram for CRhinoTabbedDockBarDialog:
CRhinoDialog ITabbedDockBarEventWatcher CRhinoUiDialog IDockBarEventWatcher

Public Member Functions

 CRhinoTabbedDockBarDialog ()
 
virtual const wchar_t * Caption (void) const =0
 Required overrides. More...
 
CRhinoUiDockBarDockBar (void) const
 Returns the dockbar that this tab is currently on. More...
 
void OnDockBarPositionChanged (DWORD dwNewLocation) override
 
bool OnDockContextStartDrag (bool bStart) override
 Events, forwarded from CRhinoUiDockBar. More...
 
virtual void OnShowDockBar (bool bShowDockBar)
 
void OnShowDockBar (IDockBarEventWatcher::ShowEventArgs args) override
 
void OnShowTab (const class CRhinoUiPanel &db, bool bShowTab, const ON_UUID &dockBarId) override
 
void OnStartTracking (bool bDoneTracking) override
 
void OnToggleDocking (bool bStart) override
 
virtual ON_UUID PlugInId (void) const =0
 
virtual ON_UUID TabId (void) const =0
 Generate a unique ID for your tab and return it here. More...
 
- Public Member Functions inherited from CRhinoDialog
 CRhinoDialog (LPCTSTR lpszTemplateName, CWnd *pParentWnd=nullptr)
 Modal construct. More...
 
 CRhinoDialog (UINT nIDTemplate, CWnd *pParentWnd=nullptr)
 
virtual ~CRhinoDialog ()
 
CSize CalcDialogSize (INT nResourceId)
 
BOOL32 Create (LPCTSTR lpszTemplateName, CWnd *pParentWnd=nullptr) override
 Modeless construct. More...
 
BOOL32 Create (UINT nIDTemplate, CWnd *pParentWnd=nullptr) override
 
UINT DialogID ()
 
LPCTSTR DialogStringID ()
 
unsigned int DocumentSerialNumber () const
 
virtual INT_PTR DoModal () override
 
bool EnableDisplayCommands () const
 
void EnableSaveDialogPositionAndSize (bool bEnable=true, const wchar_t *wRegistryTitle=nullptr)
 
bool InDoModal () const
 
bool IsSaveDialogPositionAndSizeEnabled () const
 
void Localize ()
 
virtual void OnColorButtonClicked (UINT nBtnID)
 Called by CRhColorButton if button clicked and color changed;. More...
 
void OnRhinoHelpButton ()
 Dialog Utilities. More...
 
bool PushPickButton (bool hide_this_dialog)
 
void SetEnableDisplayCommands (bool b)
 
void SetEnableDisplayCommands (bool b, unsigned int documentRuntimeSerialNumber)
 
- Public Member Functions inherited from CRhinoUiDialog
 CRhinoUiDialog (LPCTSTR lpszTemplateName=NULL, CWnd *pParentWnd=NULL)
 
 CRhinoUiDialog (UINT nIDTemplate, CWnd *pParentWnd=NULL)
 
virtual ~CRhinoUiDialog ()
 
bool AddResizeControl (bool b)
 
bool AllowEscapeAndEnter () const
 
void CallOnUpdateUi ()
 
virtual BOOL32 CreateIndirect (HGLOBAL hDialogTemplate, CWnd *pParentWnd=NULL)
 
virtual BOOL32 CreateIndirect (LPCDLGTEMPLATE lpDialogTemplate, CWnd *pParentWnd=NULL, void *lpDialogInit=NULL)
 
AFX_MODULE_STATE * DialogModuleState ()
 
UINT DialogTemplateID () const
 
LPCTSTR DialogTemplateName () const
 
void DisableAllDialogItems ()
 
INT_PTR DoModal ()
 
void EnableAllDlgControls (bool bEnable)
 
bool EnableDialogItem (UINT nItemID, bool bEnable)
 
int EnableDialogItems (CUIntArray &nItemIDArray, bool bEnable)
 
int EnableDialogItems (UINT *nItemIDArray, int iArraySize, bool bEnable)
 
virtual bool ForwardLMouseDblClickMessagesToParent (CPoint point)
 
virtual bool ForwardLMouseDownMessagesToParent (CPoint point)
 
bool GetDlgItemRect (UINT nID, CRect &rc)
 
bool IsDialogItemEnabled (UINT nItemID) const
 
bool IsResizable ()
 
bool IsRhinoFlagSet (rhino_dialog_flags flag) const
 
afx_msg int OnCreate (LPCREATESTRUCT lpCreateStruct)
 
afx_msg HBRUSH OnCtlColor (CDC *pDC, CWnd *pWnd, UINT nCtlColor)
 
afx_msg void OnDestroy ()
 
afx_msg void OnGetMinMaxInfo (MINMAXINFO *lpMMI)
 
afx_msg void OnLButtonDblClk (UINT nFlags, CPoint point)
 
afx_msg void OnLButtonDown (UINT nFlags, CPoint point)
 
afx_msg LRESULT OnNcHitTest (CPoint point)
 
afx_msg void OnPaint ()
 
afx_msg void OnSize (UINT nType, int cx, int cy)
 
virtual void OnUnhandledEscapeAndEnter (UINT nChar)
 
virtual bool OverrideAllowEscapeAndEnter (MSG *msg)
 
void PaintGradientTitleRect (CDC *pDC, LPRECT lpRect, const char *lpsCaption=0, bool bActiveWindow=TRUE)
 
void PaintGradientTitleRect (CDC *pDC, LPRECT lpRect, const wchar_t *lpsCaption=0, bool bActiveWindow=TRUE)
 
void RestoreAllDisabledDialogItems ()
 
int RhinoFlags () const
 
bool SetAllowEscapeAndEnter (bool b)
 
bool SetDlgItemToolTip (CWnd *pWndCtrl, const char *lpsToolTip)
 
bool SetDlgItemToolTip (CWnd *pWndCtrl, const wchar_t *lpsToolTip)
 
bool SetDlgItemToolTip (UINT nID, const char *lpsToolTip)
 
bool SetDlgItemToolTip (UINT nID, const wchar_t *lpsToolTip)
 
bool SetMinSizeToCurrentSize ()
 
bool SetRhinoFlag (rhino_dialog_flags flag, bool b)
 
int SetRhinoFlags (int iFlags)
 
void SetToolTipOwner (CWnd *pWnd)
 Ported from CRhinoUiDialog. More...
 
- Public Member Functions inherited from ITabbedDockBarEventWatcher
virtual ~ITabbedDockBarEventWatcher ()
 
- Public Member Functions inherited from IDockBarEventWatcher
virtual ~IDockBarEventWatcher ()
 

Static Public Member Functions

static void CloseDockbarTab (const CRhinoDoc &doc, const ON_UUID &uuidPanelId, const ON_UUID *uuidDockBar)
 
static void CreateTabQuietly (const CRhinoDoc &doc, const ON_UUID &uuidPanelId)
 
static CRhinoUiDockBarDockBarForTab (const CRhinoDoc &doc, const ON_UUID &uuidPanelId)
 
static void DockBarsForTab (const CRhinoDoc &doc, const ON_UUID &uuidPanelId, ON_SimpleArray< CRhinoUiDockBar * > &dockbars)
 
static void GetOpenTabIds (ON_SimpleArray< ON_UUID > &tabIds)
 
static bool IsTabVisible (const CRhinoDoc &doc, const ON_UUID &uuidPanelId, bool bIsSelectedTab=false)
 
static void OpenDockbarTab (const CRhinoDoc &doc, const ON_UUID &uuidPanelId, bool bSelect=true, const ON_UUID *uuidDockBar=nullptr)
 Utility functions to manipulate the tabs. More...
 
static bool OpenTabOnDockBar (CRhinoUiDockBar *pDockbar, const CRhinoDoc &doc, const ON_UUID &uuidPanelId, bool makeSelectedTab=true)
 If nullptr == pDockbar, a new dockbar is created for the tab. More...
 
static bool Register (CRuntimeClass *pRTC, LPCTSTR lpszTemplateName, UINT idi, AFX_MODULE_STATE *pms)
 
static bool Register (CRuntimeClass *pRTC, UINT nIDTemplate, UINT idi, AFX_MODULE_STATE *pms)
 
static void ShowDockbarTab (const CRhinoDoc &doc, const ON_UUID &uuidPanelId, bool bShow, bool bMakeSelected, const ON_UUID *uuidDockBar)
 
- Static Public Member Functions inherited from CRhinoDialog
static int CheckSemiModalMessagePump ()
 
static bool InDoSemiModal ()
 

Public Attributes

class CRhTabbedDockBarDialogSdkExtension * m__rhino_dialog_sdk_extension
 
ON_UUID m_dockbar_id = ON_nil_uuid
 
- Public Attributes inherited from CRhinoDialog
class CRhDialogSdkExtension * m__rhino_dialog_sdk_extension
 
- Public Attributes inherited from CRhinoUiDialog
bool m_allow_auto_resize
 
CRhinoUiLocalizeDialog m_localize
 For internal use only. More...
 
CRhinoUiDialogItemResizer m_Resize
 

Protected Member Functions

virtual void * EVF (const wchar_t *wszFunc, const void *pvData)
 
virtual BOOL32 OnInitDialog () override
 
virtual BOOL32 PreTranslateMessage (MSG *pMsg) override
 Overrides. More...
 
virtual LRESULT WindowProc (UINT message, WPARAM wParam, LPARAM lParam) override
 
- Protected Member Functions inherited from CRhinoDialog
virtual BOOL32 ContinueModal ()
 Implementation. More...
 
void DoDataExchange (CDataExchange *pDX) override
 DDX/DDV support. More...
 
virtual void OnCancel ()
 
virtual BOOL32 OnCommand (WPARAM wParam, LPARAM lParam)
 override; ///<not an override on OSX More...
 
afx_msg void OnDestroy ()
 
afx_msg BOOL32 OnHelpInfo (HELPINFO *pHelpInfo)
 
virtual void OnOK ()
 
- Protected Member Functions inherited from CRhinoUiDialog
bool _SetDlgItemToolTip (CWnd *pWndCtrl, LPCTSTR lpsToolTip)
 
void Construct ()
 
BOOL32 RhCreateDlgIndirect (LPCDLGTEMPLATE lpDialogTemplate, CWnd *pParentWnd, HINSTANCE hInst)
 
BOOL32 RhCreateIndirect (HGLOBAL hDialogTemplate, CWnd *pParentWnd, HINSTANCE hInst)
 
BOOL32 RhCreateIndirect (LPCDLGTEMPLATE lpDialogTemplate, CWnd *pParentWnd, void *lpDialogInit, HINSTANCE hInst)
 
INT_PTR RhDoModal ()
 

Additional Inherited Members

- Public Types inherited from CRhinoUiDialog
enum  rhino_dialog_flags { is_dockbar_dialog = 1, force_32bit_rhino_flag = 0xFFFFFFFF }
 Reserved for future use. More...
 
- Public Types inherited from IDockBarEventWatcher
enum  ShowEventArgs : int { ShowEventArgs::Show, ShowEventArgs::Hide, ShowEventArgs::HideOnDeactivate, ShowEventArgs::ShowOnDeactivate }
 OnShowDockbar event type More...
 
- Protected Attributes inherited from CRhinoUiDialog
bool m_activate_tool_tip
 
bool m_allow_escape_and_enter
 
bool m_bAddResizer
 
UUID m_plugin_id
 
CRect m_rcGripper
 
CRect m_rcPage
 
int m_rhino_flags
 
CSize m_sizeGripper
 
CSize m_sizeMax
 Defaults to 0,0 which means no clamp, if other than 0,0 use this instead. More...
 
CSize m_sizeMin
 Defaults to 0,0 which means no clamp, if other than 0,0 use this instead. More...
 
UINT m_template_name_id
 
CString m_template_name_string
 
CToolTipCtrl m_tool_tip
 
CWnd * m_tool_tip_owner
 

Detailed Description

Derive from this class for dialogs that will appear as a tabbed dock bar. Ensure you call one of the static Register functions during your CRhinoPlugIn::OnLoadPlugIn method. Note - your dialog must implement MFC dynamic creation using the DECLARE_DYNCREATE(MyDialog) macro in the header, and IMPLEMENT_DYNCREATE(MyDialog, CRhinoTabbedDockBarDialog) in the implementation file.

Constructor & Destructor Documentation

◆ CRhinoTabbedDockBarDialog()

CRhinoTabbedDockBarDialog::CRhinoTabbedDockBarDialog ( )

Member Function Documentation

◆ Caption()

virtual const wchar_t* CRhinoTabbedDockBarDialog::Caption ( void  ) const
pure virtual

Required overrides.

◆ CloseDockbarTab()

static void CRhinoTabbedDockBarDialog::CloseDockbarTab ( const CRhinoDoc doc,
const ON_UUID uuidPanelId,
const ON_UUID uuidDockBar 
)
static

◆ CreateTabQuietly()

static void CRhinoTabbedDockBarDialog::CreateTabQuietly ( const CRhinoDoc doc,
const ON_UUID uuidPanelId 
)
static

◆ DockBar()

CRhinoUiDockBar* CRhinoTabbedDockBarDialog::DockBar ( void  ) const

Returns the dockbar that this tab is currently on.

◆ DockBarForTab()

static CRhinoUiDockBar* CRhinoTabbedDockBarDialog::DockBarForTab ( const CRhinoDoc doc,
const ON_UUID uuidPanelId 
)
static

◆ DockBarsForTab()

static void CRhinoTabbedDockBarDialog::DockBarsForTab ( const CRhinoDoc doc,
const ON_UUID uuidPanelId,
ON_SimpleArray< CRhinoUiDockBar * > &  dockbars 
)
static

◆ EVF()

virtual void* CRhinoTabbedDockBarDialog::EVF ( const wchar_t *  wszFunc,
const void *  pvData 
)
protectedvirtual

◆ GetOpenTabIds()

static void CRhinoTabbedDockBarDialog::GetOpenTabIds ( ON_SimpleArray< ON_UUID > &  tabIds)
static

◆ IsTabVisible()

static bool CRhinoTabbedDockBarDialog::IsTabVisible ( const CRhinoDoc doc,
const ON_UUID uuidPanelId,
bool  bIsSelectedTab = false 
)
static

◆ OnDockBarPositionChanged()

void CRhinoTabbedDockBarDialog::OnDockBarPositionChanged ( DWORD  dwNewLocation)
overridevirtual

Implements IDockBarEventWatcher.

◆ OnDockContextStartDrag()

bool CRhinoTabbedDockBarDialog::OnDockContextStartDrag ( bool  bStart)
overridevirtual

Events, forwarded from CRhinoUiDockBar.

Implements IDockBarEventWatcher.

◆ OnInitDialog()

virtual BOOL32 CRhinoTabbedDockBarDialog::OnInitDialog ( )
overrideprotectedvirtual

Generated message map functions {{AFX_MSG(CRhinoDialog)

Reimplemented from CRhinoDialog.

◆ OnShowDockBar() [1/2]

virtual void CRhinoTabbedDockBarDialog::OnShowDockBar ( bool  bShowDockBar)
virtual

◆ OnShowDockBar() [2/2]

void CRhinoTabbedDockBarDialog::OnShowDockBar ( IDockBarEventWatcher::ShowEventArgs  args)
overridevirtual

Implements IDockBarEventWatcher.

◆ OnShowTab()

void CRhinoTabbedDockBarDialog::OnShowTab ( const class CRhinoUiPanel db,
bool  bShowTab,
const ON_UUID dockBarId 
)
overridevirtual

◆ OnStartTracking()

void CRhinoTabbedDockBarDialog::OnStartTracking ( bool  bDoneTracking)
overridevirtual

Implements IDockBarEventWatcher.

◆ OnToggleDocking()

void CRhinoTabbedDockBarDialog::OnToggleDocking ( bool  bStart)
overridevirtual

Implements IDockBarEventWatcher.

◆ OpenDockbarTab()

static void CRhinoTabbedDockBarDialog::OpenDockbarTab ( const CRhinoDoc doc,
const ON_UUID uuidPanelId,
bool  bSelect = true,
const ON_UUID uuidDockBar = nullptr 
)
static

Utility functions to manipulate the tabs.

◆ OpenTabOnDockBar()

static bool CRhinoTabbedDockBarDialog::OpenTabOnDockBar ( CRhinoUiDockBar pDockbar,
const CRhinoDoc doc,
const ON_UUID uuidPanelId,
bool  makeSelectedTab = true 
)
static

If nullptr == pDockbar, a new dockbar is created for the tab.

◆ PlugInId()

virtual ON_UUID CRhinoTabbedDockBarDialog::PlugInId ( void  ) const
pure virtual

◆ PreTranslateMessage()

virtual BOOL32 CRhinoTabbedDockBarDialog::PreTranslateMessage ( MSG *  pMsg)
overrideprotectedvirtual

Overrides.

Reimplemented from CRhinoDialog.

◆ Register() [1/2]

static bool CRhinoTabbedDockBarDialog::Register ( CRuntimeClass *  pRTC,
LPCTSTR  lpszTemplateName,
UINT  idi,
AFX_MODULE_STATE *  pms 
)
static

◆ Register() [2/2]

static bool CRhinoTabbedDockBarDialog::Register ( CRuntimeClass *  pRTC,
UINT  nIDTemplate,
UINT  idi,
AFX_MODULE_STATE *  pms 
)
static

Register your tab dialog with like this: CRhinoTabbedDockBarDialog::Register(RUNTIME_CLASS(CMyTabDialog), IID, IDI_ICON, AfxGetStaticModuleState());

◆ ShowDockbarTab()

static void CRhinoTabbedDockBarDialog::ShowDockbarTab ( const CRhinoDoc doc,
const ON_UUID uuidPanelId,
bool  bShow,
bool  bMakeSelected,
const ON_UUID uuidDockBar 
)
static
Deprecated:
Use the version with bMakeSelected static void ShowDockbarTab(const CRhinoDoc& doc, const ON_UUID& uuidPanelId, bool bShow, const ON_UUID* uuidDockBar);

◆ TabId()

virtual ON_UUID CRhinoTabbedDockBarDialog::TabId ( void  ) const
pure virtual

Generate a unique ID for your tab and return it here.

◆ WindowProc()

virtual LRESULT CRhinoTabbedDockBarDialog::WindowProc ( UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)
overrideprotectedvirtual

Reimplemented from CRhinoDialog.

Member Data Documentation

◆ m__rhino_dialog_sdk_extension

class CRhTabbedDockBarDialogSdkExtension* CRhinoTabbedDockBarDialog::m__rhino_dialog_sdk_extension

◆ m_dockbar_id

ON_UUID CRhinoTabbedDockBarDialog::m_dockbar_id = ON_nil_uuid