Files
ppsspp/Windows/Debugger/Debugger_VFPUDlg.h
T
Henrik RydgårdandClaude Opus 5.5 f982a6a475 Debugger: Fix the Win32 VFPU window at high DPI, implement it in ImDebugger
- Fixes #21636

The Win32 window drew with a fixed 12px font and hardcoded pixel offsets, so at
high DPI the grid ran under the (dialog-unit sized) tab bar. It now uses the
DPI-scaled debugger font, derives the layout from its metrics and the tab bar's
position, and sizes the window to fit. The HalfFloat, Bytes, Shorts and Ints
tabs, which used to show floats, now work.

The ImDebugger VFPU window, which was a TODO, shows the same grid and modes,
with changed values highlighted.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 13:42:06 +02:00

33 lines
603 B
C++

#pragma once
#include "Windows/W32Util/DialogManager.h"
#include "Core/MemMap.h"
#include "Core/Debugger/DebugInterface.h"
class CVFPUDlg : public Dialog {
public:
CVFPUDlg(HINSTANCE _hInstance, HWND _hParent, DebugInterface *cpu_);
~CVFPUDlg();
void Update() override;
private:
void ComputeLayout();
void Paint(HDC hdc);
BOOL DlgProc(UINT message, WPARAM wParam, LPARAM lParam) override;
// In pixels, derived from the font.
struct Layout {
int rowHeight;
int columnWidth;
int xStart;
int yStart;
int pad;
};
DebugInterface *cpu;
HFONT font;
int mode;
Layout layout_{};
};