mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-09 00:11:24 +12:00
Splitter fix
This commit is contained in:
parent
2b24635ef7
commit
96dfa9b526
4 changed files with 56 additions and 13 deletions
|
@ -1,7 +1,6 @@
|
|||
#include "debugger_frame.h"
|
||||
|
||||
#include <QScrollBar>
|
||||
#include <QSplitter>
|
||||
#include <QApplication>
|
||||
#include <QFontDatabase>
|
||||
#include <QCompleter>
|
||||
|
@ -9,7 +8,8 @@
|
|||
inline QString qstr(const std::string& _in) { return QString::fromUtf8(_in.data(), _in.size()); }
|
||||
extern bool user_asked_for_frame_capture;
|
||||
|
||||
debugger_frame::debugger_frame(QWidget *parent) : QDockWidget(tr("Debugger"), parent)
|
||||
debugger_frame::debugger_frame(std::shared_ptr<gui_settings> settings, QWidget *parent)
|
||||
: QDockWidget(tr("Debugger"), parent), xgui_settings(settings)
|
||||
{
|
||||
pSize = 10;
|
||||
|
||||
|
@ -64,12 +64,12 @@ debugger_frame::debugger_frame(QWidget *parent) : QDockWidget(tr("Debugger"), pa
|
|||
m_list->setFont(mono);
|
||||
m_regs->setFont(mono);
|
||||
|
||||
QSplitter* splitter = new QSplitter(this);
|
||||
splitter->addWidget(m_list);
|
||||
splitter->addWidget(m_regs);
|
||||
m_splitter = new QSplitter(this);
|
||||
m_splitter->addWidget(m_list);
|
||||
m_splitter->addWidget(m_regs);
|
||||
|
||||
QHBoxLayout* hbox_w_list = new QHBoxLayout();
|
||||
hbox_w_list->addWidget(splitter);
|
||||
hbox_w_list->addWidget(m_splitter);
|
||||
|
||||
vbox_p_main->addLayout(hbox_b_main);
|
||||
vbox_p_main->addLayout(hbox_w_list);
|
||||
|
@ -113,12 +113,42 @@ debugger_frame::debugger_frame(QWidget *parent) : QDockWidget(tr("Debugger"), pa
|
|||
UpdateUnitList();
|
||||
}
|
||||
|
||||
void debugger_frame::SaveSettings()
|
||||
{
|
||||
xgui_settings->SetValue(GUI::d_splitterState, m_splitter->saveState());
|
||||
}
|
||||
|
||||
void debugger_frame::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
QDockWidget::closeEvent(event);
|
||||
DebugFrameClosed();
|
||||
}
|
||||
|
||||
void debugger_frame::showEvent(QShowEvent * event)
|
||||
{
|
||||
// resize splitter widgets
|
||||
QByteArray state = xgui_settings->GetValue(GUI::d_splitterState).toByteArray();
|
||||
|
||||
if (state.isEmpty()) // resize 2:1
|
||||
{
|
||||
const int width_right = width() / 3;
|
||||
const int width_left = width() - width_right;
|
||||
m_splitter->setSizes({ width_left, width_right });
|
||||
}
|
||||
else
|
||||
{
|
||||
m_splitter->restoreState(state);
|
||||
}
|
||||
QDockWidget::showEvent(event);
|
||||
}
|
||||
|
||||
void debugger_frame::hideEvent(QHideEvent * event)
|
||||
{
|
||||
// save splitter state or it will resume its initial state on next show
|
||||
xgui_settings->SetValue(GUI::d_splitterState, m_splitter->saveState());
|
||||
QDockWidget::hideEvent(event);
|
||||
}
|
||||
|
||||
#include <map>
|
||||
|
||||
std::map<u32, bool> g_breakpoints;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue