Dmitry Chapyshev <lentind@yandex.ru>

- Implement a joy.cpl applet. Works good on Windows XP.

svn path=/trunk/; revision=29705
This commit is contained in:
Aleksey Bragin 2007-10-20 10:20:05 +00:00
parent 8a229a42d2
commit 4c94f55c72
13 changed files with 632 additions and 0 deletions

View file

@ -7,6 +7,7 @@
<property name="BASEADDRESS_DEVENUM" value="0x35680000" />
<property name="BASEADDRESS_PWRCFG" value="0x587e0000" />
<property name="BASEADDRESS_MMSYS" value="0x588a0000" />
<property name="BASEADDRESS_JOY" value="0x589b0000" />
<property name="BASEADDRESS_UXTHEME" value="0x5ad70000" />
<property name="BASEADDRESS_VDMDBG" value="0x5b0d0000" />
<property name="BASEADDRESS_OBJSEL" value="0x5b400000" />

View file

@ -19,6 +19,9 @@
<directory name="intl">
<xi:include href="intl/intl.rbuild" />
</directory>
<directory name="joy">
<xi:include href="joy/joy.rbuild" />
</directory>
<directory name="main">
<xi:include href="main/main.rbuild" />
</directory>

302
reactos/dll/cpl/joy/joy.c Normal file
View file

@ -0,0 +1,302 @@
/*
* ReactOS
* Copyright (C) 2004 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/*
*
* PROJECT: ReactOS Software Control Panel
* FILE: dll/cpl/joy/joy.c
* PURPOSE: ReactOS Software Control Panel
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 10-18-2007 Created
*/
#include "joy.h"
#define NUM_APPLETS (1)
LONG CALLBACK SystemApplet(VOID);
HINSTANCE hApplet = 0;
HWND MainDlg;
/* Applets */
APPLET Applets[NUM_APPLETS] =
{
{IDI_CPLSYSTEM, IDS_CPLSYSTEMNAME, IDS_CPLSYSTEMDESCRIPTION, SystemApplet}
};
VOID AddColumns(HWND hList)
{
LV_COLUMN dummy;
RECT rect;
int Size;
TCHAR szBuf[256];
GetClientRect(hList, &rect);
ZeroMemory(&dummy, sizeof(LV_COLUMN));
dummy.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
dummy.iSubItem = 0;
LoadString(hApplet, IDS_STATUS, szBuf, sizeof(szBuf) / sizeof(TCHAR));
dummy.pszText = (LPTSTR)szBuf;
Size = rect.right - rect.left - 250;
dummy.cx = Size;
(void)ListView_InsertColumn(hList, 0, &dummy);
GetClientRect(hList, &rect);
ZeroMemory(&dummy, sizeof(LV_COLUMN));
dummy.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
dummy.iSubItem = 0;
LoadString(hApplet, IDS_CONTROLLER, szBuf, sizeof(szBuf) / sizeof(TCHAR));
dummy.pszText = (LPTSTR)szBuf;
dummy.cx = rect.right - rect.left - Size;
(void)ListView_InsertColumn(hList, 0, &dummy);
}
INT_PTR CALLBACK
AdvancedPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
EndDialog(hwndDlg,LOWORD(wParam));
break;
case IDCANCEL:
EndDialog(hwndDlg,LOWORD(wParam));
break;
}
break;
case WM_NOTIFY:
break;
case WM_SYSCOMMAND:
switch (LOWORD(wParam))
{
case SC_CONTEXTHELP:
// not implemented
break;
}
break;
}
return 0;
}
INT_PTR CALLBACK
CustomPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDOK:
EndDialog(hwndDlg,LOWORD(wParam));
break;
case IDCANCEL:
EndDialog(hwndDlg,LOWORD(wParam));
break;
}
break;
case WM_NOTIFY:
break;
case WM_SYSCOMMAND:
switch (LOWORD(wParam))
{
case SC_CONTEXTHELP:
// not implemented
break;
}
break;
}
return 0;
}
INT_PTR CALLBACK
AddPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDC_CUSTOM_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_CUSTOM),
hwndDlg,
CustomPageProc);
break;
case IDOK:
EndDialog(hwndDlg,LOWORD(wParam));
break;
case IDCANCEL:
EndDialog(hwndDlg,LOWORD(wParam));
break;
}
break;
case WM_NOTIFY:
break;
case WM_SYSCOMMAND:
switch (LOWORD(wParam))
{
case SC_CONTEXTHELP:
// not implemented
break;
}
break;
}
return 0;
}
/* Property page dialog callback */
INT_PTR CALLBACK
MainPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (uMsg)
{
case WM_INITDIALOG:
AddColumns(GetDlgItem(hwndDlg,IDC_CONTROLLER_LIST));
break;
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDC_ADD_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_ADD),
hwndDlg,
AddPageProc);
break;
case IDC_ADVANCED_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_ADVANCED),
hwndDlg,
AdvancedPageProc);
break;
case IDOK:
EndDialog(hwndDlg,LOWORD(wParam));
break;
}
break;
case WM_NOTIFY:
break;
case WM_SYSCOMMAND:
switch (LOWORD(wParam))
{
case SC_CLOSE:
EndDialog(hwndDlg,LOWORD(wParam));
break;
case SC_CONTEXTHELP:
// not implemented
break;
}
break;
}
return 0;
}
/* First Applet */
LONG CALLBACK
SystemApplet(VOID)
{
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_PROPPAGEMAIN),
MainDlg,
MainPageProc);
return (LONG)TRUE;
}
/* Control Panel Callback */
LONG CALLBACK
CPlApplet(HWND hwndCPl, UINT uMsg, LPARAM lParam1, LPARAM lParam2)
{
CPLINFO *CPlInfo;
DWORD i;
UNREFERENCED_PARAMETER(hwndCPl);
i = (DWORD)lParam1;
switch (uMsg)
{
case CPL_INIT:
return TRUE;
case CPL_GETCOUNT:
return NUM_APPLETS;
case CPL_INQUIRE:
CPlInfo = (CPLINFO*)lParam2;
CPlInfo->lData = 0;
CPlInfo->idIcon = Applets[i].idIcon;
CPlInfo->idName = Applets[i].idName;
CPlInfo->idInfo = Applets[i].idDescription;
break;
case CPL_DBLCLK:
{
MainDlg = hwndCPl;
Applets[i].AppletProc();
}
break;
}
return FALSE;
}
BOOL WINAPI
DllMain(HINSTANCE hinstDLL, DWORD dwReason, LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
CoInitialize(NULL);
hApplet = hinstDLL;
break;
}
return TRUE;
}

