2 * PROJECT: ReactOS Applications
3 * LICENSE: LGPL - See COPYING in the top level directory
4 * FILE: base/applications/msconfig/systempage.c
5 * PURPOSE: System page message handler
6 * COPYRIGHT: Copyright 2005-2006 Christoph von Wittich <Christoph@ApiViewer.de>
7 * 2011 Gregor Schneider <Gregor.Schneider@reactos.org>
14 #define BUFFER_SIZE 512
17 LoadSystemIni(WCHAR
* szPath
, HWND hDlg
)
19 WCHAR szBuffer
[BUFFER_SIZE
];
21 HTREEITEM parent
= NULL
;
24 TVINSERTSTRUCT insert
;
26 wcscpy(szBuffer
, szPath
);
27 wcscat(szBuffer
, L
"\\system.ini");
29 file
= _wfopen(szBuffer
, L
"rt");
33 hDlgCtrl
= GetDlgItem(hDlg
, IDC_SYSTEM_TREE
);
37 if (fgetws(szBuffer
, BUFFER_SIZE
, file
))
39 length
= wcslen(szBuffer
);
42 szBuffer
[length
] = L
'\0';
43 szBuffer
[length
- 1] = L
'\0';
44 insert
.hInsertAfter
= TVI_LAST
;
45 insert
.item
.mask
= TVIF_TEXT
;
46 insert
.item
.pszText
= szBuffer
;
48 if (szBuffer
[0] == L
';' || szBuffer
[0] == L
'[')
51 insert
.hParent
= NULL
;
52 parent
= TreeView_InsertItem(hDlgCtrl
, &insert
);
57 insert
.hParent
= parent
;
58 TreeView_InsertItem(hDlgCtrl
, &insert
);
70 InitializeSystemDialog(HWND hDlg
)
72 WCHAR winDir
[PATH_MAX
];
74 GetWindowsDirectoryW(winDir
, PATH_MAX
);
75 return LoadSystemIni(winDir
, hDlg
);
80 SystemPageWndProc(HWND hDlg
, UINT message
, WPARAM wParam
, LPARAM lParam
)
82 UNREFERENCED_PARAMETER(lParam
);
83 UNREFERENCED_PARAMETER(wParam
);
88 SetWindowPos(hDlg
, NULL
, 10, 32, 0, 0, SWP_NOACTIVATE
| SWP_NOOWNERZORDER
| SWP_NOSIZE
| SWP_NOZORDER
);
89 InitializeSystemDialog(hDlg
);