Merge pull request #2730 from torusrxxx/patch000000c5
More detailed description of menu actions in status bar
This commit is contained in:
commit
379e8da30d
|
@ -14,10 +14,6 @@
|
|||
CPURegistersView::CPURegistersView(CPUWidget* parent) : RegistersView(parent), mParent(parent)
|
||||
{
|
||||
// precreate ContextMenu Actions
|
||||
wCM_Increment = setupAction(DIcon("register_inc.png"), tr("Increment"));
|
||||
wCM_Decrement = setupAction(DIcon("register_dec.png"), tr("Decrement"));
|
||||
wCM_Zero = setupAction(DIcon("register_zero.png"), tr("Zero"));
|
||||
wCM_SetToOne = setupAction(DIcon("register_one.png"), tr("Set to 1"));
|
||||
wCM_Modify = new QAction(DIcon("register_edit.png"), tr("Modify value"), this);
|
||||
wCM_Modify->setShortcut(QKeySequence(Qt::Key_Enter));
|
||||
wCM_ToggleValue = setupAction(DIcon("register_toggle.png"), tr("Toggle"));
|
||||
|
@ -29,10 +25,6 @@ CPURegistersView::CPURegistersView(CPUWidget* parent) : RegistersView(parent), m
|
|||
wCM_RemoveHardware = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove hardware breakpoint"), this);
|
||||
wCM_Incrementx87Stack = setupAction(DIcon("arrow-small-down.png"), tr("Increment x87 Stack"));
|
||||
wCM_Decrementx87Stack = setupAction(DIcon("arrow-small-up.png"), tr("Decrement x87 Stack"));
|
||||
wCM_IncrementPtrSize = setupAction(DIcon("register_inc.png"), ArchValue(tr("Increase 4"), tr("Increase 8")));
|
||||
wCM_DecrementPtrSize = setupAction(DIcon("register_dec.png"), ArchValue(tr("Decrease 4"), tr("Decrease 8")));
|
||||
wCM_Push = setupAction(DIcon("arrow-small-down.png"), tr("Push"));
|
||||
wCM_Pop = setupAction(DIcon("arrow-small-up.png"), tr("Pop"));
|
||||
wCM_Highlight = setupAction(DIcon("highlight.png"), tr("Highlight"));
|
||||
// foreign messages
|
||||
connect(Bridge::getBridge(), SIGNAL(updateRegisters()), this, SLOT(updateRegistersSlot()));
|
||||
|
@ -40,12 +32,8 @@ CPURegistersView::CPURegistersView(CPUWidget* parent) : RegistersView(parent), m
|
|||
connect(Bridge::getBridge(), SIGNAL(dbgStateChanged(DBGSTATE)), this, SLOT(debugStateChangedSlot(DBGSTATE)));
|
||||
connect(parent->getDisasmWidget(), SIGNAL(selectionChanged(dsint)), this, SLOT(disasmSelectionChangedSlot(dsint)));
|
||||
// context menu actions
|
||||
connect(wCM_Increment, SIGNAL(triggered()), this, SLOT(onIncrementAction()));
|
||||
connect(wCM_Decrement, SIGNAL(triggered()), this, SLOT(onDecrementAction()));
|
||||
connect(wCM_Incrementx87Stack, SIGNAL(triggered()), this, SLOT(onIncrementx87StackAction()));
|
||||
connect(wCM_Decrementx87Stack, SIGNAL(triggered()), this, SLOT(onDecrementx87StackAction()));
|
||||
connect(wCM_Zero, SIGNAL(triggered()), this, SLOT(onZeroAction()));
|
||||
connect(wCM_SetToOne, SIGNAL(triggered()), this, SLOT(onSetToOneAction()));
|
||||
connect(wCM_Modify, SIGNAL(triggered()), this, SLOT(onModifyAction()));
|
||||
connect(wCM_ToggleValue, SIGNAL(triggered()), this, SLOT(onToggleValueAction()));
|
||||
connect(wCM_Undo, SIGNAL(triggered()), this, SLOT(onUndoAction()));
|
||||
|
@ -54,10 +42,6 @@ CPURegistersView::CPURegistersView(CPUWidget* parent) : RegistersView(parent), m
|
|||
connect(wCM_FollowInStack, SIGNAL(triggered()), this, SLOT(onFollowInStack()));
|
||||
connect(wCM_FollowInMemoryMap, SIGNAL(triggered()), this, SLOT(onFollowInMemoryMap()));
|
||||
connect(wCM_RemoveHardware, SIGNAL(triggered()), this, SLOT(onRemoveHardware()));
|
||||
connect(wCM_IncrementPtrSize, SIGNAL(triggered()), this, SLOT(onIncrementPtrSize()));
|
||||
connect(wCM_DecrementPtrSize, SIGNAL(triggered()), this, SLOT(onDecrementPtrSize()));
|
||||
connect(wCM_Push, SIGNAL(triggered()), this, SLOT(onPushAction()));
|
||||
connect(wCM_Pop, SIGNAL(triggered()), this, SLOT(onPopAction()));
|
||||
connect(wCM_Highlight, SIGNAL(triggered()), this, SLOT(onHighlightSlot()));
|
||||
|
||||
refreshShortcutsSlot();
|
||||
|
@ -66,18 +50,10 @@ CPURegistersView::CPURegistersView(CPUWidget* parent) : RegistersView(parent), m
|
|||
|
||||
void CPURegistersView::refreshShortcutsSlot()
|
||||
{
|
||||
wCM_Increment->setShortcut(ConfigShortcut("ActionIncreaseRegister"));
|
||||
wCM_Decrement->setShortcut(ConfigShortcut("ActionDecreaseRegister"));
|
||||
wCM_Zero->setShortcut(ConfigShortcut("ActionZeroRegister"));
|
||||
wCM_SetToOne->setShortcut(ConfigShortcut("ActionSetOneRegister"));
|
||||
wCM_ToggleValue->setShortcut(ConfigShortcut("ActionToggleRegisterValue"));
|
||||
wCM_Highlight->setShortcut(ConfigShortcut("ActionHighlightingMode"));
|
||||
wCM_IncrementPtrSize->setShortcut(ConfigShortcut("ActionIncreaseRegisterPtrSize"));
|
||||
wCM_DecrementPtrSize->setShortcut(ConfigShortcut("ActionDecreaseRegisterPtrSize"));
|
||||
wCM_Incrementx87Stack->setShortcut(ConfigShortcut("ActionIncrementx87Stack"));
|
||||
wCM_Decrementx87Stack->setShortcut(ConfigShortcut("ActionDecrementx87Stack"));
|
||||
wCM_Push->setShortcut(ConfigShortcut("ActionPush"));
|
||||
wCM_Pop->setShortcut(ConfigShortcut("ActionPop"));
|
||||
RegistersView::refreshShortcutsSlot();
|
||||
}
|
||||
|
||||
|
@ -437,70 +413,6 @@ void CPURegistersView::onDecrementx87StackAction()
|
|||
setRegister(x87SW_TOP, ((* ((duint*) registerValue(&wRegDumpStruct, x87SW_TOP))) - 1) % 8);
|
||||
}
|
||||
|
||||
void CPURegistersView::onIncrementAction()
|
||||
{
|
||||
if(mINCREMENTDECREMET.contains(mSelected))
|
||||
setRegister(mSelected, (* ((duint*) registerValue(&wRegDumpStruct, mSelected))) + 1);
|
||||
}
|
||||
|
||||
void CPURegistersView::onDecrementAction()
|
||||
{
|
||||
if(mINCREMENTDECREMET.contains(mSelected))
|
||||
setRegister(mSelected, (* ((duint*) registerValue(&wRegDumpStruct, mSelected))) - 1);
|
||||
}
|
||||
|
||||
void CPURegistersView::onIncrementPtrSize()
|
||||
{
|
||||
if(mINCREMENTDECREMET.contains(mSelected))
|
||||
setRegister(mSelected, (* ((duint*) registerValue(&wRegDumpStruct, mSelected))) + sizeof(void*));
|
||||
}
|
||||
|
||||
void CPURegistersView::onDecrementPtrSize()
|
||||
{
|
||||
if(mINCREMENTDECREMET.contains(mSelected))
|
||||
setRegister(mSelected, (* ((duint*) registerValue(&wRegDumpStruct, mSelected))) - sizeof(void*));
|
||||
}
|
||||
|
||||
void CPURegistersView::onPushAction()
|
||||
{
|
||||
duint csp = (* ((duint*) registerValue(&wRegDumpStruct, CSP))) - sizeof(void*);
|
||||
duint regVal = 0;
|
||||
regVal = * ((duint*) registerValue(&wRegDumpStruct, mSelected));
|
||||
setRegister(CSP, csp);
|
||||
DbgMemWrite(csp, (const unsigned char*)®Val, sizeof(void*));
|
||||
}
|
||||
|
||||
void CPURegistersView::onPopAction()
|
||||
{
|
||||
duint csp = (* ((duint*) registerValue(&wRegDumpStruct, CSP)));
|
||||
duint newVal;
|
||||
DbgMemRead(csp, (unsigned char*)&newVal, sizeof(void*));
|
||||
setRegister(CSP, csp + sizeof(void*));
|
||||
setRegister(mSelected, newVal);
|
||||
}
|
||||
|
||||
void CPURegistersView::onZeroAction()
|
||||
{
|
||||
if(mSETONEZEROTOGGLE.contains(mSelected))
|
||||
{
|
||||
if(mSelected >= x87r0 && mSelected <= x87r7 || mSelected >= x87st0 && mSelected <= x87st7)
|
||||
setRegister(mSelected, reinterpret_cast<duint>("\0\0\0\0\0\0\0\0\0")); //9 zeros and 1 terminating zero
|
||||
else
|
||||
setRegister(mSelected, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void CPURegistersView::onSetToOneAction()
|
||||
{
|
||||
if(mSETONEZEROTOGGLE.contains(mSelected))
|
||||
{
|
||||
if(mSelected >= x87r0 && mSelected <= x87r7 || mSelected >= x87st0 && mSelected <= x87st7)
|
||||
setRegister(mSelected, reinterpret_cast<duint>("\0\0\0\0\0\0\0\x80\xFF\x3F"));
|
||||
else
|
||||
setRegister(mSelected, 1);
|
||||
}
|
||||
}
|
||||
|
||||
void CPURegistersView::onModifyAction()
|
||||
{
|
||||
if(mMODIFYDISPLAY.contains(mSelected))
|
||||
|
@ -668,24 +580,6 @@ void CPURegistersView::displayCustomContextMenuSlot(QPoint pos)
|
|||
wMenu.addAction(wCM_Undo);
|
||||
}
|
||||
|
||||
if(mSETONEZEROTOGGLE.contains(mSelected))
|
||||
{
|
||||
if(mSelected >= x87r0 && mSelected <= x87r7 || mSelected >= x87st0 && mSelected <= x87st7)
|
||||
{
|
||||
if(memcmp(registerValue(&wRegDumpStruct, mSelected), "\0\0\0\0\0\0\0\0\0", 10) != 0)
|
||||
wMenu.addAction(wCM_Zero);
|
||||
if(memcmp(registerValue(&wRegDumpStruct, mSelected), "\0\0\0\0\0\0\0\x80\xFF\x3F", 10) != 0)
|
||||
wMenu.addAction(wCM_SetToOne);
|
||||
}
|
||||
else
|
||||
{
|
||||
if((* ((duint*) registerValue(&wRegDumpStruct, mSelected))) != 0)
|
||||
wMenu.addAction(wCM_Zero);
|
||||
if((* ((duint*) registerValue(&wRegDumpStruct, mSelected))) == 0)
|
||||
wMenu.addAction(wCM_SetToOne);
|
||||
}
|
||||
}
|
||||
|
||||
if(mBOOLDISPLAY.contains(mSelected))
|
||||
{
|
||||
wMenu.addAction(wCM_ToggleValue);
|
||||
|
@ -697,20 +591,6 @@ void CPURegistersView::displayCustomContextMenuSlot(QPoint pos)
|
|||
wMenu.addAction(wCM_Decrementx87Stack);
|
||||
}
|
||||
|
||||
if(mINCREMENTDECREMET.contains(mSelected))
|
||||
{
|
||||
wMenu.addAction(wCM_Increment);
|
||||
wMenu.addAction(wCM_Decrement);
|
||||
wMenu.addAction(wCM_IncrementPtrSize);
|
||||
wMenu.addAction(wCM_DecrementPtrSize);
|
||||
}
|
||||
|
||||
if(mGPR.contains(mSelected) || mSelected == CIP)
|
||||
{
|
||||
wMenu.addAction(wCM_Push);
|
||||
wMenu.addAction(wCM_Pop);
|
||||
}
|
||||
|
||||
if(mFPUMMX.contains(mSelected) || mFPUXMM.contains(mSelected) || mFPUYMM.contains(mSelected))
|
||||
{
|
||||
wMenu.addMenu(mSwitchSIMDDispMode);
|
||||
|
|
|
@ -20,12 +20,8 @@ public slots:
|
|||
virtual void displayCustomContextMenuSlot(QPoint pos);
|
||||
|
||||
protected slots:
|
||||
void onIncrementAction();
|
||||
void onDecrementAction();
|
||||
void onIncrementx87StackAction();
|
||||
void onDecrementx87StackAction();
|
||||
void onZeroAction();
|
||||
void onSetToOneAction();
|
||||
void onModifyAction();
|
||||
void onToggleValueAction();
|
||||
void onUndoAction();
|
||||
|
@ -35,10 +31,6 @@ protected slots:
|
|||
void onFollowInStack();
|
||||
void onFollowInMemoryMap();
|
||||
void onRemoveHardware();
|
||||
void onIncrementPtrSize();
|
||||
void onDecrementPtrSize();
|
||||
void onPushAction();
|
||||
void onPopAction();
|
||||
void onHighlightSlot();
|
||||
void ModifyFields(const QString & title, STRING_VALUE_TABLE_t* table, SIZE_T size);
|
||||
void disasmSelectionChangedSlot(dsint va);
|
||||
|
@ -50,14 +42,6 @@ private:
|
|||
CPUWidget* mParent;
|
||||
// context menu actions
|
||||
QAction* mFollowInDump;
|
||||
QAction* wCM_Increment;
|
||||
QAction* wCM_Decrement;
|
||||
QAction* wCM_IncrementPtrSize;
|
||||
QAction* wCM_DecrementPtrSize;
|
||||
QAction* wCM_Push;
|
||||
QAction* wCM_Pop;
|
||||
QAction* wCM_Zero;
|
||||
QAction* wCM_SetToOne;
|
||||
QAction* wCM_Modify;
|
||||
QAction* wCM_ToggleValue;
|
||||
QAction* wCM_Undo;
|
||||
|
|
|
@ -88,12 +88,6 @@ void CPUStack::setupContextMenu()
|
|||
return rvaToVa(getSelectionStart());
|
||||
});
|
||||
|
||||
//Push
|
||||
mMenuBuilder->addAction(makeShortcutAction(DIcon("arrow-small-down.png"), ArchValue(tr("P&ush DWORD..."), tr("P&ush QWORD...")), SLOT(pushSlot()), "ActionPush"));
|
||||
|
||||
//Pop
|
||||
mMenuBuilder->addAction(makeShortcutAction(DIcon("arrow-small-up.png"), ArchValue(tr("P&op DWORD"), tr("P&op QWORD")), SLOT(popSlot()), "ActionPop"));
|
||||
|
||||
//Realign
|
||||
mMenuBuilder->addAction(makeAction(DIcon("align-stack-pointer.png"), tr("Align Stack Pointer"), SLOT(realignSlot())), [this](QMenu*)
|
||||
{
|
||||
|
@ -898,27 +892,6 @@ void CPUStack::modifySlot()
|
|||
GuiUpdateAllViews();
|
||||
}
|
||||
|
||||
void CPUStack::pushSlot()
|
||||
{
|
||||
WordEditDialog wEditDialog(this);
|
||||
dsint value = 0;
|
||||
wEditDialog.setup(ArchValue(tr("Push DWORD"), tr("Push QWORD")), value, sizeof(dsint));
|
||||
if(wEditDialog.exec() != QDialog::Accepted)
|
||||
return;
|
||||
value = wEditDialog.getVal();
|
||||
mCsp -= sizeof(dsint);
|
||||
DbgValToString("csp", mCsp);
|
||||
DbgMemWrite(mCsp, (const unsigned char*)&value, sizeof(dsint));
|
||||
GuiUpdateAllViews();
|
||||
}
|
||||
|
||||
void CPUStack::popSlot()
|
||||
{
|
||||
mCsp += sizeof(dsint);
|
||||
DbgValToString("csp", mCsp);
|
||||
GuiUpdateAllViews();
|
||||
}
|
||||
|
||||
void CPUStack::realignSlot()
|
||||
{
|
||||
#ifdef _WIN64
|
||||
|
|
|
@ -30,8 +30,6 @@ signals:
|
|||
void displayReferencesWidget();
|
||||
|
||||
public slots:
|
||||
void pushSlot();
|
||||
void popSlot();
|
||||
void stackDumpAt(duint addr, duint csp);
|
||||
void gotoCspSlot();
|
||||
void gotoCbpSlot();
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#include "LogStatusLabel.h"
|
||||
#include <QTextDocument>
|
||||
#include <QApplication>
|
||||
#include <QStatusBar>
|
||||
|
||||
LogStatusLabel::LogStatusLabel(QStatusBar* parent) : QLabel(parent)
|
||||
{
|
||||
|
@ -20,7 +21,6 @@ void LogStatusLabel::logUpdate(QString message)
|
|||
labelText += message.replace("\r\n", "\n");
|
||||
QStringList lineList = labelText.split('\n');
|
||||
labelText = lineList.last(); //if the last character is a newline this will be an empty string
|
||||
QString finalLabel;
|
||||
for(int i = 0; i < lineList.length(); i++)
|
||||
{
|
||||
const QString & line = lineList[lineList.size() - i - 1];
|
||||
|
@ -79,3 +79,14 @@ void LogStatusLabel::getActiveView(ACTIVEVIEW* active)
|
|||
strncpy_s(active->className, className(now, active->classHwnd).toUtf8().constData(), _TRUNCATE);
|
||||
Bridge::getBridge()->setResult(BridgeResult::GetActiveView);
|
||||
}
|
||||
|
||||
void LogStatusLabel::showMessage(const QString & message)
|
||||
{
|
||||
statusTip = message;
|
||||
if(statusTip.isEmpty())
|
||||
setText(finalLabel);
|
||||
else
|
||||
{
|
||||
setText(statusTip);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,9 +2,10 @@
|
|||
#define LOGSTATUSLABEL_H
|
||||
|
||||
#include <QLabel>
|
||||
#include <QStatusBar>
|
||||
#include "Bridge.h"
|
||||
|
||||
class QStatusBar;
|
||||
|
||||
class LogStatusLabel : public QLabel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -16,9 +17,13 @@ public slots:
|
|||
void logUpdateUtf8(QByteArray message);
|
||||
void focusChanged(QWidget* old, QWidget* now);
|
||||
void getActiveView(ACTIVEVIEW* active);
|
||||
// show status tip
|
||||
void showMessage(const QString & message);
|
||||
|
||||
private:
|
||||
QString finalLabel;
|
||||
QString labelText;
|
||||
QString statusTip;
|
||||
};
|
||||
|
||||
#endif // LOGSTATUSLABEL_H
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
#include <QFileDialog>
|
||||
#include <QMimeData>
|
||||
#include <QDesktopServices>
|
||||
#include <QStatusTipEvent>
|
||||
#include "Configuration.h"
|
||||
#include "SettingsDialog.h"
|
||||
#include "AppearanceDialog.h"
|
||||
|
@ -262,6 +263,7 @@ MainWindow::MainWindow(QWidget* parent)
|
|||
|
||||
// Setup signals/slots
|
||||
connect(mCmdLineEdit, SIGNAL(returnPressed()), this, SLOT(executeCommand()));
|
||||
makeCommandAction(ui->actionRestartAdmin, "restartadmin");
|
||||
makeCommandAction(ui->actionStepOver, "StepOver");
|
||||
makeCommandAction(ui->actionStepInto, "StepInto");
|
||||
connect(ui->actionCommand, SIGNAL(triggered()), this, SLOT(setFocusToCommandBar()));
|
||||
|
@ -330,11 +332,11 @@ MainWindow::MainWindow(QWidget* parent)
|
|||
connect(ui->actionNotes, SIGNAL(triggered()), this, SLOT(displayNotesWidget()));
|
||||
connect(ui->actionHandles, SIGNAL(triggered()), this, SLOT(displayHandlesWidget()));
|
||||
connect(ui->actionGraph, SIGNAL(triggered()), this, SLOT(displayGraphWidget()));
|
||||
connect(ui->actionPreviousTab, SIGNAL(triggered()), this, SLOT(displayPreviousTab()));
|
||||
connect(ui->actionNextTab, SIGNAL(triggered()), this, SLOT(displayNextTab()));
|
||||
connect(ui->actionPreviousView, SIGNAL(triggered()), this, SLOT(displayPreviousView()));
|
||||
connect(ui->actionNextView, SIGNAL(triggered()), this, SLOT(displayNextView()));
|
||||
connect(ui->actionHideTab, SIGNAL(triggered()), this, SLOT(hideTab()));
|
||||
connect(ui->actionPreviousTab, SIGNAL(triggered()), mTabWidget, SLOT(showPreviousTab()));
|
||||
connect(ui->actionNextTab, SIGNAL(triggered()), mTabWidget, SLOT(showNextTab()));
|
||||
connect(ui->actionPreviousView, SIGNAL(triggered()), mTabWidget, SLOT(showPreviousView()));
|
||||
connect(ui->actionNextView, SIGNAL(triggered()), mTabWidget, SLOT(showNextView()));
|
||||
connect(ui->actionHideTab, SIGNAL(triggered()), mTabWidget, SLOT(deleteCurrentTab()));
|
||||
makeCommandAction(ui->actionStepIntoSource, "TraceIntoConditional src.line(cip) && !src.disp(cip)");
|
||||
makeCommandAction(ui->actionStepOverSource, "TraceOverConditional src.line(cip) && !src.disp(cip)");
|
||||
makeCommandAction(ui->actionseStepInto, "seStepInto");
|
||||
|
@ -1078,6 +1080,12 @@ bool MainWindow::event(QEvent* event)
|
|||
{
|
||||
mTabWidget->setCurrentIndex(mTabWidget->currentIndex());
|
||||
}
|
||||
else if(event->type() == QEvent::StatusTip)
|
||||
{
|
||||
QStatusTipEvent* tip = dynamic_cast<QStatusTipEvent*>(event);
|
||||
mLastLogLabel->showMessage(tip->tip());
|
||||
return true;
|
||||
}
|
||||
|
||||
return QMainWindow::event(event);
|
||||
}
|
||||
|
@ -1161,31 +1169,6 @@ void MainWindow::displayGraphWidget()
|
|||
mCpuWidget->setGraphFocus();
|
||||
}
|
||||
|
||||
void MainWindow::displayPreviousTab()
|
||||
{
|
||||
mTabWidget->showPreviousTab();
|
||||
}
|
||||
|
||||
void MainWindow::displayNextTab()
|
||||
{
|
||||
mTabWidget->showNextTab();
|
||||
}
|
||||
|
||||
void MainWindow::displayPreviousView()
|
||||
{
|
||||
mTabWidget->showPreviousView();
|
||||
}
|
||||
|
||||
void MainWindow::displayNextView()
|
||||
{
|
||||
mTabWidget->showNextView();
|
||||
}
|
||||
|
||||
void MainWindow::hideTab()
|
||||
{
|
||||
mTabWidget->deleteCurrentTab();
|
||||
}
|
||||
|
||||
void MainWindow::openSettings()
|
||||
{
|
||||
SettingsDialog settings(this);
|
||||
|
@ -1947,6 +1930,7 @@ void MainWindow::updateFavouriteTools()
|
|||
delete actionManageFavourites;
|
||||
mFavouriteToolbar->clear();
|
||||
actionManageFavourites = new QAction(DIcon("star.png"), tr("&Manage Favourite Tools..."), this);
|
||||
actionManageFavourites->setStatusTip(tr("Open the Favourites dialog to manage the favourites menu"));
|
||||
for(unsigned int i = 1; BridgeSettingGet("Favourite", QString("Tool%1").arg(i).toUtf8().constData(), buffer); i++)
|
||||
{
|
||||
QString toolPath = QString(buffer);
|
||||
|
@ -2064,7 +2048,7 @@ void MainWindow::clickFavouriteTool()
|
|||
auto format = toolPath.mid(sfStart + 2, sfEnd - sfStart - 2);
|
||||
toolPath.replace(sfStart, sfEnd - sfStart + 2, stringFormatInline(format));
|
||||
}
|
||||
mLastLogLabel->setText(toolPath);
|
||||
GuiAddLogMessage(tr("Starting tool %1\n").arg(toolPath).toUtf8().constData());
|
||||
PROCESS_INFORMATION procinfo;
|
||||
STARTUPINFO startupinfo;
|
||||
memset(&procinfo, 0, sizeof(PROCESS_INFORMATION));
|
||||
|
@ -2104,6 +2088,7 @@ void MainWindow::chooseLanguage()
|
|||
{
|
||||
QDir translationsDir(QString("%1/../translations/").arg(QCoreApplication::applicationDirPath()));
|
||||
QFile file(translationsDir.absoluteFilePath(QString("x64dbg_%1.qm").arg(localeName)));
|
||||
// A translation file less than 0.5KB is probably not useful
|
||||
if(file.size() < 512)
|
||||
{
|
||||
QMessageBox msg(this);
|
||||
|
@ -2338,11 +2323,6 @@ void MainWindow::onMenuCustomized()
|
|||
}
|
||||
}
|
||||
|
||||
void MainWindow::on_actionRestartAdmin_triggered()
|
||||
{
|
||||
DbgCmdExec("restartadmin");
|
||||
}
|
||||
|
||||
void MainWindow::on_actionPlugins_triggered()
|
||||
{
|
||||
QDesktopServices::openUrl(QUrl("http://plugins.x64dbg.com"));
|
||||
|
@ -2371,6 +2351,11 @@ void MainWindow::on_actionDefaultTheme_triggered()
|
|||
updateDarkTitleBar();
|
||||
}
|
||||
|
||||
void MainWindow::on_actionAbout_Qt_triggered()
|
||||
{
|
||||
QMessageBox::aboutQt(this);
|
||||
}
|
||||
|
||||
void MainWindow::updateStyle()
|
||||
{
|
||||
// Set configured link color
|
||||
|
|
|
@ -91,11 +91,6 @@ public slots:
|
|||
void displayVariables();
|
||||
void displayGraphWidget();
|
||||
void displayRunTrace();
|
||||
void displayPreviousTab();
|
||||
void displayNextTab();
|
||||
void displayPreviousView();
|
||||
void displayNextView();
|
||||
void hideTab();
|
||||
void openSettings();
|
||||
void openAppearance();
|
||||
void openCalculator();
|
||||
|
@ -283,10 +278,10 @@ private slots:
|
|||
void on_actionImportSettings_triggered();
|
||||
void on_actionImportdatabase_triggered();
|
||||
void on_actionExportdatabase_triggered();
|
||||
void on_actionRestartAdmin_triggered();
|
||||
void on_actionPlugins_triggered();
|
||||
void on_actionCheckUpdates_triggered();
|
||||
void on_actionDefaultTheme_triggered();
|
||||
void on_actionAbout_Qt_triggered();
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
|
|
@ -159,6 +159,7 @@
|
|||
<addaction name="actionManual"/>
|
||||
<addaction name="actionFaq"/>
|
||||
<addaction name="actionAbout"/>
|
||||
<addaction name="actionAbout_Qt"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionCrashDump"/>
|
||||
</widget>
|
||||
|
@ -316,6 +317,9 @@
|
|||
<property name="text">
|
||||
<string>&Open</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Run the file and start debugging.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionExit">
|
||||
<property name="icon">
|
||||
|
@ -325,6 +329,9 @@
|
|||
<property name="text">
|
||||
<string>E&xit</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Exit x64dbg.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRun">
|
||||
<property name="icon">
|
||||
|
@ -334,6 +341,9 @@
|
|||
<property name="text">
|
||||
<string>&Run</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Run the debuggee or restart debugging.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionPause">
|
||||
<property name="icon">
|
||||
|
@ -343,6 +353,9 @@
|
|||
<property name="text">
|
||||
<string>&Pause</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Pause the execution of debuggee to debug it, or stop animate into/animate over.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRestart">
|
||||
<property name="icon">
|
||||
|
@ -352,6 +365,9 @@
|
|||
<property name="text">
|
||||
<string>Re&start</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Stop the debuggee and restart it, or restart the last debugged file.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionClose">
|
||||
<property name="icon">
|
||||
|
@ -361,6 +377,9 @@
|
|||
<property name="text">
|
||||
<string>&Close</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Terminate the debuggee and stop debugging.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStepInto">
|
||||
<property name="icon">
|
||||
|
@ -370,6 +389,9 @@
|
|||
<property name="text">
|
||||
<string>Step &into</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a single instruction</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStepOver">
|
||||
<property name="icon">
|
||||
|
@ -379,6 +401,9 @@
|
|||
<property name="text">
|
||||
<string>Step &over</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a single instruction without entering the CALL instruction</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCommand">
|
||||
<property name="icon">
|
||||
|
@ -388,6 +413,9 @@
|
|||
<property name="text">
|
||||
<string>Co&mmand</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Focus on the command bar</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRtr">
|
||||
<property name="icon">
|
||||
|
@ -397,6 +425,9 @@
|
|||
<property name="text">
|
||||
<string>E&xecute till return</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace over until the RET instruction would be executed and stack pointer is less than or equal to current value.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionMemoryMap">
|
||||
<property name="icon">
|
||||
|
@ -406,6 +437,9 @@
|
|||
<property name="text">
|
||||
<string>&Memory Map</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Memory Map tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionLog">
|
||||
<property name="icon">
|
||||
|
@ -415,6 +449,9 @@
|
|||
<property name="text">
|
||||
<string>&Log Window</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Log tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAbout">
|
||||
<property name="icon">
|
||||
|
@ -424,6 +461,9 @@
|
|||
<property name="text">
|
||||
<string>&About</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Display information about x64dbg</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionScylla">
|
||||
<property name="icon">
|
||||
|
@ -442,6 +482,9 @@
|
|||
<property name="text">
|
||||
<string>&Breakpoints</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Breakpoints tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actioneStepInto">
|
||||
<property name="icon">
|
||||
|
@ -451,6 +494,9 @@
|
|||
<property name="text">
|
||||
<string>Step into (pass exceptions)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a single instruction, pass exceptions to the debuggee.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actioneStepOver">
|
||||
<property name="icon">
|
||||
|
@ -469,6 +515,9 @@
|
|||
<property name="text">
|
||||
<string>Run (pass exceptions)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Run the debuggee and pass all exceptions to the debuggee without pausing.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actioneRtr">
|
||||
<property name="icon">
|
||||
|
@ -490,6 +539,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Script</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Script tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRunSelection">
|
||||
<property name="icon">
|
||||
|
@ -502,6 +554,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Run until selection</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Put a breakpoint on selection and run the debuggee.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCpu">
|
||||
<property name="icon">
|
||||
|
@ -514,6 +569,9 @@
|
|||
<property name="toolTip">
|
||||
<string>CPU</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the CPU tab to display the disassembly.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSymbolInfo">
|
||||
<property name="icon">
|
||||
|
@ -526,6 +584,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Symbol Info</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Symbols tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionReferences">
|
||||
<property name="icon">
|
||||
|
@ -538,6 +599,9 @@
|
|||
<property name="toolTip">
|
||||
<string>References</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the References tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionThreads">
|
||||
<property name="icon">
|
||||
|
@ -550,6 +614,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Threads</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Threads tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSettings">
|
||||
<property name="icon">
|
||||
|
@ -560,7 +627,10 @@
|
|||
<string>&Preferences</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Settings</string>
|
||||
<string>Preferences</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Opem the Preferences dialog.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStrings">
|
||||
|
@ -574,6 +644,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Find Strings</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Find possible strings in the current module. Equivalent command "strref"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAppearance">
|
||||
<property name="icon">
|
||||
|
@ -583,6 +656,9 @@
|
|||
<property name="text">
|
||||
<string>&Appearance</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the Appearance dialog to adjust color and font settings.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCalls">
|
||||
<property name="icon">
|
||||
|
@ -595,6 +671,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Find Intermodular Calls</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Find intermodular calls in the current module. Equivalent command "modcallfind"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionPatches">
|
||||
<property name="icon">
|
||||
|
@ -607,6 +686,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Patches</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the patch dialog.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionComments">
|
||||
<property name="icon">
|
||||
|
@ -616,6 +698,9 @@
|
|||
<property name="text">
|
||||
<string>Comments</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show a list of comments. Equivalent command "commentlist"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionLabels">
|
||||
<property name="icon">
|
||||
|
@ -625,6 +710,9 @@
|
|||
<property name="text">
|
||||
<string>Labels</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show a list of labels. Equivalent command "labellist"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionBookmarks">
|
||||
<property name="icon">
|
||||
|
@ -634,6 +722,9 @@
|
|||
<property name="text">
|
||||
<string>Bookmarks</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show a list of bookmarks. Equivalent command "bookmarklist"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionFunctions">
|
||||
<property name="icon">
|
||||
|
@ -643,6 +734,9 @@
|
|||
<property name="text">
|
||||
<string>Functions</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show a list of functions. Equivalent command "functionlist"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCheckUpdates">
|
||||
<property name="icon">
|
||||
|
@ -652,6 +746,9 @@
|
|||
<property name="text">
|
||||
<string>Check for &Updates</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Connect to Github to check for updates</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCallStack">
|
||||
<property name="icon">
|
||||
|
@ -664,6 +761,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Call Stack</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Call Stack tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionShortcuts">
|
||||
<property name="icon">
|
||||
|
@ -673,6 +773,9 @@
|
|||
<property name="text">
|
||||
<string>Shortcuts</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the Shortcuts dialog to customize keyboard shortcuts.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionDonate">
|
||||
<property name="icon">
|
||||
|
@ -685,6 +788,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Donate</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open http://donate.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCalculator">
|
||||
<property name="icon">
|
||||
|
@ -694,6 +800,9 @@
|
|||
<property name="text">
|
||||
<string>Calculator</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the Calculator dialog.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAttach">
|
||||
<property name="icon">
|
||||
|
@ -706,6 +815,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Attach</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Attach the debugger to a process to debug it.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionDetach">
|
||||
<property name="icon">
|
||||
|
@ -718,6 +830,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Detach</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Detach from the debuggee so that it continues running without being debugged.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionChangeCommandLine">
|
||||
<property name="icon">
|
||||
|
@ -727,6 +842,9 @@
|
|||
<property name="text">
|
||||
<string>Change Command &Line</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Set the command line of the debuggee.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSkipNextInstruction">
|
||||
<property name="icon">
|
||||
|
@ -754,6 +872,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Topmost Window</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Make x64dbg topmost</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionReportBug">
|
||||
<property name="icon">
|
||||
|
@ -766,6 +887,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Report Bug</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open http://report.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSource">
|
||||
<property name="icon">
|
||||
|
@ -778,6 +902,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Source</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Source tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionManual">
|
||||
<property name="icon">
|
||||
|
@ -787,6 +914,9 @@
|
|||
<property name="text">
|
||||
<string>&Manual</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the CHM manual or online documentation at http://help.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionFaq">
|
||||
<property name="icon">
|
||||
|
@ -799,6 +929,9 @@
|
|||
<property name="toolTip">
|
||||
<string>FAQ</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open http://faq.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSEHChain">
|
||||
<property name="icon">
|
||||
|
@ -820,6 +953,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Hide debugger (PEB)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Modifies the PEB to hide debugger.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionReloadStylesheet">
|
||||
<property name="icon">
|
||||
|
@ -832,6 +968,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Reload style.css</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Read style.css from disk to apply theme changes.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionNotes">
|
||||
<property name="icon">
|
||||
|
@ -841,6 +980,9 @@
|
|||
<property name="text">
|
||||
<string>Notes</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Notes tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionHandles">
|
||||
<property name="icon">
|
||||
|
@ -850,6 +992,9 @@
|
|||
<property name="text">
|
||||
<string>Handles</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Handles tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTocnd">
|
||||
<property name="icon">
|
||||
|
@ -862,6 +1007,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Trace over...</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Step over until a condition becomes true, and optionally log and execute commands when tracing. Equivalent command "tocnd"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTicnd">
|
||||
<property name="icon">
|
||||
|
@ -874,6 +1022,9 @@
|
|||
<property name="toolTip">
|
||||
<string>Trace into...</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Step into until a condition becomes true, and optionally log and execute commands when tracing. Equivalent command "ticnd"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRBit">
|
||||
<property name="icon">
|
||||
|
@ -883,6 +1034,9 @@
|
|||
<property name="text">
|
||||
<string>Bit</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Enable trace record with 1 bit per byte to record whether the code has been executed.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRByte">
|
||||
<property name="icon">
|
||||
|
@ -892,6 +1046,9 @@
|
|||
<property name="text">
|
||||
<string>Byte</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Enable trace record with 1 byte per byte to record how many times the code has been executed.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRWord">
|
||||
<property name="icon">
|
||||
|
@ -901,6 +1058,9 @@
|
|||
<property name="text">
|
||||
<string>Word</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Enable trace record with 2 bytes per byte to record how many times the code has been executed.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRTIBT">
|
||||
<property name="icon">
|
||||
|
@ -910,6 +1070,9 @@
|
|||
<property name="text">
|
||||
<string>Trace into beyond trace record</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace into until the current instruction was not executed before. Equivalent command "tibt"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRTOBT">
|
||||
<property name="icon">
|
||||
|
@ -919,6 +1082,9 @@
|
|||
<property name="text">
|
||||
<string>Trace over beyond trace record</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace over until the current instruction was not executed before. Equivalent command "tobt"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRTIIT">
|
||||
<property name="icon">
|
||||
|
@ -928,6 +1094,9 @@
|
|||
<property name="text">
|
||||
<string>Trace into into trace record</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace into until the current instruction was executed before. Equivalent command "tiit"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRTOIT">
|
||||
<property name="icon">
|
||||
|
@ -937,6 +1106,9 @@
|
|||
<property name="text">
|
||||
<string>Trace over into trace record</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace over until the current instruction was executed before. Equivalent command "toit"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTRNone">
|
||||
<property name="icon">
|
||||
|
@ -946,6 +1118,9 @@
|
|||
<property name="text">
|
||||
<string>None</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Disable trace record</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRtu">
|
||||
<property name="icon">
|
||||
|
@ -955,6 +1130,9 @@
|
|||
<property name="text">
|
||||
<string>Run to &user code</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Trace over until user code would be executed.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRunExpression">
|
||||
<property name="icon">
|
||||
|
@ -1000,6 +1178,9 @@
|
|||
<property name="text">
|
||||
<string>Step over (source)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a single line of source code without entering the subroutine. Equivalent to "TraceOverConditional src.line(cip) && !src.disp(cip)"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStepIntoSource">
|
||||
<property name="icon">
|
||||
|
@ -1009,6 +1190,9 @@
|
|||
<property name="text">
|
||||
<string>Step into (source)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a single source code line. Equivalent to "TraceIntoConditional src.line(cip) && !src.disp(cip)"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionGraph">
|
||||
<property name="icon">
|
||||
|
@ -1018,6 +1202,9 @@
|
|||
<property name="text">
|
||||
<string>&Graph</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the CPU tab and switch to Graph mode.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionseStepInto">
|
||||
<property name="icon">
|
||||
|
@ -1027,6 +1214,9 @@
|
|||
<property name="text">
|
||||
<string>Step into (swallow exception)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionseStepOver">
|
||||
<property name="icon">
|
||||
|
@ -1045,6 +1235,9 @@
|
|||
<property name="text">
|
||||
<string>Run (swallow exception)</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Run the debuggee and ignore all exceptions so the debuggee will not process the exception.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionBlog">
|
||||
<property name="icon">
|
||||
|
@ -1054,6 +1247,9 @@
|
|||
<property name="text">
|
||||
<string>Blog</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open http://blog.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAnimateInto">
|
||||
<property name="icon">
|
||||
|
@ -1063,6 +1259,9 @@
|
|||
<property name="text">
|
||||
<string>Animate into</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute the step into command at a fixed pace</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAnimateOver">
|
||||
<property name="icon">
|
||||
|
@ -1072,6 +1271,9 @@
|
|||
<property name="text">
|
||||
<string>Animate over</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute the step over command at a fixed pace</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAnimateCommand">
|
||||
<property name="icon">
|
||||
|
@ -1081,6 +1283,9 @@
|
|||
<property name="text">
|
||||
<string>Animate command...</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Execute a command at a fixed pace</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSetInitializationScript">
|
||||
<property name="icon">
|
||||
|
@ -1090,6 +1295,9 @@
|
|||
<property name="text">
|
||||
<string>System breakpoint scripts</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Set the script file to run automatically when the system breakpoint is reached.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionImportSettings">
|
||||
<property name="icon">
|
||||
|
@ -1099,6 +1307,9 @@
|
|||
<property name="text">
|
||||
<string>Import settings...</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Import settings from an external file</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionCustomizeMenus">
|
||||
<property name="icon">
|
||||
|
@ -1108,6 +1319,9 @@
|
|||
<property name="text">
|
||||
<string>Customize menus</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open the Custimuze menus dialog to hide infrequently used menu items into the "more commands" submenu.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionImportdatabase">
|
||||
<property name="icon">
|
||||
|
@ -1117,6 +1331,9 @@
|
|||
<property name="text">
|
||||
<string>&Import database</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open an external database file to import data.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionExportdatabase">
|
||||
<property name="icon">
|
||||
|
@ -1135,6 +1352,9 @@
|
|||
<property name="text">
|
||||
<string>Previous Tab</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the tab on the left.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionNextTab">
|
||||
<property name="icon">
|
||||
|
@ -1144,6 +1364,9 @@
|
|||
<property name="text">
|
||||
<string>Next Tab</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the tab on the right.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionPreviousView">
|
||||
<property name="icon">
|
||||
|
@ -1153,6 +1376,9 @@
|
|||
<property name="text">
|
||||
<string>Previous View</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the tab history popup window and select more recently used tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionNextView">
|
||||
<property name="icon">
|
||||
|
@ -1162,6 +1388,9 @@
|
|||
<property name="text">
|
||||
<string>Next View</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the tab history popup window and select previously viewed tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionHideTab">
|
||||
<property name="icon">
|
||||
|
@ -1171,6 +1400,9 @@
|
|||
<property name="text">
|
||||
<string>Hide Tab</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Hide the current tab. The hidden tab can be reopened from the View menu.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionVariables">
|
||||
<property name="icon">
|
||||
|
@ -1180,6 +1412,9 @@
|
|||
<property name="text">
|
||||
<string>&Variables</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show a list of x64dbg variables. Equivalent command "varlist"</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRestartAdmin">
|
||||
<property name="icon">
|
||||
|
@ -1189,6 +1424,9 @@
|
|||
<property name="text">
|
||||
<string>Restart as Admin</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Restart x64dbg under Administrator priviledge.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionPlugins">
|
||||
<property name="icon">
|
||||
|
@ -1198,6 +1436,9 @@
|
|||
<property name="text">
|
||||
<string>Plugins</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Open http://plugins.x64dbg.com</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTrace">
|
||||
<property name="icon">
|
||||
|
@ -1207,6 +1448,9 @@
|
|||
<property name="text">
|
||||
<string>Trace</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Trace tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionModules">
|
||||
<property name="icon">
|
||||
|
@ -1216,6 +1460,9 @@
|
|||
<property name="text">
|
||||
<string>Modules</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Show the Symbols tab. Note that the Modules list is in the symbols tab.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Theme">
|
||||
<property name="text">
|
||||
|
@ -1235,6 +1482,9 @@
|
|||
<property name="text">
|
||||
<string>&Save database</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Save all data. The database will be automatically saved when debugging is stopped.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionDbload">
|
||||
<property name="icon">
|
||||
|
@ -1244,6 +1494,9 @@
|
|||
<property name="text">
|
||||
<string>Re&load database</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Discard all modifications and read all data from disk.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionDbrecovery">
|
||||
<property name="icon">
|
||||
|
@ -1253,6 +1506,9 @@
|
|||
<property name="text">
|
||||
<string>&Restore backup database</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Read data from the backup database to recover from database corruption.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionDbclear">
|
||||
<property name="icon">
|
||||
|
@ -1262,6 +1518,17 @@
|
|||
<property name="text">
|
||||
<string>&Clear database</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Clear all data.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAbout_Qt">
|
||||
<property name="text">
|
||||
<string>About Qt</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string>Display information about Qt</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
|
|
|
@ -696,9 +696,7 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mMODIFYDISPLAY.insert(CAX);
|
||||
mUNDODISPLAY.insert(CAX);
|
||||
mINCREMENTDECREMET.insert(CAX);
|
||||
mSETONEZEROTOGGLE.insert(CAX);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CBX);
|
||||
mINCREMENTDECREMET.insert(CBX);
|
||||
mGPR.insert(CBX);
|
||||
mUINTDISPLAY.insert(CBX);
|
||||
|
@ -707,7 +705,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mUNDODISPLAY.insert(CBX);
|
||||
mCANSTOREADDRESS.insert(CBX);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CCX);
|
||||
mINCREMENTDECREMET.insert(CCX);
|
||||
mGPR.insert(CCX);
|
||||
mUINTDISPLAY.insert(CCX);
|
||||
|
@ -716,7 +713,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mUNDODISPLAY.insert(CCX);
|
||||
mCANSTOREADDRESS.insert(CCX);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CDX);
|
||||
mINCREMENTDECREMET.insert(CDX);
|
||||
mGPR.insert(CDX);
|
||||
mUINTDISPLAY.insert(CDX);
|
||||
|
@ -725,7 +721,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mUNDODISPLAY.insert(CDX);
|
||||
mCANSTOREADDRESS.insert(CDX);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CBP);
|
||||
mINCREMENTDECREMET.insert(CBP);
|
||||
mCANSTOREADDRESS.insert(CBP);
|
||||
mGPR.insert(CBP);
|
||||
|
@ -734,7 +729,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mMODIFYDISPLAY.insert(CBP);
|
||||
mUNDODISPLAY.insert(CBP);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CSP);
|
||||
mINCREMENTDECREMET.insert(CSP);
|
||||
mCANSTOREADDRESS.insert(CSP);
|
||||
mGPR.insert(CSP);
|
||||
|
@ -743,7 +737,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mMODIFYDISPLAY.insert(CSP);
|
||||
mUNDODISPLAY.insert(CSP);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CSI);
|
||||
mINCREMENTDECREMET.insert(CSI);
|
||||
mCANSTOREADDRESS.insert(CSI);
|
||||
mGPR.insert(CSI);
|
||||
|
@ -752,7 +745,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mMODIFYDISPLAY.insert(CSI);
|
||||
mUNDODISPLAY.insert(CSI);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(CDI);
|
||||
mINCREMENTDECREMET.insert(CDI);
|
||||
mCANSTOREADDRESS.insert(CDI);
|
||||
mGPR.insert(CDI);
|
||||
|
@ -763,7 +755,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
#ifdef _WIN64
|
||||
for(REGISTER_NAME i = R8; i <= R15; i = (REGISTER_NAME)(i + 1))
|
||||
{
|
||||
mSETONEZEROTOGGLE.insert(i);
|
||||
mINCREMENTDECREMET.insert(i);
|
||||
mCANSTOREADDRESS.insert(i);
|
||||
mGPR.insert(i);
|
||||
|
@ -774,7 +765,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
}
|
||||
#endif //_WIN64
|
||||
|
||||
mSETONEZEROTOGGLE.insert(EFLAGS);
|
||||
mGPR.insert(EFLAGS);
|
||||
mMODIFYDISPLAY.insert(EFLAGS);
|
||||
mUNDODISPLAY.insert(EFLAGS);
|
||||
|
@ -783,41 +773,32 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
// flags (we allow the user to toggle them)
|
||||
mFlags.insert(CF);
|
||||
mBOOLDISPLAY.insert(CF);
|
||||
mSETONEZEROTOGGLE.insert(CF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(PF);
|
||||
mFlags.insert(PF);
|
||||
mBOOLDISPLAY.insert(PF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(AF);
|
||||
mFlags.insert(AF);
|
||||
mBOOLDISPLAY.insert(AF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(ZF);
|
||||
mFlags.insert(ZF);
|
||||
mBOOLDISPLAY.insert(ZF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(SF);
|
||||
mFlags.insert(SF);
|
||||
mBOOLDISPLAY.insert(SF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(TF);
|
||||
mFlags.insert(TF);
|
||||
mBOOLDISPLAY.insert(TF);
|
||||
|
||||
mFlags.insert(IF);
|
||||
mBOOLDISPLAY.insert(IF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(DF);
|
||||
mFlags.insert(DF);
|
||||
mBOOLDISPLAY.insert(DF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(OF);
|
||||
mFlags.insert(OF);
|
||||
mBOOLDISPLAY.insert(OF);
|
||||
|
||||
// FPU: XMM, x87 and MMX registers
|
||||
mSETONEZEROTOGGLE.insert(MxCsr);
|
||||
mDWORDDISPLAY.insert(MxCsr);
|
||||
mMODIFYDISPLAY.insert(MxCsr);
|
||||
mUNDODISPLAY.insert(MxCsr);
|
||||
|
@ -830,7 +811,6 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mFPUx87.insert(i);
|
||||
mFPUx87_80BITSDISPLAY.insert(i);
|
||||
mFPU.insert(i);
|
||||
mSETONEZEROTOGGLE.insert(i);
|
||||
}
|
||||
|
||||
for(REGISTER_NAME i = x87st0; i <= x87st7; i = (REGISTER_NAME)(i + 1))
|
||||
|
@ -840,36 +820,30 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mFPUx87.insert(i);
|
||||
mFPUx87_80BITSDISPLAY.insert(i);
|
||||
mFPU.insert(i);
|
||||
mSETONEZEROTOGGLE.insert(i);
|
||||
}
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87TagWord);
|
||||
mFPUx87.insert(x87TagWord);
|
||||
mMODIFYDISPLAY.insert(x87TagWord);
|
||||
mUNDODISPLAY.insert(x87TagWord);
|
||||
mUSHORTDISPLAY.insert(x87TagWord);
|
||||
mFPU.insert(x87TagWord);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87StatusWord);
|
||||
mUSHORTDISPLAY.insert(x87StatusWord);
|
||||
mMODIFYDISPLAY.insert(x87StatusWord);
|
||||
mUNDODISPLAY.insert(x87StatusWord);
|
||||
mFPUx87.insert(x87StatusWord);
|
||||
mFPU.insert(x87StatusWord);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87ControlWord);
|
||||
mFPUx87.insert(x87ControlWord);
|
||||
mMODIFYDISPLAY.insert(x87ControlWord);
|
||||
mUNDODISPLAY.insert(x87ControlWord);
|
||||
mUSHORTDISPLAY.insert(x87ControlWord);
|
||||
mFPU.insert(x87ControlWord);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_B);
|
||||
mFPUx87.insert(x87SW_B);
|
||||
mBOOLDISPLAY.insert(x87SW_B);
|
||||
mFPU.insert(x87SW_B);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_C3);
|
||||
mFPUx87.insert(x87SW_C3);
|
||||
mBOOLDISPLAY.insert(x87SW_C3);
|
||||
mFPU.insert(x87SW_C3);
|
||||
|
@ -882,60 +856,48 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
|
||||
mFPUx87.insert(x87SW_C2);
|
||||
mBOOLDISPLAY.insert(x87SW_C2);
|
||||
mSETONEZEROTOGGLE.insert(x87SW_C2);
|
||||
mFPU.insert(x87SW_C2);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_C1);
|
||||
mFPUx87.insert(x87SW_C1);
|
||||
mBOOLDISPLAY.insert(x87SW_C1);
|
||||
mFPU.insert(x87SW_C1);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_C0);
|
||||
mFPUx87.insert(x87SW_C0);
|
||||
mBOOLDISPLAY.insert(x87SW_C0);
|
||||
mFPU.insert(x87SW_C0);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_ES);
|
||||
mFPUx87.insert(x87SW_ES);
|
||||
mBOOLDISPLAY.insert(x87SW_ES);
|
||||
mFPU.insert(x87SW_ES);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_SF);
|
||||
mFPUx87.insert(x87SW_SF);
|
||||
mBOOLDISPLAY.insert(x87SW_SF);
|
||||
mFPU.insert(x87SW_SF);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_P);
|
||||
mFPUx87.insert(x87SW_P);
|
||||
mBOOLDISPLAY.insert(x87SW_P);
|
||||
mFPU.insert(x87SW_P);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_U);
|
||||
mFPUx87.insert(x87SW_U);
|
||||
mBOOLDISPLAY.insert(x87SW_U);
|
||||
mFPU.insert(x87SW_U);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_O);
|
||||
mFPUx87.insert(x87SW_O);
|
||||
mBOOLDISPLAY.insert(x87SW_O);
|
||||
mFPU.insert(x87SW_O);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_Z);
|
||||
mFPUx87.insert(x87SW_Z);
|
||||
mBOOLDISPLAY.insert(x87SW_Z);
|
||||
mFPU.insert(x87SW_Z);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_D);
|
||||
mFPUx87.insert(x87SW_D);
|
||||
mBOOLDISPLAY.insert(x87SW_D);
|
||||
mFPU.insert(x87SW_D);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87SW_I);
|
||||
mFPUx87.insert(x87SW_I);
|
||||
mBOOLDISPLAY.insert(x87SW_I);
|
||||
mFPU.insert(x87SW_I);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_IC);
|
||||
mFPUx87.insert(x87CW_IC);
|
||||
mBOOLDISPLAY.insert(x87CW_IC);
|
||||
mFPU.insert(x87CW_IC);
|
||||
|
@ -962,89 +924,69 @@ RegistersView::RegistersView(QWidget* parent) : QScrollArea(parent), mVScrollOff
|
|||
mMODIFYDISPLAY.insert(x87CW_PC);
|
||||
mUNDODISPLAY.insert(x87CW_PC);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_PM);
|
||||
mFPUx87.insert(x87CW_PM);
|
||||
mBOOLDISPLAY.insert(x87CW_PM);
|
||||
mFPU.insert(x87CW_PM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_UM);
|
||||
mFPUx87.insert(x87CW_UM);
|
||||
mBOOLDISPLAY.insert(x87CW_UM);
|
||||
mFPU.insert(x87CW_UM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_OM);
|
||||
mFPUx87.insert(x87CW_OM);
|
||||
mBOOLDISPLAY.insert(x87CW_OM);
|
||||
mFPU.insert(x87CW_OM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_ZM);
|
||||
mFPUx87.insert(x87CW_ZM);
|
||||
mBOOLDISPLAY.insert(x87CW_ZM);
|
||||
mFPU.insert(x87CW_ZM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_DM);
|
||||
mFPUx87.insert(x87CW_DM);
|
||||
mBOOLDISPLAY.insert(x87CW_DM);
|
||||
mFPU.insert(x87CW_DM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(x87CW_IM);
|
||||
mFPUx87.insert(x87CW_IM);
|
||||
mBOOLDISPLAY.insert(x87CW_IM);
|
||||
mFPU.insert(x87CW_IM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_FZ);
|
||||
mBOOLDISPLAY.insert(MxCsr_FZ);
|
||||
mFPU.insert(MxCsr_FZ);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_PM);
|
||||
mBOOLDISPLAY.insert(MxCsr_PM);
|
||||
mFPU.insert(MxCsr_PM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_UM);
|
||||
mBOOLDISPLAY.insert(MxCsr_UM);
|
||||
mFPU.insert(MxCsr_UM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_OM);
|
||||
mBOOLDISPLAY.insert(MxCsr_OM);
|
||||
mFPU.insert(MxCsr_OM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_ZM);
|
||||
mBOOLDISPLAY.insert(MxCsr_ZM);
|
||||
mFPU.insert(MxCsr_ZM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_IM);
|
||||
mBOOLDISPLAY.insert(MxCsr_IM);
|
||||
mFPU.insert(MxCsr_IM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_DM);
|
||||
mBOOLDISPLAY.insert(MxCsr_DM);
|
||||
mFPU.insert(MxCsr_DM);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_DAZ);
|
||||
mBOOLDISPLAY.insert(MxCsr_DAZ);
|
||||
mFPU.insert(MxCsr_DAZ);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_PE);
|
||||
mBOOLDISPLAY.insert(MxCsr_PE);
|
||||
mFPU.insert(MxCsr_PE);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_UE);
|
||||
mBOOLDISPLAY.insert(MxCsr_UE);
|
||||
mFPU.insert(MxCsr_UE);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_OE);
|
||||
mBOOLDISPLAY.insert(MxCsr_OE);
|
||||
mFPU.insert(MxCsr_OE);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_ZE);
|
||||
mBOOLDISPLAY.insert(MxCsr_ZE);
|
||||
mFPU.insert(MxCsr_ZE);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_DE);
|
||||
mBOOLDISPLAY.insert(MxCsr_DE);
|
||||
mFPU.insert(MxCsr_DE);
|
||||
|
||||
mSETONEZEROTOGGLE.insert(MxCsr_IE);
|
||||
mBOOLDISPLAY.insert(MxCsr_IE);
|
||||
mFPU.insert(MxCsr_IE);
|
||||
|
||||
|
|
|
@ -208,7 +208,6 @@ protected:
|
|||
QSet<REGISTER_NAME> mLABELDISPLAY;
|
||||
QSet<REGISTER_NAME> mONLYMODULEANDLABELDISPLAY;
|
||||
QSet<REGISTER_NAME> mUNDODISPLAY;
|
||||
QSet<REGISTER_NAME> mSETONEZEROTOGGLE;
|
||||
QSet<REGISTER_NAME> mMODIFYDISPLAY;
|
||||
QSet<REGISTER_NAME> mFIELDVALUE;
|
||||
QSet<REGISTER_NAME> mTAGWORD;
|
||||
|
|
|
@ -30,11 +30,6 @@ public:
|
|||
|
||||
int addTabEx(QWidget* widget, const QIcon & icon, const QString & label, const QString & nativeName);
|
||||
QString getNativeName(int index);
|
||||
void showPreviousTab();
|
||||
void showNextTab();
|
||||
void showPreviousView();
|
||||
void showNextView();
|
||||
void deleteCurrentTab();
|
||||
|
||||
signals:
|
||||
void tabMovedTabWidget(int from, int to);
|
||||
|
@ -48,6 +43,11 @@ public slots:
|
|||
void OnDetachFocused(QWidget* parent);
|
||||
void currentChanged(int index);
|
||||
void setCurrentIndex(int index);
|
||||
void showPreviousTab();
|
||||
void showNextTab();
|
||||
void showPreviousView();
|
||||
void showNextView();
|
||||
void deleteCurrentTab();
|
||||
|
||||
protected:
|
||||
MHTabBar* tabBar() const;
|
||||
|
|
|
@ -568,12 +568,6 @@ Configuration::Configuration() : QObject(), noMoreMsgbox(false)
|
|||
defaultShortcuts.insert("ActionTreatSelectionHeadAsMMWord", Shortcut({tr("Actions"), tr("Treat Selection Head As"), tr("MMWord")}, ""));
|
||||
defaultShortcuts.insert("ActionTreatSelectionHeadAsXMMWord", Shortcut({tr("Actions"), tr("Treat Selection Head As"), tr("XMMWord")}, ""));
|
||||
defaultShortcuts.insert("ActionTreatSelectionHeadAsYMMWord", Shortcut({tr("Actions"), tr("Treat Selection Head As"), tr("YMMWord")}, ""));
|
||||
defaultShortcuts.insert("ActionIncreaseRegister", Shortcut({tr("Actions"), tr("Increase Register")}, "+"));
|
||||
defaultShortcuts.insert("ActionDecreaseRegister", Shortcut({tr("Actions"), tr("Decrease Register")}, "-"));
|
||||
defaultShortcuts.insert("ActionIncreaseRegisterPtrSize", Shortcut({tr("Actions"), tr("Increase Register by") + ArchValue(QString(" 4"), QString(" 8"))}));
|
||||
defaultShortcuts.insert("ActionDecreaseRegisterPtrSize", Shortcut({tr("Actions"), tr("Decrease Register by") + ArchValue(QString(" 4"), QString(" 8"))}));
|
||||
defaultShortcuts.insert("ActionZeroRegister", Shortcut({tr("Actions"), tr("Zero Register")}, "0"));
|
||||
defaultShortcuts.insert("ActionSetOneRegister", Shortcut({tr("Actions"), tr("Set Register to One")}, "1"));
|
||||
defaultShortcuts.insert("ActionToggleRegisterValue", Shortcut({tr("Actions"), tr("Toggle Register Value")}, "Space"));
|
||||
defaultShortcuts.insert("ActionClear", Shortcut({tr("Actions"), tr("Clear")}, "Ctrl+L"));
|
||||
defaultShortcuts.insert("ActionCopy", Shortcut({tr("Actions"), tr("Copy")}, "Ctrl+C"));
|
||||
|
@ -602,8 +596,6 @@ Configuration::Configuration() : QObject(), noMoreMsgbox(false)
|
|||
defaultShortcuts.insert("ActionGraphSyncOrigin", Shortcut({tr("Actions"), tr("Graph"), tr("Toggle sync with origin")}, "S"));
|
||||
defaultShortcuts.insert("ActionIncrementx87Stack", Shortcut({tr("Actions"), tr("Increment x87 Stack")}));
|
||||
defaultShortcuts.insert("ActionDecrementx87Stack", Shortcut({tr("Actions"), tr("Decrement x87 Stack")}));
|
||||
defaultShortcuts.insert("ActionPush", Shortcut({tr("Actions"), tr("Push")}));
|
||||
defaultShortcuts.insert("ActionPop", Shortcut({tr("Actions"), tr("Pop")}));
|
||||
defaultShortcuts.insert("ActionRedirectLog", Shortcut({tr("Actions"), tr("Redirect Log")}));
|
||||
defaultShortcuts.insert("ActionBrowseInExplorer", Shortcut({tr("Actions"), tr("Browse in Explorer")}));
|
||||
defaultShortcuts.insert("ActionDownloadSymbol", Shortcut({tr("Actions"), tr("Download Symbols for This Module")}));
|
||||
|
|
Loading…
Reference in New Issue