// DialogNewIcon.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 "DialogNewIcon.h" #include "EmbeddedFrame.h" #include "MainFrm.h" #ifdef _DEBUG # define new DEBUG_NEW # undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDialogNewIcon dialog CDialogNewIcon::CDialogNewIcon(CWnd* pParent /*=NULL*/) : CXTPDialog(CDialogNewIcon::IDD, pParent) { //{{AFX_DATA_INIT(CDialogNewIcon) m_strId = _T(""); m_strHeight = AfxGetApp()->GetProfileString(_T("DialogNewIcon"), _T("Height"), _T("16")); m_strWidth = AfxGetApp()->GetProfileString(_T("DialogNewIcon"), _T("Width"), _T("16")); m_bSquareIcon = AfxGetApp()->GetProfileInt(_T("DialogNewIcon"), _T("SquareIcon"), FALSE); //}}AFX_DATA_INIT m_pResourceManager = 0; } void CDialogNewIcon::DoDataExchange(CDataExchange* pDX) { CXTPDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDialogNewIcon) DDX_Control(pDX, IDC_COMBO_WIDTH, m_comboWidth); DDX_Control(pDX, IDC_COMBO_HEIGHT, m_comboHeight); DDX_Control(pDX, IDC_COMBO_ID, m_comboId); DDX_CBString(pDX, IDC_COMBO_ID, m_strId); DDX_CBString(pDX, IDC_COMBO_HEIGHT, m_strHeight); DDX_CBStringExact(pDX, IDC_COMBO_WIDTH, m_strWidth); DDX_Check(pDX, IDC_CHECK_SQUARE_ICON, m_bSquareIcon); DDX_Control(pDX, IDOK, m_btnOK); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDialogNewIcon, CXTPDialog) //{{AFX_MSG_MAP(CDialogNewIcon) ON_BN_CLICKED(IDC_CHECK_SQUARE_ICON, CDialogNewIcon::OnBnClickedSquareIcon) ON_CBN_SELENDOK(IDC_COMBO_WIDTH, CDialogNewIcon::OnBnSelChangeWidth) ON_CBN_EDITCHANGE(IDC_COMBO_WIDTH, CDialogNewIcon::OnBnEditChangeWidth) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDialogNewIcon message handlers BOOL CDialogNewIcon::OnInitDialog() { CXTPDialog::OnInitDialog(); if (InitCommandBars()) { CXTPCommandBars* pCommandBars = GetCommandBars(); if (pCommandBars) pCommandBars->EnableFrameTheme(TRUE); } SendMessageToDescendants(WM_XTP_SETCONTROLTHEME, GetMainFrame()->m_nCurrentTheme == Office2016 ? xtpControlThemeOffice2016 : xtpControlThemeDefault); CResourceManager* pResourceManager = m_pResourceManager; if (!pResourceManager) { CEmbeddedFrame* pActiveFrame = GetMainFrame()->GetActiveEmbeddedFrame(); if (pActiveFrame) { pResourceManager = pActiveFrame->ResourceManager(); _ASSERTE(pResourceManager); } } if (pResourceManager) { CMapResources* pResources = pResourceManager->GetResources(); POSITION pos = pResources->GetStartPosition(); while (pos) { CResourceInfo* pInfo; CString strCaption; pResources->GetNextAssoc(pos, strCaption, (CObject*&)pInfo); m_comboId.AddString(strCaption); } } m_comboHeight.EnableWindow(m_bSquareIcon ? FALSE : TRUE); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CDialogNewIcon::OnOK() { UpdateData(); AfxGetApp()->WriteProfileString(_T("DialogNewIcon"), _T("Height"), m_strHeight); AfxGetApp()->WriteProfileString(_T("DialogNewIcon"), _T("Width"), m_strWidth); AfxGetApp()->WriteProfileInt(_T("DialogNewIcon"), _T("SquareIcon"), m_bSquareIcon); int nWidth = _ttoi(m_strWidth); if (nWidth <= 0 || nWidth > 60) { m_comboWidth.SetFocus(); return; } int nHeight = _ttoi(m_strHeight); if (nHeight <= 0 || nHeight > 60) { m_comboHeight.SetFocus(); return; } CDialog::OnOK(); } void CDialogNewIcon::OnBnClickedSquareIcon() { UpdateData(); // UI to var m_comboHeight.EnableWindow(m_bSquareIcon ? FALSE : TRUE); if (m_bSquareIcon) { m_strHeight = m_strWidth; UpdateData(FALSE); } } void CDialogNewIcon::OnBnSelChangeWidth() { if (!m_bSquareIcon) return; int sel = m_comboWidth.GetCurSel(); if (sel != CB_ERR) { CString width; m_comboWidth.GetLBText(sel, width); m_comboHeight.SetWindowText(width); } } void CDialogNewIcon::OnBnEditChangeWidth() { if (!m_bSquareIcon) return; UpdateData(); m_strHeight = m_strWidth; UpdateData(FALSE); }