tetrixboard.h Example File
script/tetrix/tetrixboard.h
#ifndef TETRIXBOARD_H
#define TETRIXBOARD_H
#include <QTimer>
#include <QFrame>
#include <QPointer>
class QLabel;
class TetrixBoard : public QFrame
{
Q_OBJECT
Q_PROPERTY(QObject* timer READ getTimer)
Q_PROPERTY(QWidget* nextPieceLabel WRITE setNextPieceLabel)
public:
TetrixBoard(QWidget *parent = 0);
void setNextPieceLabel(QWidget *label);
void setBoardWidth(int width);
void setBoardHeight(int height);
QSize minimumSizeHint() const;
QObject *getTimer();
signals:
void scoreChanged(int score);
void levelChanged(int level);
void linesRemovedChanged(int numLines);
#if !defined(Q_MOC_RUN)
private:
#endif
void keyPressed(int key);
void paintRequested(QPainter *painter);
void paintNextPieceRequested(QPainter *painter);
protected:
void paintEvent(QPaintEvent *event);
void keyPressEvent(QKeyEvent *event);
protected slots:
void showNextPiece(int width, int height);
void drawPauseScreen(QPainter *painter);
void drawSquare(QPainter *painter, int x, int y, int shape);
private:
enum { BoardWidth = 10, BoardHeight = 22 };
int squareWidth() { return contentsRect().width() / BoardWidth; }
int squareHeight() { return contentsRect().height() / BoardHeight; }
QTimer *timer;
QPointer<QLabel> nextPieceLabel;
};
#endif
Copyright © 2008 Nokia Corporation and/or its subsidiary(-ies) |
Trademarks |
Qt 4.4.3 |