| //===-- TVApplication.h - Main application class for llvm-tv -----*- C++ -*--=// |
| // |
| // The gui for llvm-tv. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef TVAPPLICATION_H |
| #define TVAPPLICATION_H |
| |
| #include "TVSnapshotList.h" |
| #include "wx/wx.h" |
| #include <string> |
| #include <vector> |
| |
| ///==---------------------------------------------------------------------==/// |
| |
| namespace llvm { |
| class Function; |
| class Module; |
| } |
| |
| class TVFrame; |
| class TVTreeItemData; |
| class ItemDisplayer; |
| |
| |
| /// FatalErrorBox - pop up an error message and quit. |
| /// |
| void FatalErrorBox (const std::string msg); |
| |
| /// TVApplication - This class shows a window containing a status bar and a menu |
| /// bar, and a list of files from a directory, that can be refreshed |
| /// using a menu item. |
| /// |
| class TVApplication : public wxApp { |
| TVFrame *myFrame; |
| std::vector<wxWindow *> allMyWindows; |
| std::vector<ItemDisplayer *> allMyDisplayers; |
| TVSnapshotList *snapshotList; |
| |
| public: |
| bool OnInit (); |
| void GoodbyeFrom (wxWindow *dyingWindow); |
| void ReceivedSignal (); |
| template <class Grapher> void OpenGraphView(TVTreeItemData *item); |
| void Quit (); |
| TVSnapshotList* getSnapshotList() { return snapshotList; } |
| }; |
| |
| DECLARE_APP (TVApplication) |
| |
| #endif // TVAPPLICATION_H |