extern CONSOLE_SCREEN_BUFFER_INFO* gCSI;
extern CHAR_INFO* gScreen;
BOOL WINAPI ReadConsoleOutput_Unicode(HANDLE,CHAR_INFO*,COORD,COORD,SMALL_RECT*);
+void makeNewWindow();
/* selection.cpp */
BOOL selectionGetArea(SMALL_RECT& sr);
return(FALSE);
}
+ /*
wchar_t path[MAX_PATH+1];
GetSystemDirectory(path, MAX_PATH);
SetCurrentDirectory(path);
+ */
return(TRUE);
}
return(0);
}
+/* \90V\8bK\83E\83C\83\93\83h\83E\82Ì\8dì\90¬ */
+void makeNewWindow()
+{
+ LPWSTR cd = new TCHAR[MAX_PATH+1];
+ GetCurrentDirectory(MAX_PATH, cd);
+
+ STARTUPINFO si;
+ ZeroMemory(&si, sizeof(si));
+ si.cb = sizeof(si);
+
+ PROCESS_INFORMATION pi;
+ ZeroMemory(&pi, sizeof(pi));
+ if(CreateProcess(NULL, GetCommandLine(), NULL, NULL, FALSE, 0,
+ NULL, NULL, &si, &pi)){
+ // \8eg\97p\82µ\82È\82¢\82Ì\82Å\81C\82·\82®\82É\83N\83\8d\81[\83Y\82µ\82Ä\82æ\82¢
+ CloseHandle(pi.hProcess);
+ CloseHandle(pi.hThread);
+ }
+}
+
/* EOF */
mii.fMask = MIIM_TYPE | MIIM_ID;
mii.fType = MFT_STRING;
- mii.wID = IDM_ABOUT;
- mii.dwTypeData = L"About (&A)";
+ mii.wID = IDM_NEW;
+ mii.dwTypeData = L"New (&N)";
mii.cch = (UINT) wcslen(mii.dwTypeData);
InsertMenuItem(hMenu, SC_CLOSE, FALSE, &mii);
mii.dwTypeData = 0;
mii.cch = 0;
InsertMenuItem(hMenu, SC_CLOSE, FALSE, &mii);
+
+ mii.fType = MFT_STRING;
+ mii.wID = IDM_ABOUT;
+ mii.dwTypeData = L"About (&A)";
+ mii.cch = (UINT) wcslen(mii.dwTypeData);
+ InsertMenuItem(hMenu, SC_CLOSE, FALSE, &mii);
+
+ mii.fType = MFT_SEPARATOR;
+ mii.wID = 0;
+ mii.dwTypeData = 0;
+ mii.cch = 0;
+ InsertMenuItem(hMenu, SC_CLOSE, FALSE, &mii);
}
void get_directory_path(wchar_t *path)
hWnd,
AboutDlgProc);
return(TRUE);
+ case IDM_NEW:
+ makeNewWindow();
+ return(TRUE);
}
if(IDM_CONFIG_SELECT < id && id <= IDM_CONFIG_SELECT_MAX) {
return onConfigMenuCommand(hWnd, id);
#define IDM_CONFIG_SELECT_2 50002
/* ... 50003, 50004, ... */
#define IDM_CONFIG_SELECT_MAX 50100
-
+#define IDM_NEW 60001