📄 tbreakoptsdlg.cpp
字号:
/*****************************************************************************/
/* TBreakOptsDlg.cpp Copyright (c) Ladislav Zezula 2003 */
/*---------------------------------------------------------------------------*/
/* Description : */
/*---------------------------------------------------------------------------*/
/* Date Ver Who Comment */
/* -------- ---- --- ------- */
/* 12.04.03 1.00 Lad The first version of TBreakOptsDlg.cpp */
/*****************************************************************************/
#include "stdafx.h"
#include "resource.h"
#include "TBreakOptsDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
//-----------------------------------------------------------------------------
// TBreakOptsDlg dialog
BEGIN_MESSAGE_MAP(TBreakOptsDlg, CDialog)
//{{AFX_MSG_MAP(TBreakOptsDlg)
ON_BN_CLICKED(IDC_ALLFOLDERS, OnAllFoldersClick)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
TBreakOptsDlg::TBreakOptsDlg(CWnd* pParent /*=NULL*/)
: CDialog(TBreakOptsDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(TBreakOptsDlg)
m_strFolder = _T("");
m_strStartName = _T("");
m_nMaxNameLength = 8;
m_bAutoSave = FALSE;
m_strExt = _T("");
m_bThisOnly = FALSE;
//}}AFX_DATA_INIT
m_pFolderList = NULL;
m_pExtList = NULL;
}
TBreakOptsDlg::~TBreakOptsDlg()
{
FreeStringList(m_pFolderList);
FreeStringList(m_pExtList);
}
void TBreakOptsDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(TBreakOptsDlg)
DDX_Control (pDX, IDC_FOLDERS, m_Folders);
DDX_Text (pDX, IDC_FOLDER, m_strFolder);
DDV_MaxChars(pDX, m_strFolder, 260);
DDX_Text (pDX, IDC_STARTNAME, m_strStartName);
DDV_MaxChars(pDX, m_strStartName, 260);
DDX_Text (pDX, IDC_MAXNAMELENGTH, m_nMaxNameLength);
DDV_MinMaxUInt(pDX, m_nMaxNameLength, 1, 48);
DDX_Check (pDX, IDC_AUTOSAVE, m_bAutoSave);
DDX_Control (pDX, IDC_EXTS, m_Exts);
DDX_Text (pDX, IDC_EXT, m_strExt);
DDV_MaxChars(pDX, m_strExt, 5);
DDX_Check(pDX, IDC_THISONLY, m_bThisOnly);
//}}AFX_DATA_MAP
}
//-----------------------------------------------------------------------------
// TBreakOptsDlg message handlers
BOOL TBreakOptsDlg::OnInitDialog()
{
POSITION pos;
char * szItem = NULL;
int nIndex;
CDialog::OnInitDialog();
// These pointers must not be NULL
ASSERT(m_pFolderList != NULL && m_pExtList != NULL);
// Fill the listbox with folders
m_Folders.AddString("");
for(pos = m_pFolderList->GetHeadPosition(); pos != NULL; )
{
szItem = (char *)m_pFolderList->GetNext(pos);
if(*szItem != 0)
m_Folders.AddString(szItem);
}
m_pFolderList = NULL;
// Fill the listbox with extensions
m_Exts.AddString("");
for(pos = m_pExtList->GetHeadPosition(); pos != NULL; )
{
szItem = (char *)m_pExtList->GetNext(pos);
if(*szItem != 0)
nIndex = m_Exts.AddString(szItem);
}
m_pExtList = NULL;
return TRUE;
}
void TBreakOptsDlg::OnAllFoldersClick()
{
int nItems = m_Folders.GetCount();
// Check all items
UpdateData(TRUE);
for(int i = 0; i < nItems; i++)
m_Folders.SetCheck(i, 1);
// Clear the folder edit
m_strFolder = "";
UpdateData(FALSE);
}
void TBreakOptsDlg::OnOK()
{
char * szStr;
int nLength;
int i;
// Create the list of folders
if(m_pFolderList == NULL)
m_pFolderList = new CPtrList;
m_pFolderList->RemoveAll();
UpdateData();
// Add the folder from input field first ...
if(m_strFolder.IsEmpty() == FALSE)
{
nLength = m_strFolder.GetLength() + 1;
szStr = new char[nLength];
strcpy(szStr, m_strFolder);
m_pFolderList->AddTail(szStr);
}
// ... then the checked items from the folder list
for(i = 0; i < m_Folders.GetCount(); i++)
{
if(m_Folders.GetCheck(i) == 1)
{
nLength = m_Folders.GetTextLen(i) + 1;
szStr = new char[nLength];
m_Folders.GetText(i, szStr);
m_pFolderList->AddTail(szStr);
}
}
// Create the list of extensions
if(m_pExtList == NULL)
m_pExtList = new CPtrList;
m_pExtList->RemoveAll();
// Add the extension from input field first ...
if(m_strExt.IsEmpty() == FALSE)
{
nLength = m_strExt.GetLength() + 5;
szStr = new char[nLength];
strcpy(szStr, m_strExt);
m_pExtList->AddTail(szStr);
}
// .. then extensions from the list
for(i = 0; i < m_Exts.GetCount(); i++)
{
if(m_Exts.GetCheck(i) == 1)
{
nLength = m_Exts.GetTextLen(i) + 5;
szStr = new char[nLength];
m_Exts.GetText(i, szStr);
m_pExtList->AddTail(szStr);
}
}
// If no items selected, show the warning
if(m_pFolderList->GetCount() == 0 || m_pExtList->GetCount() == 0)
{
AfxMessageBox(IDS_NOFOLDEROREXT, MB_OK | MB_ICONWARNING);
return;
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -