// DialogAccelProperties.cpp // // (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 // ///////////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "commandbarsdesigner.h" #include "DialogAccelProperties.h" #include "MainFrm.h" #ifdef _DEBUG # define new DEBUG_NEW # undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDialogAccelProperties dialog CDialogAccelProperties::CDialogAccelProperties(CWnd* pParent /*=NULL*/) : CXTPDialog(CDialogAccelProperties::IDD, pParent) , m_wndAccel(((CMainFrame*)AfxGetMainWnd())->GetCommandBars()->GetShortcutManager()) { //{{AFX_DATA_INIT(CDialogAccelProperties) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT m_lpAccel = NULL; } void CDialogAccelProperties::DoDataExchange(CDataExchange* pDX) { CXTPDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDialogAccelProperties) DDX_Control(pDX, IDC_EDIT_CAPTION, m_wndAccel); DDX_Control(pDX, IDC_COMBO_ID, m_comboId); DDX_CBString(pDX, IDC_COMBO_ID, m_strId); DDX_Control(pDX, IDOK, m_btnOK); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDialogAccelProperties, CXTPDialog) //{{AFX_MSG_MAP(CDialogAccelProperties) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDialogAccelProperties message handlers BOOL CDialogAccelProperties::OnInitDialog() { CXTPDialog::OnInitDialog(); if (InitCommandBars()) { CXTPCommandBars* pCommandBars = GetCommandBars(); if (pCommandBars) pCommandBars->EnableFrameTheme(TRUE); } CXTPCommandBars* pCB = GetCommandBars(); CResourceManager* pResourceManager = ((CMainFrame*)AfxGetMainWnd())->GetActiveEmbeddedFrame()->ResourceManager(); _ASSERTE(pResourceManager); CMapResources* pResources = pResourceManager->GetResources(); POSITION pos = pResources->GetStartPosition(); while (pos) { CResourceInfo* pInfo; CString strCaption; pResources->GetNextAssoc(pos, strCaption, (CObject*&)pInfo); int nIndex = m_comboId.AddString(strCaption); if (m_strId == strCaption) m_comboId.SetCurSel(nIndex); } if (m_lpAccel) { m_wndAccel.SetAccel(m_lpAccel); } SendMessageToDescendants(WM_XTP_SETCONTROLTHEME, GetMainFrame()->m_nCurrentTheme == Office2016 ? xtpControlThemeOffice2016 : xtpControlThemeDefault); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CDialogAccelProperties::OnOK() { UpdateData(); if (m_strId.IsEmpty()) { m_comboId.SetFocus(); return; } if (!m_wndAccel.IsKeyDefined()) { m_wndAccel.SetFocus(); return; } CXTPDialog::OnOK(); }