Qt/MemoryViewer: Make it vertically resizable

This commit is contained in:
Nick Renieris 2020-03-31 03:40:24 +03:00 committed by Ani
parent 9024ba69b4
commit 1113221340
2 changed files with 30 additions and 2 deletions

View File

@ -1,6 +1,7 @@
#include "stdafx.h"
#include "Utilities/mutex.h"
#include "Emu/Memory/vm_locking.h"
#include "Emu/Memory/vm.h"
#include "memory_viewer_panel.h"
@ -233,7 +234,9 @@ memory_viewer_panel::memory_viewer_panel(QWidget* parent)
//Fill the QTextEdits
ShowMemory();
setFixedSize(sizeHint());
setFixedWidth(sizeHint().width());
setMinimumHeight(hbox_tools->sizeHint().height());
}
memory_viewer_panel::~memory_viewer_panel()
@ -255,6 +258,29 @@ void memory_viewer_panel::wheelEvent(QWheelEvent *event)
ShowMemory();
}
void memory_viewer_panel::resizeEvent(QResizeEvent *event)
{
QDialog::resizeEvent(event);
if (event->oldSize().height() != -1)
m_height_leftover += event->size().height() - event->oldSize().height();
const auto font_height = m_fontMetrics->height();
if (m_height_leftover >= font_height)
{
m_height_leftover -= font_height;
++m_rowcount;
ShowMemory();
}
else if (m_height_leftover < -font_height)
{
m_height_leftover += font_height;
--m_rowcount;
ShowMemory();
}
}
void memory_viewer_panel::ShowMemory()
{
QString t_mem_addr_str;

View File

@ -11,6 +11,7 @@ class memory_viewer_panel : public QDialog
u32 m_addr;
u32 m_colcount;
u32 m_rowcount;
s32 m_height_leftover{};
QLineEdit* m_addr_line;
@ -25,7 +26,8 @@ public:
memory_viewer_panel(QWidget* parent);
~memory_viewer_panel();
virtual void wheelEvent(QWheelEvent *event);
void wheelEvent(QWheelEvent *event) override;
void resizeEvent(QResizeEvent *event) override;
virtual void ShowMemory();
void SetPC(const uint pc);