View file

@ -0,0 +1,6 @@
LIBRARY joy.cpl
EXPORTS
CPlApplet
; EOF

40
reactos/dll/cpl/joy/joy.h Normal file
View file

@ -0,0 +1,40 @@
#ifndef __CPL_JOY_H
#define __CPL_JOY_H
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
typedef LONG (CALLBACK *CPLAPPLET_PROC)(VOID);
typedef struct
{
int idIcon;
int idName;
int idDescription;
CPLAPPLET_PROC AppletProc;
} APPLET, *PAPPLET;
typedef struct
{
WCHAR szTarget[MAX_PATH];
WCHAR szWorkingDirectory[MAX_PATH];
WCHAR szDescription[MAX_PATH];
WCHAR szLinkName[MAX_PATH];
}CREATE_LINK_CONTEXT, *PCREATE_LINK_CONTEXT;
extern HINSTANCE hApplet;
void ShowLastWin32Error(HWND hWndOwner);
#endif /* __CPL_JOY_H */
/* EOF */

View file

@ -0,0 +1,19 @@
<?xml version="1.0"?>
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
<module name="joy" type="win32dll" extension=".cpl" baseaddress="${BASEADDRESS_JOY}" installbase="system32" installname="joy.cpl" unicode="yes">
<importlibrary definition="joy.def" />
<include base="joy">.</include>
<define name="__USE_W32API" />
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x501</define>
<library>kernel32</library>
<library>advapi32</library>
<library>user32</library>
<library>comctl32</library>
<library>msvcrt</library>
<library>ole32</library>
<library>uuid</library>
<library>shell32</library>
<file>joy.c</file>
<file>joy.rc</file>
</module>

