X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fgui%2FMainwindow.hxx;h=a3bd4bdfa88ff354c0ee09a557ceb4d6d8c668c3;hp=efc7d99bd10facf51483c8ba5d3831fad4f427c6;hb=eaea9a6612e5dc13b5fda28e943e632e3de713da;hpb=e483d95e6b01bc5c6b97bb596409db0b35e213f7 diff --git a/src/gui/Mainwindow.hxx b/src/gui/Mainwindow.hxx index efc7d99..a3bd4bd 100644 --- a/src/gui/Mainwindow.hxx +++ b/src/gui/Mainwindow.hxx @@ -3,54 +3,65 @@ #include #include -#include #include #include #include -#include +#include #include #include -#include "disassembler/Disassembler.hxx" -#include "widgets/BasicBlockWidget.hxx" -#include "widgets/ScriptingDock.hxx" -#include "core/InformationManager.hxx" +class Disassembler; +class Function; +class InformationManager; +class FunctionWidget; +class BasicBlockWidget; +class ScriptingDock; class Mainwindow : public QMainWindow { Q_OBJECT public: Mainwindow(InformationManager* mgr); +public Q_SLOTS: + void switchMainPlaneToAddress(uint64_t); + void requestNewFunctionByAddress(uint64_t address); + private: void addFunction(Function* fun); + void setGlobalHotkeys(); QTextEdit *textEdit; QPushButton *quitButton; QMenu *fileMenu; QTabWidget * tabwidget; - QListWidget * listWidget; + QTreeWidget * listWidget; QStackedWidget * stackedWidget; QDockWidget * dockWidget; ScriptingDock * scripting; QAction *exitAction; QAction *openAction; + QAction *saveAction; std::map blocks; - std::map objects_list; - std::set functions; - InformationManager* manager; + std::map functions; + std::map objects_list; + std::map objects_list_by_address; + InformationManager* manager; log4cxx::LoggerPtr logger; + private Q_SLOTS: void quit(); void open(); - void switchMainPlane(int); + void save(); + void switchMainPlane(QTreeWidgetItem* item); void showListContextMenu(const QPoint&); void requestNewFunction(); + void renameFunction(Function* function); }; #endif /* INCLUDE__Mainwindow_hxx_ */