Tidy game selection dialog slightly, rename checkbox for "Show available only" to "Show available" and change behaviour to match. Add checkbox for "Show unavailable". Make unavailable driver count independent of hardware filter.
This commit is contained in:
parent
c4d6aad336
commit
cfc368bd8a
|
@ -229,7 +229,7 @@ BEGIN
|
|||
CONTROL " I understand and agree to be bound by the terms of the above license agreement",IDC_ACCEPTLICENSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,6,170,282,14
|
||||
END
|
||||
|
||||
IDD_SELNEW DIALOGEX 0, 0, 499, 360
|
||||
IDD_SELNEW DIALOGEX 0, 0, 499, 362
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Select Game"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
|
@ -256,23 +256,24 @@ BEGIN
|
|||
EDITTEXT IDC_TEXTSYSTEM,60,238,268,8,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
EDITTEXT IDC_TEXTGENRE,60,248,268,8,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
EDITTEXT IDC_TEXTNOTES,60,258,268,8,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
GROUPBOX "Filters",IDC_STATIC_SYS,336,238,157,99
|
||||
GROUPBOX "Filters",IDC_STATIC_SYS,336,238,157,95
|
||||
LTEXT "",IDC_DRVCOUNT,10,276,230,8
|
||||
CONTROL "Rom Info",IDROMINFO,"Button",WS_TABSTOP,262,274,68,14
|
||||
GROUPBOX "Options",IDC_STATIC_OPT,4,294,330,35
|
||||
CONTROL "Show available only",IDC_CHECKAVAILABLEONLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,306,80,8
|
||||
CONTROL "Always show clones",IDC_CHECKAUTOEXPAND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,316,80,8
|
||||
CONTROL "Use zipnames",IDC_SEL_SHORTNAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,306,80,8
|
||||
CONTROL "Latin text only",IDC_SEL_ASCIIONLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,316,80,8
|
||||
CONTROL "ROMs Dirs...",IDROM,"Button",WS_TABSTOP,189,309,68,14
|
||||
CONTROL "Scan ROMs",IDRESCAN,"Button",WS_TABSTOP,262,309,68,14
|
||||
CONTROL "Cancel",IDCANCEL,"Button",WS_TABSTOP,372,340,58,14
|
||||
CONTROL "Play",IDOK,"Button",WS_TABSTOP,435,340,58,14
|
||||
GROUPBOX "IPS",IDC_SEL_IPSGROUP,4,331,174,27
|
||||
CONTROL "Apply Patches",IDC_SEL_APPLYIPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,343,90,8
|
||||
CONTROL "IPS Manager",IDC_SEL_IPSMANAGER,"Button",WS_TABSTOP,95,340,78,14
|
||||
GROUPBOX "Search",IDC_SEL_SEARCHGROUP,180,331,154,27
|
||||
EDITTEXT IDC_SEL_SEARCH,185,340,140,12,ES_AUTOHSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Options",IDC_STATIC_OPT,4,294,330,39
|
||||
CONTROL "Show available",IDC_CHECKAVAILABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,306,80,8
|
||||
CONTROL "Show unavailable",IDC_CHECKUNAVAILABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,316,80,8
|
||||
CONTROL "Always show clones",IDC_CHECKAUTOEXPAND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,306,80,8
|
||||
CONTROL "Use zipnames",IDC_SEL_SHORTNAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,316,80,8
|
||||
CONTROL "Latin text only",IDC_SEL_ASCIIONLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,181,306,80,8
|
||||
CONTROL "ROMs Dirs...",IDROM,"Button",WS_TABSTOP,262,301,68,14
|
||||
CONTROL "Scan ROMs",IDRESCAN,"Button",WS_TABSTOP,262,316,68,14
|
||||
CONTROL "Cancel",IDCANCEL,"Button",WS_TABSTOP,372,342,58,14
|
||||
CONTROL "Play",IDOK,"Button",WS_TABSTOP,435,342,58,14
|
||||
GROUPBOX "IPS",IDC_SEL_IPSGROUP,4,333,174,27
|
||||
CONTROL "Apply Patches",IDC_SEL_APPLYIPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,345,90,8
|
||||
CONTROL "IPS Manager",IDC_SEL_IPSMANAGER,"Button",WS_TABSTOP,95,342,78,14
|
||||
GROUPBOX "Search",IDC_SEL_SEARCHGROUP,180,333,154,27
|
||||
EDITTEXT IDC_SEL_SEARCH,185,342,142,12,ES_AUTOHSCROLL | WS_TABSTOP
|
||||
END
|
||||
|
||||
IDD_CAPTURE DIALOGEX 0, 0, 270, 90
|
||||
|
|
|
@ -97,7 +97,7 @@
|
|||
#define IDC_SCREENSHOT_V 20057
|
||||
#define IDC_SCREENSHOT2_H 20058
|
||||
#define IDC_SCREENSHOT2_V 20059
|
||||
#define IDC_CHECKAVAILABLEONLY 20060
|
||||
#define IDC_CHECKAVAILABLE 20060
|
||||
#define IDCAPTURE 20061
|
||||
#define IDC_ADVANCE 20062
|
||||
#define IDC_LABELROMNAME 20063
|
||||
|
@ -174,6 +174,7 @@
|
|||
#define IDC_SEL_SEARCH 20134
|
||||
#define IDC_SEL_SEARCHGROUP 20135
|
||||
#define IDC_RESOLUTION 20136
|
||||
#define IDC_CHECKUNAVAILABLE 20137
|
||||
|
||||
#define IDC_SUPPORTDIR_EDIT1 20150
|
||||
#define IDC_SUPPORTDIR_EDIT2 20151
|
||||
|
|
|
@ -179,7 +179,8 @@ static int SnesValue = HARDWARE_PREFIX_NINTENDO_SNES >> 24;
|
|||
static int MASKSNES = 1 << SnesValue;
|
||||
static int MASKALL = MASKCAPMISC | MASKCAVE | MASKCPS | MASKCPS2 | MASKCPS3 | MASKDATAEAST | MASKGALAXIAN | MASKIREM | MASKKANEKO | MASKKONAMI | MASKNEOGEO | MASKPACMAN | MASKPGM | MASKPSIKYO | MASKSEGA | MASKSETA | MASKTAITO | MASKTECHNOS | MASKTOAPLAN | MASKMISCPRE90S | MASKMISCPOST90S | MASKMEGADRIVE | MASKPCENGINE | MASKSNES;
|
||||
|
||||
#define AVAILONLY (1 << 28)
|
||||
#define UNAVAILABLE (1 << 27)
|
||||
#define AVAILABLE (1 << 28)
|
||||
#define AUTOEXPAND (1 << 29)
|
||||
#define SHOWSHORT (1 << 30)
|
||||
#define ASCIIONLY (1 << 31)
|
||||
|
@ -349,9 +350,12 @@ static int SelListMake()
|
|||
if (BurnDrvGetFlags() & BDF_BOARDROM) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (BurnDrvGetText(DRV_PARENT) != NULL && (BurnDrvGetFlags() & BDF_CLONE)) { // Skip clones
|
||||
continue;
|
||||
}
|
||||
|
||||
if(!gameAv[i]) nMissingDrvCount++;
|
||||
|
||||
int nHardware = 1 << (BurnDrvGetHardwareCode() >> 24);
|
||||
if ((nHardware & MASKALL) && ((nHardware & nLoadMenuShowX) || (nHardware & MASKALL) == 0)) {
|
||||
|
@ -376,9 +380,11 @@ static int SelListMake()
|
|||
if (!StringFound && !StringFound2) continue;
|
||||
}
|
||||
|
||||
if(!gameAv[i]) nMissingDrvCount++;
|
||||
|
||||
if (avOk && (nLoadMenuShowX & AVAILONLY) && !gameAv[i]) { // Skip non-available games if needed
|
||||
if (avOk && (!(nLoadMenuShowX & UNAVAILABLE)) && !gameAv[i]) { // Skip non-available games if needed
|
||||
continue;
|
||||
}
|
||||
|
||||
if (avOk && (!(nLoadMenuShowX & AVAILABLE)) && gameAv[i]) { // Skip available games if needed
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -403,10 +409,12 @@ static int SelListMake()
|
|||
if (BurnDrvGetFlags() & BDF_BOARDROM) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
if (BurnDrvGetTextA(DRV_PARENT) == NULL || !(BurnDrvGetFlags() & BDF_CLONE)) { // Skip parents
|
||||
continue;
|
||||
}
|
||||
|
||||
if(!gameAv[i]) nMissingDrvCount++;
|
||||
|
||||
int nHardware = 1 << (BurnDrvGetHardwareCode() >> 24);
|
||||
if ((nHardware & MASKALL) && ((nHardware & nLoadMenuShowX) || ((nHardware & MASKALL) == 0))) {
|
||||
|
@ -431,9 +439,11 @@ static int SelListMake()
|
|||
if (!StringFound && !StringFound2) continue;
|
||||
}
|
||||
|
||||
if(!gameAv[i]) nMissingDrvCount++;
|
||||
|
||||
if (avOk && (nLoadMenuShowX & AVAILONLY) && !gameAv[i]) { // Skip non-available games if needed
|
||||
if (avOk && (!(nLoadMenuShowX & UNAVAILABLE)) && !gameAv[i]) { // Skip non-available games if needed
|
||||
continue;
|
||||
}
|
||||
|
||||
if (avOk && (!(nLoadMenuShowX & AVAILABLE)) && gameAv[i]) { // Skip available games if needed
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -635,7 +645,8 @@ static void RefreshPanel()
|
|||
}
|
||||
|
||||
CheckDlgButton(hSelDlg, IDC_CHECKAUTOEXPAND, (nLoadMenuShowX & AUTOEXPAND) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hSelDlg, IDC_CHECKAVAILABLEONLY, (nLoadMenuShowX & AVAILONLY) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hSelDlg, IDC_CHECKAVAILABLE, (nLoadMenuShowX & AVAILABLE) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hSelDlg, IDC_CHECKUNAVAILABLE, (nLoadMenuShowX & UNAVAILABLE) ? BST_CHECKED : BST_UNCHECKED);
|
||||
|
||||
CheckDlgButton(hSelDlg, IDC_SEL_SHORTNAME, nLoadMenuShowX & SHOWSHORT ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hSelDlg, IDC_SEL_ASCIIONLY, nLoadMenuShowX & ASCIIONLY ? BST_CHECKED : BST_UNCHECKED);
|
||||
|
@ -1003,7 +1014,7 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
|
|||
InitCommonControls();
|
||||
|
||||
hSelDlg = hDlg;
|
||||
|
||||
|
||||
SendDlgItemMessage(hDlg, IDC_SCREENSHOT_H, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)NULL);
|
||||
SendDlgItemMessage(hDlg, IDC_SCREENSHOT_V, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)NULL);
|
||||
|
||||
|
@ -1371,8 +1382,12 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
|
|||
bDialogCancel = true;
|
||||
SendMessage(hDlg, WM_CLOSE, 0, 0);
|
||||
return 0;
|
||||
case IDC_CHECKAVAILABLEONLY:
|
||||
nLoadMenuShowX ^= AVAILONLY;
|
||||
case IDC_CHECKAVAILABLE:
|
||||
nLoadMenuShowX ^= AVAILABLE;
|
||||
RebuildEverything();
|
||||
break;
|
||||
case IDC_CHECKUNAVAILABLE:
|
||||
nLoadMenuShowX ^= UNAVAILABLE;
|
||||
RebuildEverything();
|
||||
break;
|
||||
case IDC_CHECKAUTOEXPAND:
|
||||
|
@ -1598,7 +1613,7 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
|
|||
DrawIconEx(lplvcd->nmcd.hdc, rect.left, rect.top, hNotFoundEss, nIconsSizeXY, nIconsSizeXY, 0, NULL, DI_NORMAL);
|
||||
rect.left += nIconsSizeXY + 4;
|
||||
} else {
|
||||
if (!(nLoadMenuShowX & AVAILONLY) && !(gameAv[((NODEINFO*)TvItem.lParam)->nBurnDrvNo] & 2)) {
|
||||
if (!(nLoadMenuShowX & AVAILABLE) && !(gameAv[((NODEINFO*)TvItem.lParam)->nBurnDrvNo] & 2)) {
|
||||
DrawIconEx(lplvcd->nmcd.hdc, rect.left, rect.top, hNotFoundNonEss, nIconsSizeXY, nIconsSizeXY, 0, NULL, DI_NORMAL);
|
||||
rect.left += nIconsSizeXY + 4;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue