mirror of https://github.com/PCSX2/pcsx2.git
LilyPad: Minor GUI rearrangements and attempts to beautify. Relabeled "Hacks" that aren't really all that hackish. To be released as 0.9.11.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@802 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
2c0f8fe41e
commit
e5f8c7dbe9
|
@ -122,18 +122,6 @@ void RefreshEnabledDevices(int updateDeviceList) {
|
|||
else
|
||||
dm->DisableDevice(i);
|
||||
}
|
||||
|
||||
// Older code. Newer version is a bit uglier, but doesn't
|
||||
// release devices that are enabled both before and afterwards.
|
||||
// So a bit nicer, in theory.
|
||||
/*
|
||||
dm->DisableAllDevices();
|
||||
dm->EnableDevices(KEYBOARD, config.keyboardApi);
|
||||
dm->EnableDevices(MOUSE, config.mouseApi);
|
||||
if (config.gameApis.directInput) {
|
||||
dm->EnableDevices(OTHER, DI);
|
||||
}
|
||||
//*/
|
||||
}
|
||||
|
||||
// Disables/enables devices as necessary. Also updates diagnostic list
|
||||
|
@ -278,8 +266,8 @@ void SelChanged(int port, int slot) {
|
|||
LVITEMW item;
|
||||
item.iItem = index;
|
||||
item.mask = LVIF_TEXT;
|
||||
item.pszText = temp[3];
|
||||
for (j=0; j<3; j++) {
|
||||
item.pszText = temp[3];
|
||||
item.iSubItem = j;
|
||||
item.cchTextMax = sizeof(temp[0])/sizeof(temp[3][0]);
|
||||
if (!ListView_GetItem(hWndList, &item)) break;
|
||||
|
@ -682,7 +670,7 @@ int SaveSettings(wchar_t *file=0) {
|
|||
}
|
||||
DeleteFileW(file);
|
||||
|
||||
WritePrivateProfileStringW(L"General Settings", L"Last Config Path", config.lastSaveConfigPath, ini);
|
||||
WritePrivateProfileStringW(L"General Settings", L"Last Config Path", config.lastSaveConfigPath, ini);
|
||||
WritePrivateProfileStringW(L"General Settings", L"Last Config Name", config.lastSaveConfigFileName, ini);
|
||||
|
||||
// Just check first, last, and all pad bindings. Should be more than enough. No real need to check
|
||||
|
@ -1289,20 +1277,15 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
EndBinding(hWnd);
|
||||
UnselectAll(hWndList);
|
||||
int index = -1;
|
||||
if (command == 0x7F) {
|
||||
if (dev->api == IGNORE_KEYBOARD) {
|
||||
index = BindCommand(dev, uid, 0, 0, command, BASE_SENSITIVITY, 0);
|
||||
}
|
||||
if (command == 0x7F && dev->api == IGNORE_KEYBOARD) {
|
||||
index = BindCommand(dev, uid, 0, 0, command, BASE_SENSITIVITY, 0);
|
||||
}
|
||||
else if (command < 0x30) {
|
||||
if (!(uid & UID_POV)) {
|
||||
index = BindCommand(dev, uid, port, slot, command, BASE_SENSITIVITY, 0);
|
||||
}
|
||||
index = BindCommand(dev, uid, port, slot, command, BASE_SENSITIVITY, 0);
|
||||
}
|
||||
if (index >= 0) {
|
||||
PropSheet_Changed(hWndProp, hWnds[port][slot]);
|
||||
if (index >= 0)
|
||||
ListView_SetItemState(hWndList, index, LVIS_SELECTED, LVIS_SELECTED);
|
||||
ListView_SetItemState(hWndList, index, LVIS_SELECTED, LVIS_SELECTED);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1332,6 +1315,7 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
SetWindowLong(hWnd, DWL_MSGRESULT, PSNRET_NOERROR);
|
||||
return 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
else if (n->hdr.idFrom == IDC_LIST) {
|
||||
static int NeedUpdate = 0;
|
||||
|
@ -1355,11 +1339,9 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
NeedUpdate = 0;
|
||||
SelChanged(port, slot);
|
||||
}
|
||||
EndBinding(hWnd);
|
||||
}
|
||||
else {
|
||||
EndBinding(hWnd);
|
||||
}
|
||||
// Stop binding when user does something else.
|
||||
EndBinding(hWnd);
|
||||
}
|
||||
break;
|
||||
case WM_HSCROLL:
|
||||
|
@ -1384,21 +1366,22 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
Binding *b;
|
||||
Device *dev;
|
||||
if (GetBinding(port, slot, index, dev, b, ffb)) {
|
||||
int uid = dev->virtualControls[b->controlIndex].uid;
|
||||
const static unsigned int axisUIDs[3] = {UID_AXIS_NEG, UID_AXIS_POS, UID_AXIS};
|
||||
int uid = dev->virtualControls[b->controlIndex].uid;
|
||||
uid = (uid&0x00FFFFFF) | axisUIDs[cbsel];
|
||||
Binding backup = *b;
|
||||
DeleteSelected(port, slot);
|
||||
int index = BindCommand(dev, uid, port, slot, backup.command, backup.sensitivity, backup.turbo);
|
||||
ListView_SetItemState(hWndList, index, LVIS_SELECTED, LVIS_SELECTED);
|
||||
PropSheet_Changed(hWndProp, hWnd);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (HIWORD(wParam)==CBN_SELCHANGE && LOWORD(wParam) == IDC_FF_EFFECT) {
|
||||
unsigned int typeIndex = SendMessage((HWND)lParam, CB_GETCURSEL, 0, 0);
|
||||
int typeIndex = SendMessage((HWND)lParam, CB_GETCURSEL, 0, 0);
|
||||
if (typeIndex >= 0)
|
||||
ChangeEffect(port, slot, 0, 0, &typeIndex);
|
||||
ChangeEffect(port, slot, 0, 0, (unsigned int*)&typeIndex);
|
||||
}
|
||||
else if (HIWORD(wParam)==BN_CLICKED) {
|
||||
EndBinding(hWnd);
|
||||
|
@ -1408,10 +1391,7 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
PropSheet_Changed(hWndProp, hWnd);
|
||||
}
|
||||
else if (cmd == ID_CLEAR) {
|
||||
int changed=0;
|
||||
while (DeleteByIndex(port, slot, 0)) changed++;
|
||||
if (changed)
|
||||
PropSheet_Changed(hWndProp, hWnd);
|
||||
while (DeleteByIndex(port, slot, 0)) PropSheet_Changed(hWndProp, hWnd);
|
||||
}
|
||||
else if (cmd == ID_BIG_MOTOR || cmd == ID_SMALL_MOTOR) {
|
||||
int i = (int)SendMessage(GetDlgItem(hWnd, IDC_FORCEFEEDBACK), CB_GETCURSEL, 0, 0);
|
||||
|
@ -1788,7 +1768,6 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L
|
|||
SetVolume(100);
|
||||
}
|
||||
|
||||
|
||||
config.debug = (IsDlgButtonChecked(hWnd, IDC_DEBUG_FILE) == BST_CHECKED);
|
||||
config.multipleBinding = (IsDlgButtonChecked(hWnd, IDC_MULTIPLE_BINDING) == BST_CHECKED);
|
||||
|
||||
|
@ -1821,10 +1800,6 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L
|
|||
UpdatePadList(hWnd);
|
||||
|
||||
PropSheet_Changed(hWndProp, hWnd);
|
||||
/*
|
||||
if (needUpdate) {
|
||||
UpdatePadPages();
|
||||
}//*/
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
|
@ -1838,6 +1813,7 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L
|
|||
return 0;
|
||||
case PSN_SETACTIVE:
|
||||
//selected = 0;
|
||||
UpdatePadList(hWnd);
|
||||
return 0;
|
||||
case PSN_APPLY:
|
||||
selected = 0;
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
|
||||
Device *dev;
|
||||
|
||||
INT_PTR CALLBACK DiagDialog(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM lParam) {
|
||||
INT_PTR CALLBACK DiagDialog(HWND hWnd, unsigned int uMsg, WPARAM wParam, LPARAM lParam) {
|
||||
int i;
|
||||
HWND hWndList = GetDlgItem(hWnd, IDC_LIST);
|
||||
static int fullRefresh;
|
||||
if (dev) {
|
||||
switch (msg) {
|
||||
switch (uMsg) {
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
fullRefresh = 1;
|
||||
|
@ -91,16 +91,15 @@ INT_PTR CALLBACK DiagDialog(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l
|
|||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
if (1) {
|
||||
PSHNOTIFY* n = (PSHNOTIFY*) lParam;
|
||||
if (n->hdr.idFrom != IDC_LIST || n->hdr.code != LVN_KEYDOWN) break;
|
||||
NMLVKEYDOWN *key = (NMLVKEYDOWN *) n;
|
||||
if (key->wVKey != VK_ESCAPE) break;
|
||||
{
|
||||
NMLVKEYDOWN *n = (NMLVKEYDOWN *) lParam;
|
||||
// Don't always get the notification when testing DirectInput non-keyboard devices.
|
||||
// Don't get it (Or want it) when testing keyboards.
|
||||
if (n->hdr.idFrom != IDC_LIST || n->hdr.code != LVN_KEYDOWN || n->wVKey != VK_ESCAPE) break;
|
||||
}
|
||||
else {
|
||||
case WM_ACTIVATE:
|
||||
if (wParam != WA_INACTIVE) break;
|
||||
}
|
||||
if (uMsg == WM_ACTIVATE && wParam != WA_INACTIVE) break;
|
||||
break;
|
||||
case WM_CLOSE:
|
||||
KillTimer(hWnd, 1);
|
||||
dm->ReleaseInput();
|
||||
|
|
|
@ -9,10 +9,12 @@
|
|||
#include "PS2Etypes.h"
|
||||
#include <stdio.h>
|
||||
|
||||
// Aka htons, without the winsock dependency.
|
||||
inline static u16 flipShort(u16 s) {
|
||||
return (s>>8) | (s<<8);
|
||||
}
|
||||
|
||||
// Aka htonl, without the winsock dependency.
|
||||
inline static u32 flipLong(u32 l) {
|
||||
return (((u32)flipShort((u16)l))<<16) | flipShort((u16)(l>>16));
|
||||
}
|
||||
|
@ -158,12 +160,10 @@ public:
|
|||
}
|
||||
|
||||
{
|
||||
DIOBJECTDATAFORMAT *formats = (DIOBJECTDATAFORMAT*)malloc(sizeof(DIOBJECTDATAFORMAT) * numPhysicalControls);
|
||||
DIOBJECTDATAFORMAT *formats = (DIOBJECTDATAFORMAT*)calloc(numPhysicalControls, sizeof(DIOBJECTDATAFORMAT));
|
||||
for (i=0; i<numPhysicalControls; i++) {
|
||||
formats[i].pguid = 0;
|
||||
formats[i].dwType = physicalControls[i].type | DIDFT_MAKEINSTANCE(physicalControls[i].id);
|
||||
formats[i].dwOfs = 4*i;
|
||||
formats[i].dwFlags = 0;
|
||||
}
|
||||
DIDATAFORMAT format;
|
||||
format.dwSize = sizeof(format);
|
||||
|
@ -336,7 +336,6 @@ public:
|
|||
if (diEffects[i].die) {
|
||||
diEffects[i].die->Stop();
|
||||
diEffects[i].die->Release();
|
||||
diEffects[i].die = 0;
|
||||
}
|
||||
}
|
||||
free(diEffects);
|
||||
|
|
|
@ -276,7 +276,6 @@ public:
|
|||
virtual void PostRead();
|
||||
};
|
||||
|
||||
// Don't need objects for devices with no bound controls.
|
||||
class InputDeviceManager {
|
||||
public:
|
||||
Device **devices;
|
||||
|
@ -289,8 +288,8 @@ public:
|
|||
// All old bindings are copied to matching devices.
|
||||
|
||||
// When old devices are missing, I do a slightly more careful search
|
||||
// using id2s and create new dummy devices if no matches.
|
||||
|
||||
// using productIDs and then (in desperation) displayName.
|
||||
// Finally create new dummy devices if no matches found.
|
||||
void CopyBindings(int numDevices, Device **devices);
|
||||
|
||||
|
||||
|
@ -300,6 +299,7 @@ public:
|
|||
void AddDevice(Device *d);
|
||||
Device *GetActiveDevice(void *info, unsigned int *uid, int *index, int *value);
|
||||
void Update(void *attachInfo);
|
||||
|
||||
// Called after reading state, after Update().
|
||||
void PostRead();
|
||||
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
#include <Dbt.h>
|
||||
#include <stdio.h>
|
||||
|
||||
// For escape timer, so as not to break GSDX+DX9.
|
||||
#include <time.h>
|
||||
|
||||
#define PADdefs
|
||||
#include "PS2Etypes.h"
|
||||
#include "PS2Edefs.h"
|
||||
|
@ -27,7 +30,7 @@ CRITICAL_SECTION readInputCriticalSection;
|
|||
HINSTANCE hInst;
|
||||
HWND hWnd;
|
||||
|
||||
// Used to toggle mouse binding.
|
||||
// Used to toggle mouse listening.
|
||||
u8 miceEnabled;
|
||||
|
||||
// 2 when both pads are initialized, 1 for one pad, etc.
|
||||
|
@ -43,7 +46,6 @@ unsigned char inBuf[50];
|
|||
#define MODE_ANALOG 0x73
|
||||
#define MODE_DS2_NATIVE 0x79
|
||||
|
||||
|
||||
int IsWindowMaximized (HWND hWnd) {
|
||||
RECT rect;
|
||||
if (GetWindowRect(hWnd, &rect)) {
|
||||
|
@ -108,8 +110,9 @@ struct ButtonSum {
|
|||
|
||||
|
||||
struct PadFreezeData {
|
||||
// Digital / Analog / Full Analog (aka DS2 Native)
|
||||
// Digital / Analog / DS2 Native
|
||||
u8 mode;
|
||||
|
||||
u8 modeLock;
|
||||
|
||||
// In config mode
|
||||
|
@ -125,8 +128,13 @@ public:
|
|||
|
||||
int lockedState;
|
||||
|
||||
// Vibration indices.
|
||||
u8 vibrateI[2];
|
||||
|
||||
// Last vibration value. Only used so as not to call vibration
|
||||
// functions when old and new values are both 0.
|
||||
u8 vibrateVal[2];
|
||||
|
||||
// Used to keep track of which pads I'm running.
|
||||
// Note that initialized pads *can* be disabled.
|
||||
// I keep track of state of non-disabled non-initialized
|
||||
|
@ -159,16 +167,12 @@ void UpdateEnabledDevices(int updateList = 0) {
|
|||
// Enable all devices I might want. Can ignore the rest.
|
||||
RefreshEnabledDevices(updateList);
|
||||
// Figure out which pads I'm getting input for.
|
||||
int padsEnabled[2][4] = {
|
||||
{pads[0][0].initialized && config.padConfigs[0][0].type != DisabledPad,
|
||||
pads[0][1].initialized && config.padConfigs[0][1].type != DisabledPad,
|
||||
pads[0][2].initialized && config.padConfigs[0][2].type != DisabledPad,
|
||||
pads[0][3].initialized && config.padConfigs[0][3].type != DisabledPad},
|
||||
{pads[1][0].initialized && config.padConfigs[1][0].type != DisabledPad,
|
||||
pads[1][1].initialized && config.padConfigs[1][1].type != DisabledPad,
|
||||
pads[1][2].initialized && config.padConfigs[1][2].type != DisabledPad,
|
||||
pads[1][3].initialized && config.padConfigs[1][3].type != DisabledPad}
|
||||
};
|
||||
int padsEnabled[2][4];
|
||||
for (int port = 0; port<2; port++) {
|
||||
for (int slot = 0; slot<4; slot++) {
|
||||
padsEnabled[port][slot] = pads[port][slot].initialized && config.padConfigs[port][slot].type != DisabledPad;
|
||||
}
|
||||
}
|
||||
for (int i=0; i<dm->numDevices; i++) {
|
||||
Device *dev = dm->devices[i];
|
||||
|
||||
|
@ -482,7 +486,6 @@ void Update(int pad) {
|
|||
pads[port][slot].lockedState = 0;
|
||||
}
|
||||
}
|
||||
lockStateChanged[port][slot] = 0;
|
||||
}
|
||||
}
|
||||
for (i=0; i<8; i++) {
|
||||
|
@ -510,7 +513,7 @@ u32 CALLBACK PS2EgetLibType(void) {
|
|||
return PS2E_LT_PAD;
|
||||
}
|
||||
|
||||
#define VERSION ((0<<8) | 9 | (10<<24))
|
||||
#define VERSION ((0<<8) | 9 | (11<<24))
|
||||
|
||||
u32 CALLBACK PS2EgetLibVersion2(u32 type) {
|
||||
ps2e = 1;
|
||||
|
@ -851,7 +854,7 @@ u8 CALLBACK PADpoll(u8 value) {
|
|||
/*
|
||||
{
|
||||
query.numBytes = 35;
|
||||
u8 test[35] = {0xFF, 0x80, 0x5A,
|
||||
u8 test[35] = {0xFF, 0x80, 0x5A,
|
||||
0x73, 0x5A, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80,
|
||||
0x73, 0x5A, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80,
|
||||
0x73, 0x5A, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80,
|
||||
|
@ -1125,7 +1128,6 @@ void CALLBACK PADabout() {
|
|||
s32 CALLBACK PADtest() {
|
||||
return 0;
|
||||
}
|
||||
#include <time.h>
|
||||
|
||||
DWORD WINAPI RenameWindowThreadProc(void *lpParameter) {
|
||||
wchar_t newTitle[200];
|
||||
|
|
|
@ -74,7 +74,7 @@ BEGIN
|
|||
PUSHBUTTON "R2",ID_R2,372,73,45,15
|
||||
PUSHBUTTON "L3",ID_L3,195,93,45,15
|
||||
PUSHBUTTON "R3",ID_R3,371,93,46,15
|
||||
GROUPBOX "D-Pad",IDC_DPAD,251,44,110,68
|
||||
GROUPBOX "D-Pad",IDC_DPAD,251,44,110,70
|
||||
PUSHBUTTON "Up",ID_DPAD_UP,285,55,35,15
|
||||
PUSHBUTTON "Left",ID_DPAD_LEFT,267,74,35,15
|
||||
PUSHBUTTON "Right",ID_DPAD_RIGHT,307,74,35,15
|
||||
|
@ -117,7 +117,7 @@ BEGIN
|
|||
EDITTEXT IDC_FF_AXIS6_SCALE,375,240,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING
|
||||
PUSHBUTTON "Test",ID_TEST,196,260,59,15
|
||||
PUSHBUTTON "Back to Controls",ID_CONTROLS,196,296,59,15
|
||||
GROUPBOX "Binding Details",ID_SENSITIVITY,195,188,222,66
|
||||
GROUPBOX "Sensitivity",ID_SENSITIVITY,195,188,222,66
|
||||
EDITTEXT IDC_AXIS_DEVICE1,203,202,208,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
COMBOBOX IDC_AXIS_DIRECTION,202,218,70,47,CBS_DROPDOWNLIST | WS_TABSTOP
|
||||
EDITTEXT IDC_AXIS_CONTROL1,203,240,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
|
@ -128,7 +128,7 @@ BEGIN
|
|||
PUSHBUTTON "Lock Input",ID_LOCK,196,260,59,15
|
||||
PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,278,59,15
|
||||
PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,296,59,15
|
||||
GROUPBOX "New Force Feedback Effect",IDC_STATIC,262,260,155,51
|
||||
GROUPBOX "Add Force Feedback Effect",IDC_STATIC,262,260,155,51
|
||||
COMBOBOX IDC_FORCEFEEDBACK,269,273,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,291,64,14
|
||||
PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,291,64,14
|
||||
|
@ -204,48 +204,48 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
|||
BEGIN
|
||||
GROUPBOX "Input APIs",IDC_STATIC,7,6,410,131
|
||||
GROUPBOX "Keyboard API",IDC_STATIC,16,16,192,61
|
||||
CONTROL "Windows messaging (Recommended)",IDC_KB_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,23,28,134,10
|
||||
CONTROL "Raw input (XP and later only)",IDC_KB_RAW,"Button",BS_AUTORADIOBUTTON,23,40,112,10
|
||||
CONTROL "DirectInput",IDC_KB_DI,"Button",BS_AUTORADIOBUTTON,23,52,112,10
|
||||
CONTROL "Windows messaging (Recommended)",IDC_KB_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,22,28,134,10
|
||||
CONTROL "Raw input (XP and later only)",IDC_KB_RAW,"Button",BS_AUTORADIOBUTTON,22,40,112,10
|
||||
CONTROL "DirectInput",IDC_KB_DI,"Button",BS_AUTORADIOBUTTON,22,52,112,10
|
||||
CONTROL "Disable (Intended for use with other pad plugins)",IDC_KB_DISABLE,
|
||||
"Button",BS_AUTORADIOBUTTON,23,64,175,10
|
||||
"Button",BS_AUTORADIOBUTTON,22,64,175,10
|
||||
GROUPBOX "Game Device APIs",IDC_STATIC,16,81,191,49
|
||||
CONTROL "DirectInput",IDC_G_DI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,92,65,10
|
||||
CONTROL "XInput (Xbox 360 controllers only)",IDC_G_XI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,104,125,10
|
||||
CONTROL "Monitor when in background",IDC_BACKGROUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,116,106,10
|
||||
CONTROL "DirectInput",IDC_G_DI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,92,65,10
|
||||
CONTROL "XInput (Xbox 360 controllers only)",IDC_G_XI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,104,125,10
|
||||
CONTROL "Monitor when in background",IDC_BACKGROUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,116,106,10
|
||||
GROUPBOX "Mouse API",IDC_STATIC,216,16,192,85
|
||||
CONTROL "Windows messaging (Recommended)",IDC_M_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,224,27,134,10
|
||||
CONTROL "Raw input (XP and later only)",IDC_M_RAW,"Button",BS_AUTORADIOBUTTON,224,39,112,10
|
||||
CONTROL "DirectInput",IDC_M_DI,"Button",BS_AUTORADIOBUTTON,224,51,112,10
|
||||
CONTROL "Disable",IDC_M_DISABLE,"Button",BS_AUTORADIOBUTTON,224,63,39,10
|
||||
CONTROL "Start without mouse focus",IDC_MOUSE_UNFOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,75,97,10
|
||||
CONTROL "Always hide cursor",IDC_FORCE_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,87,71,10
|
||||
CONTROL "Windows messaging (Recommended)",IDC_M_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,223,27,134,10
|
||||
CONTROL "Raw input (XP and later only)",IDC_M_RAW,"Button",BS_AUTORADIOBUTTON,223,39,112,10
|
||||
CONTROL "DirectInput",IDC_M_DI,"Button",BS_AUTORADIOBUTTON,223,51,112,10
|
||||
CONTROL "Disable",IDC_M_DISABLE,"Button",BS_AUTORADIOBUTTON,223,63,39,10
|
||||
CONTROL "Start without mouse focus",IDC_MOUSE_UNFOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,75,97,10
|
||||
CONTROL "Always hide cursor",IDC_FORCE_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,87,71,10
|
||||
GROUPBOX "Advanced",IDC_STATIC,216,105,192,25
|
||||
CONTROL "Allow binding multiple PS2 controls to one PC control",IDC_MULTIPLE_BINDING,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,116,182,10
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,116,182,10
|
||||
GROUPBOX "Pads",IDC_STATIC,7,140,410,67
|
||||
CONTROL "",IDC_PAD_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_ALIGNLEFT | WS_TABSTOP,17,152,183,48,WS_EX_CLIENTEDGE
|
||||
COMBOBOX IDC_PAD_TYPE,211,153,140,41,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
COMBOBOX IDC_PAD_TYPE,209,153,140,41,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP
|
||||
CONTROL "Use analog mode whenever possible",IDC_ANALOG_START1,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,211,172,132,10
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,209,172,132,10
|
||||
GROUPBOX "Device Diagnostics",IDC_STATIC,7,211,201,99
|
||||
CONTROL "",IDC_LIST,"SysListView32",LVS_LIST | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_NOSORTHEADER | WS_BORDER | WS_VSCROLL | WS_TABSTOP,15,224,185,61,WS_EX_CLIENTEDGE
|
||||
PUSHBUTTON "Test Device",ID_TEST,86,289,57,15
|
||||
PUSHBUTTON "Refresh",ID_REFRESH,152,289,48,15
|
||||
GROUPBOX "Hacks",IDC_STATIC,216,211,201,73
|
||||
CONTROL "Send escape on window close",IDC_CLOSE_HACK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,223,113,10
|
||||
CONTROL "Exit emulator on window close",IDC_CLOSE_HACK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,235,112,10
|
||||
CONTROL "Disable screensaver",IDC_DISABLE_SCREENSAVER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,247,80,10
|
||||
GROUPBOX "Miscellaneous",IDC_STATIC,216,211,201,35
|
||||
CONTROL "Use GS thread (Recommended)",IDC_GS_THREAD_INPUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,221,221,116,10
|
||||
CONTROL "Disable screensaver",IDC_DISABLE_SCREENSAVER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,221,232,80,10
|
||||
CONTROL "Local volume control",IDC_VISTA_VOLUME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,221,77,10
|
||||
CONTROL "Enable logging",IDC_DEBUG_FILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,232,62,10
|
||||
GROUPBOX "Hacks",IDC_STATIC,216,247,201,45
|
||||
CONTROL "Send escape on window close",IDC_CLOSE_HACK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,257,113,10
|
||||
CONTROL "Exit emulator on window close",IDC_CLOSE_HACK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,268,112,10
|
||||
CONTROL "Safe fullscreen exit on escape",IDC_ESCAPE_FULLSCREEN_HACK,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,259,112,10
|
||||
CONTROL "Use GS thread (Recommended)",IDC_GS_THREAD_INPUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,224,271,116,10
|
||||
CONTROL "Save state # in title",IDC_SAVE_STATE_TITLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,223,79,10
|
||||
CONTROL "Local volume control",IDC_VISTA_VOLUME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,235,77,10
|
||||
CONTROL "Guitar Hero 2 Hack",IDC_GH2_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,247,76,10
|
||||
GROUPBOX "Debugging",IDC_STATIC,216,285,79,25
|
||||
CONTROL "Enable logging",IDC_DEBUG_FILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,296,63,10
|
||||
PUSHBUTTON "Load",ID_LOAD,313,295,48,15
|
||||
PUSHBUTTON "Save",ID_SAVE,369,295,48,15
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,279,112,10
|
||||
CONTROL "Save state # in title",IDC_SAVE_STATE_TITLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,257,79,10
|
||||
CONTROL "Guitar Hero 2 Hack",IDC_GH2_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,268,76,10
|
||||
PUSHBUTTON "Load Bindings",ID_LOAD,283,295,62,15
|
||||
PUSHBUTTON "Save Bindings",ID_SAVE,355,295,62,15
|
||||
END
|
||||
|
||||
IDD_ABOUT DIALOGEX 0, 0, 108, 66
|
||||
|
|
Loading…
Reference in New Issue