X-Git-Url: https://git.ralfj.de/multypo.git/blobdiff_plain/036922ba5e90ae7f6f6abe3f99b1783dec5132fc..9c1e7f79952d5e4f6c8c38bb71e1c7c4dc6a3d01:/qt/player.cpp diff --git a/qt/player.cpp b/qt/player.cpp index 4049788..69e7651 100644 --- a/qt/player.cpp +++ b/qt/player.cpp @@ -1,6 +1,7 @@ #include "player.h" #include +#include static QString colorToString(QColor col) { @@ -9,15 +10,44 @@ static QString colorToString(QColor col) .arg(col.blue(), 2, 16, QChar('0')); } -Player::Player(QWidget* parent) { +Player::Player(QWidget* parent) : score(0) { theLabel = new QLabel (parent); parent->layout()->addWidget(theLabel); + modifyable = true; + qDebug() << "Player created"; } -void Player::handleKey(QString str) { +bool Player::hasName() { + return !name.isEmpty(); +} + +QString Player::getName() { + return name; +} + +QString Player::getCurrentLine() { + return currentLine; +} + +void Player::setWaiting(QString labeltext) { + theLabel->setText(labeltext); + modifyable = false; +} + +void Player::resetText() { + currentLine.clear(); + theLabel->setText(currentLine); + modifyable = true; +} + +bool Player::handleKey(QString str) { + if (!modifyable) + return false; + bool newChar = false; if (str.length() == 1) { currentLine += str; - } else if (name.isNull() && str == "Return") { + newChar = true; + } else if (!hasName() && str == "Return") { // set name name = currentLine; currentLine = ""; @@ -25,4 +55,5 @@ void Player::handleKey(QString str) { currentLine.chop(1); } theLabel->setText(currentLine); + return newChar; }