add a hack to deal with ACTV on compound agents in c1/c2
[openc2e.git] / qtgui / qtopenc2e.h
blob95b1e4e18b568e9208551f5cb91abe3a19c8e9e5
1 /*
2 This program is free software; you can redistribute it and/or modify
3 it under the terms of the GNU General Public License as published by
4 the Free Software Foundation; either version 2 of the License, or
5 (at your option) any later version.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License along
13 with this program; if not, write to the Free Software Foundation, Inc.,
14 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 #ifndef _QTOPENC2E_H
18 #define _QTOPENC2E_H
20 #include <QMainWindow>
21 #include <boost/shared_ptr.hpp>
22 #include "AgentRef.h"
24 class QtOpenc2e : public QMainWindow {
25 Q_OBJECT
27 public:
28 QtOpenc2e(boost::shared_ptr<class QtBackend>);
29 ~QtOpenc2e();
31 class Creature *getSelectedCreature();
33 signals:
34 void ticked();
35 void creatureTicked();
36 void creatureChanged();
38 private slots:
39 void tick();
41 void onCreatureChange();
42 void updateCreaturesMenu();
43 void selectCreature();
44 void updateMenus();
46 void about();
48 void showAgentInjector();
49 void showBrainViewer();
51 void toggleShowMap();
52 void toggleShowScrollbars();
53 void toggleFastSpeed();
54 void toggleDisplayUpdates();
55 void toggleAutokill();
56 void togglePause();
57 void toggleMute();
59 void newNorn();
61 private:
62 QToolBar *maintoolbar;
63 QMenu *fileMenu, *viewMenu, *controlMenu, *debugMenu, *toolsMenu, *creaturesMenu, *helpMenu;
64 QAction *exitAct, *aboutAct, *agentInjectorAct, *brainViewerAct;
65 QAction *showMapAct, *newNornAct;
66 QAction *pauseAct, *muteAct, *fastSpeedAct, *displayUpdatesAct, *autokillAct, *toggleScrollbarsAct;
68 class AgentInjector *agentInjector;
69 class BrainViewer *brainViewer;
70 class CreatureGrapher *creatureGrapher;
71 class QDockWidget *creatureGrapherDock;
73 class openc2eView *viewport;
75 AgentRef selectedcreature;
76 std::string oldcreaturename;
79 #endif