Starter Project

Software to manage a tournament

For our next assignment you and a partner are going to build a GUI application with JavaFX and FXML. The application will manage a tournament in which a group of players play games against each other.

Here are some requirements for this application:

Requirements for the user interface

For this assignment you will use FXML to construct a user interface that consists of a single window. The window will use a tabbed interface with the following three tabs:

At the top of this page there is a button that you can click to download a simple FXML example project that implements a tabbed interface for the "Hello FXML" example I showed earlier. You can use this project as the starting point for your work.

Suggestions for classes

To manage the data for this application I suggest you create at least two classes, a Player class and a Match class.

The Player class should store the player's name, whether or not they are currently assigned to an active match, a count of how many games they have played, and a count of how many games they have won.

The Match class should store the two players who participated in that match. In addition, each match should have a status. Here are the various status values that a match can have and their meanings:

In addition to these two classes, you should also set up a list of players and a list of matches. Here are some things you will need to do with the list of matches.