X-Git-Url: https://git.siccegge.de//index.cgi?a=blobdiff_plain;f=src%2Fgui%2FMainwindow.hxx;h=ba0d8b4944529138ff78fbf2e9b995133c677dab;hb=440c4598343d9e46d8963f7753c122b121826334;hp=3892ebd61ad29572a9517f9a421a9f0c35f12d8b;hpb=f3a965524eae344fbd25ba486e9fa32e1262fcc4;p=frida%2Ffrida.git diff --git a/src/gui/Mainwindow.hxx b/src/gui/Mainwindow.hxx index 3892ebd..ba0d8b4 100644 --- a/src/gui/Mainwindow.hxx +++ b/src/gui/Mainwindow.hxx @@ -1,35 +1,67 @@ +#ifndef INCLUDE__Mainwindow_hxx_ +#define INCLUDE__Mainwindow_hxx_ + #include +#include + #include #include #include #include #include -#include "disassembler/Disassembler.hxx" +#include + +class Disassembler; +class Function; +class InformationManager; +class FunctionWidget; +class BasicBlockWidget; +class ScriptingDock; class Mainwindow : public QMainWindow { - Q_OBJECT + Q_OBJECT public: - Mainwindow(const std::string& filename = ""); + Mainwindow(InformationManager* mgr); + +public Q_SLOTS: + void switchMainPlaneToAddress(uint64_t); + void requestNewFunctionByAddress(uint64_t address); + private: - void openBinary(const std::string& filename); + void addFunction(Function* fun); + void setGlobalHotkeys(); + + QTextEdit *textEdit; + QPushButton *quitButton; + QMenu *fileMenu; - void populateSymbolInformation(const std::string& sym); + QTabWidget * tabwidget; + QListWidget * listWidget; + QStackedWidget * stackedWidget; + QDockWidget * dockWidget; + ScriptingDock * scripting; - QTextEdit *textEdit; - QPushButton *quitButton; - QMenu *fileMenu; + QAction *exitAction; + QAction *openAction; + QAction *saveAction; - QTabWidget * tabwidget; - QListWidget * listWidget; - QStackedWidget * stackedWidget; - QDockWidget * dockWidget; + std::map blocks; + std::map functions; + std::map objects_list; + std::map objects_list_by_address; - QAction *exitAction; - QAction *openAction; + InformationManager* manager; + log4cxx::LoggerPtr logger; - std::shared_ptr disassembler; -private slots: - void quit(); - void open(); +private Q_SLOTS: + void quit(); + void open(); + void save(); + void switchMainPlane(int); + void showListContextMenu(const QPoint&); + void requestNewFunction(); + void renameFunction(Function* function); }; + +#endif /* INCLUDE__Mainwindow_hxx_ */