View file

@ -0,0 +1,20 @@
#include "resource.h"
#include <windows.h>
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define REACTOS_VERSION_DLL
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Software Control Panel\0"
#define REACTOS_STR_INTERNAL_NAME "joy\0"
#define REACTOS_STR_ORIGINAL_FILENAME "joy.cpl\0"
#ifdef _MSC_VER
#include <../../../reactos/version.rc>
#else
#include <reactos/version.rc>
#endif
123 24 DISCARDABLE "manifest.xml"
IDI_CPLSYSTEM ICON "resources/applet.ico"
#include "rsrc.rc"

View file

@ -0,0 +1,84 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
IDD_PROPPAGEMAIN DIALOGEX 0, 0, 252, 205
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Game Controllers"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 7, 7, 20, 20
LTEXT "These settings help you configure the game controllers installed on your computer.", -1, 33, 7, 214, 20, NOT WS_GROUP
GROUPBOX "I&nstalled game controllers", -1, 7, 34, 238, 117
CONTROL "List1", IDC_CONTROLLER_LIST, "SysListView32", WS_BORDER | WS_GROUP | WS_TABSTOP | 0x0000808D, 14, 44, 224, 80
PUSHBUTTON "&Add...", IDC_ADD_BUTTON, 35, 129, 65, 14
PUSHBUTTON "&Remove", IDC_REMOVE_BUTTON, 104, 129, 65, 14, WS_DISABLED
PUSHBUTTON "&Properties", IDC_PROPERTIES_BUTTON, 173, 129, 65, 14, WS_DISABLED
PUSHBUTTON "A&dvanced...", IDC_ADVANCED_BUTTON, 111, 157, 65, 14
PUSHBUTTON "&Troubleshoot...", IDC_TROUBLESHOOT_BUTTON, 180, 157, 65, 14
PUSHBUTTON "OK", IDOK, 195, 185, 50, 14
}
IDD_ADD DIALOGEX 0, 0, 265, 200
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Add Game Controller"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 8, 7, 20, 20
LTEXT "Select a game controller from the list below, and then click OK. If your game controller does not appear in the list, click Custom.", -1, 35, 7, 210, 33
LTEXT "&Game controllers:", -1, 8, 45, 126, 8
LISTBOX IDC_GAME_CONTROLLERS_LIST, 7, 55, 251, 57, LBS_STANDARD | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_HSCROLL | WS_TABSTOP
AUTOCHECKBOX "&Enable rudders and pedals", IDC_ENABLE_RUDDERS_CHECKBOX, 7, 114, 100, 10, WS_GROUP
LTEXT "&Game Port:", -1, 7, 134, 38, 8, NOT WS_VISIBLE
COMBOBOX IDC_GAME_PORT_COMBO, 7, 147, 140, 50, CBS_DROPDOWNLIST | CBS_SORT | NOT WS_VISIBLE | WS_VSCROLL
PUSHBUTTON "&Custom...", IDC_CUSTOM_BUTTON, 208, 147, 50, 14
CONTROL "", -25525, "STATIC", SS_ETCHEDHORZ, 7, 170, 251, 1
DEFPUSHBUTTON "OK", IDOK, 155, 179, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 208, 179, 50, 14
}
IDD_CUSTOM DIALOGEX 0, 0, 265, 183, 0
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Custom Game Controller"
FONT 8, "MS Shell Dlg"
{
GROUPBOX "Special characteristics", -1, 7, 7, 245, 52
AUTORADIOBUTTON "&Joystick", IDC_JOYSTICK_RADIO, 17, 23, 55, 10
AUTORADIOBUTTON "&Flight yoke or flight stick", IDC_FLIGHT_YOKE_RADIO, 147, 23, 89, 10
AUTORADIOBUTTON "&Game pad", IDC_GAME_PAD_RADIO, 17, 40, 65, 10
AUTORADIOBUTTON "&Race car controller", IDC_RACE_CAR_RADIO, 147, 40, 93, 10
GROUPBOX "&Axes", -1, 7, 67, 116, 44, WS_GROUP
COMBOBOX IDC_AXES_COMBO, 37, 79, 48, 50, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL
AUTORADIOBUTTON "Rudder/Pedals", IDC_RUDDER_PEDALS_RADIO, 14, 97, 63, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Z Axis", IDC_Z_AXIS_RADIO, 81, 97, 35, 10, NOT WS_VISIBLE
GROUPBOX "&Buttons", -1, 137, 67, 116, 44
COMBOBOX IDC_BUTTONS_COMBO, 178, 79, 48, 50, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL, WS_EX_CLIENTEDGE
AUTOCHECKBOX "Includes a &point of view control", IDC_INC_POINT_CHECKBOX, 7, 123, 115, 10
LTEXT "C&ontroller name:", -1, 7, 139, 200, 9
EDITTEXT IDC_CONTROLLER_NAME_EDIT, 7, 150, 116, 15, ES_AUTOHSCROLL, WS_EX_CLIENTEDGE | WS_EX_STATICEDGE
DEFPUSHBUTTON "OK", IDOK, 137, 150, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 203, 150, 50, 14
}
IDD_ADVANCED DIALOGEX 0, 0, 220, 86
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Advanced Settings"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 7, 24, 20, 20
DEFPUSHBUTTON "OK", IDOK, 106, 65, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 163, 65, 50, 14
LTEXT "Select the device you want to use with older programs.", -1, 7, 7, 208, 10
LTEXT "&Preferred device:", -1, 34, 24, 70, 10
COMBOBOX IDC_PREFERRED_DEV_COMBO, 34, 38, 179, 75, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL
}
STRINGTABLE
BEGIN
IDS_CPLSYSTEMNAME "Game Controllers"
IDS_CPLSYSTEMDESCRIPTION "Add, remove, and configure game controller hardware such as joysticks and gamepads."
IDS_CONTROLLER "Controller"
IDS_STATUS "Status"
END

