Added little window to insert bet amount.
This commit is contained in:
parent
8b3815baac
commit
16df570727
4 changed files with 74 additions and 32 deletions
|
@ -44,7 +44,7 @@ void PlayerAreaModel::setFocusedPlayer(int n)
|
||||||
focusedPlayer = n;
|
focusedPlayer = n;
|
||||||
}
|
}
|
||||||
|
|
||||||
void PlayerAreaModel::bet(BetType b, int n)
|
void PlayerAreaModel::bet(BetType b, int n, int bet)
|
||||||
{
|
{
|
||||||
printf("Received %d-%d for player %s\n", b, n, playerNames[focusedPlayer].toLocal8Bit().data());
|
printf("Received %d-%d for player %s for %d gil\n", b, n, playerNames[focusedPlayer].toLocal8Bit().data(), bet);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ public:
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void setPlayerName(QString s, int n);
|
void setPlayerName(QString s, int n);
|
||||||
void bet(BetType b, int n);
|
void bet(BetType b, int n, int bet);
|
||||||
QString getPlayerName(int n);
|
QString getPlayerName(int n);
|
||||||
void setFocusedPlayer(int n);
|
void setFocusedPlayer(int n);
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,7 @@ Item {
|
||||||
|
|
||||||
Image {
|
Image {
|
||||||
source: "qrc:/roulette.png"
|
source: "qrc:/roulette.png"
|
||||||
signal streetBet(n: int)
|
|
||||||
|
|
||||||
//fillMode: Image.PreserveAspectFit
|
|
||||||
height: parent.height
|
height: parent.height
|
||||||
width: parent.width
|
width: parent.width
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
|
import QtQuick.Controls
|
||||||
|
|
||||||
import roulette
|
import roulette
|
||||||
|
|
||||||
|
@ -10,6 +11,9 @@ Item {
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
|
id: layout
|
||||||
|
property int indexForDialog
|
||||||
|
|
||||||
anchors {
|
anchors {
|
||||||
left: parent.left
|
left: parent.left
|
||||||
leftMargin: 90
|
leftMargin: 90
|
||||||
|
@ -20,14 +24,20 @@ Item {
|
||||||
spacing: 1.8
|
spacing: 1.8
|
||||||
|
|
||||||
Repeater {
|
Repeater {
|
||||||
|
id: repeater
|
||||||
model: 12
|
model: 12
|
||||||
|
|
||||||
|
Item {
|
||||||
|
height: 45
|
||||||
|
width: 35
|
||||||
|
property alias selected: selected
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
visible: true
|
visible: true
|
||||||
color: tapHandler1.pressed ? "#999999" : "#EEEEEE"
|
color: tapHandler1.pressed ? "#999999" : "#EEEEEE"
|
||||||
opacity: hoverHandler.hovered ? 0.4 : 0
|
opacity: hoverHandler.hovered ? 0.4 : 0
|
||||||
height: 45
|
height: parent.height
|
||||||
width: 35
|
width: parent.width
|
||||||
|
|
||||||
HoverHandler {
|
HoverHandler {
|
||||||
id: hoverHandler
|
id: hoverHandler
|
||||||
|
@ -36,31 +46,65 @@ Item {
|
||||||
id: tapHandler1
|
id: tapHandler1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
Repeater {
|
Rectangle {
|
||||||
model: 12
|
id: selected
|
||||||
|
|
||||||
delegate: Rectangle {
|
|
||||||
visible: true
|
visible: true
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
height: 44
|
height: parent.height
|
||||||
width: 35
|
width: parent.width
|
||||||
border.color: "blue"
|
border.color: "blue"
|
||||||
border.width: 0
|
border.width: 0
|
||||||
|
|
||||||
TapHandler {
|
TapHandler {
|
||||||
|
|
||||||
onTapped: ()=> {
|
onTapped: {
|
||||||
if (parent.border.width == 0) {
|
if (parent.border.width == 0) {
|
||||||
parent.border.width = 2
|
parent.border.width = 2
|
||||||
|
layout.indexForDialog = index
|
||||||
|
|
||||||
|
dialog.open()
|
||||||
} else {
|
} else {
|
||||||
parent.border.width = 0
|
parent.border.width = 0
|
||||||
}
|
}
|
||||||
PlayerAreaModel.bet(PlayerAreaModel.STREET, index)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Dialog {
|
||||||
|
property alias input: input
|
||||||
|
|
||||||
|
id: dialog
|
||||||
|
height: 35
|
||||||
|
width: 65
|
||||||
|
|
||||||
|
TextField {
|
||||||
|
id: input
|
||||||
|
focus: true
|
||||||
|
|
||||||
|
anchors {
|
||||||
|
fill: parent
|
||||||
|
}
|
||||||
|
|
||||||
|
onActiveFocusChanged: {
|
||||||
|
selectAll()
|
||||||
|
focus = true
|
||||||
|
}
|
||||||
|
onAccepted: {
|
||||||
|
dialog.accept()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onActiveFocusChanged: {
|
||||||
|
dialog.x = 120 + repeater.itemAt(layout.indexForDialog).x
|
||||||
|
dialog.y = 60 + repeater.itemAt(layout.indexForDialog).y
|
||||||
|
}
|
||||||
|
|
||||||
|
onAccepted: PlayerAreaModel.bet(PlayerAreaModel.STREET, layout.indexForDialog, input.text)
|
||||||
|
onRejected: repeater.itemAt(layout.indexForDialog).selected.border.width = 0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue