Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS General Discussion » ControlBar and RibbonBar Value load problem Collapse All
Subject Author Date
Shailesh Nikam Mar 29, 2007 - 2:58 AM

Hi,



Iaˆ™m trying to load the saved settings of controlbar and ribbonbar from registry. I wrote code in DestroyWindow() that will store the state of control bar and ribbonbar in registry using CExtControlBar::ProfileBarStateSave, g_CmdManager->SerializeState, g_PaintManager.PaintManagerStateSave, g_CmdManager->ProfileWndRemove, objRibbonbar.CustomizeStateSave. After closing the application DestroyWindow function gets called and it adds values to registry also. But next time when I try to load the application only changed theme gets loaded but application doesnaˆ™t load the state of control bar and ribbonbar. Iaˆ™m sending you the code of CMainFrame::OnCreate() for your reference.



int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
//----------------------------------------------PROF-UIS CODE----SN-----------------------------------
if (CExtNCW < CMDIFrameWnd >::OnCreate(lpCreateStruct) == -1)
return -1;
//----------------------------------------------------------------------------------------------------

CString strOutputWindowName;
strOutputWindowName.LoadString(IDS_OUTPUT_WINDOW_NAME);
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n");
return -1; // fail to create
}
m_wndStatusBar.SetPaneWidth(5,25);
//----------------------------------------------PROF-UIS CODE----SN-----------------------------------
CWinApp* pApp = ::AfxGetApp();
ASSERT( pApp != NULL );
HICON hIcon = pApp->LoadIcon( IDR_MAINFRAME );
ASSERT( hIcon != NULL );
SetIcon( hIcon, TRUE );
SetIcon( hIcon, FALSE );

g_CmdManager->ProfileSetup(
pApp->m_pszProfileName,
GetSafeHwnd()
);

// Create docking Output Window
if( ! CExtControlBar::FrameEnableDocking(this) )
{
ASSERT( FALSE );
return -1;
}

if( ! objRibbonbar.Create(
NULL,
this
)
)
{
TRACE0("Failed to create the m_wndRibbonBar toolbar\n");
return -1; // fail to create
}

objRibbonbar._InitRibbonBar();
BOOL bRibbonVal = objRibbonbar.CustomizeStateLoad(
pApp->m_pszRegistryKey,
pApp->m_pszProfileName,
pApp->m_pszProfileName
);

m_rgbBkColor = m_pWndLabel->GetBkColor();

#if (!defined __EXT_MFC_NO_TAB_CONTROLBARS)
if( ! CExtControlBar::FrameInjectAutoHideAreas(this) )
{
ASSERT( FALSE );
return -1;
}

#endif // (!defined __EXT_MFC_NO_TAB_CONTROLBARS)
if(!m_wndOutput.Create(strOutputWindowName,this,IDR_OUTPUTWINDOW))
{
TRACE(_T("Failed to create dialog bar\n"));
return -1;
}

if( ! CExtControlBar::ProfileBarStateLoad(
this,
pApp->m_pszRegistryKey,
pApp->m_pszProfileName,
pApp->m_pszProfileName,
&m_dataFrameWP
)
)
{

/*m_wndOutput.DockControlBar(AFX_IDW_DOCKBAR_BOTTOM ,1,this,false); //AFX_IDW_DOCKBAR_LEFT
ShowControlBar(&m_wndOutput, TRUE, TRUE);*/
m_wndOutput.m_bGripperStaticallyAtTop = false;
DockControlBar( &m_wndOutput, AFX_IDW_DOCKBAR_BOTTOM);
m_wndOutput.EnableDocking( CBRS_ALIGN_TOP | CBRS_ALIGN_BOTTOM);
m_wndOutput.DockControlBar(AFX_IDW_DOCKBAR_BOTTOM ,1,this,false); //AFX_IDW_DOCKBAR_LEFT
ShowControlBar(&m_wndOutput, FALSE, TRUE);
RecalcLayout();
}
g_CmdManager->SerializeState(
pApp->m_pszProfileName,
pApp->m_pszRegistryKey,
pApp->m_pszProfileName,
false
);

return 0;

}

Technical Support Mar 29, 2007 - 11:56 AM

Thank you for the test project. We replied by email.