add non-functional c1 Hatchery
[openc2e.git] / tools / braininavat / braininavat.h
blobfaa8b09de9d344a1383e1adc6190384f931eadd4
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 _BRAININAVAT_H
18 #define _BRAININAVAT_H
20 #include "Creature.h"
22 #include <QMainWindow>
24 class BrainInAVat : public QMainWindow {
25 Q_OBJECT
27 private:
28 c2eCreature *ourCreature;
29 class BrainView *ourView;
30 class QScrollArea *scrollArea;
32 public:
33 BrainInAVat();
34 ~BrainInAVat();
35 c2eCreature *getCreature() { return ourCreature; }
37 private slots:
38 void open();
39 void openRecentFile();
40 void about();
41 void tick();
42 void setSomeVar();
43 void setNoThreshold();
44 void setNonZeroThreshold();
45 void setShowNone();
46 void toggleSleep();
48 private:
49 void loadFile(const QString &fileName);
50 void setCurrentFile(const QString &fileName);
51 void updateRecentFileActions();
52 QString strippedName(const QString &fullFileName);
54 QString curFile;
56 QMenu *fileMenu, *recentFilesMenu, *viewMenu, *helpMenu, *controlMenu;
57 QAction *openAct, *exitAct, *aboutAct, *separatorAct, *tickAct, *neuronActs[8], *dendriteActs[8], *noThresholdAct, *nonZeroThresholdAct, *showNoneAct, *sleepToggleAct;
58 QToolBar *controlToolbar;
59 class QActionGroup *neuronActGroup, *dendriteActGroup, *thresholdActGroup;
61 enum { MaxRecentFiles = 5 };
62 QAction *recentFileActs[MaxRecentFiles];
65 #endif