From 60b2b1db5f193ecbcf8107f4b52a6b02ec16ff86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Sun, 14 Aug 2022 11:26:51 +0200 Subject: [PATCH] Move the display list view to its own column on the right --- Windows/GEDebugger/CtrlDisplayListView.cpp | 4 ++-- Windows/GEDebugger/CtrlDisplayListView.h | 2 +- Windows/GEDebugger/GEDebugger.cpp | 14 +++++++++++--- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Windows/GEDebugger/CtrlDisplayListView.cpp b/Windows/GEDebugger/CtrlDisplayListView.cpp index 4a0e9095a3..188884a292 100644 --- a/Windows/GEDebugger/CtrlDisplayListView.cpp +++ b/Windows/GEDebugger/CtrlDisplayListView.cpp @@ -72,10 +72,10 @@ CtrlDisplayListView *CtrlDisplayListView::getFrom(HWND hwnd) } CtrlDisplayListView *CtrlDisplayListView::Create(HWND parentWnd) { - DWORD style = WS_CHILD; + DWORD style = WS_CHILD | WS_VISIBLE | WS_BORDER; RECT tabRect{ 0, 0, 100, 100 }; - HWND hWnd = CreateWindowEx(0, windowClass, L"", style, + HWND hWnd = CreateWindowEx(0, windowClass, L"Display List", style, tabRect.left, tabRect.top, tabRect.right - tabRect.left, tabRect.bottom - tabRect.top, parentWnd, 0, MainWindow::GetHInstance(), 0); diff --git a/Windows/GEDebugger/CtrlDisplayListView.h b/Windows/GEDebugger/CtrlDisplayListView.h index 4112b91f93..73d96b2c12 100644 --- a/Windows/GEDebugger/CtrlDisplayListView.h +++ b/Windows/GEDebugger/CtrlDisplayListView.h @@ -37,7 +37,7 @@ public: static LRESULT CALLBACK wndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); static CtrlDisplayListView * getFrom(HWND wnd); - CtrlDisplayListView *Create(HWND parentWnd); + static CtrlDisplayListView *Create(HWND parentWnd); HWND GetHWND() { return wnd; diff --git a/Windows/GEDebugger/GEDebugger.cpp b/Windows/GEDebugger/GEDebugger.cpp index 16aa373b68..18ccc1823f 100644 --- a/Windows/GEDebugger/GEDebugger.cpp +++ b/Windows/GEDebugger/GEDebugger.cpp @@ -141,7 +141,6 @@ CGEDebugger::CGEDebugger(HINSTANCE _hInstance, HWND _hParent) // up both the size and the aspect ratio RECT frameRect; HWND frameWnd = GetDlgItem(m_hDlg,IDC_GEDBG_FRAME); - GetWindowRect(frameWnd,&frameRect); MapWindowPoints(HWND_DESKTOP,m_hDlg,(LPPOINT)&frameRect,2); MoveWindow(frameWnd,frameRect.left,frameRect.top,512,272,TRUE); @@ -149,8 +148,8 @@ CGEDebugger::CGEDebugger(HINSTANCE _hInstance, HWND _hParent) tabs = new TabControl(GetDlgItem(m_hDlg, IDC_GEDBG_MAINTAB)); tabsRight_ = new TabControl(GetDlgItem(m_hDlg, IDC_GEDBG_RIGHTTAB)); - HWND wnd = tabs->AddTabWindow(L"CtrlDisplayListView", L"Display List"); - displayList = CtrlDisplayListView::getFrom(wnd); + // HWND wnd = tabs->AddTabWindow(L"CtrlDisplayListView", L"Display List"); + displayList = CtrlDisplayListView::Create(m_hDlg); fbTabs = new TabControl(GetDlgItem(m_hDlg, IDC_GEDBG_FBTABS)); fbTabs->SetMinTabWidth(50); @@ -731,9 +730,18 @@ void CGEDebugger::UpdateSize(WORD width, WORD height) { RECT tabRectRight = tabRect; tabRectRight.left += tabRect.right; tabRectRight.right += tabRect.right; + + RECT frameRect; + HWND frameWnd = GetDlgItem(m_hDlg, IDC_GEDBG_FRAME); + GetWindowRect(frameWnd, &frameRect); + RECT listRect = { frameRect.right + 10, 40, tabRectRight.right, tabRect.top }; + MoveWindow(tabControl, tabRect.left, tabRect.top, tabRect.right - tabRect.left, tabRect.bottom - tabRect.top, TRUE); MoveWindow(tabControlRight, tabRectRight.left, tabRectRight.top, tabRectRight.right - tabRectRight.left, tabRectRight.bottom - tabRectRight.top, TRUE); + if (displayList) { + MoveWindow(displayList->GetHWND(), listRect.left, listRect.top, listRect.right - listRect.left, listRect.bottom - listRect.top, TRUE); + } } void CGEDebugger::SavePosition() {