View file

@ -0,0 +1,84 @@
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
IDD_PROPPAGEMAIN DIALOGEX 0, 0, 252, 205
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Èãðîâûå óñòðîéñòâà"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 7, 7, 20, 20
LTEXT "Ýòè ïàðàìåòðû ïîçâîëÿþò íàñòðîèòü èãðîâûå óñòðîéñòâà, óñòàíîâëåííûå íà êîìïüþòåðå.", -1, 33, 7, 214, 20, NOT WS_GROUP
GROUPBOX "Óñòàíîâëåííûå &èãðîâûå óñòðîéñòâà", -1, 7, 34, 238, 117
CONTROL "List1", IDC_CONTROLLER_LIST, "SysListView32", WS_BORDER | WS_GROUP | WS_TABSTOP | 0x0000808D, 14, 44, 224, 80
PUSHBUTTON "Äî&áàâèòü...", IDC_ADD_BUTTON, 35, 129, 65, 14
PUSHBUTTON "&Óäàëèòü", IDC_REMOVE_BUTTON, 104, 129, 65, 14, WS_DISABLED
PUSHBUTTON "Ñâî&éñòâà", IDC_PROPERTIES_BUTTON, 173, 129, 65, 14, WS_DISABLED
PUSHBUTTON "Ä&îïîëíèòåëüíî...", IDC_ADVANCED_BUTTON, 101, 157, 70, 14
PUSHBUTTON "Äèà&ãíîñòèêà...", IDC_TROUBLESHOOT_BUTTON, 175, 157, 70, 14
PUSHBUTTON "OK", IDOK, 195, 185, 50, 14
}
IDD_ADD DIALOGEX 0, 0, 265, 200
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Äîáàâëåíèå èãðîâîãî óñòðîéñòâà"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 8, 7, 20, 20
LTEXT "Âûáåðèòå èãðîâîé êîíòðîëëåð â ðàñïîëîæåííîì íèæå ñïèñêå è íàæìèòå êíîïêó ÎÊ. Åñëè âàø èãðîâîé êîíòðîëëåð îòñóòñòâóåò â ñïèñêå, íàæìèòå êíîïêó ""Äðóãîé"".", -1, 35, 7, 210, 33
LTEXT "&Èãðîâûå óñòðîéñòâà:", -1, 8, 45, 126, 8
LISTBOX IDC_GAME_CONTROLLERS_LIST, 7, 55, 251, 57, LBS_STANDARD | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_HSCROLL | WS_TABSTOP
AUTOCHECKBOX "&Ïîäêëþ÷èòü ðóëü èëè ïåäàëè", IDC_ENABLE_RUDDERS_CHECKBOX, 7, 114, 120, 10, WS_GROUP
LTEXT "&Èãðîâîé ïîðò:", -1, 7, 134, 38, 8, NOT WS_VISIBLE
COMBOBOX IDC_GAME_PORT_COMBO, 7, 147, 140, 50, CBS_DROPDOWNLIST | CBS_SORT | NOT WS_VISIBLE | WS_VSCROLL
PUSHBUTTON "&Äðóãîé...", IDC_CUSTOM_BUTTON, 208, 147, 50, 14
CONTROL "", -25525, "STATIC", SS_ETCHEDHORZ, 7, 170, 251, 1
DEFPUSHBUTTON "OK", IDOK, 155, 179, 50, 14
PUSHBUTTON "Îòìåíà", IDCANCEL, 208, 179, 50, 14
}
IDD_CUSTOM DIALOGEX 0, 0, 265, 183, 0
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Îñîáîå èãðîâîå óñòðîéñòâî"
FONT 8, "MS Shell Dlg"
{
GROUPBOX "Îñîáåííîñòè", -1, 7, 7, 245, 52
AUTORADIOBUTTON "&Äæîéñòèê", IDC_JOYSTICK_RADIO, 17, 23, 55, 10
AUTORADIOBUTTON "&Øòóðâàë èëè ðóêîÿòêà óïðàâëåíèÿ", IDC_FLIGHT_YOKE_RADIO, 100, 23, 143, 10
AUTORADIOBUTTON "&Èãðîâîé ïëàíøåò", IDC_GAME_PAD_RADIO, 17, 40, 75, 10
AUTORADIOBUTTON "Óïðàâëåíèå ãîíî÷íîé &àâòîìàøèíîé", IDC_RACE_CAR_RADIO, 100, 40, 143, 10
GROUPBOX "&Ñòåïåíü ñâîáîäû", -1, 7, 67, 116, 44, WS_GROUP
COMBOBOX IDC_AXES_COMBO, 37, 79, 48, 50, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL
AUTORADIOBUTTON "Ðóëü óïðàâëåíèÿ èëè ïåäàëè", IDC_RUDDER_PEDALS_RADIO, 14, 97, 63, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Îñü Z", IDC_Z_AXIS_RADIO, 81, 97, 35, 10, NOT WS_VISIBLE
GROUPBOX "Ê&íîïêè", -1, 137, 67, 116, 44
COMBOBOX IDC_BUTTONS_COMBO, 178, 79, 48, 50, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL, WS_EX_CLIENTEDGE
AUTOCHECKBOX "Èìååòñÿ &ïåðåêëþ÷àòåëü POV", IDC_INC_POINT_CHECKBOX, 7, 123, 115, 10
LTEXT "&Êîíòðîëåð:", -1, 7, 139, 200, 9
EDITTEXT IDC_CONTROLLER_NAME_EDIT, 7, 150, 116, 15, ES_AUTOHSCROLL, WS_EX_CLIENTEDGE | WS_EX_STATICEDGE
DEFPUSHBUTTON "OK", IDOK, 137, 150, 50, 14
PUSHBUTTON "Îòìåíà", IDCANCEL, 203, 150, 50, 14
}
IDD_ADVANCED DIALOGEX 0, 0, 220, 86
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUPWINDOW | WS_CAPTION
EXSTYLE WS_EX_CONTEXTHELP
CAPTION "Äîïîëíèòåëüíûå ïàðàìåòðû"
FONT 8, "MS Shell Dlg"
{
ICON IDI_CPLSYSTEM, -1, 7, 24, 20, 20
LTEXT "Âûáåðèòå óñòðîéñòâî, êîòîðîå ñëåäóåò èñïîëüçîâàòü ñî ñòàðûìè ïðîãðàììàìè.", -1, 7, 5, 208, 17
LTEXT "&Ïðåäïî÷èòàåìîå óñòðîéñòâî:", -1, 34, 24, 180, 10
COMBOBOX IDC_PREFERRED_DEV_COMBO, 34, 38, 179, 75, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL
DEFPUSHBUTTON "OK", IDOK, 106, 65, 50, 14
PUSHBUTTON "Îòìåíà", IDCANCEL, 163, 65, 50, 14
}
STRINGTABLE
BEGIN
IDS_CPLSYSTEMNAME "Èãðîâûå óñòðîéñòâà"
IDS_CPLSYSTEMDESCRIPTION "Äîáàâëåíèå, óäàëåíèå è íàñòðîéêà ïàðàìåòðîâ èãðîâûõ óñòðîéñòâ, íàïðèìåð, äæîéñòèêîâ èëè èãðîâûõ ïëàíøåòîâ."
IDS_CONTROLLER "Óñòðîéñòâî"
IDS_STATUS "Ñîñòîÿíèå"
END

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="ReactOS.System.ControlPanel.System"
type="win32"
/>
<description>ReactOS System Control Panel</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
<!-- EOF -->

