author | zecke <zecke> | 2004-02-17 16:24:32 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-02-17 16:24:32 (UTC) |
commit | 62b3979c6b23627eeca3b89f6feb491cdab97b08 (patch) (side-by-side diff) | |
tree | 8545969e2a2bf63a618b50e4b0d8fbf7f73bedbd /noncore/games/zlines/prompt.cpp | |
parent | 1207607ebbc59841718b79508fc222cb4eee9fde (diff) | |
download | opie-62b3979c6b23627eeca3b89f6feb491cdab97b08.zip opie-62b3979c6b23627eeca3b89f6feb491cdab97b08.tar.gz opie-62b3979c6b23627eeca3b89f6feb491cdab97b08.tar.bz2 |
Add the zLines port to Opie
Diffstat (limited to 'noncore/games/zlines/prompt.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/games/zlines/prompt.cpp | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/noncore/games/zlines/prompt.cpp b/noncore/games/zlines/prompt.cpp new file mode 100644 index 0000000..2834937 --- a/dev/null +++ b/noncore/games/zlines/prompt.cpp @@ -0,0 +1,89 @@ +/*************************************************************************** + prompt.cpp - description + ------------------- + begin : Fri May 19 2000 + copyright : (C) 2000 by Roman Merzlyakov + email : roman@sbrf.barrt.ru + copyright : (C) 2000 by Roman Razilov + email : Roman.Razilov@gmx.de + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ +#include <qpainter.h> +#include "prompt.h" + +LinesPrompt::LinesPrompt( BallPainter * abPainter, QWidget* parent, const char* name ) + : QWidget( parent, name ) +{ + + bPainter = abPainter; + + setFocusPolicy( NoFocus ); + setBackgroundColor( gray ); + + setMouseTracking( FALSE ); + setFixedSize(wPrompt(), hPrompt()); + + PromptEnabled = true; + cb[0]=NOBALL; + cb[1]=NOBALL; + cb[2]=NOBALL; +} + +LinesPrompt::~LinesPrompt() +{ +} + +int LinesPrompt::width() { return CELLSIZE * 3 ; } +int LinesPrompt::height() { return CELLSIZE ; } + +int LinesPrompt::wPrompt() { return CELLSIZE * 3 ; } +int LinesPrompt::hPrompt() { return CELLSIZE ; } + +void LinesPrompt::paintEvent( QPaintEvent* ) +{ + QPainter paint( this ); + if(PromptEnabled){ + paint.drawPixmap(0, 0, *(bPainter->GetNormalBall(cb[0])) ); + paint.drawPixmap(CELLSIZE, 0, *(bPainter->GetNormalBall(cb[1])) ); + paint.drawPixmap(2*CELLSIZE, 0, *(bPainter->GetNormalBall(cb[2])) ); + } + else{ + paint.drawPixmap(0, 0, *(bPainter->GetBackgroundPix()) ); + paint.drawPixmap(CELLSIZE, 0, *(bPainter->GetBackgroundPix()) ); + paint.drawPixmap(2*CELLSIZE, 0, *(bPainter->GetBackgroundPix()) ); + } +} + +/* + Handles mouse press events for the LinesPrompt widget. +*/ +void LinesPrompt::mousePressEvent( QMouseEvent* e ) +{ + emit PromptPressed(); +} + +void LinesPrompt::SetBalls( int *pcb ) +{ + for (int i = 0; i<BALLSDROP; i++) + cb[i] = pcb[i]; + + update(); +} + +bool LinesPrompt::getState() +{ + return PromptEnabled; +} +void LinesPrompt::setPrompt(bool enabled) +{ + PromptEnabled = enabled; + update(); +} |