📄 dlgmanagernew.cpp
字号:
// DlgManagerNew.cpp : implementation file
//
#include "stdafx.h"
#include "gstools.h"
#include "DlgManagerNew.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgManagerNew dialog
CDlgManagerNew::CDlgManagerNew(const char* strDefaultName, FFT fft, CWnd* pParent /*=NULL*/)
: CDialog(CDlgManagerNew::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgManagerNew)
m_strName = _T("");
m_strPath = _T("");
m_bRoot = FALSE;
m_is_sys_path = FALSE;
//}}AFX_DATA_INIT
if(NULL!=strDefaultName)
m_strName = strDefaultName;
m_fft = fft;
}
void CDlgManagerNew::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgManagerNew)
DDX_Control(pDX, IDC_CHECK1, m_check_root);
DDX_Control(pDX, IDC_EDIT_NAME, m_edit_name);
DDX_Control(pDX, IDC_CHECK_SYS_PATH, m_check_sys_path);
DDX_Control(pDX, IDOK, m_btnOk);
DDX_Text(pDX, IDC_EDIT_NAME, m_strName);
DDX_Text(pDX, IDT_PATH, m_strPath);
DDX_Check(pDX, IDC_CHECK1, m_bRoot);
DDX_Check(pDX, IDC_CHECK_SYS_PATH, m_is_sys_path);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgManagerNew, CDialog)
//{{AFX_MSG_MAP(CDlgManagerNew)
ON_EN_CHANGE(IDC_EDIT_NAME, OnChangeEditName)
ON_BN_CLICKED(IDC_CHECK_SYS_PATH, OnCheckSysPath)
ON_BN_CLICKED(IDC_BUTTON_SYS_PATH, OnButtonSysPath)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgManagerNew message handlers
void CDlgManagerNew::OnChangeEditName()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
UpdateData();
m_btnOk.EnableWindow(!m_strName.IsEmpty());
if(g_szWizardPath[0]==0 || m_bRoot)
m_strPath.Format("%s", (LPCSTR)m_strName);
else
m_strPath.Format("%s\\%s", g_szWizardPath, (LPCSTR)m_strName);
UpdateData(false);
}
BOOL CDlgManagerNew::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_btnOk.EnableWindow(!m_strName.IsEmpty());
// m_strPath = CString(g_szWizardPath);
if(g_szWizardPath[0]==0 || m_bRoot)
m_strPath.Format("%s", (LPCSTR)m_strName);
else
m_strPath.Format("%s\\%s", g_szWizardPath, (LPCSTR)m_strName);
if(!g_source.IsReady())
{
m_is_sys_path = TRUE;
m_bRoot = TRUE;
m_check_sys_path.EnableWindow(FALSE);
m_edit_name.EnableWindow(FALSE);
m_check_root.EnableWindow(FALSE);
}
UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgManagerNew::OnCheckSysPath()
{
// TODO: Add your control notification handler code here
UpdateData();
if(m_is_sys_path)
{
m_strName = m_strPath = "";
m_bRoot = TRUE;
m_edit_name.EnableWindow(FALSE);
m_check_root.EnableWindow(FALSE);
}
else
{
m_bRoot = FALSE;
m_edit_name.EnableWindow(TRUE);
m_check_root.EnableWindow(TRUE);
}
UpdateData(FALSE);
}
void CDlgManagerNew::OnButtonSysPath()
{
UpdateData();
CString strExt = CGsFunc::File_GetExt(m_fft);
CString strTemp = _T("*.") + strExt;
CString strDesc = _T("Open ") + strExt
+ _T(" file (") + strTemp
+ _T(")|") + strTemp
+ _T("||");
// TODO: Add your control notification handler code here
CFileDialog dlg(true,(LPCSTR)strExt,(LPCSTR)strTemp,
OFN_PATHMUSTEXIST|OFN_EXPLORER|OFN_NOCHANGEDIR,
(LPCSTR)strDesc);
//dlg.m_ofn.lpstrInitialDir = szTemp;
if (dlg.DoModal() == IDCANCEL)
{
return ;
}
m_strName = m_strPath = dlg.GetPathName();
m_btnOk.EnableWindow(TRUE);
UpdateData(FALSE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -