116 lines
2.9 KiB
C++
116 lines
2.9 KiB
C++
// DialogAccelProperties.cpp : implementation file
|
|
//
|
|
// This file is a part of the XTREME TOOLKIT PRO MFC class library.
|
|
// (c)1998-2008 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*/)
|
|
: CDialog(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)
|
|
{
|
|
CDialog::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);
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CDialogAccelProperties, CDialog)
|
|
//{{AFX_MSG_MAP(CDialogAccelProperties)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDialogAccelProperties message handlers
|
|
|
|
BOOL CDialogAccelProperties::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
|
|
CResourceManager* pResourceManager = ((CMainFrame*)AfxGetMainWnd())->GetActiveEmbeddedFrame()->ResourceManager();
|
|
ASSERT(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);
|
|
}
|
|
|
|
|
|
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;
|
|
}
|
|
|
|
|
|
CDialog::OnOK();
|
|
}
|