<directory name="control">
<xi:include href="control/control.rbuild" />
</directory>
+ <directory name="dxdiag">
+ <xi:include href="dxdiag/dxdiag.rbuild" />
+ </directory>
<directory name="games">
<xi:include href="games/games.rbuild" />
</directory>
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/display.c
+ * PURPOSE: ReactX diagnosis display page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+DisplayPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/dxdiag.c
+ * PURPOSE: ReactX diagnosis application entry
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+/* globals */
+HINSTANCE hInst = 0;
+HWND hTabCtrlWnd;
+
+//---------------------------------------------------------------
+VOID
+DestroyTabCtrlDialogs(PDXDIAG_CONTEXT pContext)
+{
+ UINT Index;
+
+ for(Index = 0; Index < 7; Index++)
+ {
+ if (pContext->hDialogs[Index])
+ DestroyWindow(pContext->hDialogs[Index]);
+ }
+}
+
+//---------------------------------------------------------------
+VOID
+InsertTabCtrlItem(HWND hDlgCtrl, INT Position, UINT uId)
+{
+ WCHAR szName[100];
+ TCITEMW item;
+
+ /* load item name */
+ szName[0] = L'\0';
+ if (!LoadStringW(hInst, uId, szName, 100))
+ return;
+ szName[99] = L'\0';
+
+ /* setup item info */
+ memset(&item, 0, sizeof(TCITEM));
+ item.mask = TCIF_TEXT;
+ item.pszText = szName;
+
+ (void)TabCtrl_InsertItemW(hDlgCtrl, Position, &item);
+}
+
+VOID
+TabCtrl_OnSelChange(PDXDIAG_CONTEXT pContext)
+{
+ INT Index;
+ INT CurSel;
+
+ /* retrieve new page */
+ CurSel = TabCtrl_GetCurSel(hTabCtrlWnd);
+ if (CurSel < 0 || CurSel > 7)
+ return;
+
+ /* show active page */
+ for(Index = 0; Index < 7; Index++)
+ {
+ if (Index == CurSel)
+ ShowWindow(pContext->hDialogs[Index], SW_SHOW);
+ else
+ ShowWindow(pContext->hDialogs[Index], SW_HIDE);
+ }
+
+ /* make sure its displayed */
+ BringWindowToTop(pContext->hDialogs[CurSel]);
+}
+
+
+VOID
+InitializeTabCtrl(HWND hwndDlg, PDXDIAG_CONTEXT pContext)
+{
+ /* create the dialogs */
+ pContext->hDialogs[0] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_SYSTEM_DIALOG), hwndDlg, SystemPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[1] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_DISPLAY_DIALOG), hwndDlg, DisplayPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[2] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_SOUND_DIALOG), hwndDlg, SoundPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[3] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_MUSIC_DIALOG), hwndDlg, MusicPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[4] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_INPUT_DIALOG), hwndDlg, InputPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[5] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_NETWORK_DIALOG), hwndDlg, NetworkPageWndProc, (LPARAM)pContext);
+ pContext->hDialogs[6] = CreateDialogParamW(hInst, MAKEINTRESOURCEW(IDD_HELP_DIALOG), hwndDlg, HelpPageWndProc, (LPARAM)pContext);
+
+ /* insert tab ctrl items */
+ hTabCtrlWnd = GetDlgItem(hwndDlg, IDC_TAB_CONTROL);
+ InsertTabCtrlItem(hTabCtrlWnd, 0, IDS_SYSTEM_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 1, IDS_DISPLAY_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 2, IDS_SOUND_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 3, IDS_MUSIC_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 4, IDS_INPUT_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 5, IDS_NETWORK_DIALOG);
+ InsertTabCtrlItem(hTabCtrlWnd, 6, IDS_HELP_DIALOG);
+
+ TabCtrl_OnSelChange(pContext);
+}
+
+VOID
+InitializeDxDiagDialog(HWND hwndDlg)
+{
+ PDXDIAG_CONTEXT pContext;
+ HICON hIcon;
+
+ pContext = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(DXDIAG_CONTEXT));
+ if (!pContext)
+ return;
+
+ /* store the context */
+ SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pContext);
+
+ /* initialize the tab ctrl */
+ InitializeTabCtrl(hwndDlg, pContext);
+
+ /* load application icon */
+ hIcon = LoadImageW(hInst, MAKEINTRESOURCEW(IDI_APPICON), IMAGE_ICON, 16, 16, 0);
+ if (!hIcon)
+ return;
+ /* display icon */
+ SendMessage(hwndDlg, WM_SETICON, ICON_SMALL, (LPARAM)hIcon);
+}
+
+
+INT_PTR CALLBACK
+DxDiagWndProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ LPNMHDR pnmh;
+ PDXDIAG_CONTEXT pContext;
+
+ pContext = (PDXDIAG_CONTEXT)GetWindowLongPtr(hwndDlg, DWLP_USER);
+
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ InitializeDxDiagDialog(hwndDlg);
+ return TRUE;
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDC_BUTTON_SAVE_INFO)
+ {
+ //TODO
+ /* handle save information */
+ return TRUE;
+ }
+
+ if (LOWORD(wParam) == IDC_BUTTON_NEXT)
+ {
+ //TODO
+ /* handle next button */
+ return TRUE;
+ }
+
+ if (LOWORD(wParam) == IDC_BUTTON_HELP)
+ {
+ //TODO
+ /* handle help button */
+ return TRUE;
+ }
+
+ if (LOWORD(wParam) == IDCANCEL || LOWORD(wParam) == IDC_BUTTON_EXIT) {
+ EndDialog(hwndDlg, LOWORD(wParam));
+ return TRUE;
+ }
+ break;
+
+ case WM_NOTIFY:
+ pnmh = (LPNMHDR)lParam;
+ if ((pnmh->hwndFrom == hTabCtrlWnd) && (pnmh->idFrom == IDC_TAB_CONTROL) && (pnmh->code == TCN_SELCHANGE))
+ {
+ TabCtrl_OnSelChange(pContext);
+ }
+ break;
+ case WM_DESTROY:
+ DestroyTabCtrlDialogs(pContext);
+ return DefWindowProc(hwndDlg, message, wParam, lParam);
+ }
+ return 0;
+}
+
+int APIENTRY WinMain(HINSTANCE hInstance,
+ HINSTANCE hPrevInstance,
+ LPSTR lpCmdLine,
+ int nCmdShow)
+{
+
+ INITCOMMONCONTROLSEX InitControls;
+
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+ UNREFERENCED_PARAMETER(nCmdShow);
+
+ InitControls.dwSize = sizeof(INITCOMMONCONTROLSEX);
+ InitControls.dwICC = ICC_TAB_CLASSES | ICC_LISTVIEW_CLASSES;
+ InitCommonControlsEx(&InitControls);
+
+ hInst = hInstance;
+
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_MAIN_DIALOG), NULL, (DLGPROC) DxDiagWndProc);
+
+ return 0;
+}
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
+<module name="dxdiag" type="win32gui" installbase="system32" installname="dxdiag.exe">
+ <include base="dxdiag">.</include>
+ <define name="UNICODE" />
+ <define name="_UNICODE" />
+ <define name="_WIN32_IE">0x600</define>
+ <define name="_WIN32_WINNT">0x501</define>
+ <library>kernel32</library>
+ <library>user32</library>
+ <library>advapi32</library>
+ <library>comctl32</library>
+ <library>shell32</library>
+ <file>system.c</file>
+ <file>display.c</file>
+ <file>sound.c</file>
+ <file>music.c</file>
+ <file>input.c</file>
+ <file>network.c</file>
+ <file>help.c</file>
+ <file>dxdiag.c</file>
+ <file>dxdiag.rc</file>
+ <pch>precomp.h</pch>
+</module>
--- /dev/null
+#include <windows.h>
+#include <commctrl.h>
+
+#include "resource.h"
+
+LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
+
+#define REACTOS_VERSION_DLL
+#define REACTOS_STR_FILE_DESCRIPTION "ReactX Diagnosis Tool\0"
+#define REACTOS_STR_INTERNAL_NAME "dxdiag\0"
+#define REACTOS_STR_ORIGINAL_FILENAME "dxdiag.exe\0"
+#include <reactos/version.rc>
+
+IDI_APPICON ICON "res/dxdiag.ico"
+
+#include "rsrc.rc"
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/dxdiag.c
+ * PURPOSE: ReactX diagnosis help page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+HelpPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/input.c
+ * PURPOSE: ReactX diagnosis input page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+InputPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
+
+IDD_MAIN_DIALOG DIALOGEX DISCARDABLE 0, 0, 378, 220
+STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP |
+ WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU |
+ WS_THICKFRAME
+CAPTION "ReactX-Diagnoseprogramm"
+FONT 8, "MS Shell Dlg"
+BEGIN
+ CONTROL "Tab1",IDC_TAB_CONTROL,"SysTabControl32",WS_TABSTOP,2,2,374,195
+ PUSHBUTTON "&Hilfe", IDC_BUTTON_HELP, 2, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ DEFPUSHBUTTON "&Nächste Seite", IDC_BUTTON_NEXT, 137, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ PUSHBUTTON "Alle &Informationen speichern...", IDC_BUTTON_SAVE_INFO, 200, 201, 110, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ PUSHBUTTON "&Beenden", IDC_BUTTON_EXIT, 323, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+END
+
+IDD_SYSTEM_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_DISPLAY_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+
+IDD_SOUND_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_MUSIC_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+
+IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_NETWORK_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_HELP_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+STRINGTABLE DISCARDABLE
+BEGIN
+ IDS_MAIN_DIALOG "ReactX Diagnoseprogramm"
+ IDS_SYSTEM_DIALOG "System"
+ IDS_DISPLAY_DIALOG "Anzeige"
+ IDS_SOUND_DIALOG "Sound"
+ IDS_MUSIC_DIALOG "Musik"
+ IDS_INPUT_DIALOG "Eingabe"
+ IDS_NETWORK_DIALOG "Netzwerk"
+ IDS_HELP_DIALOG "Hilfe"
+END
--- /dev/null
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+
+IDD_MAIN_DIALOG DIALOGEX DISCARDABLE 0, 0, 378, 220
+STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP |
+ WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU |
+ WS_THICKFRAME
+CAPTION "ReactX-Diagnoseprogramm"
+FONT 8, "MS Shell Dlg"
+BEGIN
+ CONTROL "Tab1",IDC_TAB_CONTROL,"SysTabControl32",WS_TABSTOP,2,2,374,195
+ PUSHBUTTON "&Help", IDC_BUTTON_HELP, 2, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ DEFPUSHBUTTON "&Next Page", IDC_BUTTON_NEXT, 137, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ PUSHBUTTON "&Save All Information...", IDC_BUTTON_SAVE_INFO, 201, 201, 110, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+ PUSHBUTTON "&Exit", IDC_BUTTON_EXIT, 323, 201, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
+END
+
+IDD_SYSTEM_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_DISPLAY_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+
+IDD_SOUND_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_MUSIC_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+
+IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_NETWORK_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+IDD_HELP_DIALOG DIALOGEX DISCARDABLE 0, 0, 362, 175
+STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
+FONT 8, "MS Shell Dlg"
+BEGIN
+END
+
+STRINGTABLE DISCARDABLE
+BEGIN
+ IDS_MAIN_DIALOG "ReactX Diagnostic Tool"
+ IDS_SYSTEM_DIALOG "System"
+ IDS_DISPLAY_DIALOG "Display"
+ IDS_SOUND_DIALOG "Sound"
+ IDS_MUSIC_DIALOG "Music"
+ IDS_INPUT_DIALOG "Input"
+ IDS_NETWORK_DIALOG "Network"
+ IDS_HELP_DIALOG "Help"
+END
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/music.c
+ * PURPOSE: ReactX diagnosis music page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+MusicPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/dxdiag.c
+ * PURPOSE: ReactX diagnosis network page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+NetworkPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+#ifndef PRECOMP_H__
+#define PRECOMP_H__
+
+#include <windows.h>
+#include <commctrl.h>
+
+#include "resource.h"
+
+typedef struct
+{
+ HWND hDialogs[7];
+
+}DXDIAG_CONTEXT, *PDXDIAG_CONTEXT;
+
+
+/* globals */
+extern HINSTANCE hInst;
+
+/* dialog wnd proc */
+INT_PTR CALLBACK SystemPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK DisplayPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK SoundPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK MusicPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK InputPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK NetworkPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+INT_PTR CALLBACK HelpPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
+
+
+#endif
--- /dev/null
+#ifndef RESOURCE_H__
+#define RESOURCE_H__
+
+/* dialog constants */
+#define IDD_MAIN_DIALOG 100
+#define IDD_SYSTEM_DIALOG 101
+#define IDD_DISPLAY_DIALOG 102
+#define IDD_SOUND_DIALOG 103
+#define IDD_MUSIC_DIALOG 104
+#define IDD_INPUT_DIALOG 105
+#define IDD_NETWORK_DIALOG 106
+#define IDD_HELP_DIALOG 107
+
+/* control constants */
+
+#define IDC_TAB_CONTROL 1000
+#define IDC_BUTTON_HELP 1001
+#define IDC_BUTTON_NEXT 1002
+#define IDC_BUTTON_SAVE_INFO 1003
+#define IDC_BUTTON_EXIT 1004
+
+
+
+
+/* string resource constants */
+#define IDS_MAIN_DIALOG 10000
+#define IDS_SYSTEM_DIALOG 10001
+#define IDS_DISPLAY_DIALOG 10002
+#define IDS_SOUND_DIALOG 10003
+#define IDS_MUSIC_DIALOG 10004
+#define IDS_INPUT_DIALOG 10005
+#define IDS_NETWORK_DIALOG 10006
+#define IDS_HELP_DIALOG 10007
+
+/* icon resource constants */
+#define IDI_APPICON 20000
+
+
+#endif
--- /dev/null
+
+#include <windows.h>
+#include "resource.h"
+
+LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
+
+#include "lang/de-DE.rc"
+#include "lang/en-US.rc"
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/sound.c
+ * PURPOSE: ReactX diagnosis sound page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+SoundPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
--- /dev/null
+/*
+ * PROJECT: ReactX Diagnosis Application
+ * LICENSE: LGPL - See COPYING in the top level directory
+ * FILE: base/applications/dxdiag/system.c
+ * PURPOSE: ReactX diagnosis system page
+ * COPYRIGHT: Copyright 2008 Johannes Anderwald
+ *
+ */
+
+#include "precomp.h"
+
+INT_PTR CALLBACK
+SystemPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ UNREFERENCED_PARAMETER(wParam);
+ switch (message) {
+ case WM_INITDIALOG:
+ {
+ SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}