📄 optiondlg.cpp
字号:
//OptionDlg.cpp
#include "GSFinder.h"
#include "OptionDlg.h"
#include "Association.h"
COptionDlg* pod;
//ADD START TODA
///////////////////////////////////////////////////////////////
static int CALLBACK EnumFontsProc(
LOGFONT* lplf,
TEXTMETRIC* lptm,
DWORD dwType,
LPARAM lpData)
{
HWND hDlg = (HWND)lpData;
HWND hLB = GetDlgItem(hDlg, IDC_LIST_FONTNAME);
//傾僀僥儉捛壛
SendMessage(hLB, LB_ADDSTRING, 0, (LPARAM)lplf->lfFaceName);
//傾僀僥儉悢庢摼
int nItem = SendMessage(hLB, LB_GETCOUNT, 0, 0);
//傾僀僥儉
if(0 == wcscmp(g_MainWnd.m_szFontName, lplf->lfFaceName) || nItem==1)
SendMessage(hLB, LB_SETCURSEL, (nItem-1), 0);
return TRUE;
}
//ADD END
///////////////////////////////////////////////////////////////
LRESULT CALLBACK PPOptionSendAppProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
{
SetWindowLong(hDlg, DWL_MSGRESULT, FALSE);
SetWindowText(GetDlgItem(hDlg, IDC_EDIT_PATH), g_MainWnd.m_szSendAppPath);
SendMessage(GetDlgItem(hDlg, IDC_CHK_QADD), BM_SETCHECK, g_MainWnd.m_bCheckQAdd?1:0, 0);
#ifndef __POCKET_PC
SendMessage(GetDlgItem(hDlg, IDC_CHK_OVERLAPPED), BM_SETCHECK, g_MainWnd.m_bOverLapped?1:0, 0);
#endif
return TRUE;
}
case WM_NOTIFY:
{
NMHDR* pnmh = (NMHDR*)lParam;
if (pnmh->code == PSN_APPLY)
{
GetWindowText(GetDlgItem(hDlg, IDC_EDIT_PATH), g_MainWnd.m_szSendAppPath, MAX_PATH);
g_MainWnd.m_bCheckQAdd = SendMessage(GetDlgItem(hDlg, IDC_CHK_QADD), BM_GETCHECK, 0, 0)?TRUE:FALSE;
#ifndef __POCKET_PC
g_MainWnd.m_bOverLapped = SendMessage(GetDlgItem(hDlg, IDC_CHK_OVERLAPPED), BM_GETCHECK, 0, 0)?TRUE:FALSE;
#endif
return TRUE;
}
break;
}
#ifdef __POCKET_PC
case WM_PAINT:
return DefDlgPaintProc(hDlg, wParam, lParam);
case WM_CTLCOLORSTATIC:
return DefDlgCtlColorStaticProc(hDlg, wParam, lParam);
#endif
}
return FALSE;
}
///////////////////////////////////////////////////////////////
LRESULT CALLBACK PPOptionControlProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
{
SetWindowLong(hDlg, DWL_MSGRESULT, FALSE);
#ifdef __POCKET_PC
SendMessage(GetDlgItem(hDlg, IDC_CHK_DBLCLK), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bSingleClick?0:1, 0); //斀懳側偺偵拲堄
SendMessage(GetDlgItem(hDlg, IDC_CHK_HIDEHEADER), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bHideHeader?1:0, 0);
#else
SendMessage(GetDlgItem(hDlg, IDC_CHK_SINGLECLICK), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bSingleClick?1:0, 0);
#endif
SendMessage(GetDlgItem(hDlg, IDC_CHECK_ADDUPPER), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bAddUpper?1:0, 0);
//ADD START TODA
SendMessage(GetDlgItem(hDlg, IDC_CHECK_CONTEXTMENU), BM_SETCHECK, g_MainWnd.m_bContextMenu?1:0, 0);
//ADD END
return TRUE;
}
case WM_NOTIFY:
{
NMHDR* pnmh = (NMHDR*)lParam;
if (pnmh->code == PSN_APPLY)
{
#ifdef __POCKET_PC
g_MainWnd.m_ListView.m_Settings.bSingleClick = SendMessage(GetDlgItem(hDlg, IDC_CHK_DBLCLK), BM_GETCHECK, 0, 0)?FALSE:TRUE;
g_MainWnd.m_ListView.m_Settings.bHideHeader = SendMessage(GetDlgItem(hDlg, IDC_CHK_HIDEHEADER), BM_GETCHECK, 0, 0)?TRUE:FALSE;
#else
g_MainWnd.m_ListView.m_Settings.bSingleClick = SendMessage(GetDlgItem(hDlg, IDC_CHK_SINGLECLICK), BM_GETCHECK, 0, 0)?TRUE:FALSE;
#endif
g_MainWnd.m_ListView.m_Settings.bAddUpper = SendMessage(GetDlgItem(hDlg, IDC_CHECK_ADDUPPER), BM_GETCHECK, 0, 0)?TRUE:FALSE;
//ADD START TODA
g_MainWnd.m_bContextMenu = SendMessage(GetDlgItem(hDlg, IDC_CHECK_CONTEXTMENU), BM_GETCHECK, 0, 0)?TRUE:FALSE;
//ADD END
return TRUE;
}
break;
}
#ifdef __POCKET_PC
case WM_PAINT:
return DefDlgPaintProc(hDlg, wParam, lParam);
case WM_CTLCOLORSTATIC:
return DefDlgCtlColorStaticProc(hDlg, wParam, lParam);
#endif
}
return FALSE;
}
///////////////////////////////////////////////////////////////
LRESULT CALLBACK PPOptionViewProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
{
SetWindowLong(hDlg, DWL_MSGRESULT, FALSE);
SendMessage(GetDlgItem(hDlg, IDC_CHK_HIDDEN), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bHideHidden?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_SYSTEM), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bHideSystem?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_ROM), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bHideROM?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_FOLDER), BM_SETCHECK, g_MainWnd.m_ListView.m_bHideFolder?1:0, 0); //ADD TODA
SendMessage(GetDlgItem(hDlg, IDC_CHK_SAVEFOLDER), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bSaveFolder?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_SHORTCUT_NAME), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bNotShortcutName?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_NOT_SHOWEXT), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bNotShowExt?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_TIMESTUMP), BM_SETCHECK, g_MainWnd.m_ListView.m_bTimeStump?1:0, 0); //ADD TODA
return TRUE;
}
case WM_NOTIFY:
{
NMHDR* pnmh = (NMHDR*)lParam;
if (pnmh->code == PSN_APPLY)
{
g_MainWnd.m_ListView.m_Settings.bHideHidden = SendMessage(GetDlgItem(hDlg, IDC_CHK_HIDDEN), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bHideSystem = SendMessage(GetDlgItem(hDlg, IDC_CHK_SYSTEM), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bHideROM = SendMessage(GetDlgItem(hDlg, IDC_CHK_ROM), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_bHideFolder = SendMessage(GetDlgItem(hDlg, IDC_CHK_FOLDER), BM_GETCHECK, 0, 0)?TRUE:FALSE; //ADD TODA
g_MainWnd.m_ListView.m_Settings.bSaveFolder = SendMessage(GetDlgItem(hDlg, IDC_CHK_SAVEFOLDER), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bNotShortcutName = SendMessage(GetDlgItem(hDlg, IDC_CHK_SHORTCUT_NAME), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bNotShowExt = SendMessage(GetDlgItem(hDlg, IDC_CHK_NOT_SHOWEXT), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_bTimeStump = SendMessage(GetDlgItem(hDlg, IDC_CHK_TIMESTUMP), BM_GETCHECK, 0, 0)?TRUE:FALSE; //ADD TODA
return TRUE;
}
break;
}
#ifdef __POCKET_PC
case WM_PAINT:
return DefDlgPaintProc2(hDlg, wParam, lParam);
case WM_CTLCOLORSTATIC:
return DefDlgCtlColorStaticProc(hDlg, wParam, lParam);
#endif
}
return FALSE;
}
///////////////////////////////////////////////////////////////
LRESULT CALLBACK PPOptionIconProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
{
SetWindowLong(hDlg, DWL_MSGRESULT, FALSE);
SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_FILEICON), BM_SETCHECK, g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadFileIcon?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_ROMICON), BM_SETCHECK, g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadROMIcon?1:0, 0);
//ADD START TODA
SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_COMPICON), BM_SETCHECK, g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadCompIcon?1:0, 0);
//ADD END
return TRUE;
}
case WM_NOTIFY:
{
NMHDR* pnmh = (NMHDR*)lParam;
if (pnmh->code == PSN_APPLY)
{
g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadFileIcon = SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_FILEICON), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadROMIcon = SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_ROMICON), BM_GETCHECK, 0, 0)?TRUE:FALSE;
//ADD START TODA
g_MainWnd.m_ListView.m_ImageListSettings.bNotLoadCompIcon = SendMessage(GetDlgItem(hDlg, IDC_CHK_NOTLOAD_COMPICON), BM_GETCHECK, 0, 0)?TRUE:FALSE;
//ADD END
return TRUE;
}
break;
}
case WM_COMMAND:
{
if (LOWORD(wParam)==IDC_BTN_DELETE_ICON)
{
pod->m_bRefreshIcon = TRUE;
EnableWindow(GetDlgItem(hDlg, IDC_BTN_DELETE_ICON), FALSE);
return TRUE;
}
break;
}
#ifdef __POCKET_PC
case WM_PAINT:
return DefDlgPaintProc(hDlg, wParam, lParam);
case WM_CTLCOLORSTATIC:
return DefDlgCtlColorStaticProc(hDlg, wParam, lParam);
#endif
}
return FALSE;
}
//ADD START TODA
///////////////////////////////////////////////////////////////
LRESULT CALLBACK PPOptionCompressProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
{
SetWindowLong(hDlg, DWL_MSGRESULT, FALSE);
SendMessage(GetDlgItem(hDlg, IDC_RADIO_LHA), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.nCompDLL == COMPDLL_MODE_LHA?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_RADIO_ZIP), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.nCompDLL == COMPDLL_MODE_ZIP?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_AUTOUNCOMP), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bAutoUnComp?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_MAKEDIR), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bMakeDir?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_MOVEDIR), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bMoveDir?1:0, 0);
SendMessage(GetDlgItem(hDlg, IDC_CHK_DBLCLICK), BM_SETCHECK, g_MainWnd.m_ListView.m_Settings.bDblClick?1:0, 0);
SetWindowText(GetDlgItem(hDlg, IDC_EDIT_PATH), g_MainWnd.m_ListView.m_szCompressFolder);
if(!g_MainWnd.m_Compress.IsCompress(COMPDLL_MODE_LHA)) {
SetWindowLong(GetDlgItem(hDlg,IDC_RADIO_LHA), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_RADIO_LHA), GWL_STYLE)|WS_DISABLED);
SendMessage(GetDlgItem(hDlg, IDC_RADIO_LHA), BM_SETCHECK, 0, 0);
}
if(!g_MainWnd.m_Compress.IsCompress(COMPDLL_MODE_ZIP)) {
SetWindowLong(GetDlgItem(hDlg,IDC_RADIO_ZIP), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_RADIO_ZIP), GWL_STYLE)|WS_DISABLED);
SendMessage(GetDlgItem(hDlg, IDC_RADIO_ZIP), BM_SETCHECK, 0, 0);
}
if(!g_MainWnd.m_Compress.IsCompress(COMPDLL_MODE_LHA) &&
!g_MainWnd.m_Compress.IsCompress(COMPDLL_MODE_ZIP)) {
SetWindowLong(GetDlgItem(hDlg,IDC_CHK_AUTOUNCOMP), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_CHK_AUTOUNCOMP), GWL_STYLE)|WS_DISABLED);
SetWindowLong(GetDlgItem(hDlg,IDC_CHK_MAKEDIR), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_CHK_MAKEDIR), GWL_STYLE)|WS_DISABLED);
SetWindowLong(GetDlgItem(hDlg,IDC_CHK_MOVEDIR), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_CHK_MOVEDIR), GWL_STYLE)|WS_DISABLED);
SetWindowLong(GetDlgItem(hDlg,IDC_CHK_DBLCLICK), GWL_STYLE,
GetWindowLong(GetDlgItem(hDlg,IDC_CHK_DBLCLICK), GWL_STYLE)|WS_DISABLED);
EnableWindow(GetDlgItem(hDlg,IDC_EDIT_PATH), FALSE);
}
return TRUE;
}
case WM_NOTIFY:
{
NMHDR* pnmh = (NMHDR*)lParam;
if (pnmh->code == PSN_APPLY)
{
g_MainWnd.m_ListView.m_Settings.nCompDLL =
SendMessage(GetDlgItem(hDlg, IDC_RADIO_LHA), BM_GETCHECK, 0, 0)?COMPDLL_MODE_LHA:COMPDLL_MODE_ZIP;
g_MainWnd.m_ListView.m_Settings.bAutoUnComp =
SendMessage(GetDlgItem(hDlg, IDC_CHK_AUTOUNCOMP), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bMakeDir =
SendMessage(GetDlgItem(hDlg, IDC_CHK_MAKEDIR), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bMoveDir =
SendMessage(GetDlgItem(hDlg, IDC_CHK_MOVEDIR), BM_GETCHECK, 0, 0)?TRUE:FALSE;
g_MainWnd.m_ListView.m_Settings.bDblClick =
SendMessage(GetDlgItem(hDlg, IDC_CHK_DBLCLICK), BM_GETCHECK, 0, 0)?TRUE:FALSE;
GetWindowText(GetDlgItem(hDlg, IDC_EDIT_PATH), g_MainWnd.m_ListView.m_szCompressFolder, MAX_PATH);
return TRUE;
}
break;
}
#ifdef __POCKET_PC
case WM_PAINT:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -