diff --git a/Windows/Debugger/Debugger_Disasm.cpp b/Windows/Debugger/Debugger_Disasm.cpp index c453fb9e9b..25ca8acc0d 100644 --- a/Windows/Debugger/Debugger_Disasm.cpp +++ b/Windows/Debugger/Debugger_Disasm.cpp @@ -92,21 +92,15 @@ CDisasm::CDisasm(HINSTANCE _hInstance, HWND _hParent, DebugInterface *_cpu) : Di CtrlRegisterList *rl = CtrlRegisterList::getFrom(GetDlgItem(m_hDlg,IDC_REGLIST)); rl->setCPU(cpu); - GetWindowRect(m_hDlg,&minRect); - // Reduce the minimum size slightly, so they can size it however they like. - minRect.right -= 100; - minRect.bottom -= 100; + GetWindowRect(m_hDlg, &defaultRect); //symbolMap.FillSymbolListBox(GetDlgItem(m_hDlg, IDC_FUNCTIONLIST),ST_FUNCTION); symbolMap.FillSymbolComboBox(GetDlgItem(m_hDlg, IDC_FUNCTIONLIST),ST_FUNCTION); - GetWindowRect(GetDlgItem(m_hDlg, IDC_REGLIST),®Rect); - GetWindowRect(GetDlgItem(m_hDlg, IDC_DISASMVIEW),&disRect); - GetWindowRect(GetDlgItem(m_hDlg, IDC_BREAKPOINTLIST),&breakpointRect); - - int minHeight = max((disRect.bottom-disRect.top)+(breakpointRect.bottom-breakpointRect.top)+37, - (regRect.bottom-regRect.top)+(breakpointRect.bottom-breakpointRect.top)+150); - if (h < minHeight) h = minHeight; + GetWindowRect(GetDlgItem(m_hDlg, IDC_REGLIST), ®Rect); + GetWindowRect(GetDlgItem(m_hDlg, IDC_DISASMVIEW), &disRect); + GetWindowRect(GetDlgItem(m_hDlg, IDC_BREAKPOINTLIST), &breakpointRect); + GetWindowRect(GetDlgItem(m_hDlg, IDC_BREAKPOINTLIST), &defaultBreakpointRect); HWND tabs = GetDlgItem(m_hDlg, IDC_LEFTTABS); @@ -714,9 +708,10 @@ BOOL CDisasm::DlgProc(UINT message, WPARAM wParam, LPARAM lParam) case WM_GETMINMAXINFO: { MINMAXINFO *m = (MINMAXINFO *)lParam; - m->ptMinTrackSize.x=minRect.right-minRect.left; - //m->ptMaxTrackSize.x=m->ptMinTrackSize.x; - m->ptMinTrackSize.y=minRect.bottom-minRect.top; + // Reduce the minimum size slightly, so they can size it however they like. + m->ptMinTrackSize.x = defaultRect.right - defaultRect.left - 100; + //m->ptMaxTrackSize.x = m->ptMinTrackSize.x; + m->ptMinTrackSize.y = defaultRect.bottom - defaultRect.top - 200; } return TRUE; case WM_CLOSE: @@ -733,7 +728,11 @@ void CDisasm::UpdateSize(WORD width, WORD height) HWND regList = GetDlgItem(m_hDlg, IDC_REGLIST); HWND breakpointList = GetDlgItem(m_hDlg, IDC_BREAKPOINTLIST); - int breakpointHeight = breakpointRect.bottom-breakpointRect.top; + int defaultHeight = defaultRect.bottom - defaultRect.top; + int breakpointHeight = defaultBreakpointRect.bottom - defaultBreakpointRect.top; + if (height < defaultHeight) + breakpointHeight -= defaultHeight - height; + int breakpointTop = height-breakpointHeight-8; int regWidth = regRect.right - regRect.left; int regTop = 138; diff --git a/Windows/Debugger/Debugger_Disasm.h b/Windows/Debugger/Debugger_Disasm.h index 644e2a7ea2..1ddbe6bbf5 100644 --- a/Windows/Debugger/Debugger_Disasm.h +++ b/Windows/Debugger/Debugger_Disasm.h @@ -15,7 +15,8 @@ class CDisasm : public Dialog { private: - RECT minRect; + RECT defaultRect; + RECT defaultBreakpointRect; RECT regRect; RECT disRect; RECT breakpointRect; diff --git a/Windows/ppsspp.rc b/Windows/ppsspp.rc index e0f08a2746..ea95ee62bc 100644 Binary files a/Windows/ppsspp.rc and b/Windows/ppsspp.rc differ