Player area with croupier and player names.
This commit is contained in:
commit
8307e4eec4
8 changed files with 292 additions and 0 deletions
33
CMakeLists.txt
Normal file
33
CMakeLists.txt
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
|
project(roulette-payout VERSION 1.0.0 LANGUAGES CXX)
|
||||||
|
|
||||||
|
set(CMAKE_AUTOMOC ON)
|
||||||
|
set(CMAKE_CXX_STANDARD 17)
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
|
find_package(Qt6 6.2 COMPONENTS Core Widgets QuickControls2 Gui REQUIRED)
|
||||||
|
|
||||||
|
qt_standard_project_setup()
|
||||||
|
|
||||||
|
qt_add_executable(roulette-payout
|
||||||
|
main.cpp
|
||||||
|
MainWindow.cpp
|
||||||
|
MainWindow.h
|
||||||
|
PlayerAreaModel.cpp
|
||||||
|
PlayerAreaModel.h
|
||||||
|
)
|
||||||
|
|
||||||
|
qt_add_qml_module(roulette-payout
|
||||||
|
URI roulette
|
||||||
|
VERSION 1.0
|
||||||
|
RESOURCE_PREFIX "/"
|
||||||
|
QML_FILES
|
||||||
|
Root.qml
|
||||||
|
PlayerAreaView.qml
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(roulette-payout PRIVATE
|
||||||
|
Qt6::Gui
|
||||||
|
Qt6::QuickControls2
|
||||||
|
Qt6::Quick)
|
16
MainWindow.cpp
Normal file
16
MainWindow.cpp
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
#include <QQmlContext>
|
||||||
|
#include <QtGui/qwindow.h>
|
||||||
|
#include <cstddef>
|
||||||
|
#include <qqml.h>
|
||||||
|
#include <qquickview.h>
|
||||||
|
#include <qurl.h>
|
||||||
|
|
||||||
|
#include "MainWindow.h"
|
||||||
|
|
||||||
|
MainWindow::MainWindow(QWindow *parent)
|
||||||
|
{
|
||||||
|
QQuickView::setTitle("Roulette Payout");
|
||||||
|
|
||||||
|
setSource(QUrl("../Root.qml"));
|
||||||
|
|
||||||
|
}
|
15
MainWindow.h
Normal file
15
MainWindow.h
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <QQuickView>
|
||||||
|
#include <QtGui/qwindow.h>
|
||||||
|
|
||||||
|
class MainWindow : public QQuickView
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
QML_ELEMENT
|
||||||
|
QML_SINGLETON /* ??? */
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit MainWindow(QWindow *parent = nullptr);
|
||||||
|
|
||||||
|
};
|
89
PlayerAreaModel.cpp
Normal file
89
PlayerAreaModel.cpp
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
#include "PlayerAreaModel.h"
|
||||||
|
|
||||||
|
PlayerAreaModel::PlayerAreaModel(QObject *parent)
|
||||||
|
{
|
||||||
|
playerName1Text = "Click to edit";
|
||||||
|
playerName2Text = "Click to edit";
|
||||||
|
playerName3Text = "Click to edit";
|
||||||
|
playerName4Text = "Click to edit";
|
||||||
|
playerName5Text = "Click to edit";
|
||||||
|
playerName6Text = "Click to edit";
|
||||||
|
playerName7Text = "Click to edit";
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName1()
|
||||||
|
{
|
||||||
|
return playerName1Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName2()
|
||||||
|
{
|
||||||
|
return playerName2Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName3()
|
||||||
|
{
|
||||||
|
return playerName3Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName4()
|
||||||
|
{
|
||||||
|
return playerName4Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName5()
|
||||||
|
{
|
||||||
|
return playerName5Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName6()
|
||||||
|
{
|
||||||
|
return playerName6Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString PlayerAreaModel::playerName7()
|
||||||
|
{
|
||||||
|
return playerName7Text;
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName1(QString s)
|
||||||
|
{
|
||||||
|
playerName1Text = s;
|
||||||
|
emit playerName1Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName2(QString s)
|
||||||
|
{
|
||||||
|
playerName2Text = s;
|
||||||
|
emit playerName2Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName3(QString s)
|
||||||
|
{
|
||||||
|
playerName3Text = s;
|
||||||
|
emit playerName3Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName4(QString s)
|
||||||
|
{
|
||||||
|
playerName4Text = s;
|
||||||
|
emit playerName4Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName5(QString s)
|
||||||
|
{
|
||||||
|
playerName5Text = s;
|
||||||
|
emit playerName5Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName6(QString s)
|
||||||
|
{
|
||||||
|
playerName6Text = s;
|
||||||
|
emit playerName6Changed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PlayerAreaModel::setPlayerName7(QString s)
|
||||||
|
{
|
||||||
|
playerName7Text = s;
|
||||||
|
emit playerName7Changed();
|
||||||
|
}
|
56
PlayerAreaModel.h
Normal file
56
PlayerAreaModel.h
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <QQuickView>
|
||||||
|
#include <QtGui/qwindow.h>
|
||||||
|
#include <qobject.h>
|
||||||
|
#include <qtmetamacros.h>
|
||||||
|
|
||||||
|
class PlayerAreaModel : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
QML_ELEMENT
|
||||||
|
|
||||||
|
Q_PROPERTY(QString playerName1 READ playerName1 WRITE setPlayerName1 NOTIFY playerName1Changed)
|
||||||
|
Q_PROPERTY(QString playerName2 READ playerName2 WRITE setPlayerName2 NOTIFY playerName2Changed)
|
||||||
|
Q_PROPERTY(QString playerName3 READ playerName3 WRITE setPlayerName3 NOTIFY playerName3Changed)
|
||||||
|
Q_PROPERTY(QString playerName4 READ playerName4 WRITE setPlayerName4 NOTIFY playerName4Changed)
|
||||||
|
Q_PROPERTY(QString playerName5 READ playerName5 WRITE setPlayerName5 NOTIFY playerName5Changed)
|
||||||
|
Q_PROPERTY(QString playerName6 READ playerName6 WRITE setPlayerName6 NOTIFY playerName6Changed)
|
||||||
|
Q_PROPERTY(QString playerName7 READ playerName7 WRITE setPlayerName7 NOTIFY playerName7Changed)
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit PlayerAreaModel(QObject *parent = nullptr);
|
||||||
|
QString playerName1();
|
||||||
|
QString playerName2();
|
||||||
|
QString playerName3();
|
||||||
|
QString playerName4();
|
||||||
|
QString playerName5();
|
||||||
|
QString playerName6();
|
||||||
|
QString playerName7();
|
||||||
|
void setPlayerName1(QString s);
|
||||||
|
void setPlayerName2(QString s);
|
||||||
|
void setPlayerName3(QString s);
|
||||||
|
void setPlayerName4(QString s);
|
||||||
|
void setPlayerName5(QString s);
|
||||||
|
void setPlayerName6(QString s);
|
||||||
|
void setPlayerName7(QString s);
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void playerName1Changed();
|
||||||
|
void playerName2Changed();
|
||||||
|
void playerName3Changed();
|
||||||
|
void playerName4Changed();
|
||||||
|
void playerName5Changed();
|
||||||
|
void playerName6Changed();
|
||||||
|
void playerName7Changed();
|
||||||
|
|
||||||
|
private:
|
||||||
|
QString playerName1Text;
|
||||||
|
QString playerName2Text;
|
||||||
|
QString playerName3Text;
|
||||||
|
QString playerName4Text;
|
||||||
|
QString playerName5Text;
|
||||||
|
QString playerName6Text;
|
||||||
|
QString playerName7Text;
|
||||||
|
};
|
||||||
|
|
48
PlayerAreaView.qml
Normal file
48
PlayerAreaView.qml
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
import QtQuick
|
||||||
|
import QtQuick.Controls
|
||||||
|
import QtQuick.Layouts
|
||||||
|
|
||||||
|
import roulette
|
||||||
|
|
||||||
|
Item {
|
||||||
|
PlayerAreaModel {
|
||||||
|
id: playerAreaModel
|
||||||
|
}
|
||||||
|
ColumnLayout {
|
||||||
|
Text {
|
||||||
|
text: "Croupier"
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName1
|
||||||
|
onEditingFinished: playerAreaModel.playerName1 = text
|
||||||
|
selectByMouse: true
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName2
|
||||||
|
onEditingFinished: playerAreaModel.playerName2 = text
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName3
|
||||||
|
onEditingFinished: playerAreaModel.playerName3 = text
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName4
|
||||||
|
onEditingFinished: playerAreaModel.playerName4 = text
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName5
|
||||||
|
onEditingFinished: playerAreaModel.playerName5 = text
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName6
|
||||||
|
onEditingFinished: playerAreaModel.playerName6 = text
|
||||||
|
}
|
||||||
|
TextField {
|
||||||
|
text: playerAreaModel.playerName7
|
||||||
|
onEditingFinished: playerAreaModel.playerName7 = text
|
||||||
|
}
|
||||||
|
Text {
|
||||||
|
text: playerAreaModel.playerName1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
21
Root.qml
Normal file
21
Root.qml
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
import QtQuick
|
||||||
|
import QtQuick.Controls
|
||||||
|
import QtQuick.Layouts
|
||||||
|
|
||||||
|
import roulette
|
||||||
|
|
||||||
|
Pane {
|
||||||
|
id: rootWindow
|
||||||
|
|
||||||
|
height: 500
|
||||||
|
width: 1000
|
||||||
|
PlayerAreaView {
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
* Dentro do Text não podes mudar directamente
|
||||||
|
* o text do playerAreaModel;
|
||||||
|
* Para fazer isso tens que mandar um sinal
|
||||||
|
* que está ligado a um slot do playerAreaModel
|
||||||
|
* que vá mudar esse atributo
|
||||||
|
*/
|
||||||
|
}
|
14
main.cpp
Normal file
14
main.cpp
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#include <QGuiApplication>
|
||||||
|
#include <QQuickView>
|
||||||
|
|
||||||
|
#include "MainWindow.h"
|
||||||
|
|
||||||
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
QGuiApplication app(argc, argv);
|
||||||
|
|
||||||
|
MainWindow view;
|
||||||
|
view.show();
|
||||||
|
|
||||||
|
return app.exec();
|
||||||
|
}
|
Loading…
Reference in a new issue