1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
/****************************************************************************
** $Id: qt/examples/tetrix/qtetrix.h 2.3.1 edited 2001-01-26 $
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of an example program for Qt. This example
** program may be used, distributed and modified without limitation.
**
*****************************************************************************/
#ifndef QTETRIX_H
#define QTETRIX_H
#include "qtetrixb.h"
#include <qframe.h>
#include <qlcdnumber.h>
#include <qlabel.h>
#include <qpushbutton.h>
#include <qpainter.h>
class ShowNextPiece : public QFrame
{
Q_OBJECT
friend class QTetrix;
public:
ShowNextPiece( QWidget *parent=0, const char *name=0 );
public slots:
void drawNextSquare( int x, int y,QColor *color );
signals:
void update();
private:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
int blockWidth,blockHeight;
int xOffset,yOffset;
};
class QTetrix : public QWidget
{
Q_OBJECT
public:
QTetrix( QWidget *parent=0, const char *name=0 );
void startGame() { board->startGame(); }
public slots:
void gameOver();
void quit();
private:
void keyPressEvent( QKeyEvent *e ) { board->keyPressEvent(e); }
QTetrixBoard *board;
ShowNextPiece *showNext;
#ifndef QT_NO_LCDNUMBER
QLCDNumber *showScore;
QLCDNumber *showLevel;
QLCDNumber *showLines;
#else
QLabel *showScore;
QLabel *showLevel;
QLabel *showLines;
#endif
QPushButton *quitButton;
QPushButton *startButton;
QPushButton *pauseButton;
};
void drawTetrixButton( QPainter *, int x, int y, int w, int h,
const QColor *color );
#endif
|