KDevelop API Documentation

languages/cpp/debugger/gdbbreakpointwidget.h

Go to the documentation of this file.
00001 /*************************************************************************** 00002 begin : Tue May 13 2003 00003 copyright : (C) 2003 by John Birch 00004 email : jbb@kdevelop.org 00005 ***************************************************************************/ 00006 00007 /*************************************************************************** 00008 * * 00009 * This program is free software; you can redistribute it and/or modify * 00010 * it under the terms of the GNU General Public License as published by * 00011 * the Free Software Foundation; either version 2 of the License, or * 00012 * (at your option) any later version. * 00013 * * 00014 ***************************************************************************/ 00015 00016 #ifndef _GDBBreakpointWidget_H_ 00017 #define _GDBBreakpointWidget_H_ 00018 00019 #include <qhbox.h> 00020 00021 class QDomElement; 00022 class QToolButton; 00023 00024 /***************************************************************************/ 00025 /***************************************************************************/ 00026 /***************************************************************************/ 00027 00028 namespace GDBDebugger 00029 { 00030 class Breakpoint; 00031 class BreakpointTableRow; 00032 class GDBTable; 00033 00034 class GDBBreakpointWidget : public QHBox 00035 { 00036 Q_OBJECT 00037 00038 public: 00039 GDBBreakpointWidget( QWidget* parent=0, const char* name=0 ); 00040 virtual ~GDBBreakpointWidget(); 00041 00042 void reset(); 00043 00044 void savePartialProjectSession(QDomElement* el); 00045 void restorePartialProjectSession(const QDomElement* el); 00046 00047 00048 public slots: 00049 // Connected to from the editor widget: 00050 void slotToggleBreakpoint(const QString &filename, int lineNum); 00051 void slotToggleBreakpointEnabled(const QString &fileName, int lineNum); 00052 00053 // Connected to from the variable widget: 00054 void slotToggleWatchpoint(const QString &varName); 00055 00056 // Connected to from the dbgcontroller: 00057 void slotSetPendingBPs(); 00058 void slotUnableToSetBPNow(int BPNo); 00059 void slotParseGDBBrkptList(char *str); 00060 void slotParseGDBBreakpointSet(char *str, int BPKey); 00061 00062 void slotRefreshBP(const QString &filename); 00063 00064 private slots: 00065 void slotRemoveBreakpoint(); 00066 void slotRemoveAllBreakpoints(); 00067 void slotEditBreakpoint(const QString &fileName, int lineNum); 00068 void slotEditBreakpoint(); 00069 void slotAddBreakpoint(); 00070 void slotAddBlankBreakpoint(int idx); 00071 void slotRowSelected(int row, int col, int button, const QPoint & mousePos); 00072 void slotEditRow(int row, int col, const QPoint & mousePos); 00073 void slotNewValue(int row, int col); 00074 00075 signals: 00076 void publishBPState(const Breakpoint& brkpt); 00077 void refreshBPState(const Breakpoint& brkpt); 00078 void gotoSourcePosition(const QString &fileName, int lineNum); 00079 void clearAllBreakpoints(); 00080 00081 private: 00082 BreakpointTableRow* find(Breakpoint *bp); 00083 BreakpointTableRow* findId(int id); 00084 BreakpointTableRow* findKey(int BPKey); 00085 00086 void setActive(); 00087 BreakpointTableRow* addBreakpoint(Breakpoint *bp); 00088 void removeBreakpoint(BreakpointTableRow* btr); 00089 00090 private: 00091 GDBTable* m_table; 00092 00093 QToolButton* m_add; 00094 QToolButton* m_delete; 00095 QToolButton* m_edit; 00096 QToolButton* m_removeAll; 00097 }; 00098 00099 /***************************************************************************/ 00100 /***************************************************************************/ 00101 /***************************************************************************/ 00102 00103 } 00104 00105 #endif
KDE Logo
This file is part of the documentation for KDevelop Version 3.0.4.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Oct 6 17:39:01 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003