mirror of
https://github.com/rizinorg/cutter.git
synced 2025-01-19 02:48:49 +00:00
Kill SidebarWidget
This commit is contained in:
parent
8241b09e80
commit
9a3844f5d1
@ -156,12 +156,10 @@ SOURCES += \
|
||||
widgets/SdbDock.cpp \
|
||||
widgets/SectionsWidget.cpp \
|
||||
widgets/SegmentsWidget.cpp \
|
||||
widgets/Sidebar.cpp \
|
||||
widgets/StringsWidget.cpp \
|
||||
widgets/SymbolsWidget.cpp \
|
||||
menus/DisassemblyContextMenu.cpp \
|
||||
widgets/DisassemblyWidget.cpp \
|
||||
widgets/SidebarWidget.cpp \
|
||||
widgets/HexdumpWidget.cpp \
|
||||
common/Configuration.cpp \
|
||||
common/Colors.cpp \
|
||||
@ -256,12 +254,10 @@ HEADERS += \
|
||||
widgets/SdbDock.h \
|
||||
widgets/SectionsWidget.h \
|
||||
widgets/SegmentsWidget.h \
|
||||
widgets/Sidebar.h \
|
||||
widgets/StringsWidget.h \
|
||||
widgets/SymbolsWidget.h \
|
||||
menus/DisassemblyContextMenu.h \
|
||||
widgets/DisassemblyWidget.h \
|
||||
widgets/SidebarWidget.h \
|
||||
widgets/HexdumpWidget.h \
|
||||
common/Configuration.h \
|
||||
common/Colors.h \
|
||||
@ -348,10 +344,8 @@ FORMS += \
|
||||
widgets/ImportsWidget.ui \
|
||||
widgets/SdbDock.ui \
|
||||
widgets/RelocsWidget.ui \
|
||||
widgets/Sidebar.ui \
|
||||
widgets/StringsWidget.ui \
|
||||
widgets/SymbolsWidget.ui \
|
||||
widgets/SidebarWidget.ui \
|
||||
widgets/HexdumpWidget.ui \
|
||||
dialogs/SaveProjectDialog.ui \
|
||||
dialogs/preferences/PreferencesDialog.ui \
|
||||
|
@ -68,7 +68,6 @@
|
||||
#include "widgets/FlagsWidget.h"
|
||||
#include "widgets/VisualNavbar.h"
|
||||
#include "widgets/Dashboard.h"
|
||||
#include "widgets/Sidebar.h"
|
||||
#include "widgets/SdbDock.h"
|
||||
#include "widgets/Omnibar.h"
|
||||
#include "widgets/ConsoleWidget.h"
|
||||
@ -177,7 +176,6 @@ void MainWindow::initUI()
|
||||
dockWidgets.reserve(20);
|
||||
|
||||
disassemblyDock = new DisassemblyWidget(this, ui->actionDisassembly);
|
||||
sidebarDock = new SidebarWidget(this, ui->actionSidebar);
|
||||
hexdumpDock = new HexdumpWidget(this, ui->actionHexdump);
|
||||
pseudocodeDock = new PseudocodeWidget(this, ui->actionPseudocode);
|
||||
consoleDock = new ConsoleWidget(this, ui->actionConsole);
|
||||
@ -551,9 +549,8 @@ void MainWindow::restoreDocks()
|
||||
// In the upper half the functions are the first widget
|
||||
addDockWidget(Qt::TopDockWidgetArea, functionsDock);
|
||||
|
||||
// Function | Dashboard | Sidebar
|
||||
// Function | Dashboard
|
||||
splitDockWidget(functionsDock, dashboardDock, Qt::Horizontal);
|
||||
splitDockWidget(dashboardDock, sidebarDock, Qt::Horizontal);
|
||||
|
||||
// In the lower half the console is the first widget
|
||||
addDockWidget(Qt::BottomDockWidgetArea, consoleDock);
|
||||
@ -585,7 +582,6 @@ void MainWindow::restoreDocks()
|
||||
tabifyDockWidget(dashboardDock, vTablesDock);
|
||||
|
||||
// Add Stack, Registers and Backtrace vertically stacked
|
||||
splitDockWidget(sidebarDock, stackDock, Qt::Horizontal);
|
||||
splitDockWidget(stackDock, registersDock, Qt::Vertical);
|
||||
tabifyDockWidget(stackDock, backtraceDock);
|
||||
// MemoryMap/Breakpoint/RegRefs widget goes in the center tabs
|
||||
|
@ -5,7 +5,6 @@
|
||||
|
||||
#include "Cutter.h" // only needed for ut64
|
||||
#include "widgets/DisassemblyWidget.h"
|
||||
#include "widgets/SidebarWidget.h"
|
||||
#include "widgets/StackWidget.h"
|
||||
#include "widgets/RegistersWidget.h"
|
||||
#include "widgets/BacktraceWidget.h"
|
||||
@ -196,7 +195,6 @@ private:
|
||||
QList<QDockWidget *> dockWidgets;
|
||||
QMap<QAction *, QDockWidget *> dockWidgetActions;
|
||||
DisassemblyWidget *disassemblyDock = nullptr;
|
||||
SidebarWidget *sidebarDock = nullptr;
|
||||
HexdumpWidget *hexdumpDock = nullptr;
|
||||
PseudocodeWidget *pseudocodeDock = nullptr;
|
||||
QDockWidget *graphDock = nullptr;
|
||||
|
@ -197,7 +197,6 @@ QToolTip {
|
||||
<addaction name="actionHexdump"/>
|
||||
<addaction name="actionPseudocode"/>
|
||||
<addaction name="actionFunctions"/>
|
||||
<addaction name="actionSidebar"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionStrings"/>
|
||||
<addaction name="actionSearch"/>
|
||||
@ -950,14 +949,6 @@ QToolTip {
|
||||
<string>Hexdump</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSidebar">
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Sidebar</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionConsole">
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
|
@ -1,65 +0,0 @@
|
||||
#include "Sidebar.h"
|
||||
#include "ui_Sidebar.h"
|
||||
|
||||
#include "MainWindow.h"
|
||||
|
||||
#include <QSettings>
|
||||
|
||||
|
||||
SideBar::SideBar(MainWindow *main) :
|
||||
QWidget(main),
|
||||
ui(new Ui::SideBar),
|
||||
main(main)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
QSettings settings;
|
||||
if (settings.value("responsive").toBool()) {
|
||||
ui->respButton->setChecked(true);
|
||||
} else {
|
||||
ui->respButton->setChecked(false);
|
||||
}
|
||||
}
|
||||
|
||||
SideBar::~SideBar() {}
|
||||
|
||||
void SideBar::on_tabsButton_clicked()
|
||||
{
|
||||
this->main->on_actionTabs_triggered();
|
||||
}
|
||||
|
||||
void SideBar::on_lockButton_clicked()
|
||||
{
|
||||
if (ui->lockButton->isChecked()) {
|
||||
ui->lockButton->setIcon(QIcon(":/img/icons/unlock_white.svg"));
|
||||
this->main->lockUnlock_Docks(1);
|
||||
} else {
|
||||
ui->lockButton->setIcon(QIcon(":/img/icons/lock_white.svg"));
|
||||
this->main->lockUnlock_Docks(0);
|
||||
}
|
||||
}
|
||||
|
||||
void SideBar::on_calcInput_textChanged(const QString &arg1)
|
||||
{
|
||||
ui->calcOutput->setText(QString::number(Core()->math(arg1)));
|
||||
}
|
||||
|
||||
void SideBar::on_asm2hex_clicked()
|
||||
{
|
||||
ui->hexInput->setPlainText(Core()->assemble(ui->asmInput->toPlainText()));
|
||||
}
|
||||
|
||||
void SideBar::on_hex2asm_clicked()
|
||||
{
|
||||
ui->asmInput->setPlainText(Core()->disassemble(ui->hexInput->toPlainText()));
|
||||
}
|
||||
|
||||
void SideBar::on_respButton_toggled(bool checked)
|
||||
{
|
||||
this->main->toggleResponsive(checked);
|
||||
}
|
||||
|
||||
void SideBar::on_refreshButton_clicked()
|
||||
{
|
||||
this->main->refreshAll();
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
#ifndef SIDEBAR_H
|
||||
#define SIDEBAR_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <memory>
|
||||
|
||||
class MainWindow;
|
||||
|
||||
namespace Ui {
|
||||
class SideBar;
|
||||
}
|
||||
|
||||
class SideBar : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SideBar(MainWindow *main);
|
||||
~SideBar();
|
||||
|
||||
private slots:
|
||||
|
||||
void on_tabsButton_clicked();
|
||||
|
||||
void on_lockButton_clicked();
|
||||
|
||||
void on_calcInput_textChanged(const QString &arg1);
|
||||
|
||||
void on_asm2hex_clicked();
|
||||
|
||||
void on_hex2asm_clicked();
|
||||
|
||||
void on_respButton_toggled(bool checked);
|
||||
|
||||
void on_refreshButton_clicked();
|
||||
|
||||
private:
|
||||
std::unique_ptr<Ui::SideBar> ui;
|
||||
MainWindow *main;
|
||||
};
|
||||
|
||||
#endif // SIDEBAR_H
|
File diff suppressed because it is too large
Load Diff
@ -1,241 +0,0 @@
|
||||
#include "SidebarWidget.h"
|
||||
#include "ui_SidebarWidget.h"
|
||||
#include "DisassemblerGraphView.h"
|
||||
|
||||
#include "common/Helpers.h"
|
||||
#include "common/TempConfig.h"
|
||||
|
||||
#include <QTemporaryFile>
|
||||
#include <QFontDialog>
|
||||
#include <QScrollBar>
|
||||
#include <QShortcut>
|
||||
#include <QMenu>
|
||||
#include <QFont>
|
||||
#include <QUrl>
|
||||
#include <QSettings>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
|
||||
SidebarWidget::SidebarWidget(MainWindow *main, QAction *action) :
|
||||
CutterDockWidget(main, action),
|
||||
ui(new Ui::SidebarWidget)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
// Add margin to function name line edit
|
||||
ui->fcnNameEdit->setTextMargins(5, 0, 0, 0);
|
||||
|
||||
setScrollMode();
|
||||
|
||||
connect(Core(), SIGNAL(seekChanged(RVA)), this, SLOT(on_seekChanged(RVA)));
|
||||
connect(Core(), SIGNAL(flagsChanged()), this, SLOT(refresh()));
|
||||
connect(Core(), SIGNAL(commentsChanged()), this, SLOT(refresh()));
|
||||
connect(Core(), SIGNAL(asmOptionsChanged()), this, SLOT(refresh()));
|
||||
|
||||
connect(Core(), SIGNAL(refreshAll()), this, SLOT(refresh()));
|
||||
}
|
||||
|
||||
SidebarWidget::~SidebarWidget()
|
||||
{
|
||||
}
|
||||
|
||||
void SidebarWidget::on_seekChanged(RVA addr)
|
||||
{
|
||||
refresh(addr);
|
||||
}
|
||||
|
||||
void SidebarWidget::refresh(RVA addr)
|
||||
{
|
||||
if (addr == RVA_INVALID)
|
||||
addr = Core()->getOffset();
|
||||
|
||||
updateRefs(addr);
|
||||
setFcnName(addr);
|
||||
fillOffsetInfo(RAddressString(addr));
|
||||
fillRegistersInfo();
|
||||
}
|
||||
|
||||
void SidebarWidget::on_xrefFromTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column)
|
||||
{
|
||||
if (column < 0)
|
||||
return;
|
||||
|
||||
XrefDescription xref = item->data(0, Qt::UserRole).value<XrefDescription>();
|
||||
Core()->seek(xref.to);
|
||||
}
|
||||
|
||||
void SidebarWidget::on_xrefToTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column)
|
||||
{
|
||||
if (column < 0)
|
||||
return;
|
||||
|
||||
XrefDescription xref = item->data(0, Qt::UserRole).value<XrefDescription>();
|
||||
Core()->seek(xref.from);
|
||||
}
|
||||
|
||||
void SidebarWidget::on_offsetToolButton_clicked()
|
||||
{
|
||||
if (ui->offsetToolButton->isChecked()) {
|
||||
ui->offsetTreeWidget->hide();
|
||||
ui->offsetToolButton->setArrowType(Qt::RightArrow);
|
||||
} else {
|
||||
ui->offsetTreeWidget->show();
|
||||
ui->offsetToolButton->setArrowType(Qt::DownArrow);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::on_opcodeDescToolButton_clicked()
|
||||
{
|
||||
if (ui->opcodeDescToolButton->isChecked()) {
|
||||
ui->opcodeDescText->hide();
|
||||
ui->opcodeDescToolButton->setArrowType(Qt::RightArrow);
|
||||
} else {
|
||||
ui->opcodeDescText->show();
|
||||
ui->opcodeDescToolButton->setArrowType(Qt::DownArrow);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::on_xrefFromToolButton_clicked()
|
||||
{
|
||||
if (ui->xrefFromToolButton->isChecked()) {
|
||||
ui->xrefFromTreeWidget->hide();
|
||||
ui->xrefFromToolButton->setArrowType(Qt::RightArrow);
|
||||
} else {
|
||||
ui->xrefFromTreeWidget->show();
|
||||
ui->xrefFromToolButton->setArrowType(Qt::DownArrow);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::on_xrefToToolButton_clicked()
|
||||
{
|
||||
if (ui->xrefToToolButton->isChecked()) {
|
||||
ui->xrefToTreeWidget->hide();
|
||||
ui->xrefToToolButton->setArrowType(Qt::RightArrow);
|
||||
} else {
|
||||
ui->xrefToTreeWidget->show();
|
||||
ui->xrefToToolButton->setArrowType(Qt::DownArrow);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::on_regInfoToolButton_clicked()
|
||||
{
|
||||
if (ui->regInfoToolButton->isChecked()) {
|
||||
ui->regInfoTreeWidget->hide();
|
||||
ui->regInfoToolButton->setArrowType(Qt::RightArrow);
|
||||
} else {
|
||||
ui->regInfoTreeWidget->show();
|
||||
ui->regInfoToolButton->setArrowType(Qt::DownArrow);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::updateRefs(RVA addr)
|
||||
{
|
||||
QList<XrefDescription> refs = Core()->getXRefs(addr, false, false);
|
||||
QList<XrefDescription> xrefs = Core()->getXRefs(addr, true, false);
|
||||
|
||||
// Update disasm side bar
|
||||
this->fillRefs(refs, xrefs);
|
||||
}
|
||||
|
||||
void SidebarWidget::fillRefs(QList<XrefDescription> refs, QList<XrefDescription> xrefs)
|
||||
{
|
||||
TempConfig tempConfig;
|
||||
tempConfig.set("scr.html", false)
|
||||
.set("scr.color", COLOR_MODE_DISABLED);
|
||||
|
||||
ui->xrefFromTreeWidget->clear();
|
||||
for (int i = 0; i < refs.size(); ++i) {
|
||||
XrefDescription xref = refs[i];
|
||||
QTreeWidgetItem *tempItem = new QTreeWidgetItem();
|
||||
tempItem->setText(0, xref.to_str);
|
||||
tempItem->setText(1, Core()->disassembleSingleInstruction(xref.to));
|
||||
tempItem->setData(0, Qt::UserRole, QVariant::fromValue(xref));
|
||||
QString tooltip = Core()->cmd("pdi 10 @ " + QString::number(xref.to)).trimmed();
|
||||
tempItem->setToolTip(0, tooltip);
|
||||
tempItem->setToolTip(1, tooltip);
|
||||
ui->xrefFromTreeWidget->insertTopLevelItem(0, tempItem);
|
||||
}
|
||||
// Adjust columns to content
|
||||
qhelpers::adjustColumns(ui->xrefFromTreeWidget, 0);
|
||||
|
||||
ui->xrefToTreeWidget->clear();
|
||||
for (int i = 0; i < xrefs.size(); ++i) {
|
||||
XrefDescription xref = xrefs[i];
|
||||
|
||||
QTreeWidgetItem *tempItem = new QTreeWidgetItem();
|
||||
tempItem->setText(0, xref.from_str);
|
||||
tempItem->setText(1, Core()->disassembleSingleInstruction(xref.from));
|
||||
tempItem->setData(0, Qt::UserRole, QVariant::fromValue(xref));
|
||||
QString tooltip = Core()->cmd("pdi 10 @ " + QString::number(xref.from)).trimmed();
|
||||
|
||||
ui->xrefToTreeWidget->insertTopLevelItem(0, tempItem);
|
||||
}
|
||||
|
||||
// Adjust columns to content
|
||||
qhelpers::adjustColumns(ui->xrefToTreeWidget, 0);
|
||||
}
|
||||
|
||||
void SidebarWidget::fillOffsetInfo(QString off)
|
||||
{
|
||||
TempConfig tempConfig;
|
||||
tempConfig.set("scr.html", false)
|
||||
.set("scr.color", COLOR_MODE_DISABLED);
|
||||
|
||||
ui->offsetTreeWidget->clear();
|
||||
QString raw = Core()->cmd(QString("ao@") + off).trimmed();
|
||||
QList<QString> lines = raw.split("\n", QString::SkipEmptyParts);
|
||||
for (const QString &line : lines) {
|
||||
QList<QString> eles = line.split(":", QString::SkipEmptyParts);
|
||||
if (eles.length() < 2) {
|
||||
continue;
|
||||
}
|
||||
QTreeWidgetItem *tempItem = new QTreeWidgetItem();
|
||||
tempItem->setText(0, eles.at(0).toUpper());
|
||||
tempItem->setText(1, eles.at(1));
|
||||
ui->offsetTreeWidget->insertTopLevelItem(0, tempItem);
|
||||
}
|
||||
|
||||
// Adjust column to contents
|
||||
qhelpers::adjustColumns(ui->offsetTreeWidget, 0);
|
||||
|
||||
// Add opcode description
|
||||
QStringList description = Core()->cmd("aod @ " + off).split(": ");
|
||||
if (description.length() >= 2) {
|
||||
ui->opcodeDescText->setPlainText("# " + description[0] + ":\n" + description[1]);
|
||||
}
|
||||
}
|
||||
|
||||
void SidebarWidget::setFcnName(RVA addr)
|
||||
{
|
||||
ui->fcnNameEdit->setText(Core()->cmdFunctionAt(addr));
|
||||
}
|
||||
|
||||
void SidebarWidget::setScrollMode()
|
||||
{
|
||||
qhelpers::setVerticalScrollMode(ui->xrefFromTreeWidget);
|
||||
qhelpers::setVerticalScrollMode(ui->xrefToTreeWidget);
|
||||
}
|
||||
|
||||
void SidebarWidget::fillRegistersInfo()
|
||||
{
|
||||
TempConfig tempConfig;
|
||||
tempConfig.set("scr.html", false)
|
||||
.set("scr.color", COLOR_MODE_DISABLED);
|
||||
|
||||
ui->regInfoTreeWidget->clear();
|
||||
|
||||
QJsonObject jsonRoot = Core()->getRegistersInfo().object();
|
||||
for (const QString &key : jsonRoot.keys()) {
|
||||
QTreeWidgetItem *tempItem = new QTreeWidgetItem();
|
||||
QString tempString;
|
||||
tempItem->setText(0, key.toUpper());
|
||||
for (const QJsonValue &value : jsonRoot[key].toArray()) {
|
||||
tempString.append(value.toString() + " ");
|
||||
}
|
||||
tempItem->setText(1, tempString);
|
||||
ui->regInfoTreeWidget->addTopLevelItem(tempItem);
|
||||
}
|
||||
|
||||
// Adjust columns to content
|
||||
qhelpers::adjustColumns(ui->regInfoTreeWidget, 0);
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
|
||||
#ifndef SIDEBARWIDGET_H
|
||||
#define SIDEBARWIDGET_H
|
||||
|
||||
|
||||
#include <QDebug>
|
||||
#include <QTextEdit>
|
||||
#include <QTreeWidget>
|
||||
#include <QTabWidget>
|
||||
#include <QUrl>
|
||||
#include <QPlainTextEdit>
|
||||
#include <QMouseEvent>
|
||||
#include <memory>
|
||||
|
||||
#include "Cutter.h"
|
||||
#include "CutterDockWidget.h"
|
||||
#include "common/Highlighter.h"
|
||||
#include "common/HexAsciiHighlighter.h"
|
||||
#include "common/HexHighlighter.h"
|
||||
#include "Dashboard.h"
|
||||
|
||||
|
||||
namespace Ui {
|
||||
class SidebarWidget;
|
||||
}
|
||||
|
||||
class SidebarWidget : public CutterDockWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SidebarWidget(MainWindow *main, QAction *action = nullptr);
|
||||
~SidebarWidget();
|
||||
|
||||
private:
|
||||
std::unique_ptr<Ui::SidebarWidget> ui;
|
||||
|
||||
void setFcnName(RVA addr);
|
||||
void updateRefs(RVA addr);
|
||||
void fillRefs(QList<XrefDescription> refs, QList<XrefDescription> xrefs);
|
||||
void fillOffsetInfo(QString off);
|
||||
void fillRegistersInfo();
|
||||
|
||||
void setScrollMode();
|
||||
|
||||
private slots:
|
||||
void on_seekChanged(RVA addr);
|
||||
|
||||
void refresh(RVA addr = RVA_INVALID);
|
||||
|
||||
void on_xrefFromTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
|
||||
void on_xrefToTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
|
||||
|
||||
void on_offsetToolButton_clicked();
|
||||
void on_opcodeDescToolButton_clicked();
|
||||
void on_xrefFromToolButton_clicked();
|
||||
void on_xrefToToolButton_clicked();
|
||||
void on_regInfoToolButton_clicked();
|
||||
};
|
||||
|
||||
#endif // SIDEBARWIDGET_H
|
@ -1,629 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>SidebarWidget</class>
|
||||
<widget class="QDockWidget" name="SidebarWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>333</width>
|
||||
<height>835</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Ignored" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string notr="true">Sidebar</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="dockWidgetContents">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QScrollArea" name="scrollArea_4">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="sizeAdjustPolicy">
|
||||
<enum>QAbstractScrollArea::AdjustToContents</enum>
|
||||
</property>
|
||||
<property name="widgetResizable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
|
||||
</property>
|
||||
<widget class="QWidget" name="scrollAreaWidgetContents_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>333</width>
|
||||
<height>810</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_11">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string> Function:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="fcnNameEdit">
|
||||
<property name="inputMask">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QToolButton" name="offsetToolButton">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>8</width>
|
||||
<height>8</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="mouseTracking">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Offset info:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="offsetTreeWidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>175</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="indentation">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="headerHidden">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Info</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Value</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
||||
<item>
|
||||
<widget class="QToolButton" name="opcodeDescToolButton">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>8</width>
|
||||
<height>8</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="mouseTracking">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Opcode description:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPlainTextEdit" name="opcodeDescText">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="undoRedoEnabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_17">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QToolButton" name="regInfoToolButton">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>8</width>
|
||||
<height>8</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="mouseTracking">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Function registers info:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="regInfoTreeWidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="indentation">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="headerHidden">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Info</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Value</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_16">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QToolButton" name="xrefToToolButton">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>8</width>
|
||||
<height>8</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="xrefToLabel">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>X-Refs to current address:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="xrefToTreeWidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QTreeWidget::item
|
||||
{
|
||||
padding-top: 1px;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
QToolTip {
|
||||
background-color: #444;
|
||||
border: 3px solid #444;
|
||||
color: rgb(232, 232, 232);
|
||||
font: 12pt "Monaco";
|
||||
}</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="verticalScrollMode">
|
||||
<enum>QAbstractItemView::ScrollPerPixel</enum>
|
||||
</property>
|
||||
<property name="indentation">
|
||||
<number>8</number>
|
||||
</property>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Address</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Instruction</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_15">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QToolButton" name="xrefFromToolButton">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>8</width>
|
||||
<height>8</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="arrowType">
|
||||
<enum>Qt::DownArrow</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="xrefFromLabel">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>X-Refs from current address:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeWidget" name="xrefFromTreeWidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QTreeWidget::item
|
||||
{
|
||||
padding-top: 1px;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
QToolTip {
|
||||
background-color: #444;
|
||||
border: 3px solid #444;
|
||||
color: rgb(232, 232, 232);
|
||||
font: 12pt "Monaco";
|
||||
}</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="verticalScrollMode">
|
||||
<enum>QAbstractItemView::ScrollPerPixel</enum>
|
||||
</property>
|
||||
<property name="indentation">
|
||||
<number>8</number>
|
||||
</property>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Address</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Instruction</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="../resources.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
Loading…
Reference in New Issue
Block a user