X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fgui%2FMainwindow.hxx;h=179a9c40ac5f6aacf72972883922504a6f7e3a01;hp=adfe71e47a3fc0803b23245bca3498e95dc8cc5b;hb=26ff0a6f5b4ea19657f851a82a8d679f10d19edb;hpb=0f91922e40640e00f1208aee5d8c968a698c5d31 diff --git a/src/gui/Mainwindow.hxx b/src/gui/Mainwindow.hxx index adfe71e..179a9c4 100644 --- a/src/gui/Mainwindow.hxx +++ b/src/gui/Mainwindow.hxx @@ -1,33 +1,61 @@ +#ifndef INCLUDE__Mainwindow_hxx_ +#define INCLUDE__Mainwindow_hxx_ + #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 Mainwindow : public QMainWindow { - Q_OBJECT + Q_OBJECT public: - Mainwindow(); + Mainwindow(InformationManager* mgr); + private: - void populateSymbolInformation(const std::string& sym); + void addFunction(Function* fun); + void setGlobalHotkeys(); + + QTextEdit *textEdit; + QPushButton *quitButton; + QMenu *fileMenu; - QTextEdit *textEdit; - QPushButton *quitButton; - QMenu *fileMenu; + QTabWidget * tabwidget; + QListWidget * listWidget; + QStackedWidget * stackedWidget; + QDockWidget * dockWidget; + ScriptingDock * scripting; - QTabWidget * tabwidget; - QListWidget * listWidget; - QStackedWidget * stackedWidget; - QDockWidget * dockWidget; + QAction *exitAction; + QAction *openAction; - QAction *exitAction; - QAction *openAction; + std::map blocks; + std::map objects_list; + std::map objects_list_by_address; + std::set functions; + InformationManager* manager; - std::shared_ptr disassembler; -private slots: - void quit(); - void open(); + log4cxx::LoggerPtr logger; +public Q_SLOTS: + void switchMainPlaneToAddress(uint64_t); +private Q_SLOTS: + void quit(); + void open(); + void switchMainPlane(int); + void showListContextMenu(const QPoint&); + void requestNewFunction(); + void renameFunction(QListWidgetItem * item); }; + +#endif /* INCLUDE__Mainwindow_hxx_ */