2 * PROJECT: ReactOS Applications
3 * LICENSE: LGPL - See COPYING in the top level directory
4 * FILE: base/applications/msconfig_new/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>
15 #define BUFFER_SIZE 512
18 LoadSystemIni(WCHAR
* szPath
, HWND hDlg
)
20 WCHAR szBuffer
[BUFFER_SIZE
];
22 HTREEITEM parent
= NULL
;
25 TVINSERTSTRUCT insert
;
28 hr
= StringCbCopyW(szBuffer
, sizeof(szBuffer
), szPath
);
32 hr
= StringCbCatW(szBuffer
, sizeof(szBuffer
), L
"\\system.ini");
36 file
= _wfopen(szBuffer
, L
"rt");
40 hDlgCtrl
= GetDlgItem(hDlg
, IDC_SYSTEM_TREE
);
44 if (fgetws(szBuffer
, BUFFER_SIZE
, file
))
46 length
= wcslen(szBuffer
);
49 szBuffer
[length
] = L
'\0';
50 szBuffer
[length
- 1] = L
'\0';
51 insert
.hInsertAfter
= TVI_LAST
;
52 insert
.item
.mask
= TVIF_TEXT
;
53 insert
.item
.pszText
= szBuffer
;
55 if (szBuffer
[0] == L
';' || szBuffer
[0] == L
'[')
58 insert
.hParent
= NULL
;
59 parent
= TreeView_InsertItem(hDlgCtrl
, &insert
);
64 insert
.hParent
= parent
;
65 TreeView_InsertItem(hDlgCtrl
, &insert
);
77 InitializeSystemDialog(HWND hDlg
)
79 WCHAR winDir
[PATH_MAX
];
81 GetWindowsDirectoryW(winDir
, PATH_MAX
);
82 return LoadSystemIni(winDir
, hDlg
);
87 SystemPageWndProc(HWND hDlg
, UINT message
, WPARAM wParam
, LPARAM lParam
)
89 UNREFERENCED_PARAMETER(lParam
);
90 UNREFERENCED_PARAMETER(wParam
);
95 SetWindowPos(hDlg
, NULL
, 10, 32, 0, 0, SWP_NOACTIVATE
| SWP_NOOWNERZORDER
| SWP_NOSIZE
| SWP_NOZORDER
);
96 InitializeSystemDialog(hDlg
);