diff --git a/source/terrax/mainWindow.cpp b/source/terrax/mainWindow.cpp index 252700f3a650ceb67ea1bed2033995e6e7b37d99..8bfcd299f0019b6aff9119d71d281c2ccfe24043 100644 --- a/source/terrax/mainWindow.cpp +++ b/source/terrax/mainWindow.cpp @@ -7,6 +7,7 @@ #include "resource.h" #include <commctrl.h> #include <combaseapi.h> +#include <shellapi.h> #include <dwmapi.h> #pragma comment(lib, "dwmapi.lib") @@ -1273,6 +1274,44 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) case ID_TOOLS_RELOADMATERIALS: g_pEngine->getCore()->getConsole()->execCommand("mtl_reload"); break; + + case ID_HELP_SKYXENGINEWIKI: + ShellExecute(0, 0, "https://wiki.skyxengine.com", 0, 0, SW_SHOW); + break; + + case ID_HELP_ABOUT: + MessageBox(g_hWndMain, SKYXENGINE_VERSION4EDITORS "\nhttps://skyxengine.com\nLicensed under the AGPL-3.0 License\nCopyright (c) DogmaNet Team, 2020", "TerraX Editor " SKYXENGINE_VERSION, MB_OK | MB_ICONINFORMATION); + break; + + case ID_EDIT_CLEARSELECTION: + { + CCommandSelect *pCmdUnselect = new CCommandSelect(); + for(UINT i = 0, l = g_pLevelObjects.size(); i < l; ++i) + { + IXEditorObject *pObj = g_pLevelObjects[i]; + if(pObj->isSelected()) + { + pCmdUnselect->addDeselected(i); + } + } + g_pUndoManager->execCommand(pCmdUnselect); + } + break; + + case ID_EDIT_SELECTALL: + { + CCommandSelect *pCmdSelect = new CCommandSelect(); + for(UINT i = 0, l = g_pLevelObjects.size(); i < l; ++i) + { + IXEditorObject *pObj = g_pLevelObjects[i]; + if(!pObj->isSelected()) + { + pCmdSelect->addSelected(i); + } + } + g_pUndoManager->execCommand(pCmdSelect); + } + break; } break; @@ -2655,6 +2694,8 @@ void XUpdateStatusGrid() sprintf_s(szMsg, "Snap: %s; Grid: %s", g_xConfig.m_bSnapGrid ? "on" : "off", szGrid); SendMessage(g_hStatusWnd, SB_SETTEXT, MAKEWPARAM(4, 0), (LPARAM)szMsg); + + XCheckMenuItem(g_hMenu, ID_LEVEL_SNAPTOGRID, g_xConfig.m_bSnapGrid); } void XUpdateStatusMPos() diff --git a/source/terrax/resource.h b/source/terrax/resource.h index 70343273ece3674b0c9cdfef99e950dc4479e6d4..e712429581df2dd7579529f034aa9d0f84b3c9d7 100644 Binary files a/source/terrax/resource.h and b/source/terrax/resource.h differ diff --git a/source/terrax/terrax.rc b/source/terrax/terrax.rc index d8ba1972ec988f95d4e6094017e4fa818d282f42..b7bb00301c6a27e180893a3943f8c9dffdd69ec5 100644 Binary files a/source/terrax/terrax.rc and b/source/terrax/terrax.rc differ