]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveBase/AliEveMainWindow.h
Resolving all symbols in the library
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveMainWindow.h
1 // Author: Mihai Niculescu 2013
2
3 /**************************************************************************
4  * Copyright(c) 1998-2009, ALICE Experiment at CERN, all rights reserved. *
5  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
6  * full copyright notice.                                                 *
7  **************************************************************************/
8
9 #ifndef AliEveMainWindow_H
10 #define AliEveMainWindow_H
11
12 #include <TGFrame.h>
13
14 class TEveManager;
15 class TGMenuBar;
16 class TGPicturePool;
17 class TGPopupMenu;
18 class TGToolBar;
19 class AliEveMainWindow;
20 class AliEveFileDialog;
21
22 // AliEveMainWindow
23 //
24
25 class AliEveMainWindow : public TGMainFrame
26 {
27 public:
28     AliEveMainWindow(const char* title, UInt_t width=800, UInt_t height=600);
29     ~AliEveMainWindow();
30 // Items IDs for MenuBar
31 enum MENU_ITEM_IDS
32 {   // File Menu
33     MENU_FILE_OPEN=0,
34     MENU_FILE_OPEN_URL,
35     MENU_FILE_OPEN_CONNECTION,
36     MENU_FILE_EXPORT_VIEWS,
37     MENU_FILE_EXIT,
38     // Edit Menu
39     MENU_EDIT_UNDO,
40     MENU_EDIT_REDO,
41     MENU_EDIT_CUT,
42     MENU_EDIT_COPY,
43     MENU_EDIT_PASTE,
44     MENU_EDIT_DELETE,
45     MENU_EDIT_PROP,
46     // View Menu
47     MENU_VIEW_TOOLBAR_MAIN,
48     MENU_VIEW_TOOLBAR_NAV, // event navigation toolbar
49     MENU_VIEW_TOOLBAR_PROP, // Properties Sidebar - event info, objects list, etc...
50     MENU_VIEW_TOOLBAR_HIST, // History sidebar
51     MENU_VIEW_RELOAD,
52     MENU_VIEW_ZOOM_IN,
53     MENU_VIEW_ZOOM_OUT,
54     MENU_VIEW_ZOOM_RESET,
55     // Go Menu
56     MENU_GO_NEXT_EVENT,
57     MENU_GO_PREV_EVENT,
58     MENU_GO_FIRST_EVENT,
59     MENU_GO_LAST_EVENT,
60     MENU_GO_PLAY,
61     // History Menu
62     MENU_HIST_SHOW_ALL,
63     MENU_HIST_CLEAR_RECENT,
64     // Tools Menu
65     MENU_TOOLS_MACROS,
66     MENU_TOOLS_QA,
67     // Help Menu
68     MENU_HELP_CONTENTS,
69     MENU_HELP_ABOUT
70 };
71
72 public: // SLOTS
73     void onMenuFileItem(UInt_t id);
74     void onMenuEditItem(UInt_t id);
75     void onMenuViewItem(UInt_t id);
76     void onMenuGoItem(UInt_t id);
77
78 protected:
79     void setupMenus();
80     void setupToolbars();
81
82     void loadFiles();
83
84 private:
85     AliEveMainWindow(const AliEveMainWindow& other);// Not implemented
86     AliEveMainWindow& operator=(const AliEveMainWindow& other);
87
88
89     // Menubar
90     TGMenuBar* fMenuBar;
91     TGPopupMenu *fMenuFile;
92     TGPopupMenu *fMenuEdit;
93     TGPopupMenu *fMenuView;
94     TGPopupMenu *fMenuViewToolbars;
95     TGPopupMenu *fMenuViewSidebars;
96     TGPopupMenu *fMenuGo;
97     TGPopupMenu *fMenuTools;
98     TGPopupMenu *fMenuHelp;
99
100     // Toolbar
101     TGToolBar *fToolBar;
102
103     TGPicturePool* fPicturePool;
104
105 //    TEveManager* fEve;
106     AliEveFileDialog* fFileDialog;
107
108     ClassDef(AliEveMainWindow, 0); // Short description.
109 };
110
111 #endif
112