diff --git a/BetInputDialog.qml b/BetInputDialog.qml index c621951..9b2c112 100644 --- a/BetInputDialog.qml +++ b/BetInputDialog.qml @@ -59,9 +59,9 @@ Dialog { * A solution for the indexes is to rotate the layout 180ยบ, but that will mess up * the x and y coordinates which is even more annoying to fix. */ - //if (betType == 9 && n < 35) { - // n = 35 - n - //} + if (betType == 9 && n <= 35) { + n = 35 - n + } PlayerAreaModel.bet(betType, n, input.text) rouletteTable.numberOfBets += 1 } diff --git a/PlayerAreaModel.cpp b/PlayerAreaModel.cpp index be79580..e03b2bc 100644 --- a/PlayerAreaModel.cpp +++ b/PlayerAreaModel.cpp @@ -43,10 +43,12 @@ void PlayerAreaModel::bet(BetType b, int n, int bet) player->bet1.betType = b; player->bet1.betValue = bet; player->bet1.betSpot = n; + emit betChanged(b, n, bet); } else if (player->bet2.betType == NONE) { player->bet2.betType = b; player->bet2.betValue = bet; player->bet2.betSpot = n; + emit betChanged(b, n, bet); } } @@ -55,8 +57,10 @@ void PlayerAreaModel::removeBet(BetType b, int n) Player *player = &players[focusedPlayer_]; if (player->bet1.betType != NONE) { player->bet1.betType = NONE; + emit betRemoved(b, n); } else { player->bet2.betType = NONE; + emit betRemoved(b, n); } } diff --git a/PlayerAreaModel.h b/PlayerAreaModel.h index e8ce063..8e1112e 100644 --- a/PlayerAreaModel.h +++ b/PlayerAreaModel.h @@ -39,6 +39,8 @@ public: signals: void focusedPlayerChanged(BetType b1, uint n1, BetType b2, uint n2); + void betChanged(BetType b, int n, int bet); + void betRemoved(BetType b, int n); void betCanceled(BetType b, uint n); public slots: diff --git a/PlayerAreaView.qml b/PlayerAreaView.qml index 82e484e..4c589b9 100644 --- a/PlayerAreaView.qml +++ b/PlayerAreaView.qml @@ -59,8 +59,11 @@ Item { TextField { id: inputField - anchors.top: label.bottom - anchors.topMargin: 6 + + anchors { + top: label.bottom + topMargin: 6 + } onTextEdited: PlayerAreaModel.setPlayerName(text, index) onActiveFocusChanged: { @@ -70,6 +73,65 @@ Item { } } } + + Text { + id: currentBet + + anchors { + verticalCenter: inputField.verticalCenter + left: inputField.right + leftMargin: 5 + } + + text: "" + } + + Connections { + target: PlayerAreaModel + + function onBetChanged(b, n, bet) { + if (PlayerAreaModel.focusedPlayer == index) { + switch(b) { + case 1: + currentBet.text = "Red: " + bet + "g" + break; + case 2: + currentBet.text = "Black: " + bet + "g" + break; + case 3: + currentBet.text = "Odd: " + bet + "g" + break; + case 4: + currentBet.text = "Even: " + bet + "g" + break; + case 5: + currentBet.text = "Low: " + bet + "g" + break; + case 6: + currentBet.text = "High: " + bet + "g" + break; + case 7: + currentBet.text = "Dozen " + (n + 1) + ": " + bet + "g" + break; + case 8: + currentBet.text = "Street " + (n + 1) + ": " + bet + "g" + break; + case 9: + currentBet.text = "Single " + (n + 1) + ": " + bet + "g" + break; + case 10: + currentBet.text = "Column " + (n + 1) + ": " + bet + "g" + break; + } + } + } + + function onBetRemoved(b, n, bet) { + if (PlayerAreaModel.focusedPlayer == index) { + currentBet.text = "" + } + } + } } } } diff --git a/Singles.qml b/Singles.qml index 99aa6ee..f09be5b 100644 --- a/Singles.qml +++ b/Singles.qml @@ -58,7 +58,7 @@ Item { x: 60 y: 136 BetButton { - index_: 38 + index_: 36 betType: 9 height: 66 width: 28