summaryrefslogtreecommitdiff
path: root/Editor/GUI/EditorWindows.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Editor/GUI/EditorWindows.cpp')
-rw-r--r--Editor/GUI/EditorWindows.cpp171
1 files changed, 0 insertions, 171 deletions
diff --git a/Editor/GUI/EditorWindows.cpp b/Editor/GUI/EditorWindows.cpp
deleted file mode 100644
index 6d24dbd..0000000
--- a/Editor/GUI/EditorWindows.cpp
+++ /dev/null
@@ -1,171 +0,0 @@
-#include "EditorWindows.h"
-#include "WinUtils.h"
-
-static const wchar_t* kContainerWindowClassName = L"GameLabContainerWndClass";
-static const wchar_t* kPopupWindowClassName = L"GameLabPopupWndClass";
-static const wchar_t* kViewportClassName = L"GameLabViewportWndClass";
-static const char* kIsMainWindowMaximized = "IsMainWindowMaximized";
-
-static ATOM s_ContainerWindowClassAtom;
-static ATOM s_PopupWindowClassAtom;
-static ATOM s_GUIViewClassAtom;
-
-void RegisterWindowClasses()
-{
- s_ContainerWindowClassAtom = winutils::RegisterWindowClass(kContainerWindowClassName, ContainnerWindow::ContainerWndProc, CS_HREDRAW | CS_VREDRAW);
- s_PopupWindowClassAtom = winutils::RegisterWindowClass(kPopupWindowClassName, ContainnerWindow::ContainerWndProc, CS_HREDRAW | CS_VREDRAW | CS_DROPSHADOW);//CS_HREDRAW宽度(水平)变化时重绘、CS_VREDRAW高度(垂直)变化时重绘
- s_GUIViewClassAtom = winutils::RegisterWindowClass(kViewportClassName, GUIView::GUIViewWndProc, CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS);
-}
-
-LRESULT CALLBACK ContainnerWindow::ContainerWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
-{
- long flag = DefWindowProcW(hWnd, message, wParam, lParam);
- return flag;
-}
-
-ContainnerWindow::ContainnerWindow()
-{
-}
-
-
-ContainnerWindow::~ContainnerWindow()
-{
-
-}
-
-void ContainnerWindow::Init(Rectf pixelRect, int showMode, const Vector2f& minSize, const Vector2f& maxSize)
-{
- // Aux windows are mac only. on windows they look just like normal utility windows.
- if (showMode == kShowAuxWindow)
- showMode = kShowUtility;
-
- m_ShowMode = static_cast<ShowMode>(showMode);
- m_IsClosing = false;
- m_InMenuLoop = false;
- m_CloseFromScriptDontShutdown = false;
-
- bool shouldMaximize = false;
- if (showMode == kShowMainWindow)
- {
- //shouldMaximize = s_IsMainWindowMaximized = EditorPrefs::GetBool(kIsMainWindowMaximized, false);
- //GetRestoredMainWindowDimensions();
- }
-
- RECT rect = { 120, 120, 220, 220 };
- m_InternalRect.x = m_InternalRect.y = m_InternalRect.width = m_InternalRect.height = 0.0f;
-
- DWORD windowStyle = 0;
- DWORD extendedStyle = 0;
- LPCWSTR windowClass = kContainerWindowClassName;
-
- switch (showMode) {
- // 容纳GUIPanel的非主窗口
- case kShowNormalWindow:
- windowStyle = WS_POPUP | WS_CLIPCHILDREN | WS_THICKFRAME;
- extendedStyle = WS_EX_TOOLWINDOW;
- break;
- // 主窗口,含菜单
- case kShowMainWindow:
- windowStyle = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN | WS_MAXIMIZEBOX | WS_MINIMIZEBOX;
- extendedStyle = 0;
- break;
- case kShowPopupMenu:
- windowStyle = WS_POPUP | WS_CLIPCHILDREN;
- extendedStyle = WS_EX_TOOLWINDOW;
- windowClass = kPopupWindowClassName;
- break;
- case kShowNoShadow:
- windowStyle = WS_POPUP | WS_CLIPCHILDREN;
- extendedStyle = WS_EX_TOOLWINDOW;
- break;
- case kShowUtility:
- windowStyle = WS_POPUP | WS_CAPTION | WS_THICKFRAME | WS_SYSMENU;
- extendedStyle = WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW;
- break;
- default:
- // ErrorString("Unknown container show mode");
- break;
- }
-
- HWND parentWindow = NULL;
- if (showMode == kShowMainWindow)
- {
- parentWindow = NULL;
- }
- else
- {
- // parentWindow = GetMainEditorWindow();
- }
-
- bool notSizeable = (minSize == maxSize) && (minSize != Vector2f::zero);
- if (notSizeable)
- windowStyle &= ~(WS_THICKFRAME);
-
- AdjustWindowRectEx(&rect, windowStyle, showMode == kShowMainWindow, extendedStyle);
- int extraX = rect.right - rect.left - 200;
- int extraY = rect.bottom - rect.top - 200;
-
- m_MinSize.x = minSize.x + extraX;
- m_MinSize.y = minSize.y + extraY;
- m_MaxSize.x = maxSize.x + extraX;
- m_MaxSize.y = maxSize.y + extraY;
-
-
- //if (showMode == kShowUtility)
- // s_ZUtilityWindows.push_back(m_ContainerListNode);
- // Create window
- m_Window = CreateWindowExW(
- extendedStyle,
- windowClass,
- L"",
- windowStyle,
- rect.left,
- rect.top,
- rect.right - rect.left,
- rect.bottom - rect.top,
- parentWindow,
- NULL,
- winutils::GetInstanceHandle(),
- NULL
- );
- SetWindowLongPtr(m_Window, GWLP_USERDATA, (LONG_PTR)this);
- //UpdateMaxMaximizedRect();
-
- if (pixelRect.width > 10 || pixelRect.height > 10)
- {
- //SetRect(pixelRect);
- if (shouldMaximize)
- SetWindowLong(m_Window, GWL_STYLE, windowStyle | WS_MAXIMIZE);
- }
-
-
- if (showMode == kShowMainWindow)
- {
- //SetMainEditorWindow(m_Window);
- //HMENU menu = GetMainMenuHandle();
- //if (menu)
- // SetMenu(m_Window, menu);
- //GetApplication().UpdateMainWindowTitle();
- //GetApplication().UpdateDocumentEdited();
- }
- ShowWindow(m_Window, SW_SHOW);
-
- //s_ContainerWindows.insert(this);
-
- //ShowInTaskbarIfNoMainWindow(m_Window);
-
-}
-
-//------------------------------------------------------------------------------------------------------------------
-
-LRESULT CALLBACK GUIView::GUIViewWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
-{
- long flag = DefWindowProcW(hWnd, message, wParam, lParam);
- return flag;
-}
-
-void GUIView::DoPaint()
-{
-
-
-} \ No newline at end of file