GUI: resolved issue #136 (double click on breakpoint will follow in disassembler) + "toogle" --> "toggle"
This commit is contained in:
		
							parent
							
								
									e18b3735f3
								
							
						
					
					
						commit
						1e8a2772cb
					
				|  | @ -52,8 +52,11 @@ BreakpointsView::BreakpointsView(QWidget *parent) : QWidget(parent) | ||||||
|     // Signals/Slots
 |     // Signals/Slots
 | ||||||
|     connect(Bridge::getBridge(), SIGNAL(updateBreakpoints()), this, SLOT(reloadData())); |     connect(Bridge::getBridge(), SIGNAL(updateBreakpoints()), this, SLOT(reloadData())); | ||||||
|     connect(mHardBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(hardwareBPContextMenuSlot(const QPoint &))); |     connect(mHardBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(hardwareBPContextMenuSlot(const QPoint &))); | ||||||
|  |     connect(mHardBPTable, SIGNAL(doubleClickedSignal()), this, SLOT(doubleClickHardwareSlot())); | ||||||
|     connect(mSoftBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(softwareBPContextMenuSlot(const QPoint &))); |     connect(mSoftBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(softwareBPContextMenuSlot(const QPoint &))); | ||||||
|  |     connect(mSoftBPTable, SIGNAL(doubleClickedSignal()), this, SLOT(doubleClickSoftwareSlot())); | ||||||
|     connect(mMemBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(memoryBPContextMenuSlot(const QPoint &))); |     connect(mMemBPTable, SIGNAL(contextMenuSignal(const QPoint &)), this, SLOT(memoryBPContextMenuSlot(const QPoint &))); | ||||||
|  |     connect(mMemBPTable, SIGNAL(doubleClickedSignal()), this, SLOT(doubleClickMemorySlot())); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -250,12 +253,20 @@ void BreakpointsView::removeHardBPActionSlot() | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::removeAllHardBPActionSlot() | void BreakpointsView::removeAllHardBPActionSlot() | ||||||
| { | { | ||||||
| 
 |     DbgCmdExec("bphwc"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::enableDisableHardBPActionSlot() | void BreakpointsView::enableDisableHardBPActionSlot() | ||||||
| { | { | ||||||
|     Breakpoints::toogleBPByDisabling(bp_hardware, mHardBPTable->getCellContent(mHardBPTable->getInitialSelection(), 0).toULongLong(0, 16)); |     Breakpoints::toggleBPByDisabling(bp_hardware, mHardBPTable->getCellContent(mHardBPTable->getInitialSelection(), 0).toULongLong(0, 16)); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | void BreakpointsView::doubleClickHardwareSlot() | ||||||
|  | { | ||||||
|  |     GuiAddStatusBarMessage("double click!"); | ||||||
|  |     QString addrText=mHardBPTable->getCellContent(mHardBPTable->getInitialSelection(), 0); | ||||||
|  |     DbgCmdExecDirect(QString("disasm " + addrText).toUtf8().constData()); | ||||||
|  |     emit showCpu(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -348,12 +359,19 @@ void BreakpointsView::removeSoftBPActionSlot() | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::removeAllSoftBPActionSlot() | void BreakpointsView::removeAllSoftBPActionSlot() | ||||||
| { | { | ||||||
| 
 |     DbgCmdExec("bc"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::enableDisableSoftBPActionSlot() | void BreakpointsView::enableDisableSoftBPActionSlot() | ||||||
| { | { | ||||||
|     Breakpoints::toogleBPByDisabling(bp_normal, mSoftBPTable->getCellContent(mSoftBPTable->getInitialSelection(), 0).toULongLong(0, 16)); |     Breakpoints::toggleBPByDisabling(bp_normal, mSoftBPTable->getCellContent(mSoftBPTable->getInitialSelection(), 0).toULongLong(0, 16)); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | void BreakpointsView::doubleClickSoftwareSlot() | ||||||
|  | { | ||||||
|  |     QString addrText=mSoftBPTable->getCellContent(mSoftBPTable->getInitialSelection(), 0); | ||||||
|  |     DbgCmdExecDirect(QString("disasm " + addrText).toUtf8().constData()); | ||||||
|  |     emit showCpu(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -446,10 +464,17 @@ void BreakpointsView::removeMemBPActionSlot() | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::removeAllMemBPActionSlot() | void BreakpointsView::removeAllMemBPActionSlot() | ||||||
| { | { | ||||||
| 
 |     DbgCmdExec("bpmc"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void BreakpointsView::enableDisableMemBPActionSlot() | void BreakpointsView::enableDisableMemBPActionSlot() | ||||||
| { | { | ||||||
|     Breakpoints::toogleBPByDisabling(bp_memory, mMemBPTable->getCellContent(mMemBPTable->getInitialSelection(), 0).toULongLong(0, 16)); |     Breakpoints::toggleBPByDisabling(bp_memory, mMemBPTable->getCellContent(mMemBPTable->getInitialSelection(), 0).toULongLong(0, 16)); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | void BreakpointsView::doubleClickMemorySlot() | ||||||
|  | { | ||||||
|  |     QString addrText=mMemBPTable->getCellContent(mMemBPTable->getInitialSelection(), 0); | ||||||
|  |     DbgCmdExecDirect(QString("disasm " + addrText).toUtf8().constData()); | ||||||
|  |     emit showCpu(); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -20,6 +20,7 @@ public: | ||||||
|     void setupMemBPRightClickContextMenu(); |     void setupMemBPRightClickContextMenu(); | ||||||
| 
 | 
 | ||||||
| signals: | signals: | ||||||
|  |     void showCpu(); | ||||||
|      |      | ||||||
| public slots: | public slots: | ||||||
|     void reloadData(); |     void reloadData(); | ||||||
|  | @ -29,18 +30,21 @@ public slots: | ||||||
|     void removeHardBPActionSlot(); |     void removeHardBPActionSlot(); | ||||||
|     void removeAllHardBPActionSlot(); |     void removeAllHardBPActionSlot(); | ||||||
|     void enableDisableHardBPActionSlot(); |     void enableDisableHardBPActionSlot(); | ||||||
|  |     void doubleClickHardwareSlot(); | ||||||
| 
 | 
 | ||||||
|     // Software
 |     // Software
 | ||||||
|     void softwareBPContextMenuSlot(const QPoint & pos); |     void softwareBPContextMenuSlot(const QPoint & pos); | ||||||
|     void removeSoftBPActionSlot(); |     void removeSoftBPActionSlot(); | ||||||
|     void removeAllSoftBPActionSlot(); |     void removeAllSoftBPActionSlot(); | ||||||
|     void enableDisableSoftBPActionSlot(); |     void enableDisableSoftBPActionSlot(); | ||||||
|  |     void doubleClickSoftwareSlot(); | ||||||
| 
 | 
 | ||||||
|     // Memory
 |     // Memory
 | ||||||
|     void memoryBPContextMenuSlot(const QPoint & pos); |     void memoryBPContextMenuSlot(const QPoint & pos); | ||||||
|     void removeMemBPActionSlot(); |     void removeMemBPActionSlot(); | ||||||
|     void removeAllMemBPActionSlot(); |     void removeAllMemBPActionSlot(); | ||||||
|     void enableDisableMemBPActionSlot(); |     void enableDisableMemBPActionSlot(); | ||||||
|  |     void doubleClickMemorySlot(); | ||||||
| 
 | 
 | ||||||
| private: | private: | ||||||
|     QVBoxLayout* mVertLayout; |     QVBoxLayout* mVertLayout; | ||||||
|  |  | ||||||
|  | @ -47,6 +47,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi | ||||||
|     mBreakpointsView->setWindowTitle("Breakpoints"); |     mBreakpointsView->setWindowTitle("Breakpoints"); | ||||||
|     mBreakpointsView->setWindowIcon(QIcon(":/icons/images/breakpoint.png")); |     mBreakpointsView->setWindowIcon(QIcon(":/icons/images/breakpoint.png")); | ||||||
|     mBreakpointsView->hide(); |     mBreakpointsView->hide(); | ||||||
|  |     connect(mBreakpointsView, SIGNAL(showCpu()), this, SLOT(displayCpuWidget())); | ||||||
| 
 | 
 | ||||||
|     // Memory Map View
 |     // Memory Map View
 | ||||||
|     mMemMapView = new MemoryMapView(); |     mMemMapView = new MemoryMapView(); | ||||||
|  |  | ||||||
|  | @ -237,7 +237,7 @@ void Breakpoints::removeBP(BPXTYPE type, uint_t va) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  * @brief       Toogle the given breakpoint by disabling it when enabled.@n |  * @brief       Toggle the given breakpoint by disabling it when enabled.@n | ||||||
|  *              If breakpoint is initially active and enabled, it will be disabled.@n |  *              If breakpoint is initially active and enabled, it will be disabled.@n | ||||||
|  *              If breakpoint is initially active and disabled, it will stay disabled.@n |  *              If breakpoint is initially active and disabled, it will stay disabled.@n | ||||||
|  * |  * | ||||||
|  | @ -245,7 +245,7 @@ void Breakpoints::removeBP(BPXTYPE type, uint_t va) | ||||||
|  * |  * | ||||||
|  * @return      Nothing. |  * @return      Nothing. | ||||||
|  */ |  */ | ||||||
| void Breakpoints::toogleBPByDisabling(BRIDGEBP bp) | void Breakpoints::toggleBPByDisabling(BRIDGEBP bp) | ||||||
| { | { | ||||||
|     if(bp.enabled == true) |     if(bp.enabled == true) | ||||||
|         disableBP(bp); |         disableBP(bp); | ||||||
|  | @ -254,7 +254,7 @@ void Breakpoints::toogleBPByDisabling(BRIDGEBP bp) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  * @brief       Toogle the given breakpoint by disabling it when enabled.@n |  * @brief       Toggle the given breakpoint by disabling it when enabled.@n | ||||||
|  *              If breakpoint is initially active and enabled, it will be disabled.@n |  *              If breakpoint is initially active and enabled, it will be disabled.@n | ||||||
|  *              If breakpoint is initially active and disabled, it will stay disabled.@n |  *              If breakpoint is initially active and disabled, it will stay disabled.@n | ||||||
|  *              If breakpoint was previously removed, this method has no effect.@n |  *              If breakpoint was previously removed, this method has no effect.@n | ||||||
|  | @ -264,7 +264,7 @@ void Breakpoints::toogleBPByDisabling(BRIDGEBP bp) | ||||||
|  * |  * | ||||||
|  * @return      Nothing. |  * @return      Nothing. | ||||||
|  */ |  */ | ||||||
| void Breakpoints::toogleBPByDisabling(BPXTYPE type, uint_t va) | void Breakpoints::toggleBPByDisabling(BPXTYPE type, uint_t va) | ||||||
| { | { | ||||||
|     int wI = 0; |     int wI = 0; | ||||||
|     BPMAP wBPList; |     BPMAP wBPList; | ||||||
|  | @ -277,7 +277,7 @@ void Breakpoints::toogleBPByDisabling(BPXTYPE type, uint_t va) | ||||||
|     { |     { | ||||||
|         if(wBPList.bp[wI].addr == va) |         if(wBPList.bp[wI].addr == va) | ||||||
|         { |         { | ||||||
|             toogleBPByDisabling(wBPList.bp[wI]); |             toggleBPByDisabling(wBPList.bp[wI]); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|     if(wBPList.count) |     if(wBPList.count) | ||||||
|  | @ -319,7 +319,7 @@ BPXSTATE Breakpoints::BPState(BPXTYPE type, uint_t va) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  * @brief       Toogle the given breakpoint by disabling it when enabled.@n |  * @brief       Toggle the given breakpoint by disabling it when enabled.@n | ||||||
|  *              If breakpoint is initially active and enabled, it will be disabled.@n |  *              If breakpoint is initially active and enabled, it will be disabled.@n | ||||||
|  *              If breakpoint is initially active and disabled, it will stay disabled.@n |  *              If breakpoint is initially active and disabled, it will stay disabled.@n | ||||||
|  *              If breakpoint was previously removed, this method has no effect.@n |  *              If breakpoint was previously removed, this method has no effect.@n | ||||||
|  | @ -329,7 +329,7 @@ BPXSTATE Breakpoints::BPState(BPXTYPE type, uint_t va) | ||||||
|  * |  * | ||||||
|  * @return      Nothing. |  * @return      Nothing. | ||||||
|  */ |  */ | ||||||
| void Breakpoints::toogleBPByRemoving(BPXTYPE type, uint_t va) | void Breakpoints::toggleBPByRemoving(BPXTYPE type, uint_t va) | ||||||
| { | { | ||||||
|     int wI = 0; |     int wI = 0; | ||||||
|     BPMAP wBPList; |     BPMAP wBPList; | ||||||
|  |  | ||||||
|  | @ -29,10 +29,10 @@ public: | ||||||
|     static void removeBP(BRIDGEBP bp); |     static void removeBP(BRIDGEBP bp); | ||||||
|     static void removeBP(BPXTYPE type, uint_t va); |     static void removeBP(BPXTYPE type, uint_t va); | ||||||
| 
 | 
 | ||||||
|     static void toogleBPByDisabling(BRIDGEBP bp); |     static void toggleBPByDisabling(BRIDGEBP bp); | ||||||
|     static void toogleBPByDisabling(BPXTYPE type, uint_t va); |     static void toggleBPByDisabling(BPXTYPE type, uint_t va); | ||||||
| 
 | 
 | ||||||
|     static void toogleBPByRemoving(BPXTYPE type, uint_t va); |     static void toggleBPByRemoving(BPXTYPE type, uint_t va); | ||||||
|      |      | ||||||
|     static BPXSTATE BPState(BPXTYPE type, uint_t va); |     static BPXSTATE BPState(BPXTYPE type, uint_t va); | ||||||
| signals: | signals: | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue