Merge branch 'master' of https://gitlab.dcs.aber.ac.uk/ncw/gp20
This commit is contained in:
commit
3c61739104
445 changed files with 6524 additions and 7 deletions
71
.gitignore
vendored
Normal file
71
.gitignore
vendored
Normal file
|
@ -0,0 +1,71 @@
|
|||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||
|
||||
# User-specific stuff
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/**/usage.statistics.xml
|
||||
.idea/**/dictionaries
|
||||
.idea/**/shelf
|
||||
|
||||
# Generated files
|
||||
.idea/**/contentModel.xml
|
||||
|
||||
# Sensitive or high-churn files
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
.idea/**/dbnavigator.xml
|
||||
|
||||
# Gradle
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
|
||||
# Gradle and Maven with auto-import
|
||||
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||
# since they will be recreated, and may cause churn. Uncomment if using
|
||||
# auto-import.
|
||||
# .idea/artifacts
|
||||
# .idea/compiler.xml
|
||||
# .idea/jarRepositories.xml
|
||||
# .idea/modules.xml
|
||||
# .idea/*.iml
|
||||
# .idea/modules
|
||||
# *.iml
|
||||
# *.ipr
|
||||
|
||||
# CMake
|
||||
cmake-build-*/
|
||||
|
||||
# Mongo Explorer plugin
|
||||
.idea/**/mongoSettings.xml
|
||||
|
||||
# File-based project format
|
||||
*.iws
|
||||
|
||||
# IntelliJ
|
||||
out/
|
||||
|
||||
# mpeltonen/sbt-idea plugin
|
||||
.idea_modules/
|
||||
|
||||
# JIRA plugin
|
||||
atlassian-ide-plugin.xml
|
||||
|
||||
# Cursive Clojure plugin
|
||||
.idea/replstate.xml
|
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
|
||||
# Editor-based Rest Client
|
||||
.idea/httpRequests
|
||||
|
||||
# Android studio 3.1+ serialized cache file
|
||||
.idea/caches/build_file_checksums.ser
|
|
@ -3,7 +3,7 @@ Meeting: Weekly Project Meeting
|
|||
Persons present: All members, except Luke Wybar(law39 - family emergency), Waylen Watts(ncw - needed in emergency).
|
||||
Place and date of meeting: Online, Tuesday 14th April 2020, 1:10pm
|
||||
Circulation list: All project members, plus project manager
|
||||
Author: Oscar Pocock
|
||||
Author: Brad Corbet
|
||||
Date of minutes: 14th April 2020.
|
||||
Version: 1.1
|
||||
Time Taken: 1:10pm
|
||||
|
@ -31,7 +31,7 @@ Matters arising
|
|||
|
||||
9 - COMPLETE, Brad to do spikework on the 'Translation' test, creating a demo in JavaFX. (Point 41 of minutes of 31st March) ACTION: brc9
|
||||
|
||||
10 - INVESTIGATING, Waylen to do spikework on the 'Six Meanings' test, creating a demo in JavaFX. (Point 42 of minutes of 31st March) ACTION: ncw
|
||||
10 - ONGOING, Waylen to do spikework on the 'Six Meanings' test, creating a demo in JavaFX. (Point 42 of minutes of 31st March) ACTION: ncw
|
||||
|
||||
11 - ONGOING, Kain to implement the program's JSON processing using the spikework to help him. (Point 43 of minutes of 31st March) ACTION: kab74
|
||||
|
72
config/minutes/2020-04-21_minutes.txt
Normal file
72
config/minutes/2020-04-21_minutes.txt
Normal file
|
@ -0,0 +1,72 @@
|
|||
Project: Group Project 20
|
||||
Meeting: Weekly Project Meeting
|
||||
Persons present: All members.
|
||||
Place and date of meeting: Online, Tuesday 21th April 2020, 1:10pm
|
||||
Circulation list: All project members, plus project manager
|
||||
Author: Brad Corbett (brc9)
|
||||
Date of minutes: 21st April 2020.
|
||||
Version: 1.0
|
||||
Time Taken: 1:10pm
|
||||
|
||||
Matters arising
|
||||
===============
|
||||
|
||||
1 - ONGOING, Oscar to change UI Specification according to issues raised. (Point 3 of minutes of 31st March) ACTION: osp1.
|
||||
|
||||
2 - COMPLETE, Luke to do spikework regarding the live-searching of the dictionary. (Point 35 of minutes of 31st March) ACTION: law39
|
||||
|
||||
3 - COMPLETE, Tom to develop his Flashcard spikework more by looking further into the different JavaFX panes. (Point 36 of minutes of 31st March) ACTION: top19
|
||||
|
||||
4 - Any rough spikework should be pushed to your individual dev folder, before merging it with the directory src. (Point 37 of minutes of 31st March)
|
||||
|
||||
5 - ONGOING, Oscar to do spikework on reordering/sorting of the dictionary. (Point 39 of minutes of 31st March) ACTION: osp1
|
||||
|
||||
6 - COMPLETE, Marcin to do spikework on the 'Match the Meanings' test, creating a demo in JavaFX. (Point 40 of minutes of 31st March) ACTION: maj83
|
||||
|
||||
7 - ONGOING, Waylen to do spikework on the 'Six Meanings' test, creating a demo in JavaFX. (Point 42 of minutes of 31st March) ACTION: ncw
|
||||
|
||||
8 - ONGOING, Kain to implement the program's JSON processing using the spikework to help him. (Point 43 of minutes of 31st March) ACTION: kab74
|
||||
|
||||
9 - ONGOING, Henry to implement the program's 'Add Word' screen. (Point 44 of minutes of 31st March) ACTION: hjd3
|
||||
|
||||
10 - ONGOING, Oscar to make a start on implementing the program's Dictionary display. (Point 45 of minutes of 31st March) ACTION: osp1
|
||||
|
||||
11 - ONGOING, Tom and Luke to make the shared code controller, working out what it will contain. (Point 46 of minutes of 31st March) ACTION: top19, law39
|
||||
|
||||
12 - Anyone who is struggling with spikework can feel free to ask for help in the discord. (Point 47 of minutes of 31st March)
|
||||
|
||||
13 - COMPLETE, Oscar and Tom to help Henry implement the Add Word screen. ACTION: top19, osp1, hjd3 (Point 17 of minutes of 14th April)
|
||||
|
||||
14 - COMPLETE, Brad to bring his spikework on Translation test more in line with design specification e.g. correct layout, using words from practice list. ACTION: brc9 (Point 18 of minutes of 14th April)
|
||||
|
||||
15 - COMPLETE, Marcin to bring the spikework more towards a final project-esque piece of code i.e. correct layout, words from practice list. ACTION: maj83 (Point 19 of minutes of 14th April)
|
||||
|
||||
16 - ONGOING, Kain to help format the project ready for development, by creating classes and packages. ACTION: kab74 (Point 20 of minutes of 14th of April)
|
||||
|
||||
17 - ONGOING, Everyone to start doing JavaDoc and proper comments. ACTION: Everyone (Point 21 of minutes of 14th of April)
|
||||
|
||||
18 - ONGOING, Oscar to start work on Practice List page. ACTION: osp1 (Point 22 of minutes of 14th of April)
|
||||
|
||||
New business
|
||||
============
|
||||
|
||||
19 - Reminder for everyone to be available between 0900 and 1800 during integration week, with a suggested 1 hour, 30 minute break at some point in the day.
|
||||
|
||||
20 - Oscar to create generic voice channels for individuals to join during Integration Week if people need to talk to other members of the group.
|
||||
|
||||
21 - Daily meetings planned for 10am and 5pm during Integration week.
|
||||
|
||||
22 - Luke and Kain to work on demo for live searching. ACTION: kab74, law39
|
||||
|
||||
23 - Brad to raise issues for problems brought up with Design Spec by Kain. ACTION: brc9
|
||||
|
||||
24 - Brad to change blog site collection website to reflect current members of the group. ACTION: brc9
|
||||
|
||||
25 - Henry to look into JUnit testing. ACTION: hjd3
|
||||
|
||||
AOB
|
||||
===
|
||||
|
||||
None.
|
||||
|
||||
Minutes by brc9, 21/04/2020.
|
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/hellofx.iml" filepath="$PROJECT_DIR$/.idea/hellofx.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
|
@ -1,6 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../../.." vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
|
@ -1,11 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/../../../20200331/brc9/translationFX/.idea/vcs.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200331/brc9/translationFX/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200331/brc9/translationFX/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200331/top19/flashcardfx/hellofx/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200331/top19/flashcardfx/hellofx/.idea/workspace.xml" afterDir="false" />
|
||||
</list>
|
||||
<list default="true" id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
@ -92,6 +88,8 @@
|
|||
<workItem from="1586788738519" duration="8777000" />
|
||||
<workItem from="1586853342350" duration="6464000" />
|
||||
<workItem from="1586866035893" duration="398000" />
|
||||
<workItem from="1586869197672" duration="229000" />
|
||||
<workItem from="1587051259984" duration="118000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
|
|
|
@ -105,4 +105,10 @@ public class DictionaryEntry {
|
|||
"practiceWord = " + isPracticeWord;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj){
|
||||
DictionaryEntry otherObject = (DictionaryEntry) obj;
|
||||
return (this.getEnglishWord().equals(otherObject.getEnglishWord())) && this.getWelshWord().equals(otherObject.getWelshWord());
|
||||
}
|
||||
}
|
||||
|
|
6
dev/20200407/maj83/.idea/vcs.xml
Normal file
6
dev/20200407/maj83/.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
6
dev/20200407/osp1/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
6
dev/20200407/osp1/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
4
dev/20200407/top19/sharedcontroller/.idea/encodings.xml
Normal file
4
dev/20200407/top19/sharedcontroller/.idea/encodings.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
|
||||
</project>
|
6
dev/20200407/top19/sharedcontroller/.idea/vcs.xml
Normal file
6
dev/20200407/top19/sharedcontroller/.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<annotationProcessing>
|
||||
<profile name="Maven default annotation processors profile" enabled="true">
|
||||
<sourceOutputDir name="target/generated-sources/annotations" />
|
||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||
<outputRelativeToContentRoot value="true" />
|
||||
<module name="Welsh Vocabulary Tutor" />
|
||||
</profile>
|
||||
</annotationProcessing>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding" addBOMForNewFiles="with NO BOM">
|
||||
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="MavenProjectsManager">
|
||||
<option name="originalFiles">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/pom.xml" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="11" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,124 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Palette2">
|
||||
<group name="Swing">
|
||||
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
|
||||
</item>
|
||||
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
|
||||
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
|
||||
<initial-values>
|
||||
<property name="text" value="Button" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="RadioButton" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="CheckBox" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="Label" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
||||
<preferred-size width="200" height="200" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
||||
<preferred-size width="200" height="200" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
|
||||
<preferred-size width="-1" height="20" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
|
||||
</item>
|
||||
</group>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../../.." vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../../../.." vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,409 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
</list>
|
||||
<ignored path="$PROJECT_DIR$/target/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/App.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-68">
|
||||
<caret line="27" column="31" lean-forward="true" selection-start-line="27" selection-start-column="31" selection-end-line="27" selection-end-column="31" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/resources/uk/ac/aber/cs22120/group20/translationTest.fxml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="133">
|
||||
<caret line="10" column="264" selection-start-line="10" selection-start-column="264" selection-end-line="10" selection-end-column="264" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="JavaFX-Scene-Builder" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryEntry.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="221">
|
||||
<caret line="18" column="30" selection-start-line="18" selection-start-column="30" selection-end-line="18" selection-end-column="30" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="765">
|
||||
<caret line="64" column="26" selection-start-line="64" selection-start-column="26" selection-end-line="64" selection-end-column="26" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/PrimaryController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="273">
|
||||
<caret line="59" column="9" lean-forward="true" selection-start-line="59" selection-start-column="9" selection-end-line="59" selection-end-column="9" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/pom.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>println</find>
|
||||
<find>list</find>
|
||||
</findStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/../../../../.." />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/main/resources/uk/ac/aber/cs22120/group20/primary.fxml" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/SecondaryController.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/jsonStuff/JsonProcessing.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryEntry.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryController.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/WelshDictionary.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/App.java" />
|
||||
<option value="$PROJECT_DIR$/src/main/resources/uk/ac/aber/cs22120/group20/translationTest.fxml" />
|
||||
<option value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/PrimaryController.java" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="MavenImportPreferences">
|
||||
<option name="importingSettings">
|
||||
<MavenImportingSettings>
|
||||
<option name="importAutomatically" value="true" />
|
||||
</MavenImportingSettings>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-7" />
|
||||
<option name="width" value="974" />
|
||||
<option name="height" value="788" />
|
||||
</component>
|
||||
<component name="ProjectId" id="1ZuzdvhY95vKxjmCaMLe5YQbnXd" />
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
|
||||
<ConfirmationsSetting value="1" id="Add" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name=".idea" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="resources" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="resources" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="assets" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="resources" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="group20" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Welsh Vocabulary Tutor" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Welsh Vocabulary Tutor" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="target" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="ProjectViewState">
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showExcludedFiles" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="aspect.path.notification.shown" value="true" />
|
||||
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1587451303629" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../../../../../src/Welsh Vocabulary Tutor" />
|
||||
<property name="project.structure.last.edited" value="Libraries" />
|
||||
<property name="project.structure.proportion" value="0.0" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="C:\Users\user\Documents\CS22120\gp20\dev\20200414\brc9\translationWork\Welsh Vocabulary Tutor\src\main\resources\assets" />
|
||||
</key>
|
||||
<key name="CopyClassDialog.RECENTS_KEY">
|
||||
<recent name="uk.ac.aber.cs22120.group20" />
|
||||
</key>
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="C:\Users\user\Documents\CS22120\gp20\dev\20200414\brc9\translationWork\Welsh Vocabulary Tutor\src\main" />
|
||||
<recent name="C:\Users\user\Documents\CS22120\gp20\dev\20200414\brc9\translationWork\Welsh Vocabulary Tutor\src\main\java" />
|
||||
<recent name="C:\Users\user\Documents\CS22120\06-04-2020-DevWork\src\Welsh Vocabulary Tutor\src\main\resources\uk\ac\aber\cs22120\group20" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="App" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="uk.ac.aber.cs22120.group20.App" />
|
||||
<module name="Welsh Vocabulary Tutor" />
|
||||
<extension name="coverage">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="uk.ac.aber.cs22120.group20.WelshDictionary" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Application.App" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="" />
|
||||
<created>1585703857421</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1585703857421</updated>
|
||||
<workItem from="1585703861677" duration="881000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-8" y="-8" width="1382" height="744" extended-state="6" />
|
||||
<layout>
|
||||
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.24886535" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info id="Image Layers" order="2" />
|
||||
<window_info id="Designer" order="3" />
|
||||
<window_info id="UI Designer" order="4" />
|
||||
<window_info id="Capture Tool" order="5" />
|
||||
<window_info id="Favorites" order="6" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.3289689" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.3289689" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Terminal" order="7" />
|
||||
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Version Control" order="9" />
|
||||
<window_info anchor="bottom" id="Messages" order="10" weight="0.3289689" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="right" id="Maven" order="4" />
|
||||
<window_info anchor="right" id="Theme Preview" order="5" />
|
||||
<window_info anchor="right" id="Capture Analysis" order="6" />
|
||||
<window_info anchor="right" id="Palette	" order="7" />
|
||||
</layout>
|
||||
<layout-to-restore>
|
||||
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2647504" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info id="Image Layers" order="2" />
|
||||
<window_info id="Designer" order="3" />
|
||||
<window_info id="UI Designer" order="4" />
|
||||
<window_info id="Capture Tool" order="5" />
|
||||
<window_info id="Favorites" order="6" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
<window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.3289689" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Terminal" order="7" />
|
||||
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Version Control" order="9" />
|
||||
<window_info anchor="bottom" id="Messages" order="10" weight="0.3289689" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="right" id="Maven" order="4" />
|
||||
<window_info anchor="right" id="Theme Preview" order="5" />
|
||||
<window_info anchor="right" id="Capture Analysis" order="6" />
|
||||
<window_info anchor="right" id="Palette	" order="7" />
|
||||
</layout-to-restore>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="WindowStateProjectService">
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.bottom" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.center" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.center/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.left" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.left/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.right" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.right/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state x="441" y="95" key="SettingsEditor" timestamp="1585703966325">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state x="441" y="95" key="SettingsEditor/0.0.1920.1040@0.0.1920.1040" timestamp="1585703966325" />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="jar://C:/Program Files/Java/jdk-11.0.2/lib/src.zip!/java.base/java/lang/Thread.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="17">
|
||||
<caret line="833" selection-start-line="833" selection-end-line="833" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/jsonStuff/WelshDictionary.java" />
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/jsonStuff/JsonProcessing.java" />
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/WelshDictionary.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="204">
|
||||
<caret line="13" column="16" selection-start-line="13" selection-start-column="16" selection-end-line="13" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/resources/uk/ac/aber/cs22120/group20/primary.fxml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="238">
|
||||
<caret line="14" column="13" selection-start-line="14" selection-start-column="13" selection-end-line="14" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="JavaFX-Scene-Builder" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/SecondaryController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="11" column="28" selection-start-line="11" selection-start-column="28" selection-end-line="11" selection-end-column="28" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/App.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-68">
|
||||
<caret line="27" column="31" lean-forward="true" selection-start-line="27" selection-start-column="31" selection-end-line="27" selection-end-column="31" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryEntry.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="221">
|
||||
<caret line="18" column="30" selection-start-line="18" selection-start-column="30" selection-end-line="18" selection-end-column="30" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/DictionaryController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="765">
|
||||
<caret line="64" column="26" selection-start-line="64" selection-start-column="26" selection-end-line="64" selection-end-column="26" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pom.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/resources/uk/ac/aber/cs22120/group20/translationTest.fxml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="133">
|
||||
<caret line="10" column="264" selection-start-line="10" selection-start-column="264" selection-end-line="10" selection-end-column="264" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="JavaFX-Scene-Builder" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20/PrimaryController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="273">
|
||||
<caret line="59" column="9" lean-forward="true" selection-start-line="59" selection-start-column="9" selection-end-line="59" selection-end-column="9" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,44 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>uk.ac.aber.cs22120.group20</groupId>
|
||||
<artifactId>Welsh Vocabulary Tutor</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>11</maven.compiler.source>
|
||||
<maven.compiler.target>11</maven.compiler.target>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-controls</artifactId>
|
||||
<version>11</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-fxml</artifactId>
|
||||
<version>11</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.8.0</version>
|
||||
<configuration>
|
||||
<release>11</release>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-maven-plugin</artifactId>
|
||||
<version>0.0.1</version>
|
||||
<configuration>
|
||||
<mainClass>uk.ac.aber.cs22120.group20.App</mainClass>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1,7 @@
|
|||
module uk.ac.aber.cs22120.group20 {
|
||||
requires javafx.controls;
|
||||
requires javafx.fxml;
|
||||
|
||||
opens uk.ac.aber.cs22120.group20 to javafx.fxml;
|
||||
exports uk.ac.aber.cs22120.group20;
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
import javafx.application.Application;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.scene.Parent;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.stage.Stage;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
|
||||
/**
|
||||
* Launch class of the Welsh Vocabulary tutor Application
|
||||
*
|
||||
* @author Brad Corbett [brc9]
|
||||
* @author Henry Dugmore [hjd3]
|
||||
* @author Kain Bryan-Jones [kab74]
|
||||
* @author Luke Wybar [law39]
|
||||
* @author Marcin Jakob [maj83]
|
||||
* @author Oscar Pocock [osp1]
|
||||
* @author Tom Perry [top1]
|
||||
* @author Waylen Watts [ncw]
|
||||
*
|
||||
* @version 0.1
|
||||
*/
|
||||
public class App extends Application {
|
||||
private static Scene scene;
|
||||
|
||||
public static LinkedList<DictionaryEntry> dictionary = new LinkedList<>();
|
||||
|
||||
@Override
|
||||
public void start(Stage stage) throws IOException {
|
||||
dictionary.add(new DictionaryEntry("abbey", "abaty", "nm", false));
|
||||
dictionary.add(new DictionaryEntry("believe", "credu", "verb", true));
|
||||
dictionary.add(new DictionaryEntry("concert", "cyngerdd", "nm", false));
|
||||
dictionary.add(new DictionaryEntry("disease", "clefyd", "nm", true));
|
||||
dictionary.add(new DictionaryEntry("extremely", "dros ben", "other", false));
|
||||
scene = new Scene(loadFXML("translationTest"));
|
||||
stage.setScene(scene);
|
||||
stage.show();
|
||||
}
|
||||
|
||||
static void setRoot(String fxml) throws IOException {
|
||||
scene.setRoot(loadFXML(fxml));
|
||||
}
|
||||
|
||||
private static Parent loadFXML(String fxml) throws IOException {
|
||||
FXMLLoader fxmlLoader = new FXMLLoader(App.class.getResource( fxml + ".fxml"));
|
||||
return fxmlLoader.load();
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
launch();
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,142 @@
|
|||
/**
|
||||
* @(#) DictionaryController.java 0,1 2020/04/07
|
||||
* <p>
|
||||
* Copyright (c) 2020 Aberystwyth University.
|
||||
* All rights reserved.
|
||||
*/
|
||||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.fxml.Initializable;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableRow;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.stage.Stage;
|
||||
import javafx.util.Callback;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.util.ResourceBundle;
|
||||
|
||||
/**
|
||||
* A class that handles the keyboard and mouse input and interaction for the 'Dictionary Page' which is
|
||||
* defined by 'dictionary.fxml'
|
||||
*
|
||||
* @author Brad Corbett [brc9]
|
||||
* @author Henry Dugmore [hjd3]
|
||||
* @author Kain Bryan-Jones [kab74]
|
||||
* @author Luke Wybar [law39]
|
||||
* @author Marcin Jakob [maj83]
|
||||
* @author Oscar Pocock [osp1]
|
||||
* @author Tom Perry [top1]
|
||||
* @author Waylen Watts [ncw]
|
||||
* @version 0.1 Initial development.
|
||||
* @see DictionaryEntry
|
||||
* @see App
|
||||
*/
|
||||
public class DictionaryController implements Initializable {
|
||||
public static Stage primaryStage = null;
|
||||
|
||||
@FXML
|
||||
private TableView<DictionaryEntry> table;
|
||||
@FXML
|
||||
private TableColumn<DictionaryEntry, String> english = new TableColumn<>();
|
||||
@FXML
|
||||
private TableColumn<DictionaryEntry, String> welsh = new TableColumn<>();
|
||||
|
||||
// public ObservableList<DictionaryEntry> list = FXCollections.observableArrayList(
|
||||
// new DictionaryEntry("abbey", "abaty", "nm", false),
|
||||
// new DictionaryEntry("believe", "credu", "verb", true),
|
||||
// new DictionaryEntry("concert", "cyngerdd", "nm", false),
|
||||
// new DictionaryEntry("disease", "clefyd", "nm", true),
|
||||
// new DictionaryEntry("extremely", "dros ben", "other", false),
|
||||
// new DictionaryEntry("flu", "ffliw", "nm", false)
|
||||
// );
|
||||
|
||||
public ObservableList<DictionaryEntry> list = FXCollections.observableArrayList();
|
||||
|
||||
/**
|
||||
* Switches to the primary scene.
|
||||
*
|
||||
* @throws IOException
|
||||
*/
|
||||
@FXML
|
||||
private void switchToPrimary() throws IOException {
|
||||
App.setRoot("primary");
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets up the table and loads the words into it.
|
||||
*
|
||||
* @param url
|
||||
* @param resourceBundle
|
||||
*/
|
||||
@Override
|
||||
public void initialize(URL url, ResourceBundle resourceBundle) {
|
||||
list.addAll(App.dictionary);
|
||||
table.setRowFactory(tv -> {
|
||||
TableRow<DictionaryEntry> row = new TableRow<DictionaryEntry>() {
|
||||
@Override
|
||||
protected void updateItem(DictionaryEntry dictionaryEntry, boolean b) {
|
||||
super.updateItem(dictionaryEntry, b);
|
||||
if (!isEmpty()) {
|
||||
if (dictionaryEntry.isPracticeWord()) {
|
||||
setStyle("-fx-background-color: gray;");
|
||||
} else {
|
||||
setStyle(" ");
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
row.setOnMouseClicked(mouseEvent -> {
|
||||
if (mouseEvent.getClickCount() == 1 && (!row.isEmpty())) {
|
||||
if (row.getItem().isPracticeWord()) {
|
||||
App.dictionary.get(list.indexOf(row.getItem())).setPracticeWord(false);
|
||||
// row.getItem().setPracticeWord(false);
|
||||
}
|
||||
else if (!row.getItem().isPracticeWord()) {
|
||||
App.dictionary.get(list.indexOf(row.getItem())).setPracticeWord(true);
|
||||
// row.getItem().setPracticeWord(true);
|
||||
}
|
||||
table.getSelectionModel().clearSelection();
|
||||
}
|
||||
});
|
||||
return row;}
|
||||
);
|
||||
welsh.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<DictionaryEntry, String>, ObservableValue<String>>() {
|
||||
@Override
|
||||
public ObservableValue<String> call(TableColumn.CellDataFeatures<DictionaryEntry, String> dictionaryEntryStringCellDataFeatures) {
|
||||
if (dictionaryEntryStringCellDataFeatures.getValue().getWordType().equals("nm")) {
|
||||
return new SimpleStringProperty(dictionaryEntryStringCellDataFeatures.getValue().getWelsh() + " {nm}");
|
||||
}
|
||||
else if (dictionaryEntryStringCellDataFeatures.getValue().getWordType().equals("nf")) {
|
||||
return new SimpleStringProperty(dictionaryEntryStringCellDataFeatures.getValue().getWelsh() + " {nf}");
|
||||
}
|
||||
else {
|
||||
return new SimpleStringProperty(dictionaryEntryStringCellDataFeatures.getValue().getWelsh());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
english.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<DictionaryEntry, String>, ObservableValue<String>>() {
|
||||
@Override
|
||||
public ObservableValue<String> call(TableColumn.CellDataFeatures<DictionaryEntry, String> dictionaryEntryStringCellDataFeatures) {
|
||||
if (dictionaryEntryStringCellDataFeatures.getValue().getWordType().equals("verb")) {
|
||||
return new SimpleStringProperty("to " + dictionaryEntryStringCellDataFeatures.getValue().getEnglish());
|
||||
}
|
||||
else {
|
||||
return new SimpleStringProperty(dictionaryEntryStringCellDataFeatures.getValue().getEnglish());
|
||||
}
|
||||
}
|
||||
});
|
||||
// welsh.setCellValueFactory(new PropertyValueFactory<DictionaryEntry, String>("welsh"));
|
||||
// english.setCellValueFactory(new PropertyValueFactory<DictionaryEntry, String>("english"));
|
||||
table.setItems(list);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
/**
|
||||
* @(#) DictionaryEntry.java 0,1 2020/04/07
|
||||
* <p>
|
||||
* Copyright (c) 2020 Aberystwyth University.
|
||||
* All rights reserved.
|
||||
*/
|
||||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.DictionaryController;
|
||||
|
||||
/**
|
||||
* A class that demonstrates how a controller works.
|
||||
*
|
||||
* @author Brad Corbett [brc9]
|
||||
* @author Henry Dugmore [hjd3]
|
||||
* @author Kain Bryan-Jones [kab74]
|
||||
* @author Luke Wybar [law39]
|
||||
* @author Marcin Jakob [maj83]
|
||||
* @author Oscar Pocock [osp1]
|
||||
* @author Tom Perry [top1]
|
||||
* @author Waylen Watts [ncw]
|
||||
* @version 0.1 Initial development
|
||||
* @see DictionaryController
|
||||
*/
|
||||
public class DictionaryEntry {
|
||||
private String english;
|
||||
private String welsh;
|
||||
private String wordType;
|
||||
private Boolean practiceWord;
|
||||
|
||||
/**
|
||||
* Creates new instance of a DictionaryEntry
|
||||
*
|
||||
* @param english english translation of the word
|
||||
* @param welsh welsh translation of the word
|
||||
* @param wordType type of word
|
||||
* @param practiceWord determines if the entry is in the practice list
|
||||
* @see App
|
||||
* @see DictionaryController
|
||||
*/
|
||||
public DictionaryEntry(String english, String welsh, String wordType, Boolean practiceWord) {
|
||||
this.english = english;
|
||||
this.welsh = welsh;
|
||||
this.wordType = wordType;
|
||||
this.practiceWord = practiceWord;
|
||||
|
||||
}
|
||||
|
||||
public String getEnglish() {
|
||||
return english;
|
||||
}
|
||||
|
||||
public void setEnglish(String english) {
|
||||
this.english = english;
|
||||
}
|
||||
|
||||
public String getWelsh() {
|
||||
return welsh;
|
||||
}
|
||||
|
||||
public void setWelsh(String welsh) {
|
||||
this.welsh = welsh;
|
||||
}
|
||||
|
||||
public String getWordType() {
|
||||
return wordType;
|
||||
}
|
||||
|
||||
public void setWordType(String wordType) {
|
||||
this.wordType = wordType;
|
||||
}
|
||||
|
||||
public Boolean isPracticeWord() {
|
||||
return practiceWord;
|
||||
}
|
||||
|
||||
public void setPracticeWord(Boolean practiceWord) {
|
||||
this.practiceWord = practiceWord;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,151 @@
|
|||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.image.Image;
|
||||
import javafx.scene.image.ImageView;
|
||||
import javafx.scene.text.Text;
|
||||
import java.util.Random;
|
||||
|
||||
|
||||
/**
|
||||
* Placeholder Controller
|
||||
*/
|
||||
public class PrimaryController {
|
||||
ArrayList<DictionaryEntry> practiceList = new ArrayList<>();
|
||||
|
||||
ArrayList<Integer> numbersUsed = new ArrayList<Integer>();
|
||||
int correctGuessesInt = 0;
|
||||
int incorrectGuessesInt = 0;
|
||||
|
||||
int chosenWord = 0;
|
||||
@FXML
|
||||
private TextField translationBox;
|
||||
|
||||
@FXML
|
||||
private Text typeOfTest;
|
||||
|
||||
@FXML
|
||||
private Text wordToTranslate;
|
||||
|
||||
@FXML
|
||||
private Text correctGuesses;
|
||||
|
||||
@FXML
|
||||
private Text incorrectGuesses;
|
||||
|
||||
@FXML
|
||||
private ImageView submitButton;
|
||||
|
||||
Random rand = new Random();
|
||||
|
||||
|
||||
boolean englishOrWelsh = false; // False means English to Welsh, true means Welsh to English
|
||||
|
||||
|
||||
|
||||
@FXML
|
||||
private void initialize(){
|
||||
|
||||
submitButton.setImage(new Image ("file:src/main/resources/assets/right-icon.png"));
|
||||
|
||||
for(DictionaryEntry entry : App.dictionary){
|
||||
if(entry.isPracticeWord()){
|
||||
practiceList.add(entry);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
chosenWord = (rand.nextInt(practiceList.size()));
|
||||
numbersUsed.add(chosenWord);
|
||||
|
||||
englishOrWelsh = rand.nextBoolean();
|
||||
|
||||
correctGuesses.setText("Correct Guesses: 0");
|
||||
incorrectGuesses.setText("Incorrect Guesses: 0");
|
||||
|
||||
if(englishOrWelsh){
|
||||
wordToTranslate.setText(practiceList.get(chosenWord).getEnglish());
|
||||
}
|
||||
else{
|
||||
wordToTranslate.setText(practiceList.get(chosenWord).getWelsh());
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@FXML
|
||||
private void switchToSecondary() throws IOException {
|
||||
App.setRoot("secondary");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@FXML
|
||||
void translateWord() {
|
||||
|
||||
|
||||
if(englishOrWelsh) {
|
||||
if (translationBox.getText().equals(practiceList.get(chosenWord).getWelsh())) {
|
||||
correctGuessesInt++;
|
||||
} else {
|
||||
incorrectGuessesInt++;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if (translationBox.getText().equals(practiceList.get(chosenWord).getEnglish())) {
|
||||
correctGuessesInt++;
|
||||
} else {
|
||||
incorrectGuessesInt++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
correctGuesses.setText("Correct Guesses: " + correctGuessesInt);
|
||||
incorrectGuesses.setText("Incorrect Guesses: " + incorrectGuessesInt);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
do{
|
||||
chosenWord = (rand.nextInt(practiceList.size()));
|
||||
}while((numbersUsed.contains(chosenWord)) && numbersUsed.size() < practiceList.size());
|
||||
|
||||
numbersUsed.add(chosenWord);
|
||||
|
||||
if(numbersUsed.size() > practiceList.size()){
|
||||
wordToTranslate.setText("Test Complete");
|
||||
submitButton.setVisible(false);
|
||||
}
|
||||
|
||||
if(englishOrWelsh){
|
||||
wordToTranslate.setText(practiceList.get(chosenWord).getEnglish());
|
||||
}
|
||||
else{
|
||||
wordToTranslate.setText(practiceList.get(chosenWord).getWelsh());
|
||||
}
|
||||
|
||||
if(numbersUsed.size() > practiceList.size()){
|
||||
wordToTranslate.setText("Test Complete");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
import java.io.IOException;
|
||||
import javafx.fxml.FXML;
|
||||
/**
|
||||
* Placeholder Controller
|
||||
*/
|
||||
public class SecondaryController {
|
||||
|
||||
@FXML
|
||||
private void switchToPrimary() throws IOException {
|
||||
App.setRoot("primary");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
package uk.ac.aber.cs22120.group20;
|
||||
|
||||
public class WelshDictionary {
|
||||
private String english;
|
||||
private String welsh;
|
||||
private String wordType;
|
||||
|
||||
|
||||
public WelshDictionary() {
|
||||
}
|
||||
|
||||
public WelshDictionary(String english, String welsh, String wordType) {
|
||||
this.english = english;
|
||||
this.welsh = welsh;
|
||||
this.wordType = wordType;
|
||||
}
|
||||
|
||||
public String getEnglish() {
|
||||
return english;
|
||||
}
|
||||
|
||||
public void setEnglish(String english) {
|
||||
this.english = english;
|
||||
}
|
||||
|
||||
public String getWelsh() {
|
||||
return welsh;
|
||||
}
|
||||
|
||||
public void setWelsh(String welsh) {
|
||||
this.welsh = welsh;
|
||||
}
|
||||
|
||||
public String getWordType() {
|
||||
return wordType;
|
||||
}
|
||||
|
||||
public void setWordType(String wordType) {
|
||||
this.wordType = wordType;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "WelshDictionary{" +
|
||||
"english='" + english + '\'' +
|
||||
", welsh='" + welsh + '\'' +
|
||||
", wordType='" + wordType + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 363 B |
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<Label text="Boi" />
|
||||
<Button fx:id="primaryButton" text="Switch to Secondary View" onAction="#switchToSecondary"/>
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.SecondaryController">
|
||||
<children>
|
||||
<Label text="Secondary View" />
|
||||
<Button fx:id="secondaryButton" text="Switch to Primary View" onAction="#switchToPrimary" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.control.TextField?>
|
||||
<?import javafx.scene.control.TitledPane?>
|
||||
<?import javafx.scene.image.ImageView?>
|
||||
<?import javafx.scene.layout.AnchorPane?>
|
||||
<?import javafx.scene.layout.Pane?>
|
||||
<?import javafx.scene.text.Font?>
|
||||
<?import javafx.scene.text.Text?>
|
||||
|
||||
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<TitledPane animated="false" prefHeight="400.0" prefWidth="600.0" text="Learn">
|
||||
<content>
|
||||
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
|
||||
<children>
|
||||
<TextField fx:id="translationBox" layoutX="205.0" layoutY="199.0" prefHeight="45.0" prefWidth="188.0" promptText="Enter translation here" />
|
||||
<Text fx:id="typeOfTest" fill="#8d8d8d" layoutX="246.0" layoutY="343.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Translation">
|
||||
<font>
|
||||
<Font name="System Italic" size="22.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="wordToTranslate" layoutX="165.0" layoutY="147.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Word To Translate">
|
||||
<font>
|
||||
<Font size="33.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="correctGuesses" layoutX="407.0" layoutY="20.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Correct Guesses: 0" wrappingWidth="227.18359375">
|
||||
<font>
|
||||
<Font size="17.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="incorrectGuesses" layoutX="407.0" layoutY="43.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Incorrect Guesses: 0">
|
||||
<font>
|
||||
<Font size="17.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<ImageView fx:id="submitButton" fitHeight="46.0" fitWidth="69.0" layoutX="398.0" layoutY="199.0" onMouseClicked="#translateWord" pickOnBounds="true" preserveRatio="true" />
|
||||
</children>
|
||||
</AnchorPane>
|
||||
</content>
|
||||
</TitledPane>
|
||||
</children>
|
||||
</Pane>
|
Binary file not shown.
After Width: | Height: | Size: 363 B |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<Label text="Boi" />
|
||||
<Button fx:id="primaryButton" text="Switch to Secondary View" onAction="#switchToSecondary"/>
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.SecondaryController">
|
||||
<children>
|
||||
<Label text="Secondary View" />
|
||||
<Button fx:id="secondaryButton" text="Switch to Primary View" onAction="#switchToPrimary" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.control.TextField?>
|
||||
<?import javafx.scene.control.TitledPane?>
|
||||
<?import javafx.scene.image.ImageView?>
|
||||
<?import javafx.scene.layout.AnchorPane?>
|
||||
<?import javafx.scene.layout.Pane?>
|
||||
<?import javafx.scene.text.Font?>
|
||||
<?import javafx.scene.text.Text?>
|
||||
|
||||
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<TitledPane animated="false" prefHeight="400.0" prefWidth="600.0" text="Learn">
|
||||
<content>
|
||||
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
|
||||
<children>
|
||||
<TextField fx:id="translationBox" layoutX="205.0" layoutY="199.0" prefHeight="45.0" prefWidth="188.0" promptText="Enter translation here" />
|
||||
<Text fx:id="typeOfTest" fill="#8d8d8d" layoutX="246.0" layoutY="343.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Translation">
|
||||
<font>
|
||||
<Font name="System Italic" size="22.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="wordToTranslate" layoutX="165.0" layoutY="147.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Word To Translate">
|
||||
<font>
|
||||
<Font size="33.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="correctGuesses" layoutX="407.0" layoutY="20.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Correct Guesses: 0" wrappingWidth="227.18359375">
|
||||
<font>
|
||||
<Font size="17.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<Text fx:id="incorrectGuesses" layoutX="407.0" layoutY="43.0" strokeType="OUTSIDE" strokeWidth="0.0" text="Incorrect Guesses: 0">
|
||||
<font>
|
||||
<Font size="17.0" />
|
||||
</font>
|
||||
</Text>
|
||||
<ImageView fx:id="submitButton" fitHeight="46.0" fitWidth="69.0" layoutX="398.0" layoutY="199.0" onMouseClicked="#translateWord" pickOnBounds="true" preserveRatio="true" />
|
||||
</children>
|
||||
</AnchorPane>
|
||||
</content>
|
||||
</TitledPane>
|
||||
</children>
|
||||
</Pane>
|
BIN
dev/20200414/brc9/translationWork/right-icon.png
Normal file
BIN
dev/20200414/brc9/translationWork/right-icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 363 B |
BIN
dev/20200414/kab74/DesignSpecGroup20.docx
Normal file
BIN
dev/20200414/kab74/DesignSpecGroup20.docx
Normal file
Binary file not shown.
BIN
dev/20200414/kab74/DesignSpecGroup20.odg
Normal file
BIN
dev/20200414/kab74/DesignSpecGroup20.odg
Normal file
Binary file not shown.
BIN
dev/20200414/kab74/DesignSpecGroup20.pdf
Normal file
BIN
dev/20200414/kab74/DesignSpecGroup20.pdf
Normal file
Binary file not shown.
13
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/compiler.xml
Normal file
13
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/compiler.xml
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<annotationProcessing>
|
||||
<profile name="Maven default annotation processors profile" enabled="true">
|
||||
<sourceOutputDir name="target/generated-sources/annotations" />
|
||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||
<outputRelativeToContentRoot value="true" />
|
||||
<module name="Welsh Vocabulary Tutor" />
|
||||
</profile>
|
||||
</annotationProcessing>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding" addBOMForNewFiles="with NO BOM">
|
||||
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
|
||||
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
|
||||
</component>
|
||||
</project>
|
14
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/misc.xml
Normal file
14
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/misc.xml
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="MavenProjectsManager">
|
||||
<option name="originalFiles">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/pom.xml" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="11.0.6 (2)" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
7
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
7
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../.." vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
151
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/workspace.xml
Normal file
151
dev/20200414/kab74/Welsh Vocabulary Tutor/.idea/workspace.xml
Normal file
|
@ -0,0 +1,151 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200407/kab74/Welsh Vocabulary Tutor/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200407/kab74/Welsh Vocabulary Tutor/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200407/kab74/Welsh Vocabulary Tutor/src/main/java/JSON/DictionaryEntry.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200407/kab74/Welsh Vocabulary Tutor/src/main/java/JSON/DictionaryEntry.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/encodings.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_base_win_11.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_base_linux_11.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_controls_win_11.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_controls_linux_11.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_fxml_win_11.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_fxml_linux_11.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_graphics_win_11.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/Maven__org_openjfx_javafx_graphics_linux_11.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/com_fasterxml_jackson_core_jackson_databind_2_9_4.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/libraries/com_fasterxml_jackson_core_jackson_databind_2_9_4.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/.idea/misc.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/Welsh Vocabulary Tutor.iml" beforeDir="false" afterPath="$PROJECT_DIR$/../../../20200421/law39/Welsh Vocabulary Tutor/Welsh Vocabulary Tutor.iml" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/../../../.." />
|
||||
</component>
|
||||
<component name="MavenImportPreferences">
|
||||
<option name="importingSettings">
|
||||
<MavenImportingSettings>
|
||||
<option name="importAutomatically" value="true" />
|
||||
</MavenImportingSettings>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectId" id="1ZuzdvhY95vKxjmCaMLe5YQbnXd" />
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
||||
<component name="ProjectViewState">
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showExcludedFiles" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="aspect.path.notification.shown" value="true" />
|
||||
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1586203717298" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20" />
|
||||
<property name="project.structure.last.edited" value="Libraries" />
|
||||
<property name="project.structure.proportion" value="0.0" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/src/main/java/uk/ac/aber/cs22120/group20" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="App" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="uk.ac.aber.cs22120.group20.App" />
|
||||
<module name="Welsh Vocabulary Tutor" />
|
||||
<extension name="coverage">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="uk.ac.aber.cs22120.group20.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Application.App" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="b436be74-9b31-4913-bf6e-41784cacd483" name="Default Changelist" comment="" />
|
||||
<created>1585703857421</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1585703857421</updated>
|
||||
<workItem from="1585703861677" duration="881000" />
|
||||
<workItem from="1587051369795" duration="11000" />
|
||||
<workItem from="1587054283250" duration="26000" />
|
||||
<workItem from="1587388308725" duration="10988000" />
|
||||
<workItem from="1587458518156" duration="2015000" />
|
||||
<workItem from="1587730315755" duration="13046000" />
|
||||
<workItem from="1587807634142" duration="19000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="Vcs.Log.Tabs.Properties">
|
||||
<option name="TAB_STATES">
|
||||
<map>
|
||||
<entry key="MAIN">
|
||||
<value>
|
||||
<State>
|
||||
<option name="COLUMN_ORDER" />
|
||||
</State>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
<component name="WindowStateProjectService">
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.bottom" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.bottom/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.center" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.center/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.left" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.left/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.right" timestamp="1585703985278">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state width="1878" height="282" key="GridCell.Tab.0.right/0.0.1920.1040@0.0.1920.1040" timestamp="1585703985278" />
|
||||
<state x="441" y="95" key="SettingsEditor" timestamp="1585703966325">
|
||||
<screen x="0" y="0" width="1920" height="1040" />
|
||||
</state>
|
||||
<state x="441" y="95" key="SettingsEditor/0.0.1920.1040@0.0.1920.1040" timestamp="1585703966325" />
|
||||
</component>
|
||||
</project>
|
44
dev/20200414/kab74/Welsh Vocabulary Tutor/pom.xml
Normal file
44
dev/20200414/kab74/Welsh Vocabulary Tutor/pom.xml
Normal file
|
@ -0,0 +1,44 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>uk.ac.aber.cs22120.group20</groupId>
|
||||
<artifactId>Welsh Vocabulary Tutor</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>11</maven.compiler.source>
|
||||
<maven.compiler.target>11</maven.compiler.target>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-controls</artifactId>
|
||||
<version>11</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-fxml</artifactId>
|
||||
<version>11</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.8.0</version>
|
||||
<configuration>
|
||||
<release>11</release>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.openjfx</groupId>
|
||||
<artifactId>javafx-maven-plugin</artifactId>
|
||||
<version>0.0.1</version>
|
||||
<configuration>
|
||||
<mainClass>uk.ac.aber.cs22120.group20.App</mainClass>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1,7 @@
|
|||
module uk.ac.aber.cs22120.group20 {
|
||||
requires javafx.controls;
|
||||
requires javafx.fxml;
|
||||
|
||||
opens uk.ac.aber.cs22120.group20 to javafx.fxml;
|
||||
exports uk.ac.aber.cs22120.group20;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package uk.ac.aber.cs22120.group20.javafx;
|
||||
|
||||
import javafx.scene.Scene;
|
||||
|
||||
/**
|
||||
* Programs main class that contains a list of the loaded dictionary definitions and is
|
||||
* responsible for running the application.
|
||||
* Launch class of the Welsh Vocabulary tutor Application
|
||||
* @author Kain Bryan-Jones [kab74]
|
||||
* @author Brad Corbett [brc9]
|
||||
* @author Henry Dugmore [hjd3]
|
||||
* @author Marcin Jakob [maj83]
|
||||
* @author Tom Perry [top1]
|
||||
* @author Oscar Pocock [osp1]
|
||||
* @author Waylen Watts [ncw]
|
||||
* @author Luke Wybar [law39]
|
||||
* @version 0.1
|
||||
* @See
|
||||
*/
|
||||
public class Application {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
package uk.ac.aber.cs22120.group20.javafx;
|
||||
|
||||
/**
|
||||
* Class that contains all the scenes for the JavaFX user interface and will be responsible
|
||||
* for initiating the transition to new ones.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class ScreenSwitch extends SharedCodeController {
|
||||
|
||||
/**
|
||||
* Method that is responsible for the switching between
|
||||
* JavaFX, with it taking the new scene’s name as a parameter.
|
||||
*/
|
||||
public void swap(SceneEnum newScene){
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package uk.ac.aber.cs22120.group20.javafx;
|
||||
|
||||
/**
|
||||
* Abstract class that contains all the shared FXML elements between the
|
||||
* different controller classes including the sliding menu and the test score counter, to reduce code
|
||||
* duplication. This will be extended by all the controller classes.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
abstract public class SharedCodeController {
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package uk.ac.aber.cs22120.group20.json;
|
||||
|
||||
import java.io.*;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* Contains functions responsible for saving and loading to and from the JSON file
|
||||
* which will be provided by the user, using the Jackson JSON library.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class JSONProcessor {
|
||||
|
||||
/**
|
||||
* Method for loading the list of
|
||||
* dictionary definitions from a JSON file.
|
||||
* @param dictionaryFile
|
||||
*/
|
||||
public LinkedList<WelshDictionary> load(File dictionaryFile){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Method for saving
|
||||
* the list of dictionary definitions to a JSON file.
|
||||
*/
|
||||
public void save(File dictionaryFile, LinkedList<WelshDictionary> words){
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,119 @@
|
|||
package uk.ac.aber.cs22120.group20.json;
|
||||
|
||||
/**
|
||||
* Class containing all the fields needed for storing dictionary definitions including
|
||||
* Welsh and English translations along with its word type and whether it’s a practice word or not.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class WelshDictionary implements Comparable<WelshDictionary>{
|
||||
|
||||
private String welshWord;
|
||||
private String englishWord;
|
||||
private String wordType;
|
||||
private boolean isPracticeWord;
|
||||
private String practiceWord;
|
||||
|
||||
/**
|
||||
* Default constructor for WelshDictionary.
|
||||
*/
|
||||
public WelshDictionary(){};
|
||||
|
||||
/**
|
||||
*
|
||||
* @param englishWord
|
||||
* @param welshWord
|
||||
* @param wordType
|
||||
* @param isPracticeWord
|
||||
*/
|
||||
public WelshDictionary(String englishWord, String welshWord, String wordType, Boolean isPracticeWord){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String getWelshWord(){
|
||||
return welshWord;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String getEnglishWord(){
|
||||
return englishWord;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String getWordType(){
|
||||
return wordType;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public boolean isPracticeWord(){
|
||||
return isPracticeWord();
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param welshWord
|
||||
*/
|
||||
public void setWelshWord(String welshWord){
|
||||
this.welshWord=welshWord;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param englishWord
|
||||
*/
|
||||
public void setEnglishWord(String englishWord){
|
||||
this.englishWord=englishWord;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param wordType
|
||||
*/
|
||||
public void setWordType(String wordType){
|
||||
this.wordType=wordType;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param practiceWord
|
||||
*/
|
||||
public void setPracticeWord(String practiceWord){
|
||||
this.practiceWord() = practiceWord;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param o
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean equals(Object o){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param welshDictionary
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public int compareTo(WelshDictionary welshDictionary) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
package uk.ac.aber.cs22120.group20.selfassessment;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.json.WelshDictionary;
|
||||
|
||||
import java.util.LinkedList;
|
||||
|
||||
/**
|
||||
* Class that contains methods to create a randomised list of questions that will
|
||||
* contain a random distribution of question types.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class AssessmentGenerator extends Question{
|
||||
|
||||
/**
|
||||
* Method that will generate a randomized list of questions consisting of random distribution of questions
|
||||
* types, using the dictionary’s practice words as the parameter.
|
||||
* @param wordList
|
||||
* @return
|
||||
*/
|
||||
public LinkedList<Question> generateAssessment(LinkedList<WelshDictionary> wordList){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Method
|
||||
* that will generate a list of questions that are the type ‘Match The Meanings’, using the dictionary's
|
||||
* practice words as the parameter.
|
||||
* @return
|
||||
*/
|
||||
public LinkedList<Question> generateWordMatch(LinkedList<WelshDictionary>){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Method
|
||||
* that will generate a list of questions that are the type ‘6 Meanings’, using the dictionary's practice
|
||||
* words as the parameter.
|
||||
* @return
|
||||
*/
|
||||
public LinkedList<Question> generateSixMeanings(LinkedList<WelshDictionar>){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Method that
|
||||
* will generate a list of questions that are the type ‘Translation’, using the dictionary's practice words as
|
||||
* the parameter.
|
||||
* @return
|
||||
*/
|
||||
public LinkedList<Question> generateWordEnter(LinkedList<WelshDictionary>){
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package uk.ac.aber.cs22120.group20.selfassessment;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.json.WelshDictionary;
|
||||
|
||||
/**
|
||||
* Abstract class contains the basic information that all the shared information between the
|
||||
* types of test questions including the questions’ correct answers and possible answers. All question
|
||||
* classes will extend this class.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class Question {
|
||||
|
||||
/**
|
||||
* Constructor for
|
||||
* WordEnterQuestion that takes a WelshDictionary object that is being tested on as the parameter.
|
||||
* @param correctAnswer
|
||||
*/
|
||||
public wordEnterQuestion(WelshDictionary correctAnswer){
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package uk.ac.aber.cs22120.group20.selfassessment;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.json.WelshDictionary;
|
||||
|
||||
/**
|
||||
* Class that contains all the details needed for the ‘Six Meanings’ question
|
||||
* type, including the correct answer along with the five other possible answers. This class will be used by
|
||||
* the AssessmentGenerator and extends the Question class.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class SixMeaningsQuestion extends Question {
|
||||
|
||||
/**
|
||||
* Constructor for SixMeaningQuestion that takes one WelshDictionary object that is being
|
||||
* tested along with the full list of words which will be used to generate randomized possible answers as
|
||||
* the parameters.
|
||||
* @param correctAnswer
|
||||
* @param dictionary
|
||||
*/
|
||||
public sixMeaningQuestions(WelshDictionary correctAnswer, LinkedList<WelshDictionary> dictionary){
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
package uk.ac.aber.cs22120.group20.selfassessment;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.json.WelshDictionary;
|
||||
|
||||
/**
|
||||
* Class that contains all the details needed for the ‘Translation’ question type,
|
||||
* including the practice definition that is being tested. This class will be used by the
|
||||
* AssessmentGenerator and extends the Question class.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class WordEnterQuestion extends Question{
|
||||
|
||||
/**
|
||||
* Constructor for
|
||||
* WordEnterQuestion that takes a WelshDictionary object that is being tested on as the parameter.
|
||||
* @param correctAnswer
|
||||
*/
|
||||
public WordEnterQuestion(WelshDictionary correctAnswer){
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
package uk.ac.aber.cs22120.group20.selfassessment;
|
||||
|
||||
import uk.ac.aber.cs22120.group20.json.WelshDictionary;
|
||||
|
||||
/**
|
||||
* Class that contains all the details needed for the ‘Match the Meanings’
|
||||
* question type, including the 4 different practice definitions. This class will be used by the
|
||||
* AssessmentGenerator and extends the Question class.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class WordMatchQuestion {
|
||||
|
||||
/**
|
||||
* Class that contains all the details needed for the ‘Match the Meanings’
|
||||
* question type, including the 4 different practice definitions. This class will be used by the
|
||||
* AssessmentGenerator and extends the Question class.
|
||||
* @param correctAnswers
|
||||
*/
|
||||
public WordMatchQuestion(WelshDictionary[] correctAnswers){
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
package uk.ac.aber.cs22120.group20.test;
|
||||
|
||||
/**
|
||||
* Class that contains methods which will be used to test that the JSON package classes are
|
||||
* correctly loading and saving to and from the JSON file.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class JSONTest {
|
||||
|
||||
/**
|
||||
* JUnit test to check that the JSON file has been correctly loaded.
|
||||
*/
|
||||
@test public void testLoad(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* JUnit test to check that any changes to the list of definitions are
|
||||
* updated and saved to the JSON file accordingly.
|
||||
*/
|
||||
@test public void testSave(){
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
package uk.ac.aber.cs22120.group20.test;
|
||||
|
||||
/**
|
||||
* Class that contains methods to test that the application class is correctly storing the full
|
||||
* list of dictionary definitions.
|
||||
* Furthermore, this class will also test that the elements such as the sliding menu and score counter are
|
||||
* working as intended, along with testing that scenes are ending and transitioning correctly when
|
||||
* applicable.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class JavaFXTest {
|
||||
|
||||
/**
|
||||
* Tests to confirm that the dictionary definitions loaded match to an
|
||||
* identical base set.
|
||||
*/
|
||||
@test public void testDefinition(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Test to confirm that the user score counter correctly increases
|
||||
* by increments on one.
|
||||
*/
|
||||
@test public void testScoreCounter(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* A preset search test to confirm that words are being searched for
|
||||
* correctly.
|
||||
*/
|
||||
@test public void testFindWord(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* A test to check that a new word is correctly added and saved to
|
||||
* the JSON file.
|
||||
*/
|
||||
@test public void testAddWord(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*A test to check that the JSON file is correctly updated when a
|
||||
* word is removed.
|
||||
*/
|
||||
@test public void testRemoveWord(){
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package uk.ac.aber.cs22120.group20.test;
|
||||
|
||||
/**
|
||||
* This class will test that the lists pulled in the self-assessment package are indeed
|
||||
* random, while also pulling the matching data from the dictionary.
|
||||
* @Author
|
||||
* @Version
|
||||
* @See
|
||||
*/
|
||||
public class SelfAssesmentTest {
|
||||
|
||||
/**
|
||||
* Test to confirm that the random number return is working
|
||||
* correctly.
|
||||
*/
|
||||
@test
|
||||
public void testRandomReturn(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Test to check and confirm that the game types are
|
||||
* either made available or are locked off depending on the number of practice list questions.
|
||||
*/
|
||||
@test
|
||||
public void testAvailableSelfAssessment(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that will check that an input by a user is correctly checked
|
||||
* to the correct answer.
|
||||
*/
|
||||
@test
|
||||
public void testUserAnswer(){}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<Label text="Primary View" />
|
||||
<Button fx:id="primaryButton" text="Switch to Secondary View" onAction="#switchToSecondary"/>
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.SecondaryController">
|
||||
<children>
|
||||
<Label text="Secondary View" />
|
||||
<Button fx:id="secondaryButton" text="Switch to Primary View" onAction="#switchToPrimary" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.PrimaryController">
|
||||
<children>
|
||||
<Label text="Primary View" />
|
||||
<Button fx:id="primaryButton" text="Switch to Secondary View" onAction="#switchToSecondary"/>
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.geometry.Insets?>
|
||||
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="uk.ac.aber.cs22120.group20.SecondaryController">
|
||||
<children>
|
||||
<Label text="Secondary View" />
|
||||
<Button fx:id="secondaryButton" text="Switch to Primary View" onAction="#switchToPrimary" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
|
||||
</padding>
|
||||
</VBox>
|
18
dev/20200414/kab74/issues
Normal file
18
dev/20200414/kab74/issues
Normal file
|
@ -0,0 +1,18 @@
|
|||
* sharedCodeController description is different in classes than design spec.
|
||||
* Design spec "public" is with lower case p.
|
||||
* Design spec when listing function names shouldn't end with semicolon
|
||||
* Changed setters and getters and field variables in WelshDictionary to comply
|
||||
more with QA9's point on real word objects.
|
||||
* What is SceneEnum? I can't find it anywhere. And is that really a good name?
|
||||
* I Renamed self-assessment package because java doesn't allow '-' in name of package.
|
||||
* TestUser in design spec has no brackets.
|
||||
* TestFindWord also has no brackets
|
||||
* No description for class 4.2.2
|
||||
* 4.2.2 changed 'words' to 'wordList' to comply with QA9 real word object point.
|
||||
* Rearanged authors on 'Application' to be alphabetical by surname.
|
||||
* 4.2.4 it is illegal to state an array size in method signature(Design spec).
|
||||
* WelshDictionary setter/getter for practice word should check whether the word
|
||||
is a practice word first.
|
||||
* WelshDictionary wordType should be an Enum.
|
||||
|
||||
|
0
dev/20200414/maj83/.gitkeep
Normal file
0
dev/20200414/maj83/.gitkeep
Normal file
0
dev/20200414/maj83/Welsh Vocabulary Tutor/.gitkeep
Normal file
0
dev/20200414/maj83/Welsh Vocabulary Tutor/.gitkeep
Normal file
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
|
||||
</project>
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="lib">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../javafx-sdk-14/lib" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/../javafx-sdk-14/lib" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/../javafx-sdk-14/lib" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/../javafx-sdk-14/lib" recursive="false" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/Match the meaning.iml" filepath="$PROJECT_DIR$/Match the meaning.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,413 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="fbb2a4a0-47c2-4eac-8067-df2e585c83b3" name="Default Changelist" comment="" />
|
||||
<ignored path="$PROJECT_DIR$/out/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/Main.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="23" selection-start-line="23" selection-end-line="23" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/MyController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="416">
|
||||
<caret line="114" selection-start-line="114" selection-end-line="114" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/DictionaryEntry.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="357">
|
||||
<caret line="27" selection-start-line="27" selection-end-line="27" />
|
||||
<folding>
|
||||
<element signature="e#684#685#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/MatchTheMeaning.fxml">
|
||||
<provider editor-type-id="JavaFX-Scene-Builder" />
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="275">
|
||||
<caret line="55" column="86" lean-forward="true" selection-start-line="55" selection-start-column="86" selection-end-line="55" selection-end-column="86" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/DictionaryEntry.java" />
|
||||
<option value="$PROJECT_DIR$/src/Main.java" />
|
||||
<option value="$PROJECT_DIR$/src/MyController.java" />
|
||||
<option value="$PROJECT_DIR$/src/MatchTheMeaning.fxml" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-9" />
|
||||
<option name="y" value="-9" />
|
||||
<option name="width" value="1938" />
|
||||
<option name="height" value="1058" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes />
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="aspect.path.notification.shown" value="true" />
|
||||
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1587042602227" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../javafx-sdk-14/lib" />
|
||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||
<property name="project.structure.last.edited" value="Libraries" />
|
||||
<property name="project.structure.proportion" value="0.15" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="Main" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="Main" />
|
||||
<module name="Match the meaning" />
|
||||
<option name="VM_PARAMETERS" value="--module-path C:\Users\Marcin\Desktop\javafx-sdk-14\lib --add-modules javafx.controls,javafx.fxml" />
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Application.Main" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="fbb2a4a0-47c2-4eac-8067-df2e585c83b3" name="Default Changelist" comment="" />
|
||||
<created>1586778885037</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1586778885037</updated>
|
||||
<workItem from="1586778888266" duration="4356000" />
|
||||
<workItem from="1586790476649" duration="5671000" />
|
||||
<workItem from="1586796522495" duration="9386000" />
|
||||
<workItem from="1587035664037" duration="6621000" />
|
||||
<workItem from="1587208556418" duration="3298000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="29332000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
|
||||
<layout>
|
||||
<window_info content_ui="combo" id="Project" order="0" weight="0.08848614" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info id="Image Layers" order="2" />
|
||||
<window_info id="Designer" order="3" />
|
||||
<window_info id="UI Designer" order="4" />
|
||||
<window_info id="Capture Tool" order="5" />
|
||||
<window_info id="Favorites" order="6" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.21776815" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.3163597" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Version Control" order="8" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" />
|
||||
<window_info anchor="bottom" id="Terminal" order="10" />
|
||||
<window_info anchor="bottom" id="Event Log" order="11" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Messages" order="12" weight="0.32936078" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="right" id="Database" order="4" />
|
||||
<window_info anchor="right" id="Theme Preview" order="5" />
|
||||
<window_info anchor="right" id="Maven" order="6" />
|
||||
<window_info anchor="right" id="Capture Analysis" order="7" />
|
||||
<window_info anchor="right" id="Palette	" order="8" />
|
||||
</layout>
|
||||
<layout-to-restore>
|
||||
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.08848614" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info id="Image Layers" order="2" />
|
||||
<window_info id="Designer" order="3" />
|
||||
<window_info id="UI Designer" order="4" />
|
||||
<window_info id="Capture Tool" order="5" />
|
||||
<window_info id="Favorites" order="6" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
<window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.21776815" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Version Control" order="8" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" />
|
||||
<window_info anchor="bottom" id="Terminal" order="10" />
|
||||
<window_info anchor="bottom" id="Event Log" order="11" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Messages" order="12" weight="0.32936078" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="right" id="Database" order="4" />
|
||||
<window_info anchor="right" id="Theme Preview" order="5" />
|
||||
<window_info anchor="right" id="Maven" order="6" />
|
||||
<window_info anchor="right" id="Capture Analysis" order="7" />
|
||||
<window_info anchor="right" id="Palette	" order="8" />
|
||||
</layout-to-restore>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>file://$PROJECT_DIR$/src/MyController.java</url>
|
||||
<line>108</line>
|
||||
<properties />
|
||||
<option name="timeStamp" value="11" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/out/production/Match the meaning/DictionaryEntry.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="306">
|
||||
<caret line="19" lean-forward="true" selection-start-line="19" selection-end-line="19" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/Main.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="23" selection-start-line="23" selection-end-line="23" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.controls.jar!/javafx/scene/control/ComboBoxBase.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="213">
|
||||
<caret line="135" selection-start-line="135" selection-end-line="135" />
|
||||
<folding>
|
||||
<element signature="e#4575#4576#0" expanded="true" />
|
||||
<element signature="e#4608#4609#0" expanded="true" />
|
||||
<element signature="e#4778#4779#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.base.jar!/javafx/beans/property/DoublePropertyBase.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="180">
|
||||
<caret line="70" selection-start-line="70" selection-end-line="70" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.graphics.jar!/javafx/stage/Window.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="163">
|
||||
<caret line="435" selection-start-line="435" selection-end-line="435" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.fxml.jar!/javafx/fxml/FXMLLoader.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="197">
|
||||
<caret line="2424" selection-start-line="2424" selection-end-line="2424" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.controls.jar!/javafx/scene/control/Labeled.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="202">
|
||||
<caret line="91" selection-start-line="91" selection-end-line="91" />
|
||||
<folding>
|
||||
<element signature="e#3123#3124#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/MatchTheMeaning.fxml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="275">
|
||||
<caret line="55" column="86" lean-forward="true" selection-start-line="55" selection-start-column="86" selection-end-line="55" selection-end-column="86" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="JavaFX-Scene-Builder" />
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.base.jar!/javafx/beans/binding/StringExpression.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="187">
|
||||
<caret line="16" selection-start-line="16" selection-end-line="16" />
|
||||
<folding>
|
||||
<element signature="e#460#461#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/../javafx-sdk-14/lib/javafx.base.jar!/javafx/beans/property/StringPropertyBase.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="219">
|
||||
<caret line="63" selection-start-line="63" selection-end-line="63" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/DictionaryEntry.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="357">
|
||||
<caret line="27" selection-start-line="27" selection-end-line="27" />
|
||||
<folding>
|
||||
<element signature="e#684#685#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/MyController.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="416">
|
||||
<caret line="114" selection-start-line="114" selection-end-line="114" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
<states>
|
||||
<state key="ArtifactsStructureConfigurable.UI">
|
||||
<settings>
|
||||
<artifact-editor />
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
<state key="FacetStructureConfigurable.UI">
|
||||
<settings>
|
||||
<last-edited>No facets are configured</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
<state key="GlobalLibrariesConfigurable.UI">
|
||||
<settings>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
<state key="JdkListConfigurable.UI">
|
||||
<settings>
|
||||
<last-edited>11</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
<state key="ModuleStructureConfigurable.UI">
|
||||
<settings>
|
||||
<last-edited>Match the meaning</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
<option value="0.6" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
<state key="ProjectLibrariesConfigurable.UI">
|
||||
<settings>
|
||||
<last-edited>lib</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
</states>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="lib" level="project" />
|
||||
</component>
|
||||
</module>
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,71 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import java.lang.String?>
|
||||
<?import javafx.collections.FXCollections?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.layout.Pane?>
|
||||
|
||||
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="MyController">
|
||||
<children>
|
||||
<Button fx:id="ConfirmButton" layoutX="271.0" layoutY="321.0" mnemonicParsing="false" text="Confirm" onAction="#checkAnswers" />
|
||||
<Label layoutX="248.0" layoutY="356.0" text="Match the meaning" />
|
||||
<ComboBox fx:id="word1" layoutX="448.0" layoutY="118.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word2" layoutX="448.0" layoutY="153.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word3" layoutX="448.0" layoutY="188.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word4" layoutX="448.0" layoutY="223.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<Label fx:id="WelshWord1" layoutX="343.0" layoutY="122.0" text="Welsh word#3" />
|
||||
<Label fx:id="WelshWord2" layoutX="343.0" layoutY="157.0" text="Welsh word#2" />
|
||||
<Label fx:id="WelshWord3" layoutX="343.0" layoutY="192.0" text="Welsh word#1" />
|
||||
<Label fx:id="WelshWord4" layoutX="343.0" layoutY="227.0" text="Welsh word#4" />
|
||||
<Label fx:id="EngWord1" layoutX="115.0" layoutY="122.0" text="English Word #1" />
|
||||
<Label fx:id="EngWord2" layoutX="115.0" layoutY="157.0" text="English Word #2" />
|
||||
<Label fx:id="EngWord3" layoutX="115.0" layoutY="192.0" text="English Word #3" />
|
||||
<Label fx:id="EngWord4" layoutX="115.0" layoutY="227.0" text="English Word #4" />
|
||||
<Label layoutX="105.0" layoutY="122.0" text="1." />
|
||||
<Label layoutX="105.0" layoutY="157.0" text="2." />
|
||||
<Label layoutX="105.0" layoutY="192.0" text="3." />
|
||||
<Label layoutX="105.0" layoutY="227.0" text="4." />
|
||||
<Label layoutX="367.0" layoutY="23.0" text="Correct answers:" />
|
||||
<Label layoutX="368.0" layoutY="53.0" text="Wrong answers:" />
|
||||
<Label fx:id="CorrectAnswer" layoutX="463.0" layoutY="23.0" text="0" />
|
||||
<Label fx:id="WrongAnswer" layoutX="463.0" layoutY="53.0" text="0" />
|
||||
</children>
|
||||
</Pane>
|
Binary file not shown.
|
@ -0,0 +1,64 @@
|
|||
public class DictionaryEntry {
|
||||
|
||||
private String english;
|
||||
private String welsh;
|
||||
private String wordType;
|
||||
private boolean practiceWord;
|
||||
|
||||
|
||||
public DictionaryEntry(){
|
||||
practiceWord = false;
|
||||
}
|
||||
|
||||
public DictionaryEntry(String english, String welsh, String wordType ){
|
||||
this.english = english;
|
||||
this.welsh = welsh;
|
||||
this.wordType = wordType;
|
||||
}
|
||||
|
||||
public String getEnglish() {
|
||||
return english;
|
||||
}
|
||||
|
||||
public void setEnglish(String english) {
|
||||
this.english = english;
|
||||
}
|
||||
|
||||
public String getWelsh() {
|
||||
return welsh;
|
||||
}
|
||||
|
||||
public void setWelsh(String welsh) {
|
||||
this.welsh = welsh;
|
||||
}
|
||||
|
||||
|
||||
public String getWordType() {
|
||||
return wordType;
|
||||
}
|
||||
|
||||
public void setWordType(String wordType) {
|
||||
this.wordType = wordType;
|
||||
}
|
||||
|
||||
|
||||
public boolean isPracticeWord() {
|
||||
return practiceWord;
|
||||
}
|
||||
|
||||
|
||||
public void setPracticeWord(boolean practiceWord) {
|
||||
this.practiceWord = practiceWord;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "english='" + english + "'\t" +
|
||||
"welsh='" + welsh + "'\t" +
|
||||
"wordType='" + wordType + "'" +
|
||||
"practiceWord = " + practiceWord;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
import javafx.application.Application;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.scene.layout.Pane;
|
||||
import javafx.stage.Stage;
|
||||
|
||||
import java.util.LinkedList;
|
||||
|
||||
|
||||
public class Main extends Application{
|
||||
|
||||
public static LinkedList<DictionaryEntry> dictionary = new LinkedList();
|
||||
|
||||
public static void main(String[] args) {
|
||||
dictionary.add(new DictionaryEntry("abbey", "abaty", "nm"));
|
||||
dictionary.add(new DictionaryEntry("believe", "credu", "verb"));
|
||||
dictionary.add(new DictionaryEntry("concert", "cyngerdd", "nm"));
|
||||
dictionary.add(new DictionaryEntry("disease", "clefyd", "nm"));
|
||||
dictionary.add(new DictionaryEntry("extremely", "dros ben", "other"));
|
||||
dictionary.add(new DictionaryEntry("flu", "ffliw", "nm"));
|
||||
launch(args);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void start(Stage primaryStage) throws Exception{
|
||||
Pane mainPane = FXMLLoader.load(Main.class.getResource("MatchTheMeaning.fxml"));
|
||||
primaryStage.setScene(new Scene(mainPane));
|
||||
primaryStage.show();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,71 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import java.lang.String?>
|
||||
<?import javafx.collections.FXCollections?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.layout.Pane?>
|
||||
|
||||
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="MyController">
|
||||
<children>
|
||||
<Button fx:id="ConfirmButton" layoutX="271.0" layoutY="321.0" mnemonicParsing="false" text="Confirm" onAction="#checkAnswers" />
|
||||
<Label layoutX="248.0" layoutY="356.0" text="Match the meaning" />
|
||||
<ComboBox fx:id="word1" layoutX="448.0" layoutY="118.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word2" layoutX="448.0" layoutY="153.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word3" layoutX="448.0" layoutY="188.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<ComboBox fx:id="word4" layoutX="448.0" layoutY="223.0" prefHeight="25.0" prefWidth="58.0">
|
||||
<items>
|
||||
<FXCollections fx:factory="observableArrayList">
|
||||
<String fx:value="1" />
|
||||
<String fx:value="2" />
|
||||
<String fx:value="3" />
|
||||
<String fx:value="4" />
|
||||
</FXCollections>
|
||||
</items>
|
||||
</ComboBox>
|
||||
<Label fx:id="WelshWord1" layoutX="343.0" layoutY="122.0" text="Welsh word#3" />
|
||||
<Label fx:id="WelshWord2" layoutX="343.0" layoutY="157.0" text="Welsh word#2" />
|
||||
<Label fx:id="WelshWord3" layoutX="343.0" layoutY="192.0" text="Welsh word#1" />
|
||||
<Label fx:id="WelshWord4" layoutX="343.0" layoutY="227.0" text="Welsh word#4" />
|
||||
<Label fx:id="EngWord1" layoutX="115.0" layoutY="122.0" text="English Word #1" />
|
||||
<Label fx:id="EngWord2" layoutX="115.0" layoutY="157.0" text="English Word #2" />
|
||||
<Label fx:id="EngWord3" layoutX="115.0" layoutY="192.0" text="English Word #3" />
|
||||
<Label fx:id="EngWord4" layoutX="115.0" layoutY="227.0" text="English Word #4" />
|
||||
<Label layoutX="105.0" layoutY="122.0" text="1." />
|
||||
<Label layoutX="105.0" layoutY="157.0" text="2." />
|
||||
<Label layoutX="105.0" layoutY="192.0" text="3." />
|
||||
<Label layoutX="105.0" layoutY="227.0" text="4." />
|
||||
<Label layoutX="367.0" layoutY="23.0" text="Correct answers:" />
|
||||
<Label layoutX="368.0" layoutY="53.0" text="Wrong answers:" />
|
||||
<Label fx:id="CorrectAnswer" layoutX="463.0" layoutY="23.0" text="0" />
|
||||
<Label fx:id="WrongAnswer" layoutX="463.0" layoutY="53.0" text="0" />
|
||||
</children>
|
||||
</Pane>
|
|
@ -0,0 +1,141 @@
|
|||
import javafx.fxml.FXML;
|
||||
import javafx.fxml.Initializable;
|
||||
import javafx.scene.control.ComboBox;
|
||||
import javafx.scene.control.Label;
|
||||
|
||||
import java.net.URL;
|
||||
import java.util.*;
|
||||
|
||||
public class MyController implements Initializable {
|
||||
|
||||
private Random rand = new Random();
|
||||
public LinkedList<DictionaryEntry> setOfQuestions=new LinkedList<>();
|
||||
private ArrayList<Integer> temp1 = new ArrayList<>(Arrays.asList(0,1,2,3));
|
||||
private int corAns = 0;
|
||||
private int wrongAns = 0;
|
||||
|
||||
|
||||
@FXML
|
||||
private ComboBox<String> word1;
|
||||
|
||||
@FXML
|
||||
private ComboBox<String> word2;
|
||||
|
||||
@FXML
|
||||
private ComboBox<String> word3;
|
||||
|
||||
@FXML
|
||||
private ComboBox<String> word4;
|
||||
|
||||
@FXML
|
||||
private Label EngWord1;
|
||||
|
||||
@FXML
|
||||
private Label EngWord2;
|
||||
|
||||
@FXML
|
||||
private Label EngWord3;
|
||||
|
||||
@FXML
|
||||
private Label EngWord4;
|
||||
|
||||
@FXML
|
||||
private Label WelshWord1;
|
||||
|
||||
@FXML
|
||||
private Label WelshWord2;
|
||||
|
||||
@FXML
|
||||
private Label WelshWord3;
|
||||
|
||||
@FXML
|
||||
private Label WelshWord4;
|
||||
|
||||
@FXML
|
||||
private Label CorrectAnswer;
|
||||
|
||||
@FXML
|
||||
private Label WrongAnswer;
|
||||
|
||||
|
||||
private void TestLabel(LinkedList<DictionaryEntry> questions, ArrayList<Integer> randOrder){
|
||||
EngWord1.setText(questions.get(0).getEnglish());
|
||||
EngWord2.setText(questions.get(1).getEnglish());
|
||||
EngWord3.setText(questions.get(2).getEnglish());
|
||||
EngWord4.setText(questions.get(3).getEnglish());
|
||||
|
||||
Collections.shuffle(randOrder);
|
||||
|
||||
WelshWord1.setText(questions.get(randOrder.get(0)).getWelsh());
|
||||
WelshWord2.setText(questions.get(randOrder.get(1)).getWelsh());
|
||||
WelshWord3.setText(questions.get(randOrder.get(2)).getWelsh());
|
||||
WelshWord4.setText(questions.get(randOrder.get(3)).getWelsh());
|
||||
}
|
||||
|
||||
private LinkedList<DictionaryEntry> getQuestions(LinkedList<DictionaryEntry> dictionary){
|
||||
boolean isDuplicate = false;
|
||||
do{
|
||||
int rand_q=rand.nextInt(dictionary.size()-1);
|
||||
DictionaryEntry pickedQuestion = dictionary.get(rand_q);
|
||||
if(setOfQuestions.size()>=1){
|
||||
for (DictionaryEntry setOfQuestion : setOfQuestions) {
|
||||
if (setOfQuestion.equals(pickedQuestion)) {
|
||||
isDuplicate = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!isDuplicate){
|
||||
setOfQuestions.add(pickedQuestion);
|
||||
}
|
||||
}else{
|
||||
setOfQuestions.add(pickedQuestion);
|
||||
}
|
||||
isDuplicate =false;
|
||||
}while(setOfQuestions.size()<5);
|
||||
return setOfQuestions;
|
||||
}
|
||||
|
||||
|
||||
public void checkAnswers(){
|
||||
int w1 = Integer.parseInt(word1.getValue())-1;
|
||||
int w2 = Integer.parseInt(word2.getValue())-1;
|
||||
int w3 = Integer.parseInt(word3.getValue())-1;
|
||||
int w4 = Integer.parseInt(word4.getValue())-1;
|
||||
|
||||
if(setOfQuestions.get(w1).getWelsh().equals(WelshWord1.getText())){
|
||||
corAns++;
|
||||
}else wrongAns++;
|
||||
|
||||
if(setOfQuestions.get(w2).getWelsh().equals(WelshWord2.getText())){
|
||||
corAns++;
|
||||
}else wrongAns++;
|
||||
|
||||
if(setOfQuestions.get(w3).getWelsh().equals(WelshWord3.getText())){
|
||||
corAns++;
|
||||
}else wrongAns++;
|
||||
|
||||
if(setOfQuestions.get(w4).getWelsh().equals(WelshWord4.getText())){
|
||||
corAns++;
|
||||
}else wrongAns++;
|
||||
|
||||
CorrectAnswer.setText(Integer.toString(corAns));
|
||||
|
||||
WrongAnswer.setText(Integer.toString(wrongAns));
|
||||
|
||||
setOfQuestions.clear();
|
||||
abc();
|
||||
|
||||
}
|
||||
|
||||
private void abc(){
|
||||
getQuestions(Main.dictionary);
|
||||
TestLabel(setOfQuestions,temp1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initialize(URL url, ResourceBundle resourceBundle) {
|
||||
|
||||
this.abc();
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Maven: org.openjfx:javafx-base:win:11">
|
||||
<CLASSES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-base/11/javafx-base-11-win.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-base/11/javafx-base-11-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-base/11/javafx-base-11-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Maven: org.openjfx:javafx-controls:win:11">
|
||||
<CLASSES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-controls/11/javafx-controls-11-win.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-controls/11/javafx-controls-11-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-controls/11/javafx-controls-11-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Maven: org.openjfx:javafx-fxml:win:11">
|
||||
<CLASSES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-fxml/11/javafx-fxml-11-win.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-fxml/11/javafx-fxml-11-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-fxml/11/javafx-fxml-11-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Maven: org.openjfx:javafx-graphics:win:11">
|
||||
<CLASSES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-graphics/11/javafx-graphics-11-win.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-graphics/11/javafx-graphics-11-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$MAVEN_REPOSITORY$/org/openjfx/javafx-graphics/11/javafx-graphics-11-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
6
dev/20200414/osp1/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
6
dev/20200414/osp1/Welsh Vocabulary Tutor/.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
BIN
dev/20200414/osp1/ui_spec_presentation/UISpecPresGroup20.pdf
Normal file
BIN
dev/20200414/osp1/ui_spec_presentation/UISpecPresGroup20.pdf
Normal file
Binary file not shown.
BIN
dev/20200414/osp1/ui_spec_presentation/src/UISpecPresGroup20.odp
Normal file
BIN
dev/20200414/osp1/ui_spec_presentation/src/UISpecPresGroup20.odp
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Reference in a new issue