MCPcopy Create free account
hub / github.com/TASEmulators/fceux / newProjectProc

Function newProjectProc

src/drivers/win/taseditor.cpp:248–329  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

246}
247
248INT_PTR CALLBACK newProjectProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
249{
250 static struct NewProjectParameters* p = NULL;
251 switch (message)
252 {
253 case WM_INITDIALOG:
254 p = (struct NewProjectParameters*)lParam;
255 p->inputType = getInputType(currMovieData);
256 p->copyCurrentInput = p->copyCurrentMarkers = false;
257 if (strlen(taseditorConfig.lastAuthorName))
258 {
259 // convert UTF8 char* string to Unicode wstring
260 wchar_t savedAuthorName[AUTHOR_NAME_MAX_LEN] = {0};
261 MultiByteToWideChar(CP_UTF8, 0, taseditorConfig.lastAuthorName, -1, savedAuthorName, AUTHOR_NAME_MAX_LEN);
262 p->authorName = savedAuthorName;
263 } else
264 {
265 p->authorName = L"";
266 }
267 switch (p->inputType)
268 {
269 case INPUT_TYPE_1P:
270 {
271 Button_SetCheck(GetDlgItem(hwndDlg, IDC_RADIO_1PLAYER), BST_CHECKED);
272 break;
273 }
274 case INPUT_TYPE_2P:
275 {
276 Button_SetCheck(GetDlgItem(hwndDlg, IDC_RADIO_2PLAYERS), BST_CHECKED);
277 break;
278 }
279 case INPUT_TYPE_FOURSCORE:
280 {
281 Button_SetCheck(GetDlgItem(hwndDlg, IDC_RADIO_FOURSCORE), BST_CHECKED);
282 break;
283 }
284 }
285 SendMessage(GetDlgItem(hwndDlg, IDC_EDIT_AUTHOR), CCM_SETUNICODEFORMAT, TRUE, 0);
286 SetDlgItemTextW(hwndDlg, IDC_EDIT_AUTHOR, (LPCWSTR)(p->authorName.c_str()));
287 return 0;
288 case WM_COMMAND:
289 switch (LOWORD(wParam))
290 {
291 case IDC_RADIO_1PLAYER:
292 p->inputType = INPUT_TYPE_1P;
293 break;
294 case IDC_RADIO_2PLAYERS:
295 p->inputType = INPUT_TYPE_2P;
296 break;
297 case IDC_RADIO_FOURSCORE:
298 p->inputType = INPUT_TYPE_FOURSCORE;
299 break;
300 case IDC_COPY_INPUT:
301 p->copyCurrentInput ^= 1;
302 CheckDlgButton(hwndDlg, IDC_COPY_INPUT, p->copyCurrentInput? BST_CHECKED : BST_UNCHECKED);
303 break;
304 case IDC_COPY_MARKERS:
305 p->copyCurrentMarkers ^= 1;

Callers

nothing calls this directly

Calls 2

GetDlgItemTextWFunction · 0.85
getInputTypeFunction · 0.70

Tested by

no test coverage detected