new blinking startbutton fix

This commit is contained in:
doitux
2009-06-19 21:58:35 +00:00
parent ef7b163136
commit 7624914832
2 changed files with 19 additions and 8 deletions
@@ -47,13 +47,16 @@ gameLobbyDialogImpl::gameLobbyDialogImpl(startWindowImpl *parent, ConfigFile *c)
blinkingButtonAnimationTimer = new QTimer(this); blinkingButtonAnimationTimer = new QTimer(this);
blinkingButtonAnimationTimer->setInterval(1000); blinkingButtonAnimationTimer->setInterval(1000);
//fetch enabled start button colors for blinking //fetch button colors for blinking
groupBox_GameInfo->setEnabled(true); groupBox_GameInfo->setEnabled(true);
pushButton_StartGame->setEnabled(true); pushButton_StartGame->setEnabled(true);
defaultStartButtonColor = pushButton_StartGame->palette().button().color(); defaultStartButtonColor = pushButton_StartGame->palette().button().color();
defaultStartButtonTextColor = pushButton_StartGame->palette().buttonText().color(); defaultStartButtonTextColor = pushButton_StartGame->palette().buttonText().color();
pushButton_StartGame->setEnabled(false); pushButton_StartGame->setEnabled(false);
groupBox_GameInfo->setEnabled(false); groupBox_GameInfo->setEnabled(false);
disabledStartButtonColor = pushButton_StartGame->palette().button().color();
disabledStartButtonTextColor = pushButton_StartGame->palette().buttonText().color();
myGameListModel = new QStandardItemModel(this); myGameListModel = new QStandardItemModel(this);
myGameListSortFilterProxyModel = new MyGameListSortFilterProxyModel(this); myGameListSortFilterProxyModel = new MyGameListSortFilterProxyModel(this);
@@ -602,13 +605,19 @@ void gameLobbyDialogImpl::blinkingStartButtonAnimation() {
blinkingButtonAnimationState = false; blinkingButtonAnimationState = false;
} }
else { else {
QPalette p = pushButton_StartGame->palette(); if(pushButton_StartGame->isEnabled()) {
p.setColor(QPalette::Button, defaultStartButtonColor); QPalette p = pushButton_StartGame->palette();
p.setColor(QPalette::ButtonText, defaultStartButtonTextColor); p.setColor(QPalette::Button, defaultStartButtonColor);
pushButton_StartGame->setPalette(p); p.setColor(QPalette::ButtonText, defaultStartButtonTextColor);
blinkingButtonAnimationState = true; pushButton_StartGame->setPalette(p);
if(!pushButton_StartGame->isEnabled()) { blinkingButtonAnimationState = true;
pushButton_StartGame->setEnabled(false); }
else {
QPalette p = pushButton_StartGame->palette();
p.setColor(QPalette::Button, disabledStartButtonColor);
p.setColor(QPalette::ButtonText, disabledStartButtonTextColor);
pushButton_StartGame->setPalette(p);
blinkingButtonAnimationState = true;
} }
} }
} }
@@ -132,6 +132,8 @@ private:
bool blinkingButtonAnimationState; bool blinkingButtonAnimationState;
QColor defaultStartButtonColor; QColor defaultStartButtonColor;
QColor defaultStartButtonTextColor; QColor defaultStartButtonTextColor;
QColor disabledStartButtonColor;
QColor disabledStartButtonTextColor;
LobbyChat *myChat; LobbyChat *myChat;
int keyUpCounter; int keyUpCounter;
QStandardItemModel *myGameListModel; QStandardItemModel *myGameListModel;