Renamed G3D-Fun to Blocks3D

This commit is contained in:
Vulpovile
2021-03-05 22:23:40 -08:00
parent 84521dd124
commit 2ba76bc9b7
7 changed files with 79 additions and 24 deletions

View File

@@ -136,6 +136,8 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0)
button->fontLocationRelativeTo = Vector2(10, 0);
button->setAllColorsSame();
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
button->name = "file";
button->setButtonListener(new MenuButtonListener());
button = makeTextButton();
button->boxBegin = Vector2(125, 0);

View File

@@ -8,4 +8,36 @@ void MenuButtonListener::onButton1MouseClick(BaseButtonInstance* button)
g_dataModel->toggleRun();
((ToggleImageButtonInstance*)button)->checked = g_dataModel->isRunning();
}
else if(button->name == "file")
{
HMENU hPopupMenu = CreatePopupMenu();
HWND hwnd = CreateWindowEx(
WS_EX_APPWINDOW,
"MenuWindow",
"Main test",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
800,
660,
NULL, // parent
NULL, // menu
GetModuleHandle(NULL),
NULL
);
AppendMenu(hPopupMenu, MF_STRING, 0, "Test");
if(hPopupMenu == NULL)
{
MessageBox(NULL, "Menu is null!", "Failed", MB_OK);
}
else if(hwnd == NULL)
{
MessageBox(NULL, "HWND is null!", "Failed", MB_OK);
}
else if(!TrackPopupMenu(hPopupMenu, TPM_LEFTBUTTON, 100, 100, 0, hwnd, 0))
{
MessageBox(NULL, "Failed to track!", "Failed", MB_OK);
}
}
}

View File

@@ -145,6 +145,25 @@ LRESULT CALLBACK G3DProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
return 0;
}
LRESULT CALLBACK MenuProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
Application *app = (Application *)GetWindowLongPtr(hwnd, GWL_USERDATA);
if (app==NULL)
{
return DefWindowProc(hwnd, msg, wParam, lParam);
}
switch(msg)
{
default:
{
return DefWindowProc(hwnd, msg, wParam, lParam);
}
}
return 0;
}
int main(int argc, char** argv) {
try{
hresult = OleInitialize(NULL);
@@ -187,6 +206,8 @@ int main(int argc, char** argv) {
return false;
if (!createWindowClass("G3DWindow",G3DProc,hThisInstance))
return false;
if (!createWindowClass("MenuWindow",MenuProc,hThisInstance))
return false;
HWND hwndMain = CreateWindowEx(
WS_EX_APPWINDOW,