View file

@ -0,0 +1,44 @@
#ifndef __CPL_RESOURCE_H
#define __CPL_RESOURCE_H
/* icons */
#define IDI_CPLSYSTEM 102
/* dialogs */
#define IDD_PROPPAGEMAIN 101
#define IDD_ADD 119
#define IDD_CUSTOM 4099
#define IDD_ADVANCED 8188
/* strings */
#define IDS_CPLSYSTEMNAME 1076
#define IDS_CPLSYSTEMDESCRIPTION 1099
#define IDS_CONTROLLER 1151
#define IDS_STATUS 1152
/* controls */
#define IDC_CONTROLLER_LIST 1020
#define IDC_ADD_BUTTON 1011
#define IDC_REMOVE_BUTTON 1028
#define IDC_PROPERTIES_BUTTON 1002
#define IDC_ADVANCED_BUTTON 1311
#define IDC_TROUBLESHOOT_BUTTON 1007
#define IDC_CUSTOM_BUTTON 1169
#define IDC_GAME_PORT_COMBO 1168
#define IDC_GAME_CONTROLLERS_LIST 1057
#define IDC_ENABLE_RUDDERS_CHECKBOX 1000
#define IDC_JOYSTICK_RADIO 1054
#define IDC_FLIGHT_YOKE_RADIO 1051
#define IDC_GAME_PAD_RADIO 1052
#define IDC_RACE_CAR_RADIO 1053
#define IDC_AXES_COMBO 1030
#define IDC_RUDDER_PEDALS_RADIO 1172
#define IDC_Z_AXIS_RADIO 1174
#define IDC_BUTTONS_COMBO 1048
#define IDC_INC_POINT_CHECKBOX 1072
#define IDC_CONTROLLER_NAME_EDIT 1056
#define IDC_PREFERRED_DEV_COMBO 8195
#endif /* __CPL_RESOURCE_H */
/* EOF */

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View file

@ -0,0 +1,5 @@
#include "resource.h"
#include <windows.h>
#include "lang/en-US.rc"
#include "lang/ru-RU.rc"