summaryrefslogtreecommitdiffstats
path: root/examples/demo/qasteroids/toplevel.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/demo/qasteroids/toplevel.h')
-rw-r--r--examples/demo/qasteroids/toplevel.h79
1 files changed, 79 insertions, 0 deletions
diff --git a/examples/demo/qasteroids/toplevel.h b/examples/demo/qasteroids/toplevel.h
new file mode 100644
index 000000000..158363b08
--- /dev/null
+++ b/examples/demo/qasteroids/toplevel.h
@@ -0,0 +1,79 @@
+/*
+ * KAsteroids - Copyright (c) Martin R. Jones 1997
+ *
+ * Part of the KDE project
+ */
+
+#ifndef __KAST_TOPLEVEL_H__
+#define __KAST_TOPLEVEL_H__
+
+#include <qmainwindow.h>
+#include <qdict.h>
+#include <qmap.h>
+
+#include "view.h"
+
+
+class KALedMeter;
+class TQLCDNumber;
+
+class KAstTopLevel : public TQMainWindow
+{
+ Q_OBJECT
+public:
+ KAstTopLevel( TQWidget *parent=0, const char *name=0 );
+ virtual ~KAstTopLevel();
+
+private:
+ void playSound( const char *snd );
+ void readSoundMapping();
+ void doStats();
+
+protected:
+ virtual void showEvent( TQShowEvent * );
+ virtual void hideEvent( TQHideEvent * );
+ virtual void keyPressEvent( TQKeyEvent *event );
+ virtual void keyReleaseEvent( TQKeyEvent *event );
+
+private slots:
+ void slotNewGame();
+
+ void slotShipKilled();
+ void slotRockHit( int size );
+ void slotRocksRemoved();
+
+ void slotUpdateVitals();
+
+private:
+ KAsteroidsView *view;
+ TQLCDNumber *scoreLCD;
+ TQLCDNumber *levelLCD;
+ TQLCDNumber *shipsLCD;
+
+ TQLCDNumber *teleportsLCD;
+// TQLCDNumber *bombsLCD;
+ TQLCDNumber *brakesLCD;
+ TQLCDNumber *shieldLCD;
+ TQLCDNumber *shootLCD;
+ KALedMeter *powerMeter;
+
+ bool sound;
+ TQDict<TQString> soundDict;
+
+ // waiting for user to press Enter to launch a ship
+ bool waitShip;
+ bool isPaused;
+
+ int shipsRemain;
+ int score;
+ int level;
+ bool showHiscores;
+
+ enum Action { Launch, Thrust, RotateLeft, RotateRight, Shoot, Teleport,
+ Brake, Shield, Pause, NewGame };
+
+ TQMap<int,Action> actions;
+};
+
+#endif
+