1
0
Fork 0

GUI: codename iconic #775

This commit is contained in:
mrexodia 2016-10-18 03:06:04 +02:00
parent a034ddd940
commit 8511cf955b
No known key found for this signature in database
GPG Key ID: FC89E0AAA0C1AAD8
23 changed files with 140 additions and 101 deletions

View File

@ -310,7 +310,7 @@ void BreakpointsView::reloadData()
void BreakpointsView::setupRightClickContextMenu()
{
mEditBreakpointAction = new QAction(tr("&Edit"), this);
mEditBreakpointAction = new QAction(DIcon("breakpoint_edit_alt.png"), tr("&Edit"), this);
addAction(mEditBreakpointAction);
connect(mEditBreakpointAction, SIGNAL(triggered(bool)), this, SLOT(editBreakpointSlot()));
@ -327,33 +327,33 @@ void BreakpointsView::setupRightClickContextMenu()
void BreakpointsView::setupHardBPRightClickContextMenu()
{
// Remove
mHardBPRemoveAction = new QAction(tr("&Remove"), this);
mHardBPRemoveAction = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove"), this);
mHardBPRemoveAction->setShortcutContext(Qt::WidgetShortcut);
mHardBPTable->addAction(mHardBPRemoveAction);
connect(mHardBPRemoveAction, SIGNAL(triggered()), this, SLOT(removeHardBPActionSlot()));
// Remove All
mHardBPRemoveAllAction = new QAction(tr("Remove All"), this);
mHardBPRemoveAllAction = new QAction(DIcon("breakpoint_remove_all.png"), tr("Remove All"), this);
connect(mHardBPRemoveAllAction, SIGNAL(triggered()), this, SLOT(removeAllHardBPActionSlot()));
// Enable/Disable
mHardBPEnableDisableAction = new QAction(DIcon("enable.png"), tr("E&nable"), this);
mHardBPEnableDisableAction = new QAction(DIcon("breakpoint_enable.png"), tr("E&nable"), this);
mHardBPEnableDisableAction->setShortcutContext(Qt::WidgetShortcut);
mHardBPTable->addAction(mHardBPEnableDisableAction);
connect(mHardBPEnableDisableAction, SIGNAL(triggered()), this, SLOT(enableDisableHardBPActionSlot()));
// Reset hit count
mHardBPResetHitCountAction = new QAction(tr("Reset hit count"), this);
mHardBPResetHitCountAction = new QAction(DIcon("breakpoint_reset_hitcount.png"), tr("Reset hit count"), this);
mHardBPTable->addAction(mHardBPResetHitCountAction);
connect(mHardBPResetHitCountAction, SIGNAL(triggered()), this, SLOT(resetHardwareHitCountSlot()));
// Enable All
mHardBPEnableAllAction = new QAction(DIcon("enable.png"), tr("Enable All"), this);
mHardBPEnableAllAction = new QAction(DIcon("breakpoint_enable_all.png"), tr("Enable All"), this);
mHardBPTable->addAction(mHardBPEnableAllAction);
connect(mHardBPEnableAllAction, SIGNAL(triggered()), this, SLOT(enableAllHardBPActionSlot()));
// Disable All
mHardBPDisableAllAction = new QAction(DIcon("disable.png"), tr("Disable All"), this);
mHardBPDisableAllAction = new QAction(DIcon("breakpoint_disable_all.png"), tr("Disable All"), this);
mHardBPTable->addAction(mHardBPDisableAllAction);
connect(mHardBPDisableAllAction, SIGNAL(triggered()), this, SLOT(disableAllHardBPActionSlot()));
}
@ -395,19 +395,19 @@ void BreakpointsView::hardwareBPContextMenuSlot(const QPoint & pos)
if(wBPList.bp[wI].active == false)
{
mHardBPEnableDisableAction->setText(tr("E&nable"));
mHardBPEnableDisableAction->setIcon(DIcon("enable.png"));
mHardBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mHardBPEnableDisableAction);
}
else if(wBPList.bp[wI].enabled == true)
{
mHardBPEnableDisableAction->setText(tr("&Disable"));
mHardBPEnableDisableAction->setIcon(DIcon("disable.png"));
mHardBPEnableDisableAction->setIcon(DIcon("breakpoint_disable.png"));
wMenu.addAction(mHardBPEnableDisableAction);
}
else
{
mHardBPEnableDisableAction->setText(tr("E&nable"));
mHardBPEnableDisableAction->setIcon(DIcon("enable.png"));
mHardBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mHardBPEnableDisableAction);
}
}
@ -501,33 +501,33 @@ void BreakpointsView::resetHardwareHitCountSlot()
void BreakpointsView::setupSoftBPRightClickContextMenu()
{
// Remove
mSoftBPRemoveAction = new QAction(tr("&Remove"), this);
mSoftBPRemoveAction = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove"), this);
mSoftBPRemoveAction->setShortcutContext(Qt::WidgetShortcut);
mSoftBPTable->addAction(mSoftBPRemoveAction);
connect(mSoftBPRemoveAction, SIGNAL(triggered()), this, SLOT(removeSoftBPActionSlot()));
// Remove All
mSoftBPRemoveAllAction = new QAction(tr("Remove All"), this);
mSoftBPRemoveAllAction = new QAction(DIcon("breakpoint_remove_all.png"), tr("Remove All"), this);
connect(mSoftBPRemoveAllAction, SIGNAL(triggered()), this, SLOT(removeAllSoftBPActionSlot()));
// Enable/Disable
mSoftBPEnableDisableAction = new QAction(DIcon("enable.png"), tr("E&nable"), this);
mSoftBPEnableDisableAction = new QAction(DIcon("breakpoint_enable.png"), tr("E&nable"), this);
mSoftBPEnableDisableAction->setShortcutContext(Qt::WidgetShortcut);
mSoftBPTable->addAction(mSoftBPEnableDisableAction);
connect(mSoftBPEnableDisableAction, SIGNAL(triggered()), this, SLOT(enableDisableSoftBPActionSlot()));
// Reset hit count
mSoftBPResetHitCountAction = new QAction(tr("Reset hit count"), this);
mSoftBPResetHitCountAction = new QAction(DIcon("breakpoint_reset_hitcount.png"), tr("Reset hit count"), this);
mSoftBPTable->addAction(mSoftBPResetHitCountAction);
connect(mSoftBPResetHitCountAction, SIGNAL(triggered()), this, SLOT(resetSoftwareHitCountSlot()));
// Enable All
mSoftBPEnableAllAction = new QAction(DIcon("enable.png"), tr("Enable All"), this);
mSoftBPEnableAllAction = new QAction(DIcon("breakpoint_enable_all.png"), tr("Enable All"), this);
mSoftBPTable->addAction(mSoftBPEnableAllAction);
connect(mSoftBPEnableAllAction, SIGNAL(triggered()), this, SLOT(enableAllSoftBPActionSlot()));
// Disable All
mSoftBPDisableAllAction = new QAction(DIcon("disable.png"), tr("Disable All"), this);
mSoftBPDisableAllAction = new QAction(DIcon("breakpoint_disable_all.png"), tr("Disable All"), this);
mSoftBPTable->addAction(mSoftBPDisableAllAction);
connect(mSoftBPDisableAllAction, SIGNAL(triggered()), this, SLOT(disableAllSoftBPActionSlot()));
}
@ -555,19 +555,19 @@ void BreakpointsView::softwareBPContextMenuSlot(const QPoint & pos)
if(wBPList.bp[wI].active == false)
{
mSoftBPEnableDisableAction->setText(tr("E&nable"));
mSoftBPEnableDisableAction->setIcon(DIcon("enable.png"));
mSoftBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mSoftBPEnableDisableAction);
}
else if(wBPList.bp[wI].enabled == true)
{
mSoftBPEnableDisableAction->setText(tr("&Disable"));
mSoftBPEnableDisableAction->setIcon(DIcon("disable.png"));
mSoftBPEnableDisableAction->setIcon(DIcon("breakpoint_disable.png"));
wMenu.addAction(mSoftBPEnableDisableAction);
}
else
{
mSoftBPEnableDisableAction->setText(tr("E&nable"));
mSoftBPEnableDisableAction->setIcon(DIcon("enable.png"));
mSoftBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mSoftBPEnableDisableAction);
}
}
@ -661,33 +661,33 @@ void BreakpointsView::resetSoftwareHitCountSlot()
void BreakpointsView::setupMemBPRightClickContextMenu()
{
// Remove
mMemBPRemoveAction = new QAction(tr("&Remove"), this);
mMemBPRemoveAction = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove"), this);
mMemBPRemoveAction->setShortcutContext(Qt::WidgetShortcut);
mMemBPTable->addAction(mMemBPRemoveAction);
connect(mMemBPRemoveAction, SIGNAL(triggered()), this, SLOT(removeMemBPActionSlot()));
// Remove All
mMemBPRemoveAllAction = new QAction(tr("Remove All"), this);
mMemBPRemoveAllAction = new QAction(DIcon("breakpoint_remove_all.png"), tr("Remove All"), this);
connect(mMemBPRemoveAllAction, SIGNAL(triggered()), this, SLOT(removeAllMemBPActionSlot()));
// Enable/Disable
mMemBPEnableDisableAction = new QAction(DIcon("enable.png"), tr("E&nable"), this);
mMemBPEnableDisableAction = new QAction(DIcon("breakpoint_enable.png"), tr("E&nable"), this);
mMemBPEnableDisableAction->setShortcutContext(Qt::WidgetShortcut);
mMemBPTable->addAction(mMemBPEnableDisableAction);
connect(mMemBPEnableDisableAction, SIGNAL(triggered()), this, SLOT(enableDisableMemBPActionSlot()));
// Reset hit count
mMemBPResetHitCountAction = new QAction(tr("Reset hit count"), this);
mMemBPResetHitCountAction = new QAction(DIcon("breakpoint_reset_hitcount.png"), tr("Reset hit count"), this);
mMemBPTable->addAction(mMemBPResetHitCountAction);
connect(mMemBPResetHitCountAction, SIGNAL(triggered()), this, SLOT(resetMemoryHitCountSlot()));
// Enable All
mMemBPEnableAllAction = new QAction(DIcon("enable.png"), tr("Enable All"), this);
mMemBPEnableAllAction = new QAction(DIcon("breakpoint_enable_all.png"), tr("Enable All"), this);
mMemBPTable->addAction(mMemBPEnableAllAction);
connect(mMemBPEnableAllAction, SIGNAL(triggered()), this, SLOT(enableAllMemBPActionSlot()));
// Disable All
mMemBPDisableAllAction = new QAction(DIcon("disable.png"), tr("Disable All"), this);
mMemBPDisableAllAction = new QAction(DIcon("breakpoint_disable_all.png"), tr("Disable All"), this);
mMemBPTable->addAction(mMemBPDisableAllAction);
connect(mMemBPDisableAllAction, SIGNAL(triggered()), this, SLOT(disableAllMemBPActionSlot()));
}
@ -715,19 +715,19 @@ void BreakpointsView::memoryBPContextMenuSlot(const QPoint & pos)
if(wBPList.bp[wI].active == false)
{
mMemBPEnableDisableAction->setText(tr("E&nable"));
mMemBPEnableDisableAction->setIcon(DIcon("enable.png"));
mMemBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mMemBPEnableDisableAction);
}
else if(wBPList.bp[wI].enabled == true)
{
mMemBPEnableDisableAction->setText(tr("&Disable"));
mMemBPEnableDisableAction->setIcon(DIcon("disable.png"));
mMemBPEnableDisableAction->setIcon(DIcon("breakpoint_disable.png"));
wMenu.addAction(mMemBPEnableDisableAction);
}
else
{
mMemBPEnableDisableAction->setText(tr("E&nable"));
mMemBPEnableDisableAction->setIcon(DIcon("enable.png"));
mMemBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mMemBPEnableDisableAction);
}
}
@ -822,37 +822,37 @@ void BreakpointsView::resetMemoryHitCountSlot()
void BreakpointsView::setupDLLBPRightClickContextMenu()
{
// Add
mDLLBPAddAction = new QAction(tr("&Add"), this);
mDLLBPAddAction = new QAction(DIcon("breakpoint_module_add.png"), tr("&Add"), this);
connect(mDLLBPAddAction, SIGNAL(triggered()), this, SLOT(addDLLBPActionSlot()));
// Remove
mDLLBPRemoveAction = new QAction(tr("&Remove"), this);
mDLLBPRemoveAction = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove"), this);
mDLLBPRemoveAction->setShortcutContext(Qt::WidgetShortcut);
mDLLBPTable->addAction(mDLLBPRemoveAction);
connect(mDLLBPRemoveAction, SIGNAL(triggered()), this, SLOT(removeDLLBPActionSlot()));
// Remove All
mDLLBPRemoveAllAction = new QAction(tr("Remove All"), this);
mDLLBPRemoveAllAction = new QAction(DIcon("breakpoint_remove_all.png"), tr("Remove All"), this);
connect(mDLLBPRemoveAllAction, SIGNAL(triggered()), this, SLOT(removeAllDLLBPActionSlot()));
// Enable/Disable
mDLLBPEnableDisableAction = new QAction(tr("E&nable"), this);
mDLLBPEnableDisableAction = new QAction(DIcon("breakpoint_enable.png"), tr("E&nable"), this);
mDLLBPEnableDisableAction->setShortcutContext(Qt::WidgetShortcut);
mDLLBPTable->addAction(mDLLBPEnableDisableAction);
connect(mDLLBPEnableDisableAction, SIGNAL(triggered()), this, SLOT(enableDisableDLLBPActionSlot()));
// Reset hit count
mDLLBPResetHitCountAction = new QAction(tr("Reset hit count"), this);
mDLLBPResetHitCountAction = new QAction(DIcon("breakpoint_reset_hitcount.png"), tr("Reset hit count"), this);
mDLLBPTable->addAction(mDLLBPResetHitCountAction);
connect(mDLLBPResetHitCountAction, SIGNAL(triggered()), this, SLOT(resetDLLHitCountSlot()));
// Enable All
mDLLBPEnableAllAction = new QAction(DIcon("enable.png"), tr("Enable All"), this);
mDLLBPEnableAllAction = new QAction(DIcon("breakpoint_enable_all.png"), tr("Enable All"), this);
mDLLBPTable->addAction(mDLLBPEnableAllAction);
connect(mDLLBPEnableAllAction, SIGNAL(triggered()), this, SLOT(enableAllDLLBPActionSlot()));
// Disable All
mDLLBPDisableAllAction = new QAction(DIcon("disable.png"), ("Disable All"), this);
mDLLBPDisableAllAction = new QAction(DIcon("breakpoint_disable_all.png"), ("Disable All"), this);
mDLLBPTable->addAction(mDLLBPDisableAllAction);
connect(mDLLBPDisableAllAction, SIGNAL(triggered()), this, SLOT(disableAllDLLBPActionSlot()));
}
@ -863,8 +863,10 @@ void BreakpointsView::DLLBPContextMenuSlot(const QPoint & pos)
return;
StdTable* table = mDLLBPTable;
QMenu wMenu(this);
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
wMenu.addAction(mDLLBPAddAction);
if(table->getRowCount() != 0)
if(table->getRowCount())
{
int wI = 0;
QString wName = table->getCellContent(table->getInitialSelection(), 1);
@ -883,19 +885,19 @@ void BreakpointsView::DLLBPContextMenuSlot(const QPoint & pos)
if(wBPList.bp[wI].active == false)
{
mDLLBPEnableDisableAction->setText(tr("E&nable"));
mDLLBPEnableDisableAction->setIcon(DIcon("enable.png"));
mDLLBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mDLLBPEnableDisableAction);
}
else if(wBPList.bp[wI].enabled == true)
{
mDLLBPEnableDisableAction->setText(tr("&Disable"));
mDLLBPEnableDisableAction->setIcon(DIcon("disable.png"));
mDLLBPEnableDisableAction->setIcon(DIcon("breakpoint_disable.png"));
wMenu.addAction(mDLLBPEnableDisableAction);
}
else
{
mDLLBPEnableDisableAction->setText(tr("E&nable"));
mDLLBPEnableDisableAction->setIcon(DIcon("enable.png"));
mDLLBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mDLLBPEnableDisableAction);
}
}
@ -921,8 +923,6 @@ void BreakpointsView::DLLBPContextMenuSlot(const QPoint & pos)
wMenu.addAction(mDLLBPRemoveAllAction);
//Copy
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
table->setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
{
@ -991,37 +991,37 @@ void BreakpointsView::removeAllDLLBPActionSlot()
void BreakpointsView::setupExceptionBPRightClickContextMenu()
{
// Add
mExceptionBPAddAction = new QAction(tr("&Add"), this);
mExceptionBPAddAction = new QAction(DIcon("breakpoint_exception_add.png"), tr("&Add"), this);
connect(mExceptionBPAddAction, SIGNAL(triggered()), this, SLOT(addExceptionBPActionSlot()));
// Remove
mExceptionBPRemoveAction = new QAction(tr("&Remove"), this);
mExceptionBPRemoveAction = new QAction(DIcon("breakpoint_remove.png"), tr("&Remove"), this);
mExceptionBPRemoveAction->setShortcutContext(Qt::WidgetShortcut);
mExceptionBPTable->addAction(mExceptionBPRemoveAction);
connect(mExceptionBPRemoveAction, SIGNAL(triggered()), this, SLOT(removeExceptionBPActionSlot()));
// Remove All
mExceptionBPRemoveAllAction = new QAction(tr("Remove All"), this);
mExceptionBPRemoveAllAction = new QAction(DIcon("breakpoint_remove_all.png"), tr("Remove All"), this);
connect(mExceptionBPRemoveAllAction, SIGNAL(triggered()), this, SLOT(removeAllExceptionBPActionSlot()));
// Enable/Disable
mExceptionBPEnableDisableAction = new QAction(tr("E&nable"), this);
mExceptionBPEnableDisableAction = new QAction(DIcon("breakpoint_enable.png"), tr("E&nable"), this);
mExceptionBPEnableDisableAction->setShortcutContext(Qt::WidgetShortcut);
mExceptionBPTable->addAction(mExceptionBPEnableDisableAction);
connect(mExceptionBPEnableDisableAction, SIGNAL(triggered()), this, SLOT(enableDisableExceptionBPActionSlot()));
// Reset hit count
mExceptionBPResetHitCountAction = new QAction(tr("Reset hit count"), this);
mExceptionBPResetHitCountAction = new QAction(DIcon("breakpoint_reset_hitcount.png"), tr("Reset hit count"), this);
mExceptionBPTable->addAction(mExceptionBPResetHitCountAction);
connect(mExceptionBPResetHitCountAction, SIGNAL(triggered()), this, SLOT(resetExceptionHitCountSlot()));
// Enable All
mExceptionBPEnableAllAction = new QAction(tr("Enable All"), this);
mExceptionBPEnableAllAction = new QAction(DIcon("breakpoint_enable_all.png"), tr("Enable All"), this);
mExceptionBPTable->addAction(mExceptionBPEnableAllAction);
connect(mExceptionBPEnableAllAction, SIGNAL(triggered()), this, SLOT(enableAllExceptionBPActionSlot()));
// Disable All
mExceptionBPDisableAllAction = new QAction(tr("Disable All"), this);
mExceptionBPDisableAllAction = new QAction(DIcon("breakpoint_disable_all.png"), tr("Disable All"), this);
mExceptionBPTable->addAction(mExceptionBPDisableAllAction);
connect(mExceptionBPDisableAllAction, SIGNAL(triggered()), this, SLOT(disableAllExceptionBPActionSlot()));
}
@ -1032,6 +1032,8 @@ void BreakpointsView::ExceptionBPContextMenuSlot(const QPoint & pos)
return;
StdTable* table = mExceptionBPTable;
QMenu wMenu(this);
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
wMenu.addAction(mExceptionBPAddAction);
if(table->getRowCount() != 0)
{
@ -1052,16 +1054,19 @@ void BreakpointsView::ExceptionBPContextMenuSlot(const QPoint & pos)
if(wBPList.bp[wI].active == false)
{
mExceptionBPEnableDisableAction->setText(tr("E&nable"));
mExceptionBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mExceptionBPEnableDisableAction);
}
else if(wBPList.bp[wI].enabled == true)
{
mExceptionBPEnableDisableAction->setText(tr("&Disable"));
mExceptionBPEnableDisableAction->setIcon(DIcon("breakpoint_disable.png"));
wMenu.addAction(mExceptionBPEnableDisableAction);
}
else
{
mExceptionBPEnableDisableAction->setText(tr("E&nable"));
mExceptionBPEnableDisableAction->setIcon(DIcon("breakpoint_enable.png"));
wMenu.addAction(mExceptionBPEnableDisableAction);
}
}
@ -1087,7 +1092,6 @@ void BreakpointsView::ExceptionBPContextMenuSlot(const QPoint & pos)
wMenu.addAction(mExceptionBPRemoveAllAction);
//Copy
QMenu wCopyMenu(tr("&Copy"), this);
table->setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
{

View File

@ -251,7 +251,7 @@ void CPUDisassembly::setupRightClickContextMenu()
});
QAction* toggleBreakpointAction = makeShortcutAction(DIcon("breakpoint_toggle.png"), tr("Toggle"), SLOT(toggleInt3BPActionSlot()), "ActionToggleBreakpoint");
QAction* editSoftwareBreakpointAction = makeShortcutAction(DIcon("breakpoint_edit.png"), tr("Edit"), SLOT(editSoftBpActionSlot()), "ActionEditBreakpoint");
QAction* editSoftwareBreakpointAction = makeShortcutAction(DIcon("breakpoint_edit_alt.png"), tr("Edit"), SLOT(editSoftBpActionSlot()), "ActionEditBreakpoint");
QAction* setHwBreakpointAction = makeShortcutAction(DIcon("breakpoint_execute.png"), tr("Set Hardware on Execution"), SLOT(toggleHwBpActionSlot()), "ActionSetHwBpE");
QAction* removeHwBreakpointAction = makeShortcutAction(DIcon("breakpoint_remove.png"), tr("Remove Hardware"), SLOT(toggleHwBpActionSlot()), "ActionRemoveHwBp");
@ -368,7 +368,7 @@ void CPUDisassembly::setupRightClickContextMenu()
});
mMenuBuilder->addAction(makeShortcutAction(DIcon("highlight.png"), tr("&Highlighting mode"), SLOT(enableHighlightingModeSlot()), "ActionHighlightingMode"));
QAction* togglePreview = makeShortcutAction(tr("Disable Branch Destination Preview"), SLOT(togglePreviewSlot()), "ActionToggleDestinationPreview");
QAction* togglePreview = makeShortcutAction(DIcon("branchpreview.png"), tr("Disable Branch Destination Preview"), SLOT(togglePreviewSlot()), "ActionToggleDestinationPreview");
mMenuBuilder->addAction(togglePreview, [this, togglePreview](QMenu*)
{
togglePreview->setText(mPopupEnabled ? tr("Disable Branch Destination Preview") : tr("Enable Branch Destination Preview"));
@ -421,7 +421,7 @@ void CPUDisassembly::setupRightClickContextMenu()
MenuBuilder* analysisMenu = new MenuBuilder(this);
QAction* toggleFunctionAction = makeShortcutAction(DIcon("functions.png"), tr("Function"), SLOT(toggleFunctionSlot()), "ActionToggleFunction");
analysisMenu->addAction(makeShortcutAction(tr("Analyze module"), SLOT(analyzeModuleSlot()), "ActionAnalyzeModule"));
analysisMenu->addAction(makeShortcutAction(DIcon("analyzemodule.png"), tr("Analyze module"), SLOT(analyzeModuleSlot()), "ActionAnalyzeModule"));
analysisMenu->addAction(toggleFunctionAction, [this, toggleFunctionAction](QMenu*)
{
if(!DbgFunctionOverlaps(rvaToVa(getSelectionStart()), rvaToVa(getSelectionEnd())))
@ -565,7 +565,7 @@ void CPUDisassembly::setupRightClickContextMenu()
mFindStringsRegion = makeAction(DIcon("search_for_string.png"), tr("&String references"), SLOT(findStringsSlot()));
mFindCallsRegion = makeAction(DIcon("call.png"), tr("&Intermodular calls"), SLOT(findCallsSlot()));
mFindPatternRegion = makeShortcutAction(DIcon("search_for_pattern.png"), tr("&Pattern"), SLOT(findPatternSlot()), "ActionFindPattern");
mFindGUIDRegion = makeAction(tr("&GUID"), SLOT(findGUIDSlot()));
mFindGUIDRegion = makeAction(DIcon("guid.png"), tr("&GUID"), SLOT(findGUIDSlot()));
mSearchRegionMenu->addAction(mFindCommandRegion);
mSearchRegionMenu->addAction(mFindConstantRegion);
mSearchRegionMenu->addAction(mFindStringsRegion);
@ -579,7 +579,7 @@ void CPUDisassembly::setupRightClickContextMenu()
mFindStringsModule = makeAction(DIcon("search_for_string.png"), tr("&String references"), SLOT(findStringsSlot()));
mFindCallsModule = makeAction(DIcon("call.png"), tr("&Intermodular calls"), SLOT(findCallsSlot()));
mFindPatternModule = makeAction(DIcon("search_for_pattern.png"), tr("&Pattern"), SLOT(findPatternSlot()));
mFindGUIDModule = makeAction(tr("&GUID"), SLOT(findGUIDSlot()));
mFindGUIDModule = makeAction(DIcon("guid.png"), tr("&GUID"), SLOT(findGUIDSlot()));
mSearchModuleMenu->addAction(mFindCommandModule);
mSearchModuleMenu->addAction(mFindConstantModule);
mSearchModuleMenu->addAction(mFindStringsModule);
@ -592,7 +592,7 @@ void CPUDisassembly::setupRightClickContextMenu()
mFindConstantAll = makeAction(DIcon("search_for_constant.png"), tr("&Constant"), SLOT(findConstantSlot()));
mFindStringsAll = makeAction(DIcon("search_for_string.png"), tr("&String references"), SLOT(findStringsSlot()));
mFindCallsAll = makeAction(DIcon("call.png"), tr("&Intermodular calls"), SLOT(findCallsSlot()));
mFindGUIDAll = makeAction(tr("&GUID"), SLOT(findGUIDSlot()));
mFindGUIDAll = makeAction(DIcon("guid.png"), tr("&GUID"), SLOT(findGUIDSlot()));
mSearchAllMenu->addAction(mFindCommandAll);
mSearchAllMenu->addAction(mFindConstantAll);
mSearchAllMenu->addAction(mFindStringsAll);

View File

@ -169,7 +169,7 @@ void CPUDump::setupContextMenu()
mMenuBuilder->addAction(makeShortcutAction(DIcon("sync.png"), tr("&Sync with expression"), SLOT(syncWithExpressionSlot()), "ActionSyncWithExpression"));
mMenuBuilder->addAction(makeAction(DIcon("animal-dog.png"), ArchValue(tr("Watch DWORD"), tr("Watch QWORD")), SLOT(watchSlot())));
mMenuBuilder->addAction(makeShortcutAction(DIcon("entropy.png"), tr("Entrop&y..."), SLOT(entropySlot()), "ActionEntropy"));
mMenuBuilder->addAction(makeAction(tr("Allocate Memory"), SLOT(allocMemorySlot())));
mMenuBuilder->addAction(makeAction(DIcon("memmap_alloc_memory.png"), tr("Allocate Memory"), SLOT(allocMemorySlot())));
MenuBuilder* wGotoMenu = new MenuBuilder(this);
wGotoMenu->addAction(makeShortcutAction(DIcon("geolocation-goto.png"), tr("&Expression"), SLOT(gotoExpressionSlot()), "ActionGotoExpression"));

View File

@ -129,38 +129,38 @@ void CPUStack::setupContextMenu()
mMenuBuilder->addMenu(makeMenu(DIcon("copy.png"), tr("&Copy")), copyMenu);
//Breakpoint (hardware access) menu
auto hardwareAccessMenu = makeMenu(tr("Hardware, Access"));
hardwareAccessMenu->addAction(makeAction(tr("&Byte"), SLOT(hardwareAccess1Slot())));
hardwareAccessMenu->addAction(makeAction(tr("&Word"), SLOT(hardwareAccess2Slot())));
hardwareAccessMenu->addAction(makeAction(tr("&Dword"), SLOT(hardwareAccess4Slot())));
auto hardwareAccessMenu = makeMenu(DIcon("breakpoint_access.png"), tr("Hardware, Access"));
hardwareAccessMenu->addAction(makeAction(DIcon("breakpoint_byte.png"), tr("&Byte"), SLOT(hardwareAccess1Slot())));
hardwareAccessMenu->addAction(makeAction(DIcon("breakpoint_word.png"), tr("&Word"), SLOT(hardwareAccess2Slot())));
hardwareAccessMenu->addAction(makeAction(DIcon("breakpoint_dword.png"), tr("&Dword"), SLOT(hardwareAccess4Slot())));
#ifdef _WIN64
hardwareAccessMenu->addAction(makeAction(tr("&Qword"), SLOT(hardwareAccess8Slot())));
hardwareAccessMenu->addAction(makeAction(DIcon("breakpoint_qword.png"), tr("&Qword"), SLOT(hardwareAccess8Slot())));
#endif //_WIN64
//Breakpoint (hardware write) menu
auto hardwareWriteMenu = makeMenu(tr("Hardware, Write"));
hardwareWriteMenu->addAction(makeAction(tr("&Byte"), SLOT(hardwareWrite1Slot())));
hardwareWriteMenu->addAction(makeAction(tr("&Word"), SLOT(hardwareWrite2Slot())));
hardwareWriteMenu->addAction(makeAction(tr("&Dword"), SLOT(hardwareWrite4Slot())));
auto hardwareWriteMenu = makeMenu(DIcon("breakpoint_write.png"), tr("Hardware, Write"));
hardwareWriteMenu->addAction(makeAction(DIcon("breakpoint_byte.png"), tr("&Byte"), SLOT(hardwareWrite1Slot())));
hardwareWriteMenu->addAction(makeAction(DIcon("breakpoint_word.png"), tr("&Word"), SLOT(hardwareWrite2Slot())));
hardwareWriteMenu->addAction(makeAction(DIcon("breakpoint_dword.png"), tr("&Dword"), SLOT(hardwareWrite4Slot())));
#ifdef _WIN64
hardwareWriteMenu->addAction(makeAction(tr("&Qword"), SLOT(hardwareAccess8Slot())));
hardwareWriteMenu->addAction(makeAction(DIcon("breakpoint_qword.png"), tr("&Qword"), SLOT(hardwareAccess8Slot())));
#endif //_WIN64
//Breakpoint (remove hardware)
auto hardwareRemove = makeAction(tr("Remove &Hardware"), SLOT(hardwareRemoveSlot()));
auto hardwareRemove = makeAction(DIcon("breakpoint_remove.png"), tr("Remove &Hardware"), SLOT(hardwareRemoveSlot()));
//Breakpoint (memory access) menu
auto memoryAccessMenu = makeMenu(tr("Memory, Access"));
memoryAccessMenu->addAction(makeAction(tr("&Singleshoot"), SLOT(memoryAccessSingleshootSlot())));
memoryAccessMenu->addAction(makeAction(tr("&Restore on hit"), SLOT(memoryAccessRestoreSlot())));
auto memoryAccessMenu = makeMenu(DIcon("breakpoint_memory_access.png"), tr("Memory, Access"));
memoryAccessMenu->addAction(makeAction(DIcon("breakpoint_memory_singleshoot.png"), tr("&Singleshoot"), SLOT(memoryAccessSingleshootSlot())));
memoryAccessMenu->addAction(makeAction(DIcon("breakpoint_memory_restore_on_hit.png"), tr("&Restore on hit"), SLOT(memoryAccessRestoreSlot())));
//Breakpoint (memory write) menu
auto memoryWriteMenu = makeMenu(tr("Memory, Write"));
memoryWriteMenu->addAction(makeAction(tr("&Singleshoot"), SLOT(memoryWriteSingleshootSlot())));
memoryWriteMenu->addAction(makeAction(tr("&Restore on hit"), SLOT(memoryWriteRestoreSlot())));
auto memoryWriteMenu = makeMenu(DIcon("breakpoint_memory_write.png"), tr("Memory, Write"));
memoryWriteMenu->addAction(makeAction(DIcon("breakpoint_memory_singleshoot.png"), tr("&Singleshoot"), SLOT(memoryWriteSingleshootSlot())));
memoryWriteMenu->addAction(makeAction(DIcon("breakpoint_memory_restore_on_hit.png"), tr("&Restore on hit"), SLOT(memoryWriteRestoreSlot())));
//Breakpoint (remove memory) menu
auto memoryRemove = makeAction(tr("Remove &Memory"), SLOT(memoryRemoveSlot()));
auto memoryRemove = makeAction(DIcon("breakpoint_remove.png"), tr("Remove &Memory"), SLOT(memoryRemoveSlot()));
//Breakpoint menu
auto breakpointMenu = new MenuBuilder(this);

View File

@ -116,16 +116,20 @@ void HandlesView::handlesTableContextMenuSlot(const QPoint & pos)
{
StdTable & table = *mHandlesTable;
QMenu wMenu;
wMenu.addAction(mActionRefresh);
if(mHandlesTable->getRowCount() != 0)
wMenu.addAction(mActionCloseHandle);
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
table.setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
wMenu.addAction(mActionRefresh);
if(table.getRowCount())
{
wMenu.addSeparator();
wMenu.addMenu(&wCopyMenu);
wMenu.addAction(mActionCloseHandle);
table.setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
{
wMenu.addSeparator();
wMenu.addMenu(&wCopyMenu);
}
}
wMenu.exec(table.mapToGlobal(pos));
}
@ -134,14 +138,18 @@ void HandlesView::tcpConnectionsTableContextMenuSlot(const QPoint & pos)
{
StdTable & table = *mTcpConnectionsTable;
QMenu wMenu;
wMenu.addAction(mActionRefresh);
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
table.setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
wMenu.addAction(mActionRefresh);
if(table.getRowCount())
{
wMenu.addSeparator();
wMenu.addMenu(&wCopyMenu);
table.setupCopyMenu(&wCopyMenu);
if(wCopyMenu.actions().length())
{
wMenu.addSeparator();
wMenu.addMenu(&wCopyMenu);
}
}
wMenu.exec(table.mapToGlobal(pos));
}
@ -151,23 +159,24 @@ void HandlesView::privilegesTableContextMenuSlot(const QPoint & pos)
{
StdTable & table = *mPrivilegesTable;
QMenu wMenu;
bool isValid = (mPrivilegesTable->getRowCount() != 0 && mPrivilegesTable->getCellContent(mPrivilegesTable->getInitialSelection(), 1) != tr("Unknown"));
bool isValid = (table.getRowCount() != 0 && table.getCellContent(table.getInitialSelection(), 1) != tr("Unknown"));
wMenu.addAction(mActionRefresh);
if(isValid)
{
if(mPrivilegesTable->getCellContent(mPrivilegesTable->getInitialSelection(), 1) == tr("Enabled"))
if(table.getCellContent(table.getInitialSelection(), 1) == tr("Enabled"))
{
mActionDisablePrivilege->setText(tr("Disable Privilege: ") + mPrivilegesTable->getCellContent(mPrivilegesTable->getInitialSelection(), 0));
mActionDisablePrivilege->setText(tr("Disable Privilege: ") + table.getCellContent(table.getInitialSelection(), 0));
wMenu.addAction(mActionDisablePrivilege);
}
else
{
mActionEnablePrivilege->setText(tr("Enable Privilege: ") + mPrivilegesTable->getCellContent(mPrivilegesTable->getInitialSelection(), 0));
mActionEnablePrivilege->setText(tr("Enable Privilege: ") + table.getCellContent(table.getInitialSelection(), 0));
wMenu.addAction(mActionEnablePrivilege);
}
}
wMenu.addAction(mActionDisableAllPrivileges);
wMenu.addAction(mActionEnableAllPrivileges);
QMenu wCopyMenu(tr("&Copy"), this);
wCopyMenu.setIcon(DIcon("copy.png"));
table.setupCopyMenu(&wCopyMenu);

View File

@ -23,7 +23,7 @@
<x>0</x>
<y>0</y>
<width>868</width>
<height>23</height>
<height>21</height>
</rect>
</property>
<widget class="QMenu" name="menuFile">
@ -121,16 +121,16 @@
<addaction name="actioneStepOver"/>
<addaction name="actionseStepOver"/>
<addaction name="actionStepOverSource"/>
<addaction name="actionRtu"/>
<addaction name="actionTocnd"/>
<addaction name="actionAnimateOver"/>
<addaction name="separator"/>
<addaction name="actionRtr"/>
<addaction name="actioneRtr"/>
<addaction name="actionSkipNextInstruction"/>
<addaction name="actionInstrUndo"/>
<addaction name="actionRtu"/>
<addaction name="actionAnimateCommand"/>
<addaction name="menuTrace_record"/>
<addaction name="actionInstrUndo"/>
<addaction name="separator"/>
<addaction name="actionCommand"/>
<addaction name="separator"/>
@ -1021,16 +1021,28 @@
</property>
</action>
<action name="actionAnimateInto">
<property name="icon">
<iconset resource="../../resource.qrc">
<normaloff>:/icons/images/animateinto.png</normaloff>:/icons/images/animateinto.png</iconset>
</property>
<property name="text">
<string>Animate into</string>
</property>
</action>
<action name="actionAnimateOver">
<property name="icon">
<iconset resource="../../resource.qrc">
<normaloff>:/icons/images/animateover.png</normaloff>:/icons/images/animateover.png</iconset>
</property>
<property name="text">
<string>Animate over</string>
</property>
</action>
<action name="actionAnimateCommand">
<property name="icon">
<iconset resource="../../resource.qrc">
<normaloff>:/icons/images/animatecommand.png</normaloff>:/icons/images/animatecommand.png</iconset>
</property>
<property name="text">
<string>Animate command...</string>
</property>

View File

@ -58,7 +58,7 @@ void MemoryMapView::setupContextMenu()
connect(mYara, SIGNAL(triggered()), this, SLOT(yaraSlot()));
//Set PageMemory Rights
mPageMemoryRights = new QAction(tr("Set Page Memory Rights"), this);
mPageMemoryRights = new QAction(DIcon("memmap_set_page_memory_rights.png"), tr("Set Page Memory Rights"), this);
connect(mPageMemoryRights, SIGNAL(triggered()), this, SLOT(pageMemoryRights()));
//Switch View
@ -116,13 +116,13 @@ void MemoryMapView::setupContextMenu()
connect(mMemoryExecuteSingleshootToggle, SIGNAL(triggered()), this, SLOT(memoryExecuteSingleshootToggleSlot()));
//Allocate memory
mMemoryAllocate = new QAction(tr("&Allocate memory"), this);
mMemoryAllocate = new QAction(DIcon("memmap_alloc_memory.png"), tr("&Allocate memory"), this);
mMemoryAllocate->setShortcutContext(Qt::WidgetShortcut);
connect(mMemoryAllocate, SIGNAL(triggered()), this, SLOT(memoryAllocateSlot()));
this->addAction(mMemoryAllocate);
//Free memory
mMemoryFree = new QAction(tr("&Free memory"), this);
mMemoryFree = new QAction(DIcon("memmap_free_memory.png"), tr("&Free memory"), this);
mMemoryFree->setShortcutContext(Qt::WidgetShortcut);
connect(mMemoryFree, SIGNAL(triggered()), this, SLOT(memoryFreeSlot()));
this->addAction(mMemoryFree);

View File

@ -515,6 +515,7 @@ RegistersView::RegistersView(CPUWidget* parent, CPUMultiDump* multiDump) : QScro
wCM_Pop = setupAction(DIcon("arrow-small-up.png"), tr("Pop"), this);
wCM_Highlight = setupAction(DIcon("highlight.png"), tr("Highlight"), this);
mSwitchSIMDDispMode = new QMenu(tr("Change SIMD Register Display Mode"), this);
mSwitchSIMDDispMode->setIcon(DIcon("simdmode.png"));
SIMDHex = new QAction(tr("Hexadecimal"), mSwitchSIMDDispMode);
SIMDFloat = new QAction(tr("Float"), mSwitchSIMDDispMode);
SIMDDouble = new QAction(tr("Double"), mSwitchSIMDDispMode);

View File

@ -146,14 +146,14 @@ void SymbolView::setupContextMenu()
mModuleList->mSearchList->addAction(mDownloadAllSymbolsAction);
connect(mDownloadAllSymbolsAction, SIGNAL(triggered()), this, SLOT(moduleDownloadAllSymbols()));
mCopyPathAction = new QAction(tr("Copy File &Path"), this);
mCopyPathAction = new QAction(DIcon("copyfilepath.png"), tr("Copy File &Path"), this);
mCopyPathAction->setShortcutContext(Qt::WidgetWithChildrenShortcut);
this->addAction(mCopyPathAction);
mModuleList->mList->addAction(mCopyPathAction);
mModuleList->mSearchList->addAction(mCopyPathAction);
connect(mCopyPathAction, SIGNAL(triggered()), this, SLOT(moduleCopyPath()));
mBrowseInExplorer = new QAction(tr("Browse in Explorer"), this);
mBrowseInExplorer = new QAction(DIcon("browseinexplorer.png"), tr("Browse in Explorer"), this);
mBrowseInExplorer->setShortcutContext(Qt::WidgetWithChildrenShortcut);
this->addAction(mBrowseInExplorer);
mModuleList->mList->addAction(mBrowseInExplorer);
@ -173,21 +173,21 @@ void SymbolView::setupContextMenu()
mModuleList->mSearchList->addAction(mEntropyAction);
connect(mEntropyAction, SIGNAL(triggered()), this, SLOT(moduleEntropy()));
mModSetUserAction = new QAction(tr("Mark as &user module"), this);
mModSetUserAction = new QAction(DIcon("markasuser.png"), tr("Mark as &user module"), this);
mModSetUserAction->setShortcutContext(Qt::WidgetWithChildrenShortcut);
this->addAction(mModSetUserAction);
mModuleList->mList->addAction(mModSetUserAction);
mModuleList->mSearchList->addAction(mModSetUserAction);
connect(mModSetUserAction, SIGNAL(triggered()), this, SLOT(moduleSetUser()));
mModSetSystemAction = new QAction(tr("Mark as &system module"), this);
mModSetSystemAction = new QAction(DIcon("markassystem.png"), tr("Mark as &system module"), this);
mModSetSystemAction->setShortcutContext(Qt::WidgetWithChildrenShortcut);
this->addAction(mModSetSystemAction);
mModuleList->mList->addAction(mModSetSystemAction);
mModuleList->mSearchList->addAction(mModSetSystemAction);
connect(mModSetSystemAction, SIGNAL(triggered()), this, SLOT(moduleSetSystem()));
mModSetPartyAction = new QAction(tr("Mark as &party..."), this);
mModSetPartyAction = new QAction(DIcon("markasparty.png"), tr("Mark as &party..."), this);
mModSetPartyAction->setShortcutContext(Qt::WidgetWithChildrenShortcut);
this->addAction(mModSetPartyAction);
mModuleList->mList->addAction(mModSetPartyAction);

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 816 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 727 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 566 B

BIN
src/gui/images/guid.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 827 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 712 B

BIN
src/gui/images/simdmode.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 731 B

View File

@ -255,5 +255,18 @@
<file>images/database-import.png</file>
<file>images/lock.png</file>
<file>images/createthread.png</file>
<file>images/animatecommand.png</file>
<file>images/animateinto.png</file>
<file>images/animateover.png</file>
<file>images/browseinexplorer.png</file>
<file>images/markasparty.png</file>
<file>images/markasuser.png</file>
<file>images/markassystem.png</file>
<file>images/guid.png</file>
<file>images/analyzemodule.png</file>
<file>images/branchpreview.png</file>
<file>images/simdmode.png</file>
<file>images/breakpoint_exception_add.png</file>
<file>images/breakpoint_module_add.png</file>
</qresource>
</RCC>