VOID PROGRAM_ModifyProgram(HLOCAL hProgram) { PROGRAM *program = LocalLock(hProgram); CHAR szName[MAX_PATHNAME_LEN]; CHAR szCmdLine[MAX_PATHNAME_LEN]; CHAR szIconFile[MAX_PATHNAME_LEN]; CHAR szWorkDir[MAX_PATHNAME_LEN]; lstrcpyn(szName, LocalLock(program->hName), MAX_PATHNAME_LEN); lstrcpyn(szCmdLine, LocalLock(program->hCmdLine), MAX_PATHNAME_LEN); lstrcpyn(szIconFile, LocalLock(program->hIconFile), MAX_PATHNAME_LEN); lstrcpyn(szWorkDir, LocalLock(program->hWorkDir), MAX_PATHNAME_LEN); if (!DIALOG_ProgramAttributes(szName, szCmdLine, szWorkDir, szIconFile, &program->hIcon, &program->nIconIndex, &program->nHotKey, &program->nCmdShow, MAX_PATHNAME_LEN)) return; MAIN_ReplaceString(&program->hName, szName); MAIN_ReplaceString(&program->hCmdLine, szCmdLine); MAIN_ReplaceString(&program->hIconFile, szIconFile); MAIN_ReplaceString(&program->hWorkDir, szWorkDir); SetWindowText(program->hWnd, szName); UpdateWindow(program->hWnd); GRPFILE_WriteGroupFile(program->hGroup); return; }
VOID GROUP_ModifyGroup(PROGGROUP* hGroup) { WCHAR Dest[MAX_PATHNAME_LEN]; // szName WCHAR szGrpFile[MAX_PATHNAME_LEN]; // szFile wcsncpy(Dest, hGroup->hName, ARRAYSIZE(Dest)); wcsncpy(szGrpFile, hGroup->hGrpFile, ARRAYSIZE(szGrpFile)); if (!DIALOG_GroupAttributes(hGroup->format, Dest, szGrpFile, MAX_PATHNAME_LEN)) return; if (wcscmp(szGrpFile, hGroup->hGrpFile)) hGroup->bOverwriteFileOk = FALSE; MAIN_ReplaceString(&hGroup->hName, Dest); MAIN_ReplaceString(&hGroup->hGrpFile, szGrpFile); GRPFILE_WriteGroupFile(hGroup); /* FIXME Delete old GrpFile if GrpFile changed */ /* FIXME Update progman.ini */ SetWindowTextW(hGroup->hWnd, Dest); }
VOID GROUP_ModifyGroup(HLOCAL hGroup) { PROGGROUP *group = LocalLock(hGroup); CHAR szName[MAX_PATHNAME_LEN]; CHAR szFile[MAX_PATHNAME_LEN]; lstrcpyn(szName, LocalLock(group->hName), MAX_PATHNAME_LEN); lstrcpyn(szFile, LocalLock(group->hGrpFile), MAX_PATHNAME_LEN); if (!DIALOG_GroupAttributes(szName, szFile, MAX_PATHNAME_LEN)) return; if (strcmp(szFile, LocalLock(group->hGrpFile))) group->bOverwriteFileOk = FALSE; MAIN_ReplaceString(&group->hName, szName); MAIN_ReplaceString(&group->hGrpFile, szFile); GRPFILE_WriteGroupFile(hGroup); /* FIXME Delete old GrpFile if GrpFile changed */ /* FIXME Update progman.ini */ SetWindowText(group->hWnd, szName); }