From f709c34987e2d97e6e628e4ef395098f79529da7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carl=20Johan=20G=C3=BCtzkow?= <carljgu@stud.ntnu.no> Date: Sun, 1 May 2022 20:55:30 +0200 Subject: [PATCH] enhance: checklist of part 3, dialogs, file handler test, and removed unused methods --- .gitignore | 4 - .gitlab-ci.yml | 11 + README.md | 32 + javadoc/allclasses-index.html | 147 +++ javadoc/allpackages-index.html | 74 ++ javadoc/constant-values.html | 79 ++ .../idatt2001/carljgu/ArmyFileHandler.html | 260 ++++++ .../carljgu/FileExtensionException.html | 164 ++++ .../edu/ntnu/idatt2001/carljgu/Terrain.html | 234 +++++ .../ntnu/idatt2001/carljgu/battle/Battle.html | 278 ++++++ .../carljgu/battle/SimulationAttack.html | 322 +++++++ .../carljgu/battle/package-summary.html | 105 +++ .../carljgu/battle/package-tree.html | 72 ++ .../ntnu/idatt2001/carljgu/client/App.html | 235 +++++ .../carljgu/client/BattleController.html | 214 +++++ .../ntnu/idatt2001/carljgu/client/Main.html | 176 ++++ .../carljgu/client/dialogs/DialogBox.html | 187 ++++ .../client/dialogs/DialogBoxBuilder.html | 419 +++++++++ .../client/dialogs/package-summary.html | 102 +++ .../carljgu/client/dialogs/package-tree.html | 80 ++ .../carljgu/client/package-summary.html | 113 +++ .../carljgu/client/package-tree.html | 77 ++ .../idatt2001/carljgu/package-summary.html | 117 +++ .../ntnu/idatt2001/carljgu/package-tree.html | 102 +++ .../ntnu/idatt2001/carljgu/units/Army.html | 436 +++++++++ .../ntnu/idatt2001/carljgu/units/Unit.html | 344 +++++++ .../idatt2001/carljgu/units/UnitFactory.html | 252 +++++ .../carljgu/units/package-summary.html | 110 +++ .../idatt2001/carljgu/units/package-tree.html | 73 ++ .../units/specialized/CavalryUnit.html | 255 ++++++ .../units/specialized/CommanderUnit.html | 187 ++++ .../units/specialized/InfantryUnit.html | 247 +++++ .../carljgu/units/specialized/RangedUnit.html | 254 +++++ .../units/specialized/package-summary.html | 108 +++ .../units/specialized/package-tree.html | 81 ++ .../module-summary.html | 95 ++ javadoc/element-list | 7 + javadoc/help-doc.html | 191 ++++ javadoc/index-files/index-1.html | 121 +++ javadoc/index-files/index-10.html | 72 ++ javadoc/index-files/index-11.html | 63 ++ javadoc/index-files/index-12.html | 90 ++ javadoc/index-files/index-13.html | 82 ++ javadoc/index-files/index-14.html | 84 ++ javadoc/index-files/index-15.html | 75 ++ javadoc/index-files/index-16.html | 70 ++ javadoc/index-files/index-17.html | 65 ++ javadoc/index-files/index-2.html | 82 ++ javadoc/index-files/index-3.html | 97 ++ javadoc/index-files/index-4.html | 91 ++ javadoc/index-files/index-5.html | 79 ++ javadoc/index-files/index-6.html | 72 ++ javadoc/index-files/index-7.html | 223 +++++ javadoc/index-files/index-8.html | 71 ++ javadoc/index-files/index-9.html | 78 ++ javadoc/index.html | 26 + javadoc/jquery-ui.overrides.css | 34 + javadoc/legal/COPYRIGHT | 1 + javadoc/legal/LICENSE | 1 + javadoc/legal/jquery.md | 72 ++ javadoc/legal/jqueryUI.md | 49 + javadoc/member-search-index.js | 1 + javadoc/module-search-index.js | 1 + javadoc/overview-tree.html | 139 +++ javadoc/package-search-index.js | 1 + javadoc/resources/glass.png | Bin 0 -> 499 bytes javadoc/resources/x.png | Bin 0 -> 394 bytes .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin 0 -> 335 bytes .../images/ui-bg_glass_65_dadada_1x400.png | Bin 0 -> 262 bytes .../images/ui-bg_glass_75_dadada_1x400.png | Bin 0 -> 262 bytes .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin 0 -> 262 bytes .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin 0 -> 332 bytes .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin 0 -> 280 bytes .../images/ui-icons_222222_256x240.png | Bin 0 -> 6922 bytes .../images/ui-icons_2e83ff_256x240.png | Bin 0 -> 4549 bytes .../images/ui-icons_454545_256x240.png | Bin 0 -> 6992 bytes .../images/ui-icons_888888_256x240.png | Bin 0 -> 6999 bytes .../images/ui-icons_cd0a0a_256x240.png | Bin 0 -> 4549 bytes javadoc/script-dir/jquery-3.5.1.min.js | 2 + javadoc/script-dir/jquery-ui.min.css | 7 + javadoc/script-dir/jquery-ui.min.js | 6 + .../script-dir/jquery-ui.structure.min.css | 5 + javadoc/script.js | 132 +++ javadoc/search.js | 354 +++++++ javadoc/serialized-form.html | 72 ++ javadoc/stylesheet.css | 865 ++++++++++++++++++ javadoc/tag-search-index.js | 1 + javadoc/type-search-index.js | 1 + .../idatt2001/carljgu/ArmyFileHandler.java | 26 +- .../edu/ntnu/idatt2001/carljgu/Terrain.java | 2 +- .../ntnu/idatt2001/carljgu/client/App.java | 28 +- .../carljgu/client/BattleController.java | 72 +- .../carljgu/client/dialogs/DialogBox.java | 15 +- .../client/dialogs/DialogBoxBuilder.java | 37 +- .../ntnu/idatt2001/carljgu/units/Army.java | 6 +- .../ntnu/idatt2001/carljgu/units/Unit.java | 9 - .../units/specialized/CavalryUnit.java | 16 +- .../units/specialized/CommanderUnit.java | 16 +- .../units/specialized/InfantryUnit.java | 17 +- .../carljgu/units/specialized/RangedUnit.java | 36 +- src/main/java/module-info.java | 2 +- src/main/resources/icons/corrupt-file.png | Bin 0 -> 17416 bytes .../resources/{ => icons}/wargames-logo.png | Bin src/main/resources/stylesheet.css | 7 +- src/main/resources/wargames.fxml | 22 +- .../carljgu/ArmyFileHandlerTest.java | 60 +- .../ntnu/idatt2001/carljgu/WarUnitTest.java | 10 - wargames.bmpr | Bin 122880 -> 163840 bytes 108 files changed, 9733 insertions(+), 177 deletions(-) create mode 100644 javadoc/allclasses-index.html create mode 100644 javadoc/allpackages-index.html create mode 100644 javadoc/constant-values.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-tree.html create mode 100644 javadoc/edu.ntnu.idatt2001.carljgu.client/module-summary.html create mode 100644 javadoc/element-list create mode 100644 javadoc/help-doc.html create mode 100644 javadoc/index-files/index-1.html create mode 100644 javadoc/index-files/index-10.html create mode 100644 javadoc/index-files/index-11.html create mode 100644 javadoc/index-files/index-12.html create mode 100644 javadoc/index-files/index-13.html create mode 100644 javadoc/index-files/index-14.html create mode 100644 javadoc/index-files/index-15.html create mode 100644 javadoc/index-files/index-16.html create mode 100644 javadoc/index-files/index-17.html create mode 100644 javadoc/index-files/index-2.html create mode 100644 javadoc/index-files/index-3.html create mode 100644 javadoc/index-files/index-4.html create mode 100644 javadoc/index-files/index-5.html create mode 100644 javadoc/index-files/index-6.html create mode 100644 javadoc/index-files/index-7.html create mode 100644 javadoc/index-files/index-8.html create mode 100644 javadoc/index-files/index-9.html create mode 100644 javadoc/index.html create mode 100644 javadoc/jquery-ui.overrides.css create mode 100644 javadoc/legal/COPYRIGHT create mode 100644 javadoc/legal/LICENSE create mode 100644 javadoc/legal/jquery.md create mode 100644 javadoc/legal/jqueryUI.md create mode 100644 javadoc/member-search-index.js create mode 100644 javadoc/module-search-index.js create mode 100644 javadoc/overview-tree.html create mode 100644 javadoc/package-search-index.js create mode 100644 javadoc/resources/glass.png create mode 100644 javadoc/resources/x.png create mode 100644 javadoc/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png create mode 100644 javadoc/script-dir/images/ui-bg_glass_65_dadada_1x400.png create mode 100644 javadoc/script-dir/images/ui-bg_glass_75_dadada_1x400.png create mode 100644 javadoc/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png create mode 100644 javadoc/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png create mode 100644 javadoc/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png create mode 100644 javadoc/script-dir/images/ui-icons_222222_256x240.png create mode 100644 javadoc/script-dir/images/ui-icons_2e83ff_256x240.png create mode 100644 javadoc/script-dir/images/ui-icons_454545_256x240.png create mode 100644 javadoc/script-dir/images/ui-icons_888888_256x240.png create mode 100644 javadoc/script-dir/images/ui-icons_cd0a0a_256x240.png create mode 100644 javadoc/script-dir/jquery-3.5.1.min.js create mode 100644 javadoc/script-dir/jquery-ui.min.css create mode 100644 javadoc/script-dir/jquery-ui.min.js create mode 100644 javadoc/script-dir/jquery-ui.structure.min.css create mode 100644 javadoc/script.js create mode 100644 javadoc/search.js create mode 100644 javadoc/serialized-form.html create mode 100644 javadoc/stylesheet.css create mode 100644 javadoc/tag-search-index.js create mode 100644 javadoc/type-search-index.js create mode 100644 src/main/resources/icons/corrupt-file.png rename src/main/resources/{ => icons}/wargames-logo.png (100%) diff --git a/.gitignore b/.gitignore index 768a5c9..c758900 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,7 @@ # Default ignored files /shelf/ /.idea/workspace.xml -# Editor-based HTTP Client requests -/httpRequests/ # Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml /target/ /.idea/ wargames.iml \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8334378..66c5961 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,3 +10,14 @@ test: script: - mvn clean test +pages: + stage: deploy + script: + - mkdir .public + - cp -r javadoc/* .public + - mv .public public + artifacts: + paths: + - public + only: + - master diff --git a/README.md b/README.md index 1e9631e..cf80792 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,22 @@ A repository containing a simulation of two armies attacking each other. The project will be done in may. + +## Running the program + +To run the program you need jdk-17 and maven 3.8.5. +If you need to use another jdk over 11, you can change the version in the pom.xml file. + +Change instances of 17, except javafx version, to your required version. (11 or above) + +Install the program by zip, tar or `git clone git@gitlab.stud.idi.ntnu.no:carljgu/Wargames.git` + +`cd Wargames` + +`mvn clean javafx:run` + + + ## Release 1.0 Added classes @@ -23,3 +39,19 @@ Added classes Added methods - get*Units: Methods using streams to get Infantry, Ranged, Cavalry and Commander units. + +## Realease 3.0 + +Added a GUI to the program, a terrain enum, a unit factory and dialogbox with respective builder. + +Added classes +- DialogBox: A dialog box that extends alert to use a builder to build a dialog box. +- DialogBoxBuilder: A builder class which simplifies the creation process of a DialogBox object. +- BattleController: A controller class which handles events in the fxml file. +- App: Class that extends Application from javafx. Responsibility for creating the stage +- Main: The main class that is run when the application is called upon. +- UnitFactory: A class to simply and elegantly create units. Either one by one or many at once. +- UnitFactoryTest: A test class to test the unit factory + +Added enums +- Terrain: An enum that represents the different terrains diff --git a/javadoc/allclasses-index.html b/javadoc/allclasses-index.html new file mode 100644 index 0000000..127497e --- /dev/null +++ b/javadoc/allclasses-index.html @@ -0,0 +1,147 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>All Classes and Interfaces</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="class index"> +<meta name="generator" content="javadoc/AllClassesIndexWriter"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="all-classes-index-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="overview-tree.html">Tree</a></li> +<li><a href="index-files/index-1.html">Index</a></li> +<li><a href="help-doc.html#all-classes">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 title="All Classes and Interfaces" class="title">All Classes and Interfaces</h1> +</div> +<div id="all-classes-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="all-classes-table-tab0" role="tab" aria-selected="true" aria-controls="all-classes-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table', 2)" class="active-table-tab">All Classes and Interfaces</button><button id="all-classes-table-tab2" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab2', 2)" class="table-tab">Classes</button><button id="all-classes-table-tab3" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab3', 2)" class="table-tab">Enum Classes</button><button id="all-classes-table-tab5" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab5', 2)" class="table-tab">Exceptions</button></div> +<div id="all-classes-table.tabpanel" role="tabpanel"> +<div class="summary-table two-column-summary" aria-labelledby="all-classes-table-tab0"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class that extends Application + from javafx.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">public class Army.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Handles writing, reading and importing + armies to and from a file.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class Battle that simulates a battle between two armies.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">A controller class which + handles events in the fxml file.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class CavalryUnit that inherits from Unit.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class CommanderUnit that inherits from CavalryUnit.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">A dialog box that extends alert to use + a builder to build a dialog box.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">A builder class which simplifies the + DialogBox class.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> +<div class="block">Thrown if an extension of a file is invalid + The exception thrown needs to have a message</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class InfantryUnit that inherits from Unit.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">The main class that is run when the application + is called upon.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">Class RangedUnit that inherits from Unit.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">A class for keeping track of which unit + has attacked which unit.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> +<div class="block">En enum that represents the different terrain + that the battles can occur on.</div> +</div> +<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></div> +<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> +<div class="block">The abstract class Unit.</div> +</div> +<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></div> +<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> +<div class="block">A class to simply and elegantly create units.</div> +</div> +</div> +</div> +</div> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/allpackages-index.html b/javadoc/allpackages-index.html new file mode 100644 index 0000000..44a4fe8 --- /dev/null +++ b/javadoc/allpackages-index.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>All Packages</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="package index"> +<meta name="generator" content="javadoc/AllPackagesIndexWriter"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="all-packages-index-page"> +<script type="text/javascript">var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="overview-tree.html">Tree</a></li> +<li><a href="index-files/index-1.html">Index</a></li> +<li><a href="help-doc.html#all-packages">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 title="All&nbsp;Packages" class="title">All Packages</h1> +</div> +<div class="caption"><span>Package Summary</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<div class="col-last odd-row-color"> </div> +</div> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/constant-values.html b/javadoc/constant-values.html new file mode 100644 index 0000000..9da2488 --- /dev/null +++ b/javadoc/constant-values.html @@ -0,0 +1,79 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Constant Field Values</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="summary of constants"> +<meta name="generator" content="javadoc/ConstantsSummaryWriterImpl"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="constants-summary-page"> +<script type="text/javascript">var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="overview-tree.html">Tree</a></li> +<li><a href="index-files/index-1.html">Index</a></li> +<li><a href="help-doc.html#constant-values">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 title="Constant Field Values" class="title">Constant Field Values</h1> +<section class="packages"> +<h2 title="Contents">Contents</h2> +<ul> +<li><a href="#edu.ntnu">edu.ntnu.*</a></li> +</ul> +</section> +</div> +<section class="constants-summary" id="edu.ntnu.idatt2001.carljgu.client.dialogs"> +<h2 title="edu.ntnu">edu.ntnu.*</h2> +<ul class="block-list"> +<li> +<div class="caption"><span>edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span></div> +<div class="summary-table three-column-summary"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Constant Field</div> +<div class="table-header col-last">Value</div> +<div class="col-first even-row-color"><code id="edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder.recurringDialogMessage">public static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color"><code><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#recurringDialogMessage">recurringDialogMessage</a></code></div> +<div class="col-last even-row-color"><code>"If this a recurring and unsolvable event, please contact the creator of this program."</code></div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html new file mode 100644 index 0000000..fa5d5f9 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html @@ -0,0 +1,260 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>ArmyFileHandler</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu, class: ArmyFileHandler"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<h1 title="Class ArmyFileHandler" class="title">Class ArmyFileHandler</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.ArmyFileHandler</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">ArmyFileHandler</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">Handles writing, reading and importing + armies to and from a file.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 1.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">ArmyFileHandler</a>()</code></div> +<div class="col-last even-row-color"> +<div class="block">Constructor which initiates the readLinesSkipped arraylist</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFilePath()" class="member-name-link">getFilePath</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Uses the system default file explorer to get + a file path of the user's choice.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getReadLinesSkipped()" class="member-name-link">getReadLinesSkipped</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the amount of units + that were skipped when reading from file.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#readArmyFromFile(java.lang.String)" class="member-name-link">readArmyFromFile</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> filePath)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Finds a specified csv file + and converts it to an army if it can.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#writeToFile(edu.ntnu.idatt2001.carljgu.units.Army,java.lang.String)" class="member-name-link">writeToFile</a><wbr>(<a href="units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> army, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> filePath)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Creates a file to write on or writes to an existing file.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>()"> +<h3>ArmyFileHandler</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">ArmyFileHandler</span>()</div> +<div class="block">Constructor which initiates the readLinesSkipped arraylist</div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getReadLinesSkipped()"> +<h3>getReadLinesSkipped</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></span> <span class="element-name">getReadLinesSkipped</span>()</div> +<div class="block">Gets the amount of units + that were skipped when reading from file.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>readLinesSkipped - amount of lines skipped when + reading army from file because of invalid unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="writeToFile(edu.ntnu.idatt2001.carljgu.units.Army,java.lang.String)"> +<h3>writeToFile</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">writeToFile</span><wbr><span class="parameters">(<a href="units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> army, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> filePath)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a>, +<a href="FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a>, +<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div> +<div class="block">Creates a file to write on or writes to an existing file. + The client should handle any exception that is thrown + with an error message the client creates.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>army</code> - Army - A collection of units that is written to a file</dd> +<dd><code>filePath</code> - String - name of the file and its full path</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - thrown if the army is a null object</dd> +<dd><code><a href="FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></code> - thrown if the file extension is not csv + because of the file name</dd> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code> - thrown if an I/O error occurs</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="readArmyFromFile(java.lang.String)"> +<h3>readArmyFromFile</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></span> <span class="element-name">readArmyFromFile</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> filePath)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a>, +<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/FileNotFoundException.html" title="class or interface in java.io" class="external-link">FileNotFoundException</a>, +<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Finds a specified csv file + and converts it to an army if it can. + If there is a line which has an unreadable unit + it will continue on the next line + The client should handle any exception that is thrown + with an error message the client creates.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>filePath</code> - - String - name of the file path to read from</dd> +<dt>Returns:</dt> +<dd>army - Army - an army read from a csv file</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code> - thrown if an I/O error occurs</dd> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/FileNotFoundException.html" title="class or interface in java.io" class="external-link">FileNotFoundException</a></code> - thrown if the filepath was not found</dd> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if file extension is not csv or if army could not be created.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getFilePath()"> +<h3>getFilePath</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getFilePath</span>()</div> +<div class="block">Uses the system default file explorer to get + a file path of the user's choice. + If a user closes the file chooser, + null is returned.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>filePath - String - the file path of a csv file for an army</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html new file mode 100644 index 0000000..88e2df3 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html @@ -0,0 +1,164 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>FileExtensionException</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu, class: FileExtensionException"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li>Method</li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<h1 title="Class FileExtensionException" class="title">Class FileExtensionException</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">java.lang.Throwable</a> +<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Exception.html" title="class or interface in java.lang" class="external-link">java.lang.Exception</a> +<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/RuntimeException.html" title="class or interface in java.lang" class="external-link">java.lang.RuntimeException</a> +<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">java.lang.IllegalArgumentException</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.FileExtensionException</div> +</div> +</div> +</div> +</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>All Implemented Interfaces:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">FileExtensionException</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Thrown if an extension of a file is invalid + The exception thrown needs to have a message</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.1 20.03.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +<dt>See Also:</dt> +<dd> +<ul class="see-list"> +<li><a href="../../../../../serialized-form.html#edu.ntnu.idatt2001.carljgu.FileExtensionException">Serialized Form</a></li> +</ul> +</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String)" class="member-name-link">FileExtensionException</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> message)</code></div> +<div class="col-last even-row-color"> +<div class="block">Constructs an exception with a detail message</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Throwable">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#addSuppressed(java.lang.Throwable)" title="class or interface in java.lang" class="external-link">addSuppressed</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#fillInStackTrace()" title="class or interface in java.lang" class="external-link">fillInStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#getCause()" title="class or interface in java.lang" class="external-link">getCause</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#getLocalizedMessage()" title="class or interface in java.lang" class="external-link">getLocalizedMessage</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#getMessage()" title="class or interface in java.lang" class="external-link">getMessage</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#getStackTrace()" title="class or interface in java.lang" class="external-link">getStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#getSuppressed()" title="class or interface in java.lang" class="external-link">getSuppressed</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#initCause(java.lang.Throwable)" title="class or interface in java.lang" class="external-link">initCause</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#printStackTrace()" title="class or interface in java.lang" class="external-link">printStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#printStackTrace(java.io.PrintStream)" title="class or interface in java.lang" class="external-link">printStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#printStackTrace(java.io.PrintWriter)" title="class or interface in java.lang" class="external-link">printStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#setStackTrace(java.lang.StackTraceElement%5B%5D)" title="class or interface in java.lang" class="external-link">setStackTrace</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String)"> +<h3>FileExtensionException</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">FileExtensionException</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> message)</span></div> +<div class="block">Constructs an exception with a detail message</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>message</code> - the detail message to display</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html new file mode 100644 index 0000000..fdc22d2 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html @@ -0,0 +1,234 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Terrain</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu, enum: Terrain"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li><a href="#nested-class-summary">Nested</a> | </li> +<li><a href="#enum-constant-summary">Enum Constants</a> | </li> +<li>Field | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li><a href="#enum-constant-detail">Enum Constants</a> | </li> +<li>Field | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<h1 title="Enum Class Terrain" class="title">Enum Class Terrain</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">java.lang.Enum</a><<a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a>> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.Terrain</div> +</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>All Implemented Interfaces:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a><<a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a>></code>, <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a></code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public enum </span><span class="element-name type-name-label">Terrain</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a><<a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a>></span></div> +<div class="block">En enum that represents the different terrain + that the battles can occur on.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.1 09.04.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<li> +<section class="nested-class-summary" id="nested-class-summary"> +<h2>Nested Class Summary</h2> +<div class="inherited-list"> +<h2 id="nested-classes-inherited-from-class-java.lang.Enum">Nested classes/interfaces inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h2> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">Enum.EnumDesc</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a> extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a>>></code></div> +</section> +</li> +<!-- =========== ENUM CONSTANT SUMMARY =========== --> +<li> +<section class="constants-summary" id="enum-constant-summary"> +<h2>Enum Constant Summary</h2> +<div class="caption"><span>Enum Constants</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Enum Constant</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><code><a href="#FOREST" class="member-name-link">FOREST</a></code></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><code><a href="#HILL" class="member-name-link">HILL</a></code></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><code><a href="#PLAINS" class="member-name-link">PLAINS</a></code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"> +<div class="block">Returns the enum constant of this class with the specified name.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a>[]</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#values()" class="member-name-link">values</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"> +<div class="block">Returns an array containing the constants of this enum class, in +the order they are declared.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Enum">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#compareTo(E)" title="class or interface in java.lang" class="external-link">compareTo</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#describeConstable()" title="class or interface in java.lang" class="external-link">describeConstable</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#getDeclaringClass()" title="class or interface in java.lang" class="external-link">getDeclaringClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#name()" title="class or interface in java.lang" class="external-link">name</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#ordinal()" title="class or interface in java.lang" class="external-link">ordinal</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#valueOf(java.lang.Class,java.lang.String)" title="class or interface in java.lang" class="external-link">valueOf</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ============ ENUM CONSTANT DETAIL =========== --> +<li> +<section class="constant-details" id="enum-constant-detail"> +<h2>Enum Constant Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="HILL"> +<h3>HILL</h3> +<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">HILL</span></div> +</section> +</li> +<li> +<section class="detail" id="PLAINS"> +<h3>PLAINS</h3> +<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">PLAINS</span></div> +</section> +</li> +<li> +<section class="detail" id="FOREST"> +<h3>FOREST</h3> +<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">FOREST</span></div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="values()"> +<h3>values</h3> +<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a>[]</span> <span class="element-name">values</span>()</div> +<div class="block">Returns an array containing the constants of this enum class, in +the order they are declared.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>an array containing the constants of this enum class, in the order they are declared</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="valueOf(java.lang.String)"> +<h3>valueOf</h3> +<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">valueOf</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</span></div> +<div class="block">Returns the enum constant of this class with the specified name. +The string must match <i>exactly</i> an identifier used to declare an +enum constant in this class. (Extraneous whitespace characters are +not permitted.)</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - the name of the enum constant to be returned.</dd> +<dt>Returns:</dt> +<dd>the enum constant with the specified name</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if this enum class has no constant with the specified name</dd> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - if the argument is null</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html new file mode 100644 index 0000000..9e92798 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html @@ -0,0 +1,278 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Battle</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.battle, class: Battle"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<h1 title="Class Battle" class="title">Class Battle</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.battle.Battle</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">Battle</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">Class Battle that simulates a battle between two armies.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.3 30.04.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">Battle</a><wbr>(<a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> armyOne, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> armyTwo, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new Battle.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttackLog()" class="member-name-link">getAttackLog</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns the log of attacks + to easily hold the information + about each attack.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTerrain()" class="member-name-link">getTerrain</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the terrain where + the battle occurs.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getWinner()" class="member-name-link">getWinner</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the winner of the army + or a null object</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#simulate()" class="member-name-link">simulate</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Simulate a battle.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides toString() method from Object.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>Battle</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Battle</span><wbr><span class="parameters">(<a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> armyOne, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> armyTwo, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Instantiates a new Battle.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>armyOne</code> - Army - the first army</dd> +<dd><code>armyTwo</code> - Army - the second army</dd> +<dd><code>terrain</code> - Terrain - on what terrain the battle is fought on.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if one of the armies are empty, + if armies are equal or if terrain is not defined</dd> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - thrown if one of the armies are null object</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getWinner()"> +<h3>getWinner</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></span> <span class="element-name">getWinner</span>()</div> +<div class="block">Gets the winner of the army + or a null object</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>winner - Army - winner of the simulated battle</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAttackLog()"> +<h3>getAttackLog</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></span> <span class="element-name">getAttackLog</span>()</div> +<div class="block">Returns the log of attacks + to easily hold the information + about each attack.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>attackLog - ArrayList - a list of all the attacks + performed in the simulation.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getTerrain()"> +<h3>getTerrain</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">getTerrain</span>()</div> +<div class="block">Gets the terrain where + the battle occurs.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>terrain - Terrain - on what terrain the battle is fought on.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="simulate()"> +<h3>simulate</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></span> <span class="element-name">simulate</span>()</div> +<div class="block">Simulate a battle. + The attacking army is chosen at random. + One random unit from the attacking army attacks + a random unit from the defending army. + Uses the SimulationAttack class to simulate an attack + and puts that information in an arraylist. + If the defender has no health left it is removed. + The simulations run until one army + has no units left. + Since the chosen army to attack is random, + it is theoretically possible in all cases + for an army to win without taking any + causalities.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>winner - Army - the army that won.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="toString()"> +<h3>toString</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">toString</span>()</div> +<div class="block">Overrides toString() method from Object.</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Returns:</dt> +<dd>String - string representation of the battle.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html new file mode 100644 index 0000000..0416ffc --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html @@ -0,0 +1,322 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>SimulationAttack</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.battle, class: SimulationAttack"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<h1 title="Class SimulationAttack" class="title">Class SimulationAttack</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.battle.SimulationAttack</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">SimulationAttack</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">A class for keeping track of which unit + has attacked which unit. Helpful when + logging out this information.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.2 09.04.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">SimulationAttack</a><wbr>(<a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> attackingArmy, + <a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> attacker, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> defendingArmy, + <a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> defender, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color"> +<div class="block">The constructor for a simulation attack.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttacker()" class="member-name-link">getAttacker</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the attacker.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttackingArmy()" class="member-name-link">getAttackingArmy</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the attacking army with the + attacking unit.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDamageDealt()" class="member-name-link">getDamageDealt</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the damage done by + the attacker to the defender.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefender()" class="member-name-link">getDefender</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the defender.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefendingArmy()" class="member-name-link">getDefendingArmy</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the defending army with the + defending unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTerrain()" class="member-name-link">getTerrain</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the terrain where + the attack occurs.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the toString() method + and returns an output used in the + GUI.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>SimulationAttack</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">SimulationAttack</span><wbr><span class="parameters">(<a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> attackingArmy, + <a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> attacker, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> defendingArmy, + <a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> defender, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">The constructor for a simulation attack. + After checking the units are actually + in their corresponding army, the attacker + will perform its attack on the defender. + The return value of this method is + then put into the damage attribute. + If the attack gets a defender to less + than zero health, it is removed from the army</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>attackingArmy</code> - Army - the army with the unit attacking the defender</dd> +<dd><code>attacker</code> - Unit - the attacker performing its attack on the defender</dd> +<dd><code>defendingArmy</code> - Army - the army with the unit defending from the attacker</dd> +<dd><code>defender</code> - Unit - the unit defending from the attackers attack</dd> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if the attacker is not part of the attacking army or the defender is not part of the defending army.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getAttackingArmy()"> +<h3>getAttackingArmy</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></span> <span class="element-name">getAttackingArmy</span>()</div> +<div class="block">Gets the attacking army with the + attacking unit.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>attackingArmy - Army - the army with + the attacking unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAttacker()"> +<h3>getAttacker</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span> <span class="element-name">getAttacker</span>()</div> +<div class="block">Gets the attacker.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>attacker - Unit - the attacker</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getDefendingArmy()"> +<h3>getDefendingArmy</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></span> <span class="element-name">getDefendingArmy</span>()</div> +<div class="block">Gets the defending army with the + defending unit.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>defendingArmy - Army - the army with + the defending unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getDefender()"> +<h3>getDefender</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span> <span class="element-name">getDefender</span>()</div> +<div class="block">Gets the defender.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>defender - Unit - the defender</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getDamageDealt()"> +<h3>getDamageDealt</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getDamageDealt</span>()</div> +<div class="block">Gets the damage done by + the attacker to the defender.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>damageDone - int - the + damage done by the attacker + to the defender</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getTerrain()"> +<h3>getTerrain</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></span> <span class="element-name">getTerrain</span>()</div> +<div class="block">Gets the terrain where + the attack occurs.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>terrain - Terrain - the specified terrain.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="toString()"> +<h3>toString</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">toString</span>()</div> +<div class="block">Overrides the toString() method + and returns an output used in the + GUI. Information displayed is the + name of the attacking and defending army, + unit information like name and class + as well as how much damage was outputted + from the attack. In addition, the + defender's health after the attack is shown</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Returns:</dt> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html new file mode 100644 index 0000000..038ac3e --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html @@ -0,0 +1,105 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.battle</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.battle"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu.battle" class="title">Package edu.ntnu.idatt2001.carljgu.battle</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu.battle</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="../package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="../client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="../units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last even-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="caption"><span>Classes</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">Class Battle that simulates a battle between two armies.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">A class for keeping track of which unit + has attacked which unit.</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-tree.html new file mode 100644 index 0000000..0c4cbf5 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-tree.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.battle Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.battle"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu.battle</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.battle.<a href="Battle.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.battle.<a href="SimulationAttack.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html new file mode 100644 index 0000000..754174d --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html @@ -0,0 +1,235 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>App</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client, class: App"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li><a href="#nested-class-summary">Nested</a> | </li> +<li><a href="#field-summary">Field</a> | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Class App" class="title">Class App</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">javafx.application.Application +<div class="inheritance">edu.ntnu.idatt2001.carljgu.client.App</div> +</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">App</span> +<span class="extends-implements">extends javafx.application.Application</span></div> +<div class="block">Class that extends Application + from javafx. + Responsibility for configuring the stage.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.1 27.03.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<li> +<section class="nested-class-summary" id="nested-class-summary"> +<h2>Nested Class Summary</h2> +<div class="inherited-list"> +<h2 id="nested-classes-inherited-from-class-javafx.application.Application">Nested classes/interfaces inherited from class javafx.application.Application</h2> +<code>javafx.application.Application.Parameters</code></div> +</section> +</li> +<!-- =========== FIELD SUMMARY =========== --> +<li> +<section class="field-summary" id="field-summary"> +<h2>Field Summary</h2> +<div class="inherited-list"> +<h3 id="fields-inherited-from-class-javafx.application.Application">Fields inherited from class javafx.application.Application</h3> +<code>STYLESHEET_CASPIAN, STYLESHEET_MODENA</code></div> +</section> +</li> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">App</a>()</code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static javafx.stage.Stage</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getStage()" class="member-name-link">getStage</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"> +<div class="block">Gets the main stage for the program</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static void</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#run(java.lang.String%5B%5D)" class="member-name-link">run</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[] args)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"> +<div class="block">Method called from Main when the program is run + Calls on launch in Application</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#start(javafx.stage.Stage)" class="member-name-link">start</a><wbr>(javafx.stage.Stage startStage)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overridden from Application.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-javafx.application.Application">Methods inherited from class javafx.application.Application</h3> +<code>getHostServices, getParameters, getUserAgentStylesheet, init, launch, launch, notifyPreloader, setUserAgentStylesheet, stop</code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>()"> +<h3>App</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">App</span>()</div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="start(javafx.stage.Stage)"> +<h3>start</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">start</span><wbr><span class="parameters">(javafx.stage.Stage startStage)</span></div> +<div class="block">Overridden from Application. + Loads in the scene and configures the stage.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code>start</code> in class <code>javafx.application.Application</code></dd> +<dt>Parameters:</dt> +<dd><code>startStage</code> - - Stage - the stage provided by javaFX</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="run(java.lang.String[])"> +<h3>run</h3> +<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type">void</span> <span class="element-name">run</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[] args)</span></div> +<div class="block">Method called from Main when the program is run + Calls on launch in Application</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>args</code> - - String[] - commandline arguments</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getStage()"> +<h3>getStage</h3> +<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type">javafx.stage.Stage</span> <span class="element-name">getStage</span>()</div> +<div class="block">Gets the main stage for the program</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>stage - Stage - the starting program stage</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html new file mode 100644 index 0000000..6543656 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html @@ -0,0 +1,214 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>BattleController</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client, class: BattleController"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Class BattleController" class="title">Class BattleController</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.client.BattleController</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>All Implemented Interfaces:</dt> +<dd><code>javafx.fxml.Initializable</code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">BattleController</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a> +implements javafx.fxml.Initializable</span></div> +<div class="block">A controller class which + handles events in the fxml file. + This includes requesting to import + armies and simulate the battle</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.7 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">BattleController</a>()</code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#displayArmy(int,edu.ntnu.idatt2001.carljgu.units.Army)" class="member-name-link">displayArmy</a><wbr>(int armyNumber, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> army)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Updates the information about an army + in the chosen elements.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#initialize(java.net.URL,java.util.ResourceBundle)" class="member-name-link">initialize</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/net/URL.html" title="class or interface in java.net" class="external-link">URL</a> url, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ResourceBundle.html" title="class or interface in java.util" class="external-link">ResourceBundle</a> resourceBundle)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Run when the fxml file is first loaded.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>()"> +<h3>BattleController</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">BattleController</span>()</div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="displayArmy(int,edu.ntnu.idatt2001.carljgu.units.Army)"> +<h3>displayArmy</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">displayArmy</span><wbr><span class="parameters">(int armyNumber, + <a href="../units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> army)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></span></div> +<div class="block">Updates the information about an army + in the chosen elements. + Uses both armyNumber and army to be able to display armies that are not + the have been changed. For example after a battle.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>armyNumber</code> - int - 0 or 1 depending on which elements to use to display an army.</dd> +<dd><code>army</code> - Army - the army to display.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - thrown if the army is null</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="initialize(java.net.URL,java.util.ResourceBundle)"> +<h3>initialize</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">initialize</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/net/URL.html" title="class or interface in java.net" class="external-link">URL</a> url, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ResourceBundle.html" title="class or interface in java.util" class="external-link">ResourceBundle</a> resourceBundle)</span></div> +<div class="block">Run when the fxml file is first loaded. + Fills in the tables of information for the armies + and sets a double click selection model.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code>initialize</code> in interface <code>javafx.fxml.Initializable</code></dd> +<dt>Parameters:</dt> +<dd><code>url</code> - - URL - a Uniform Resource Loader</dd> +<dd><code>resourceBundle</code> - - ResourceBundle</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html new file mode 100644 index 0000000..6c2133e --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html @@ -0,0 +1,176 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Main</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client, class: Main"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Class Main" class="title">Class Main</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.client.Main</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">Main</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">The main class that is run when the application + is called upon. Calls on the main method in App. + This class exists to have separate the main method + from javaFX when creating for example JLink.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.1 27.03.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">Main</a>()</code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static void</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#main(java.lang.String%5B%5D)" class="member-name-link">main</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[] args)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"> +<div class="block">Method to first be launched when the program is run</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>()"> +<h3>Main</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Main</span>()</div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="main(java.lang.String[])"> +<h3>main</h3> +<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type">void</span> <span class="element-name">main</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[] args)</span></div> +<div class="block">Method to first be launched when the program is run</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>args</code> - - String[] - commandline arguments</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html new file mode 100644 index 0000000..92b9e7c --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html @@ -0,0 +1,187 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>DialogBox</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client.dialogs, class: DialogBox"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li><a href="#nested-class-summary">Nested</a> | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li>Method</li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></div> +<h1 title="Class DialogBox" class="title">Class DialogBox</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">javafx.scene.control.Dialog<javafx.scene.control.ButtonType> +<div class="inheritance">javafx.scene.control.Alert +<div class="inheritance">edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBox</div> +</div> +</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>All Implemented Interfaces:</dt> +<dd><code>javafx.event.EventTarget</code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">DialogBox</span> +<span class="extends-implements">extends javafx.scene.control.Alert</span></div> +<div class="block">A dialog box that extends alert to use + a builder to build a dialog box.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.2 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- =========== PROPERTY SUMMARY =========== --> +<li> +<section class="property-summary" id="property-summary"> +<h2>Property Summary</h2> +<div class="inherited-list"> +<h3 id="properties-inherited-from-class-javafx.scene.control.Alert">Properties inherited from class javafx.scene.control.Alert</h3> +<code>alertType</code></div> +<div class="inherited-list"> +<h3 id="properties-inherited-from-class-javafx.scene.control.Dialog">Properties inherited from class javafx.scene.control.Dialog</h3> +<code>contentText, dialogPane, graphic, headerText, height, onCloseRequest, onHidden, onHiding, onShowing, onShown, resizable, resultConverter, result, showing, title, width, x, y</code></div> +</section> +</li> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<li> +<section class="nested-class-summary" id="nested-class-summary"> +<h2>Nested Class Summary</h2> +<div class="inherited-list"> +<h2 id="nested-classes-inherited-from-class-javafx.scene.control.Alert">Nested classes/interfaces inherited from class javafx.scene.control.Alert</h2> +<code>javafx.scene.control.Alert.AlertType</code></div> +</section> +</li> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder)" class="member-name-link">DialogBox</a><wbr>(<a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a> builder)</code></div> +<div class="col-last even-row-color"> +<div class="block">Constructor for a dialog box + that uses a builder to set + attributes.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-javafx.scene.control.Alert">Methods inherited from class javafx.scene.control.Alert</h3> +<code>alertTypeProperty, getAlertType, getButtonTypes, setAlertType</code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-javafx.scene.control.Dialog">Methods inherited from class javafx.scene.control.Dialog</h3> +<code>buildEventDispatchChain, close, contentTextProperty, dialogPaneProperty, getContentText, getDialogPane, getGraphic, getHeaderText, getHeight, getModality, getOnCloseRequest, getOnHidden, getOnHiding, getOnShowing, getOnShown, getOwner, getResult, getResultConverter, getTitle, getWidth, getX, getY, graphicProperty, headerTextProperty, heightProperty, hide, initModality, initOwner, initStyle, isResizable, isShowing, onCloseRequestProperty, onHiddenProperty, onHidingProperty, onShowingProperty, onShownProperty, resizableProperty, resultConverterProperty, resultProperty, setContentText, setDialogPane, setGraphic, setHeaderText, setHeight, setOnCloseRequest, setOnHidden, setOnHiding, setOnShowing, setOnShown, setResizable, setResult, setResultConverter, setTitle, setWidth, setX, setY, show, showAndWait, showingProperty, titleProperty, widthProperty, xProperty, yProperty</code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder)"> +<h3>DialogBox</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">DialogBox</span><wbr><span class="parameters">(<a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a> builder)</span></div> +<div class="block">Constructor for a dialog box + that uses a builder to set + attributes. If the alert type is NONE, + the window will only close if there is at + least one button. + If the builder has no image defined, then + the default image is used. Otherwise, this + constructor will add image from resource folder.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>builder</code> - DialogBoxBuilder - a builder class to configure a dialog box</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html new file mode 100644 index 0000000..e956e88 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html @@ -0,0 +1,419 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>DialogBoxBuilder</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client.dialogs, class: DialogBoxBuilder"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li><a href="#field-summary">Field</a> | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li><a href="#field-detail">Field</a> | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></div> +<h1 title="Class DialogBoxBuilder" class="title">Class DialogBoxBuilder</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">DialogBoxBuilder</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">A builder class which simplifies the + DialogBox class. Using a builder makes it easy + to create complex dialogs while still avoiding + the telescoping constructors problem. + It also makes it easier to add attributes in the future.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.2 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- =========== FIELD SUMMARY =========== --> +<li> +<section class="field-summary" id="field-summary"> +<h2>Field Summary</h2> +<div class="caption"><span>Fields</span></div> +<div class="summary-table three-column-summary"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Field</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><code>static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color"><code><a href="#recurringDialogMessage" class="member-name-link">recurringDialogMessage</a></code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(javafx.scene.control.Alert.AlertType)" class="member-name-link">DialogBoxBuilder</a><wbr>(javafx.scene.control.Alert.AlertType alertType)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new dialog box builder.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addHeader(java.lang.String)" class="member-name-link">addHeader</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> header)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add header to the dialog box builder configuration.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addImage(java.lang.String)" class="member-name-link">addImage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> imageName)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add image to the dialog box builder configuration.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addListMessage(java.util.ArrayList)" class="member-name-link">addListMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> listMessages)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Adds a list message for the dialog box.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addMessage(java.lang.String)" class="member-name-link">addMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> message)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add message to the dialog box builder configuration.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addTitle(java.lang.String)" class="member-name-link">addTitle</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> title)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add title to the dialog box builder configuration.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DialogBox.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#build()" class="member-name-link">build</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Create the dialog box with the + current configurations from this + builder object.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>javafx.scene.control.Alert.AlertType</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAlertType()" class="member-name-link">getAlertType</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the alert type for the dialog box.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getHeader()" class="member-name-link">getHeader</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the header for the dialog box.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>javafx.scene.image.Image</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getImage()" class="member-name-link">getImage</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the image for the dialog box.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getListMessages()" class="member-name-link">getListMessages</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the list message for the dialog box.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessage()" class="member-name-link">getMessage</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the message for the dialog box.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTitle()" class="member-name-link">getTitle</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets the title of the dialog box.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ============ FIELD DETAIL =========== --> +<li> +<section class="field-details" id="field-detail"> +<h2>Field Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="recurringDialogMessage"> +<h3>recurringDialogMessage</h3> +<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">recurringDialogMessage</span></div> +<dl class="notes"> +<dt>See Also:</dt> +<dd> +<ul class="see-list"> +<li><a href="../../../../../../../constant-values.html#edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder.recurringDialogMessage">Constant Field Values</a></li> +</ul> +</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(javafx.scene.control.Alert.AlertType)"> +<h3>DialogBoxBuilder</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">DialogBoxBuilder</span><wbr><span class="parameters">(javafx.scene.control.Alert.AlertType alertType)</span></div> +<div class="block">Instantiates a new dialog box builder. + Sets the title and message to a default. + They are still optional to set.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>alertType</code> - AlertType - enum from inside the Alert class. + Either ERROR, INFORMATION, NONE, CONFIRMATION or WARNING</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="build()"> +<h3>build</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBox.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></span> <span class="element-name">build</span>()</div> +<div class="block">Create the dialog box with the + current configurations from this + builder object.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>dialogBox - DialogBox - a dialog box with this builder's configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addTitle(java.lang.String)"> +<h3>addTitle</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span> <span class="element-name">addTitle</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> title)</span></div> +<div class="block">Add title to the dialog box builder configuration. + The title is displayed on the top of the window.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>title</code> - String - the title of the dialog box</dd> +<dt>Returns:</dt> +<dd>dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addHeader(java.lang.String)"> +<h3>addHeader</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span> <span class="element-name">addHeader</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> header)</span></div> +<div class="block">Add header to the dialog box builder configuration. + A header is displayed above the message</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>header</code> - String - the header of the dialog box</dd> +<dt>Returns:</dt> +<dd>dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addMessage(java.lang.String)"> +<h3>addMessage</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span> <span class="element-name">addMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> message)</span></div> +<div class="block">Add message to the dialog box builder configuration.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>message</code> - String - the message of the dialog box</dd> +<dt>Returns:</dt> +<dd>dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addImage(java.lang.String)"> +<h3>addImage</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span> <span class="element-name">addImage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> imageName)</span></div> +<div class="block">Add image to the dialog box builder configuration. + The image is displayed as both the window icon + and on the actual scene.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>imageName</code> - String - the name of the image to display.</dd> +<dt>Returns:</dt> +<dd>dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addListMessage(java.util.ArrayList)"> +<h3>addListMessage</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></span> <span class="element-name">addListMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> listMessages)</span></div> +<div class="block">Adds a list message for the dialog box.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>listMessages</code> - - ArrayList - the dialog box' list of messages</dd> +<dt>Returns:</dt> +<dd>dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAlertType()"> +<h3>getAlertType</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">javafx.scene.control.Alert.AlertType</span> <span class="element-name">getAlertType</span>()</div> +<div class="block">Gets the alert type for the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>alertType - AlertType - enum from inside the Alert class. + Either ERROR, INFORMATION, NONE, CONFIRMATION or WARNING</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getTitle()"> +<h3>getTitle</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getTitle</span>()</div> +<div class="block">Gets the title of the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>title - String - the dialog box' title</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getHeader()"> +<h3>getHeader</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getHeader</span>()</div> +<div class="block">Gets the header for the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>header - String - the dialog box' header</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getMessage()"> +<h3>getMessage</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getMessage</span>()</div> +<div class="block">Gets the message for the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>message - String - the dialog box' message</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getImage()"> +<h3>getImage</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">javafx.scene.image.Image</span> <span class="element-name">getImage</span>()</div> +<div class="block">Gets the image for the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>image - Image - the dialog box' icon and image</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getListMessages()"> +<h3>getListMessages</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></span> <span class="element-name">getListMessages</span>()</div> +<div class="block">Gets the list message for the dialog box.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>listMessages - ArrayList - the dialog box' list of messages</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html new file mode 100644 index 0000000..ea582dc --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html @@ -0,0 +1,102 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.client.dialogs</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client.dialogs"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu.client.dialogs" class="title">Package edu.ntnu.idatt2001.carljgu.client.dialogs</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu.client.dialogs</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="../package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last even-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="caption"><span>Classes</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="DialogBox.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">A dialog box that extends alert to use + a builder to build a dialog box.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">A builder class which simplifies the + DialogBox class.</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-tree.html new file mode 100644 index 0000000..6c9b53f --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-tree.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.client.dialogs Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client.dialogs"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu.client.dialogs</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">javafx.scene.control.Dialog<R> (implements javafx.event.EventTarget) +<ul> +<li class="circle">javafx.scene.control.Alert +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="DialogBox.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></li> +</ul> +</li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="DialogBoxBuilder.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html new file mode 100644 index 0000000..2bb2183 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html @@ -0,0 +1,113 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.client</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu.client" class="title">Package edu.ntnu.idatt2001.carljgu.client</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu.client</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="../package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="../battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="../units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last odd-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="caption"><span>Classes</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">Class that extends Application + from javafx.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="BattleController.html" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">A controller class which + handles events in the fxml file.</div> +</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="Main.html" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">The main class that is run when the application + is called upon.</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-tree.html new file mode 100644 index 0000000..4fc123d --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-tree.html @@ -0,0 +1,77 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.client Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.client"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu.client</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">javafx.application.Application +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="App.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="BattleController.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a> (implements javafx.fxml.Initializable)</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="Main.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html new file mode 100644 index 0000000..8924d69 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html @@ -0,0 +1,117 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu" class="title">Package edu.ntnu.idatt2001.carljgu</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last even-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="class-summary-tab0" role="tab" aria-selected="true" aria-controls="class-summary.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary', 2)" class="active-table-tab">All Classes and Interfaces</button><button id="class-summary-tab2" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab2', 2)" class="table-tab">Classes</button><button id="class-summary-tab3" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab3', 2)" class="table-tab">Enum Classes</button><button id="class-summary-tab5" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab5', 2)" class="table-tab">Exceptions</button></div> +<div id="class-summary.tabpanel" role="tabpanel"> +<div class="summary-table two-column-summary" aria-labelledby="class-summary-tab0"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">Handles writing, reading and importing + armies to and from a file.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab5"><a href="FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab5"> +<div class="block">Thrown if an extension of a file is invalid + The exception thrown needs to have a message</div> +</div> +<div class="col-first even-row-color class-summary class-summary-tab3"><a href="Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></div> +<div class="col-last even-row-color class-summary class-summary-tab3"> +<div class="block">En enum that represents the different terrain + that the battles can occur on.</div> +</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-tree.html new file mode 100644 index 0000000..72fcf71 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-tree.html @@ -0,0 +1,102 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="ArmyFileHandler.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></li> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" class="type-name-link external-link" title="class or interface in java.lang">Throwable</a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>) +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Exception.html" class="type-name-link external-link" title="class or interface in java.lang">Exception</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/RuntimeException.html" class="type-name-link external-link" title="class or interface in java.lang">RuntimeException</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" class="type-name-link external-link" title="class or interface in java.lang">IllegalArgumentException</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="FileExtensionException.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></li> +</ul> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</section> +<section class="hierarchy"> +<h2 title="Enum Class Hierarchy">Enum Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" class="type-name-link external-link" title="class or interface in java.lang">Enum</a><E> (implements java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a><T>, java.lang.constant.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a>, java.io.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>) +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="Terrain.html" class="type-name-link" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></li> +</ul> +</li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html new file mode 100644 index 0000000..2eb483f --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html @@ -0,0 +1,436 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Army</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units, class: Army"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<h1 title="Class Army" class="title">Class Army</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.Army</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">Army</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">public class Army. + An army object stores a list of units + meant to fight another army.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.1 07.02.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String)" class="member-name-link">Army</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new Army.</div> +</div> +<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,java.util.ArrayList)" class="member-name-link">Army</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</code></div> +<div class="col-last odd-row-color"> +<div class="block">Instantiates a new Army.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addUnit(edu.ntnu.idatt2001.carljgu.units.Unit)" class="member-name-link">addUnit</a><wbr>(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add unit if it does not exist from before.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addUnits(java.util.ArrayList)" class="member-name-link">addUnits</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Add units.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" class="member-name-link">equals</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a> o)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Checks if two armies are equal based on name and list of units.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAllUnits()" class="member-name-link">getAllUnits</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets all units.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCavalryUnits()" class="member-name-link">getCavalryUnits</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns an arraylist of cavalry units + using stream and filter.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCommanderUnits()" class="member-name-link">getCommanderUnits</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns an arraylist of commander units + using stream and filter.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInfantryUnits()" class="member-name-link">getInfantryUnits</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns an arraylist of infantry units + using stream and filter.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getName()" class="member-name-link">getName</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets name.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRandom()" class="member-name-link">getRandom</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets a random unit from the list.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRangedUnits()" class="member-name-link">getRangedUnits</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns an arraylist of ranged units + using stream and filter.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" class="member-name-link">hashCode</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Hashes name and units for the equals method</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUnits()" class="member-name-link">hasUnits</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Checks if the list of units is empty</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#remove(edu.ntnu.idatt2001.carljgu.units.Unit)" class="member-name-link">remove</a><wbr>(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Remove a specified unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the toString() method from Object.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,java.util.ArrayList)"> +<h3>Army</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Army</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Instantiates a new Army. + Used if a list of units already exists.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - the name of the army.</dd> +<dd><code>units</code> - ArrayList - the units of the army.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if name is not valid.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="<init>(java.lang.String)"> +<h3>Army</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Army</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</span></div> +<div class="block">Instantiates a new Army. + Second constructor if a list of units does not + exist from before.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - the name of the army</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getName()"> +<h3>getName</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getName</span>()</div> +<div class="block">Gets name.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>name - String - the name of the army.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addUnit(edu.ntnu.idatt2001.carljgu.units.Unit)"> +<h3>addUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">addUnit</span><wbr><span class="parameters">(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit)</span></div> +<div class="block">Add unit if it does not exist from before.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>unit</code> - Unit - an instance of Unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="addUnits(java.util.ArrayList)"> +<h3>addUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">addUnits</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</span></div> +<div class="block">Add units. + Iterates over units and adds them if + they do not exist from before.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>units</code> - ArrayList - a list of units.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="remove(edu.ntnu.idatt2001.carljgu.units.Unit)"> +<h3>remove</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">remove</span><wbr><span class="parameters">(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit)</span></div> +<div class="block">Remove a specified unit.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>unit</code> - Unit - an instance of Unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="hasUnits()"> +<h3>hasUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">hasUnits</span>()</div> +<div class="block">Checks if the list of units is empty</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>boolean - true if the list is not empty.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAllUnits()"> +<h3>getAllUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">getAllUnits</span>()</div> +<div class="block">Gets all units.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>units - ArrayList - a list of units.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getInfantryUnits()"> +<h3>getInfantryUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">getInfantryUnits</span>()</div> +<div class="block">Returns an arraylist of infantry units + using stream and filter.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>ArrayList - a list of infantry units</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getRangedUnits()"> +<h3>getRangedUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">getRangedUnits</span>()</div> +<div class="block">Returns an arraylist of ranged units + using stream and filter.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>ArrayList - a list of ranged units</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getCavalryUnits()"> +<h3>getCavalryUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">getCavalryUnits</span>()</div> +<div class="block">Returns an arraylist of cavalry units + using stream and filter. + Makes sure units are not commander units</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>ArrayList - a list of cavalry units</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getCommanderUnits()"> +<h3>getCommanderUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">getCommanderUnits</span>()</div> +<div class="block">Returns an arraylist of commander units + using stream and filter.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>ArrayList - a list of commander units</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getRandom()"> +<h3>getRandom</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span> <span class="element-name">getRandom</span>()</div> +<div class="block">Gets a random unit from the list. + If there are no units it returns a null object.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>unit - Unit - an instance of Unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="toString()"> +<h3>toString</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">toString</span>()</div> +<div class="block">Overrides the toString() method from Object. + iterates over all units and calls their toString() method. + Uses StringBuilder to avoid making new Strings.</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Returns:</dt> +<dd>String - representation of the army.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="equals(java.lang.Object)"> +<h3>equals</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">equals</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a> o)</span></div> +<div class="block">Checks if two armies are equal based on name and list of units.</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Parameters:</dt> +<dd><code>o</code> - Object - object checking validity to.</dd> +<dt>Returns:</dt> +<dd>boolean - true if name and list of units are equal.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="hashCode()"> +<h3>hashCode</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">hashCode</span>()</div> +<div class="block">Hashes name and units for the equals method</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Returns:</dt> +<dd>int - hashcode to the army</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html new file mode 100644 index 0000000..fec7665 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html @@ -0,0 +1,344 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Unit</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units, class: Unit"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<h1 title="Class Unit" class="title">Class Unit</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.Unit</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>Direct Known Subclasses:</dt> +<dd><code><a href="specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></code>, <code><a href="specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></code>, <code><a href="specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public abstract class </span><span class="element-name type-name-label">Unit</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">The abstract class Unit. + A unit object should not be created because all units + that are used in the simulations are subclasses of Unit. + Since it is abstract a Unit object can not be created.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 09.04.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">Unit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</code></div> +<div class="col-last even-row-color"> +<div class="block">Checks validity of name and health.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">attack</a><wbr>(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Method for dealing damage to another unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getArmor()" class="member-name-link">getArmor</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets armor.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttack()" class="member-name-link">getAttack</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets attack.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract int</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus</a><wbr>(<a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> +<div class="block">Gets attack bonus.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getHealth()" class="member-name-link">getHealth</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets health.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getName()" class="member-name-link">getName</a>()</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Gets name.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus</a><wbr>(<a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"> +<div class="block">Gets resist bonus.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setHealth(int)" class="member-name-link">setHealth</a><wbr>(int health)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Sets health.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides toString() method from Object.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,int,int,int)"> +<h3>Unit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Unit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Checks validity of name and health. Health can not be less than or equal to zero. + Attack and armor can not be negative, but can be equal to zero.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +<dd><code>attack</code> - int - damage done, excluding attack bonus, on an enemy unit.</dd> +<dd><code>armor</code> - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if name is empty or whitespace only or if health starts at zero or less.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>attack</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">attack</span><wbr><span class="parameters">(<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> unit, + <a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Method for dealing damage to another unit. + It uses the enemy unit's attributes like health, resist bonus and armor + to calculate its remaining health. + If the total damage dealt is less than the armor and resistance bonus + for the defender, the unit's health is unaffected.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>unit</code> - Unit - enemy of any unit subclass.</dd> +<dt>Returns:</dt> +<dd>totalDamage - int - the amount of damage the attacker inflicted</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getName()"> +<h3>getName</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getName</span>()</div> +<div class="block">Gets name.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>name - String - a short name of the unit that can't be left with whitespace or empty.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getHealth()"> +<h3>getHealth</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getHealth</span>()</div> +<div class="block">Gets health.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>health - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAttack()"> +<h3>getAttack</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getAttack</span>()</div> +<div class="block">Gets attack.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>attack - int - damage done, excluding attack bonus, on an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getArmor()"> +<h3>getArmor</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getArmor</span>()</div> +<div class="block">Gets armor.</div> +<dl class="notes"> +<dt>Returns:</dt> +<dd>armor - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="setHealth(int)"> +<h3>setHealth</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setHealth</span><wbr><span class="parameters">(int health)</span></div> +<div class="block">Sets health.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>health</code> - - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="toString()"> +<h3>toString</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">toString</span>()</div> +<div class="block">Overrides toString() method from Object.</div> +<dl class="notes"> +<dt>Overrides:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd> +<dt>Returns:</dt> +<dd>String - string representation of object</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getAttackBonus</h3> +<div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type">int</span> <span class="element-name">getAttackBonus</span><wbr><span class="parameters">(<a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Gets attack bonus. + Abstract method that is to be defined in subclasses.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain of the attack</dd> +<dt>Returns:</dt> +<dd>the attack bonus</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getResistBonus</h3> +<div class="member-signature"><span class="modifiers">public abstract</span> <span class="return-type">int</span> <span class="element-name">getResistBonus</span><wbr><span class="parameters">(<a href="../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Gets resist bonus. + Abstract method that is to be defined in subclasses.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain of the attack</dd> +<dt>Returns:</dt> +<dd>the resist bonus</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html new file mode 100644 index 0000000..98c95e3 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html @@ -0,0 +1,252 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>UnitFactory</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units, class: UnitFactory"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<h1 title="Class UnitFactory" class="title">Class UnitFactory</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.UnitFactory</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">UnitFactory</span> +<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div> +<div class="block">A class to simply and elegantly create units. + Either one by one or many at once. Uses string + instead of enums to directly insert the + unit type from the file reader. In addition, + the exception is handled in the factory.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.3 13.04.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">UnitFactory</a>()</code></div> +<div class="col-last even-row-color"> </div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createListOfUnits(int,java.lang.String,java.lang.String,int)" class="member-name-link">createListOfUnits</a><wbr>(int amount, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> unitType, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Returns a list of units.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createUnit(java.lang.String,java.lang.String,int)" class="member-name-link">createUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> unitType, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Creates a unit between + InfantryUnit, RangedUnit, + CavalryUnit or CommanderUnit.</div> +</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deepCopyBasicUnits(java.util.ArrayList)" class="member-name-link">deepCopyBasicUnits</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Deep copies units, but ignores overridden + attack and armor points.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>()"> +<h3>UnitFactory</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">UnitFactory</span>()</div> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="createUnit(java.lang.String,java.lang.String,int)"> +<h3>createUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span> <span class="element-name">createUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> unitType, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Creates a unit between + InfantryUnit, RangedUnit, + CavalryUnit or CommanderUnit. + If the unit type could not be + found, it will return null instead.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>unitType</code> - String - the type of unit to create.</dd> +<dd><code>name</code> - String - name of the created unit.</dd> +<dd><code>health</code> - int - amount of health the unit starts width</dd> +<dt>Returns:</dt> +<dd>unit - Unit - an instance of specialized unit with name and health specified</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if the unit could not be created or + if the type of unit does not exist.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="createListOfUnits(int,java.lang.String,java.lang.String,int)"> +<h3>createListOfUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">createListOfUnits</span><wbr><span class="parameters">(int amount, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> unitType, + <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Returns a list of units. + Uses the createUnit method to create a + list of "amount" units with the same name and health.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>amount</code> - int - amount of units to create.</dd> +<dd><code>unitType</code> - String - the type of unit to create.</dd> +<dd><code>name</code> - String - name of the created unit.</dd> +<dd><code>health</code> - int - amount of health the unit starts width</dd> +<dt>Returns:</dt> +<dd>units - ArrayList - a list of units with the equal attributes.</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if amount is a negative number, if + unit could not be created or if unit type does not exist.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="deepCopyBasicUnits(java.util.ArrayList)"> +<h3>deepCopyBasicUnits</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>></span> <span class="element-name">deepCopyBasicUnits</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><<a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a>> units)</span> + throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> +<div class="block">Deep copies units, but ignores overridden + attack and armor points.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>units</code> - ArrayList - a list of units.</dd> +<dt>Returns:</dt> +<dd>new_units - ArrayList - a deep copied list of all units</dd> +<dt>Throws:</dt> +<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - thrown if any units could not be + created or if unit type does not exist.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html new file mode 100644 index 0000000..b2f6847 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html @@ -0,0 +1,110 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.units</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu.units" class="title">Package edu.ntnu.idatt2001.carljgu.units</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu.units</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="../package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<div class="col-last odd-row-color"> </div> +<div class="col-first even-row-color"><a href="../battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<div class="col-last even-row-color"> </div> +<div class="col-first odd-row-color"><a href="../client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last odd-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="caption"><span>Classes</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">public class Army.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">The abstract class Unit.</div> +</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">A class to simply and elegantly create units.</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-tree.html new file mode 100644 index 0000000..86cd86f --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-tree.html @@ -0,0 +1,73 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.units Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu.units</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="Army.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="Unit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="UnitFactory.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html new file mode 100644 index 0000000..e67ccba --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html @@ -0,0 +1,255 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>CavalryUnit</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized, class: CavalryUnit"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<h1 title="Class CavalryUnit" class="title">Class CavalryUnit</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">edu.ntnu.idatt2001.carljgu.units.Unit</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.specialized.CavalryUnit</div> +</div> +</div> +<section class="class-description" id="class-description"> +<dl class="notes"> +<dt>Direct Known Subclasses:</dt> +<dd><code><a href="CommanderUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></code></dd> +</dl> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CavalryUnit</span> +<span class="extends-implements">extends <a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span></div> +<div class="block">Class CavalryUnit that inherits from Unit. + CavalryUnit objects implements methods from + the superclass.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int)" class="member-name-link">CavalryUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new Cavalry unit with + a simplified constructor.</div> +</div> +<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">CavalryUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</code></div> +<div class="col-last odd-row-color"> +<div class="block">Instantiates a new Cavalry unit.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getResistBonus from Unit.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-edu.ntnu.idatt2001.carljgu.units.Unit">Methods inherited from class edu.ntnu.idatt2001.carljgu.units.<a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></h3> +<code><a href="../Unit.html#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)">attack</a>, <a href="../Unit.html#getArmor()">getArmor</a>, <a href="../Unit.html#getAttack()">getAttack</a>, <a href="../Unit.html#getHealth()">getHealth</a>, <a href="../Unit.html#getName()">getName</a>, <a href="../Unit.html#setHealth(int)">setHealth</a>, <a href="../Unit.html#toString()">toString</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,int,int,int)"> +<h3>CavalryUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">CavalryUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</span></div> +<div class="block">Instantiates a new Cavalry unit. + Uses the constructor of its superclass Unit.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +<dd><code>attack</code> - int - damage done, excluding attack bonus, on an enemy unit.</dd> +<dd><code>armor</code> - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="<init>(java.lang.String,int)"> +<h3>CavalryUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">CavalryUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span></div> +<div class="block">Instantiates a new Cavalry unit with + a simplified constructor. + Attack is set to 20 and health is set to 12 + Uses the constructor over since it instantiates other variables</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getAttackBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getAttackBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getAttackBonus from Unit. + The first time it is run, the default usedAttackBonus + is used to simulate the first charge. After that the + attack bonus for melee is used instead throughout + the CavalryUnit's lifetime. + The bonus is also increased if the terrain is plains.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getAttackBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>attackBonus - int - value of the attack bonus + used when calculating an enemy unit's health in an attack.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getResistBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getResistBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getResistBonus from Unit. + The resist bonus is increased if the terrain is forest.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getResistBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>resistBonus - int - value of the resist bonus + used when calculating this object's health in an attack.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html new file mode 100644 index 0000000..502e6d6 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html @@ -0,0 +1,187 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>CommanderUnit</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized, class: CommanderUnit"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li>Method</li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<h1 title="Class CommanderUnit" class="title">Class CommanderUnit</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">edu.ntnu.idatt2001.carljgu.units.Unit</a> +<div class="inheritance"><a href="CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">edu.ntnu.idatt2001.carljgu.units.specialized.CavalryUnit</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.specialized.CommanderUnit</div> +</div> +</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CommanderUnit</span> +<span class="extends-implements">extends <a href="CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></span></div> +<div class="block">Class CommanderUnit that inherits from CavalryUnit. + CommanderUnit objects does not implement methods from + the superclass Unit as they are defined in CavalryUnit.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int)" class="member-name-link">CommanderUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new CommanderUnit unit with + a simplified constructor.</div> +</div> +<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">CommanderUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</code></div> +<div class="col-last odd-row-color"> +<div class="block">Instantiates a new CommanderUnit unit.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-edu.ntnu.idatt2001.carljgu.units.specialized.CavalryUnit">Methods inherited from class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></h3> +<code><a href="CavalryUnit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getAttackBonus</a>, <a href="CavalryUnit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getResistBonus</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-edu.ntnu.idatt2001.carljgu.units.Unit">Methods inherited from class edu.ntnu.idatt2001.carljgu.units.<a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></h3> +<code><a href="../Unit.html#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)">attack</a>, <a href="../Unit.html#getArmor()">getArmor</a>, <a href="../Unit.html#getAttack()">getAttack</a>, <a href="../Unit.html#getHealth()">getHealth</a>, <a href="../Unit.html#getName()">getName</a>, <a href="../Unit.html#setHealth(int)">setHealth</a>, <a href="../Unit.html#toString()">toString</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,int,int,int)"> +<h3>CommanderUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">CommanderUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</span></div> +<div class="block">Instantiates a new CommanderUnit unit. + Uses the constructor of its superclass CavalryUnit</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +<dd><code>attack</code> - int - damage done, excluding attack bonus, on an enemy unit.</dd> +<dd><code>armor</code> - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="<init>(java.lang.String,int)"> +<h3>CommanderUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">CommanderUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span></div> +<div class="block">Instantiates a new CommanderUnit unit with + a simplified constructor. + Attack is set to 25 and health is set to 15 + Uses the constructor of its superclass CavalryUnit since the constructor gives + no other value.</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html new file mode 100644 index 0000000..85397c3 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html @@ -0,0 +1,247 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>InfantryUnit</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized, class: InfantryUnit"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<h1 title="Class InfantryUnit" class="title">Class InfantryUnit</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">edu.ntnu.idatt2001.carljgu.units.Unit</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.specialized.InfantryUnit</div> +</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">InfantryUnit</span> +<span class="extends-implements">extends <a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span></div> +<div class="block">Class InfantryUnit that inherits from Unit. + InfantryUnit objects implements methods from + the superclass.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int)" class="member-name-link">InfantryUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new Infantry unit with + a simplified constructor.</div> +</div> +<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">InfantryUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</code></div> +<div class="col-last odd-row-color"> +<div class="block">Instantiates a new Infantry unit.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getResistBonus from Unit.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-edu.ntnu.idatt2001.carljgu.units.Unit">Methods inherited from class edu.ntnu.idatt2001.carljgu.units.<a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></h3> +<code><a href="../Unit.html#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)">attack</a>, <a href="../Unit.html#getArmor()">getArmor</a>, <a href="../Unit.html#getAttack()">getAttack</a>, <a href="../Unit.html#getHealth()">getHealth</a>, <a href="../Unit.html#getName()">getName</a>, <a href="../Unit.html#setHealth(int)">setHealth</a>, <a href="../Unit.html#toString()">toString</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,int,int,int)"> +<h3>InfantryUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">InfantryUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</span></div> +<div class="block">Instantiates a new Infantry unit. + Uses the constructor of its superclass Unit</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +<dd><code>attack</code> - int - damage done, excluding attack bonus, on an enemy unit.</dd> +<dd><code>armor</code> - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="<init>(java.lang.String,int)"> +<h3>InfantryUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">InfantryUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span></div> +<div class="block">Instantiates a new Infantry unit with + a simplified constructor. + Attack is set to 15 and health is set to 10 + Uses the constructor over since it instantiates other variables</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getAttackBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getAttackBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getAttackBonus from Unit. + The attack bonus is increased if the terrain is forest.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getAttackBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>attackBonus - int - value of the attack bonus + used when calculating an enemy unit's health in an attack.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getResistBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getResistBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getResistBonus from Unit. + The resistance bonus is increased if the terrain is forest.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getResistBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>resistBonus - int - value of the resist bonus + used when calculating this object's health in an attack.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html new file mode 100644 index 0000000..8e70cad --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html @@ -0,0 +1,254 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>RangedUnit</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized, class: RangedUnit"> +<meta name="generator" content="javadoc/ClassWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="class-declaration-page"> +<script type="text/javascript">var evenRowColor = "even-row-color"; +var oddRowColor = "odd-row-color"; +var tableTab = "table-tab"; +var activeTableTab = "active-table-tab"; +var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="nav-bar-cell1-rev">Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#class">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor-summary">Constr</a> | </li> +<li><a href="#method-summary">Method</a></li> +</ul> +<ul class="sub-nav-list"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor-detail">Constr</a> | </li> +<li><a href="#method-detail">Method</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="sub-title"><span class="module-label-in-type">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></div> +<h1 title="Class RangedUnit" class="title">Class RangedUnit</h1> +</div> +<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> +<div class="inheritance"><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">edu.ntnu.idatt2001.carljgu.units.Unit</a> +<div class="inheritance">edu.ntnu.idatt2001.carljgu.units.specialized.RangedUnit</div> +</div> +</div> +<section class="class-description" id="class-description"> +<hr> +<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">RangedUnit</span> +<span class="extends-implements">extends <a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></span></div> +<div class="block">Class RangedUnit that inherits from Unit. + RangedUnit objects implements methods from + the superclass.</div> +<dl class="notes"> +<dt>Version:</dt> +<dd>1.4 01.05.2022</dd> +<dt>Author:</dt> +<dd>Carl Gützkow</dd> +</dl> +</section> +<section class="summary"> +<ul class="summary-list"> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<li> +<section class="constructor-summary" id="constructor-summary"> +<h2>Constructor Summary</h2> +<div class="caption"><span>Constructors</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Constructor</div> +<div class="table-header col-last">Description</div> +<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int)" class="member-name-link">RangedUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</code></div> +<div class="col-last even-row-color"> +<div class="block">Instantiates a new Ranged unit with + a simplified constructor.</div> +</div> +<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">RangedUnit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</code></div> +<div class="col-last odd-row-color"> +<div class="block">Instantiates a new Ranged unit.</div> +</div> +</div> +</section> +</li> +<!-- ========== METHOD SUMMARY =========== --> +<li> +<section class="method-summary" id="method-summary"> +<h2>Method Summary</h2> +<div id="method-summary-table"> +<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> +<div id="method-summary-table.tabpanel" role="tabpanel"> +<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> +<div class="table-header col-first">Modifier and Type</div> +<div class="table-header col-second">Method</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</div> +<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> +<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus</a><wbr>(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</code></div> +<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</div> +</div> +</div> +</div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-edu.ntnu.idatt2001.carljgu.units.Unit">Methods inherited from class edu.ntnu.idatt2001.carljgu.units.<a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></h3> +<code><a href="../Unit.html#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)">attack</a>, <a href="../Unit.html#getArmor()">getArmor</a>, <a href="../Unit.html#getAttack()">getAttack</a>, <a href="../Unit.html#getHealth()">getHealth</a>, <a href="../Unit.html#getName()">getName</a>, <a href="../Unit.html#setHealth(int)">setHealth</a>, <a href="../Unit.html#toString()">toString</a></code></div> +<div class="inherited-list"> +<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> +<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> +</section> +</li> +</ul> +</section> +<section class="details"> +<ul class="details-list"> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<li> +<section class="constructor-details" id="constructor-detail"> +<h2>Constructor Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="<init>(java.lang.String,int,int,int)"> +<h3>RangedUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">RangedUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health, + int attack, + int armor)</span></div> +<div class="block">Instantiates a new Ranged unit. + Uses the constructor of its superclass Unit</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +<dd><code>attack</code> - int - damage done, excluding attack bonus, on an enemy unit.</dd> +<dd><code>armor</code> - int - damage resisted, excluding resist bonus, from an enemy unit.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="<init>(java.lang.String,int)"> +<h3>RangedUnit</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">RangedUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name, + int health)</span></div> +<div class="block">Instantiates a new Ranged unit with + a simplified constructor. + Attack is set to 15 and health is set to 8 + Uses the constructor over since it instantiates other variables</div> +<dl class="notes"> +<dt>Parameters:</dt> +<dd><code>name</code> - String - a short name of the unit that can't be left with whitespace or empty.</dd> +<dd><code>health</code> - int - HP - amount of health unit has. If it hits zero or more, the unit is dead.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +<!-- ============ METHOD DETAIL ========== --> +<li> +<section class="method-details" id="method-detail"> +<h2>Method Details</h2> +<ul class="member-list"> +<li> +<section class="detail" id="getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getAttackBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getAttackBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getAttackBonus from Unit. + The attack bonus is decreased if the terrain is forest + and increased if the terrain is hills.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getAttackBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>attackBonus - int - value of the attack bonus + used when calculating an enemy unit's health in an attack.</dd> +</dl> +</section> +</li> +<li> +<section class="detail" id="getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"> +<h3>getResistBonus</h3> +<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getResistBonus</span><wbr><span class="parameters">(<a href="../../Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> terrain)</span></div> +<div class="block">Overrides the abstract method getAttackBonus from Unit. + The first time it is run, times resisted is less than 2 + and therefore returns the initial resist bonus. + The second time resisted is still less than 2, but + the initial resist bonus is subtracted by 2. + (initialResistBonus - 2 * timesResisted (1)). + The third time and all other times this method is, + the default finalResistBonus is used.</div> +<dl class="notes"> +<dt>Specified by:</dt> +<dd><code><a href="../Unit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)">getResistBonus</a></code> in class <code><a href="../Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></code></dd> +<dt>Parameters:</dt> +<dd><code>terrain</code> - Terrain - the terrain where the attack occurs.</dd> +<dt>Returns:</dt> +<dd>resistBonus - int - value of the resist bonus + used when calculating this object's health in an attack.</dd> +</dl> +</section> +</li> +</ul> +</section> +</li> +</ul> +</section> +<!-- ========= END OF CLASS DATA ========= --> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html new file mode 100644 index 0000000..6bd86c4 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html @@ -0,0 +1,108 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.units.specialized</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized"> +<meta name="generator" content="javadoc/PackageWriterImpl"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-declaration-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li class="nav-bar-cell1-rev">Package</li> +<li>Class</li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#package">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Package: </li> +<li>Description | </li> +<li><a href="#related-package-summary">Related Packages</a> | </li> +<li><a href="#class-summary">Classes and Interfaces</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<div class="sub-title"><span class="module-label-in-package">Module</span> <a href="../../../../../../module-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<h1 title="Package edu.ntnu.idatt2001.carljgu.units.specialized" class="title">Package edu.ntnu.idatt2001.carljgu.units.specialized</h1> +</div> +<hr> +<div class="package-signature">package <span class="element-name">edu.ntnu.idatt2001.carljgu.units.specialized</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<div id="related-package-summary"> +<div class="caption"><span>Related Packages</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color"><a href="../package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last even-row-color"> </div> +</div> +</div> +</li> +<li> +<div id="class-summary"> +<div class="caption"><span>Classes</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Class</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">Class CavalryUnit that inherits from Unit.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="CommanderUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">Class CommanderUnit that inherits from CavalryUnit.</div> +</div> +<div class="col-first even-row-color class-summary class-summary-tab2"><a href="InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></div> +<div class="col-last even-row-color class-summary class-summary-tab2"> +<div class="block">Class InfantryUnit that inherits from Unit.</div> +</div> +<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></div> +<div class="col-last odd-row-color class-summary class-summary-tab2"> +<div class="block">Class RangedUnit that inherits from Unit.</div> +</div> +</div> +</div> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-tree.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-tree.html new file mode 100644 index 0000000..2de87d1 --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-tree.html @@ -0,0 +1,81 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.units.specialized Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="tree: module: edu.ntnu.idatt2001.carljgu.client, package: edu.ntnu.idatt2001.carljgu.units.specialized"> +<meta name="generator" content="javadoc/PackageTreeWriter"> +<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../../../../../../../script.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script> +</head> +<body class="package-tree-page"> +<script type="text/javascript">var pathtoroot = "../../../../../../../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../../../../../../module-summary.html">Module</a></li> +<li><a href="package-summary.html">Package</a></li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="../../../../../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../../../../../help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For Package edu.ntnu.idatt2001.carljgu.units.specialized</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="../../../../../../../overview-tree.html">All Packages</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="../Unit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="CavalryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="CommanderUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="InfantryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="RangedUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></li> +</ul> +</li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/edu.ntnu.idatt2001.carljgu.client/module-summary.html b/javadoc/edu.ntnu.idatt2001.carljgu.client/module-summary.html new file mode 100644 index 0000000..c0cf82e --- /dev/null +++ b/javadoc/edu.ntnu.idatt2001.carljgu.client/module-summary.html @@ -0,0 +1,95 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>edu.ntnu.idatt2001.carljgu.client</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="declaration: module: edu.ntnu.idatt2001.carljgu.client"> +<meta name="generator" content="javadoc/ModuleWriterImpl"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="module-declaration-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li class="nav-bar-cell1-rev">Module</li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li><a href="../index-files/index-1.html">Index</a></li> +<li><a href="../help-doc.html#module">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Module: </li> +<li>Description | </li> +<li>Modules | </li> +<li><a href="#packages-summary">Packages</a> | </li> +<li>Services</li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 title="Module edu.ntnu.idatt2001.carljgu.client" class="title">Module edu.ntnu.idatt2001.carljgu.client</h1> +</div> +<hr> +<div class="module-signature">module <span class="element-name">edu.ntnu.idatt2001.carljgu.client</span></div> +<section class="summary"> +<ul class="summary-list"> +<li> +<section class="packages-summary" id="packages-summary"> +<!-- ============ PACKAGES SUMMARY =========== --> +<h2>Packages</h2> +<div id="package-summary-table"> +<div class="caption"><span>Exports</span></div> +<div class="summary-table two-column-summary"> +<div class="table-header col-first">Package</div> +<div class="table-header col-last">Description</div> +<div class="col-first even-row-color package-summary-table package-summary-table-tab1"><a href="edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></div> +<div class="col-last even-row-color package-summary-table package-summary-table-tab1"> </div> +<div class="col-first odd-row-color package-summary-table package-summary-table-tab1"><a href="edu/ntnu/idatt2001/carljgu/battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></div> +<div class="col-last odd-row-color package-summary-table package-summary-table-tab1"> </div> +<div class="col-first even-row-color package-summary-table package-summary-table-tab1"><a href="edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></div> +<div class="col-last even-row-color package-summary-table package-summary-table-tab1"> </div> +<div class="col-first odd-row-color package-summary-table package-summary-table-tab1"><a href="edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></div> +<div class="col-last odd-row-color package-summary-table package-summary-table-tab1"> </div> +<div class="col-first even-row-color package-summary-table package-summary-table-tab1"><a href="edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></div> +<div class="col-last even-row-color package-summary-table package-summary-table-tab1"> </div> +</div> +</div> +</section> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/element-list b/javadoc/element-list new file mode 100644 index 0000000..1b9710d --- /dev/null +++ b/javadoc/element-list @@ -0,0 +1,7 @@ +module:edu.ntnu.idatt2001.carljgu.client +edu.ntnu.idatt2001.carljgu +edu.ntnu.idatt2001.carljgu.battle +edu.ntnu.idatt2001.carljgu.client +edu.ntnu.idatt2001.carljgu.client.dialogs +edu.ntnu.idatt2001.carljgu.units +edu.ntnu.idatt2001.carljgu.units.specialized diff --git a/javadoc/help-doc.html b/javadoc/help-doc.html new file mode 100644 index 0000000..6646000 --- /dev/null +++ b/javadoc/help-doc.html @@ -0,0 +1,191 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>API Help</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="help"> +<meta name="generator" content="javadoc/HelpWriter"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="help-page"> +<script type="text/javascript">var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="overview-tree.html">Tree</a></li> +<li><a href="index-files/index-1.html">Index</a></li> +<li class="nav-bar-cell1-rev">Help</li> +</ul> +</div> +<div class="sub-nav"> +<div> +<ul class="sub-nav-list"> +<li>Help: </li> +<li><a href="#help-navigation">Navigation</a> | </li> +<li><a href="#help-pages">Pages</a></li> +</ul> +</div> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<h1 class="title">JavaDoc Help</h1> +<ul class="help-toc"> +<li><a href="#help-navigation">Navigation</a>: +<ul class="help-subtoc"> +<li><a href="#help-search">Search</a></li> +</ul> +</li> +<li><a href="#help-pages">Kinds of Pages</a>: +<ul class="help-subtoc"> +<li><a href="#module">Module</a></li> +<li><a href="#package">Package</a></li> +<li><a href="#class">Class or Interface</a></li> +<li><a href="#doc-file">Other Files</a></li> +<li><a href="#tree">Tree (Class Hierarchy)</a></li> +<li><a href="#constant-values">Constant Field Values</a></li> +<li><a href="#serialized-form">Serialized Form</a></li> +<li><a href="#all-packages">All Packages</a></li> +<li><a href="#all-classes">All Classes and Interfaces</a></li> +<li><a href="#index">Index</a></li> +</ul> +</li> +</ul> +<hr> +<div class="sub-title"> +<h2 id="help-navigation">Navigation</h2> +Starting from the <a href="index.html">Overview</a> page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The <a href="index-files/index-1.html">Index</a> and Search box allow you to navigate to specific declarations and summary pages, including: <a href="allpackages-index.html">All Packages</a>, <a href="allclasses-index.html">All Classes and Interfaces</a> +<section class="help-section" id="help-search"> +<h3>Search</h3> +<p>You can search for definitions of modules, packages, types, fields, methods, system properties and other terms defined in the API, using some or all of the name, optionally using "camelCase" abbreviations. For example:</p> +<ul class="help-section-list"> +<li><code>j.l.obj</code> will match "java.lang.Object"</li> +<li><code>InpStr</code> will match "java.io.InputStream"</li> +<li><code>HM.cK</code> will match "java.util.HashMap.containsKey(Object)"</li> +</ul> +<p>Refer to the <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/javadoc/javadoc-search-spec.html">Javadoc Search Specification</a> for a full description of search features.</p> +</section> +</div> +<hr> +<div class="sub-title"> +<h2 id="help-pages">Kinds of Pages</h2> +The following sections describe the different kinds of pages in this collection. +<section class="help-section" id="module"> +<h3>Module</h3> +<p>Each module has a page that contains a list of its packages, dependencies on other modules, and services, with a summary for each. These pages may contain the following categories:</p> +<ul class="help-section-list"> +<li>Packages</li> +<li>Modules</li> +<li>Services</li> +</ul> +</section> +<section class="help-section" id="package"> +<h3>Package</h3> +<p>Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:</p> +<ul class="help-section-list"> +<li>Interfaces</li> +<li>Classes</li> +<li>Enum Classes</li> +<li>Exceptions</li> +<li>Errors</li> +<li>Annotation Interfaces</li> +</ul> +</section> +<section class="help-section" id="class"> +<h3>Class or Interface</h3> +<p>Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.</p> +<ul class="help-section-list"> +<li>Class Inheritance Diagram</li> +<li>Direct Subclasses</li> +<li>All Known Subinterfaces</li> +<li>All Known Implementing Classes</li> +<li>Class or Interface Declaration</li> +<li>Class or Interface Description</li> +</ul> +<br> +<ul class="help-section-list"> +<li>Nested Class Summary</li> +<li>Enum Constant Summary</li> +<li>Field Summary</li> +<li>Property Summary</li> +<li>Constructor Summary</li> +<li>Method Summary</li> +<li>Required Element Summary</li> +<li>Optional Element Summary</li> +</ul> +<br> +<ul class="help-section-list"> +<li>Enum Constant Details</li> +<li>Field Details</li> +<li>Property Details</li> +<li>Constructor Details</li> +<li>Method Details</li> +<li>Element Details</li> +</ul> +<p><span class="help-note">Note:</span> Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.</p> +<p>The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.</p> +</section> +<section class="help-section" id="doc-file"> +<h3>Other Files</h3> +<p>Packages and modules may contain pages with additional information related to the declarations nearby.</p> +</section> +<section class="help-section" id="tree"> +<h3>Tree (Class Hierarchy)</h3> +<p>There is a <a href="overview-tree.html">Class Hierarchy</a> page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with <code>java.lang.Object</code>. Interfaces do not inherit from <code>java.lang.Object</code>.</p> +<ul class="help-section-list"> +<li>When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.</li> +<li>When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.</li> +</ul> +</section> +<section class="help-section" id="constant-values"> +<h3>Constant Field Values</h3> +<p>The <a href="constant-values.html">Constant Field Values</a> page lists the static final fields and their values.</p> +</section> +<section class="help-section" id="serialized-form"> +<h3>Serialized Form</h3> +<p>Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to those who implement rather than use the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See Also" section of the class description.</p> +</section> +<section class="help-section" id="all-packages"> +<h3>All Packages</h3> +<p>The <a href="allpackages-index.html">All Packages</a> page contains an alphabetic index of all packages contained in the documentation.</p> +</section> +<section class="help-section" id="all-classes"> +<h3>All Classes and Interfaces</h3> +<p>The <a href="allclasses-index.html">All Classes and Interfaces</a> page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.</p> +</section> +<section class="help-section" id="index"> +<h3>Index</h3> +<p>The <a href="index-files/index-1.html">Index</a> contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as <a href="allpackages-index.html">All Packages</a>, <a href="allclasses-index.html">All Classes and Interfaces</a>.</p> +</section> +</div> +<hr> +<span class="help-footnote">This help file applies to API documentation generated by the standard doclet.</span></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-1.html b/javadoc/index-files/index-1.html new file mode 100644 index 0000000..aabbe92 --- /dev/null +++ b/javadoc/index-files/index-1.html @@ -0,0 +1,121 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>A-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: A"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:A">A</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#addHeader(java.lang.String)" class="member-name-link">addHeader(String)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Add header to the dialog box builder configuration.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#addImage(java.lang.String)" class="member-name-link">addImage(String)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Add image to the dialog box builder configuration.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#addListMessage(java.util.ArrayList)" class="member-name-link">addListMessage(ArrayList<String>)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Adds a list message for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#addMessage(java.lang.String)" class="member-name-link">addMessage(String)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Add message to the dialog box builder configuration.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#addTitle(java.lang.String)" class="member-name-link">addTitle(String)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Add title to the dialog box builder configuration.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#addUnit(edu.ntnu.idatt2001.carljgu.units.Unit)" class="member-name-link">addUnit(Unit)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Add unit if it does not exist from before.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#addUnits(java.util.ArrayList)" class="member-name-link">addUnits(ArrayList<Unit>)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Add units.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">App</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></dt> +<dd> +<div class="block">Class that extends Application + from javafx.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html#%3Cinit%3E()" class="member-name-link">App()</a> - Constructor for class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></dt> +<dd> +<div class="block">public class Army.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#%3Cinit%3E(java.lang.String)" class="member-name-link">Army(String)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Instantiates a new Army.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#%3Cinit%3E(java.lang.String,java.util.ArrayList)" class="member-name-link">Army(String, ArrayList<Unit>)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Instantiates a new Army.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></dt> +<dd> +<div class="block">Handles writing, reading and importing + armies to and from a file.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html#%3Cinit%3E()" class="member-name-link">ArmyFileHandler()</a> - Constructor for class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></dt> +<dd> +<div class="block">Constructor which initiates the readLinesSkipped arraylist</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">attack(Unit, Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Method for dealing damage to another unit.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-10.html b/javadoc/index-files/index-10.html new file mode 100644 index 0000000..ce4e00c --- /dev/null +++ b/javadoc/index-files/index-10.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>M-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: M"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:M">M</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html#main(java.lang.String%5B%5D)" class="member-name-link">main(String[])</a> - Static method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></dt> +<dd> +<div class="block">Method to first be launched when the program is run</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></dt> +<dd> +<div class="block">The main class that is run when the application + is called upon.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html#%3Cinit%3E()" class="member-name-link">Main()</a> - Constructor for class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></dt> +<dd> </dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-11.html b/javadoc/index-files/index-11.html new file mode 100644 index 0000000..dc0107e --- /dev/null +++ b/javadoc/index-files/index-11.html @@ -0,0 +1,63 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>P-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: P"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:P">P</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html#PLAINS" class="member-name-link">PLAINS</a> - Enum constant in enum class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></dt> +<dd> </dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-12.html b/javadoc/index-files/index-12.html new file mode 100644 index 0000000..dc8bded --- /dev/null +++ b/javadoc/index-files/index-12.html @@ -0,0 +1,90 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>R-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: R"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:R">R</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></dt> +<dd> +<div class="block">Class RangedUnit that inherits from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html#%3Cinit%3E(java.lang.String,int)" class="member-name-link">RangedUnit(String, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></dt> +<dd> +<div class="block">Instantiates a new Ranged unit with + a simplified constructor.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">RangedUnit(String, int, int, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></dt> +<dd> +<div class="block">Instantiates a new Ranged unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html#readArmyFromFile(java.lang.String)" class="member-name-link">readArmyFromFile(String)</a> - Method in class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></dt> +<dd> +<div class="block">Finds a specified csv file + and converts it to an army if it can.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#recurringDialogMessage" class="member-name-link">recurringDialogMessage</a> - Static variable in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#remove(edu.ntnu.idatt2001.carljgu.units.Unit)" class="member-name-link">remove(Unit)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Remove a specified unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html#run(java.lang.String%5B%5D)" class="member-name-link">run(String[])</a> - Static method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></dt> +<dd> +<div class="block">Method called from Main when the program is run + Calls on launch in Application</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-13.html b/javadoc/index-files/index-13.html new file mode 100644 index 0000000..52a043f --- /dev/null +++ b/javadoc/index-files/index-13.html @@ -0,0 +1,82 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>S-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: S"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:S">S</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#setHealth(int)" class="member-name-link">setHealth(int)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Sets health.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#simulate()" class="member-name-link">simulate()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Simulate a battle.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></dt> +<dd> +<div class="block">A class for keeping track of which unit + has attacked which unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">SimulationAttack(Army, Unit, Army, Unit, Terrain)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">The constructor for a simulation attack.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html#start(javafx.stage.Stage)" class="member-name-link">start(Stage)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></dt> +<dd> +<div class="block">Overridden from Application.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-14.html b/javadoc/index-files/index-14.html new file mode 100644 index 0000000..86a460c --- /dev/null +++ b/javadoc/index-files/index-14.html @@ -0,0 +1,84 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>T-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: T"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:T">T</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" class="type-name-link" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a> - Enum Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></dt> +<dd> +<div class="block">En enum that represents the different terrain + that the battles can occur on.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#toString()" class="member-name-link">toString()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Overrides toString() method from Object.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#toString()" class="member-name-link">toString()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Overrides the toString() method + and returns an output used in the + GUI.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#toString()" class="member-name-link">toString()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Overrides the toString() method from Object.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#toString()" class="member-name-link">toString()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Overrides toString() method from Object.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-15.html b/javadoc/index-files/index-15.html new file mode 100644 index 0000000..04e6d6b --- /dev/null +++ b/javadoc/index-files/index-15.html @@ -0,0 +1,75 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>U-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: U"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:U">U</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></dt> +<dd> +<div class="block">The abstract class Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">Unit(String, int, int, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Checks validity of name and health.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a></dt> +<dd> +<div class="block">A class to simply and elegantly create units.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html#%3Cinit%3E()" class="member-name-link">UnitFactory()</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></dt> +<dd> </dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-16.html b/javadoc/index-files/index-16.html new file mode 100644 index 0000000..991023f --- /dev/null +++ b/javadoc/index-files/index-16.html @@ -0,0 +1,70 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>V-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: V"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:V">V</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html#valueOf(java.lang.String)" class="member-name-link">valueOf(String)</a> - Static method in enum class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></dt> +<dd> +<div class="block">Returns the enum constant of this class with the specified name.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html#values()" class="member-name-link">values()</a> - Static method in enum class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></dt> +<dd> +<div class="block">Returns an array containing the constants of this enum class, in +the order they are declared.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-17.html b/javadoc/index-files/index-17.html new file mode 100644 index 0000000..b59dc26 --- /dev/null +++ b/javadoc/index-files/index-17.html @@ -0,0 +1,65 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>W-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: W"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:W">W</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html#writeToFile(edu.ntnu.idatt2001.carljgu.units.Army,java.lang.String)" class="member-name-link">writeToFile(Army, String)</a> - Method in class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></dt> +<dd> +<div class="block">Creates a file to write on or writes to an existing file.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-2.html b/javadoc/index-files/index-2.html new file mode 100644 index 0000000..1225b53 --- /dev/null +++ b/javadoc/index-files/index-2.html @@ -0,0 +1,82 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>B-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: B"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:B">B</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a></dt> +<dd> +<div class="block">Class Battle that simulates a battle between two armies.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">Battle(Army, Army, Terrain)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Instantiates a new Battle.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a></dt> +<dd> +<div class="block">A controller class which + handles events in the fxml file.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html#%3Cinit%3E()" class="member-name-link">BattleController()</a> - Constructor for class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a></dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#build()" class="member-name-link">build()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Create the dialog box with the + current configurations from this + builder object.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-3.html b/javadoc/index-files/index-3.html new file mode 100644 index 0000000..5d352b1 --- /dev/null +++ b/javadoc/index-files/index-3.html @@ -0,0 +1,97 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>C-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: C"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:C">C</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></dt> +<dd> +<div class="block">Class CavalryUnit that inherits from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html#%3Cinit%3E(java.lang.String,int)" class="member-name-link">CavalryUnit(String, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></dt> +<dd> +<div class="block">Instantiates a new Cavalry unit with + a simplified constructor.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">CavalryUnit(String, int, int, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></dt> +<dd> +<div class="block">Instantiates a new Cavalry unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></dt> +<dd> +<div class="block">Class CommanderUnit that inherits from CavalryUnit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html#%3Cinit%3E(java.lang.String,int)" class="member-name-link">CommanderUnit(String, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></dt> +<dd> +<div class="block">Instantiates a new CommanderUnit unit with + a simplified constructor.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">CommanderUnit(String, int, int, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></dt> +<dd> +<div class="block">Instantiates a new CommanderUnit unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html#createListOfUnits(int,java.lang.String,java.lang.String,int)" class="member-name-link">createListOfUnits(int, String, String, int)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></dt> +<dd> +<div class="block">Returns a list of units.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html#createUnit(java.lang.String,java.lang.String,int)" class="member-name-link">createUnit(String, String, int)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></dt> +<dd> +<div class="block">Creates a unit between + InfantryUnit, RangedUnit, + CavalryUnit or CommanderUnit.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-4.html b/javadoc/index-files/index-4.html new file mode 100644 index 0000000..7e00204 --- /dev/null +++ b/javadoc/index-files/index-4.html @@ -0,0 +1,91 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>D-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: D"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:D">D</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html#deepCopyBasicUnits(java.util.ArrayList)" class="member-name-link">deepCopyBasicUnits(ArrayList<Unit>)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></dt> +<dd> +<div class="block">Deep copies units, but ignores overridden + attack and armor points.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></dt> +<dd> +<div class="block">A dialog box that extends alert to use + a builder to build a dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html#%3Cinit%3E(edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder)" class="member-name-link">DialogBox(DialogBoxBuilder)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></dt> +<dd> +<div class="block">Constructor for a dialog box + that uses a builder to set + attributes.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a></dt> +<dd> +<div class="block">A builder class which simplifies the + DialogBox class.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#%3Cinit%3E(javafx.scene.control.Alert.AlertType)" class="member-name-link">DialogBoxBuilder(Alert.AlertType)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Instantiates a new dialog box builder.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html#displayArmy(int,edu.ntnu.idatt2001.carljgu.units.Army)" class="member-name-link">displayArmy(int, Army)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a></dt> +<dd> +<div class="block">Updates the information about an army + in the chosen elements.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-5.html b/javadoc/index-files/index-5.html new file mode 100644 index 0000000..fb0d6f4 --- /dev/null +++ b/javadoc/index-files/index-5.html @@ -0,0 +1,79 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>E-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: E"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:E">E</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a> - package edu.ntnu.idatt2001.carljgu</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-summary.html">edu.ntnu.idatt2001.carljgu.battle</a> - package edu.ntnu.idatt2001.carljgu.battle</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">edu.ntnu.idatt2001.carljgu.client</a> - module edu.ntnu.idatt2001.carljgu.client</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-summary.html">edu.ntnu.idatt2001.carljgu.client</a> - package edu.ntnu.idatt2001.carljgu.client</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-summary.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a> - package edu.ntnu.idatt2001.carljgu.client.dialogs</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-summary.html">edu.ntnu.idatt2001.carljgu.units</a> - package edu.ntnu.idatt2001.carljgu.units</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a> - package edu.ntnu.idatt2001.carljgu.units.specialized</dt> +<dd> </dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#equals(java.lang.Object)" class="member-name-link">equals(Object)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Checks if two armies are equal based on name and list of units.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-6.html b/javadoc/index-files/index-6.html new file mode 100644 index 0000000..dc52d3c --- /dev/null +++ b/javadoc/index-files/index-6.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>F-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: F"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:F">F</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a> - Exception in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></dt> +<dd> +<div class="block">Thrown if an extension of a file is invalid + The exception thrown needs to have a message</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html#%3Cinit%3E(java.lang.String)" class="member-name-link">FileExtensionException(String)</a> - Constructor for exception edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></dt> +<dd> +<div class="block">Constructs an exception with a detail message</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html#FOREST" class="member-name-link">FOREST</a> - Enum constant in enum class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></dt> +<dd> </dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-7.html b/javadoc/index-files/index-7.html new file mode 100644 index 0000000..f086a20 --- /dev/null +++ b/javadoc/index-files/index-7.html @@ -0,0 +1,223 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>G-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: G"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:G">G</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getAlertType()" class="member-name-link">getAlertType()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the alert type for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getAllUnits()" class="member-name-link">getAllUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Gets all units.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getArmor()" class="member-name-link">getArmor()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets armor.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getAttack()" class="member-name-link">getAttack()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets attack.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getAttackBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets attack bonus.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getAttacker()" class="member-name-link">getAttacker()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the attacker.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getAttackingArmy()" class="member-name-link">getAttackingArmy()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the attacking army with the + attacking unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#getAttackLog()" class="member-name-link">getAttackLog()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Returns the log of attacks + to easily hold the information + about each attack.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getCavalryUnits()" class="member-name-link">getCavalryUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Returns an arraylist of cavalry units + using stream and filter.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getCommanderUnits()" class="member-name-link">getCommanderUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Returns an arraylist of commander units + using stream and filter.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getDamageDealt()" class="member-name-link">getDamageDealt()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the damage done by + the attacker to the defender.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getDefender()" class="member-name-link">getDefender()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the defender.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getDefendingArmy()" class="member-name-link">getDefendingArmy()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the defending army with the + defending unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html#getFilePath()" class="member-name-link">getFilePath()</a> - Method in class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></dt> +<dd> +<div class="block">Uses the system default file explorer to get + a file path of the user's choice.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getHeader()" class="member-name-link">getHeader()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the header for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getHealth()" class="member-name-link">getHealth()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets health.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getImage()" class="member-name-link">getImage()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the image for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getInfantryUnits()" class="member-name-link">getInfantryUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Returns an arraylist of infantry units + using stream and filter.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getListMessages()" class="member-name-link">getListMessages()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the list message for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getMessage()" class="member-name-link">getMessage()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the message for the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getName()" class="member-name-link">getName()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Gets name.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getName()" class="member-name-link">getName()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets name.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getRandom()" class="member-name-link">getRandom()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Gets a random unit from the list.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#getRangedUnits()" class="member-name-link">getRangedUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Returns an arraylist of ranged units + using stream and filter.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html#getReadLinesSkipped()" class="member-name-link">getReadLinesSkipped()</a> - Method in class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></dt> +<dd> +<div class="block">Gets the amount of units + that were skipped when reading from file.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getResistBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getResistBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></dt> +<dd> +<div class="block">Overrides the abstract method getAttackBonus from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html#getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)" class="member-name-link">getResistBonus(Terrain)</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a></dt> +<dd> +<div class="block">Gets resist bonus.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html#getStage()" class="member-name-link">getStage()</a> - Static method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></dt> +<dd> +<div class="block">Gets the main stage for the program</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#getTerrain()" class="member-name-link">getTerrain()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Gets the terrain where + the battle occurs.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html#getTerrain()" class="member-name-link">getTerrain()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></dt> +<dd> +<div class="block">Gets the terrain where + the attack occurs.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html#getTitle()" class="member-name-link">getTitle()</a> - Method in class edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></dt> +<dd> +<div class="block">Gets the title of the dialog box.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html#getWinner()" class="member-name-link">getWinner()</a> - Method in class edu.ntnu.idatt2001.carljgu.battle.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></dt> +<dd> +<div class="block">Gets the winner of the army + or a null object</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-8.html b/javadoc/index-files/index-8.html new file mode 100644 index 0000000..46ab59c --- /dev/null +++ b/javadoc/index-files/index-8.html @@ -0,0 +1,71 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>H-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: H"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:H">H</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#hashCode()" class="member-name-link">hashCode()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Hashes name and units for the equals method</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html#hasUnits()" class="member-name-link">hasUnits()</a> - Method in class edu.ntnu.idatt2001.carljgu.units.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></dt> +<dd> +<div class="block">Checks if the list of units is empty</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html#HILL" class="member-name-link">HILL</a> - Enum constant in enum class edu.ntnu.idatt2001.carljgu.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></dt> +<dd> </dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index-files/index-9.html b/javadoc/index-files/index-9.html new file mode 100644 index 0000000..1dc03d9 --- /dev/null +++ b/javadoc/index-files/index-9.html @@ -0,0 +1,78 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>I-Index</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index: I"> +<meta name="generator" content="javadoc/IndexWriter"> +<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="../jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="../script.js"></script> +<script type="text/javascript" src="../script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script> +</head> +<body class="index-page"> +<script type="text/javascript">var pathtoroot = "../"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="../edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="../overview-tree.html">Tree</a></li> +<li class="nav-bar-cell1-rev">Index</li> +<li><a href="../help-doc.html#index">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1>Index</h1> +</div> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a> +<h2 class="title" id="I:I">I</h2> +<dl class="index"> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a> - Class in <a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-summary.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></dt> +<dd> +<div class="block">Class InfantryUnit that inherits from Unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html#%3Cinit%3E(java.lang.String,int)" class="member-name-link">InfantryUnit(String, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></dt> +<dd> +<div class="block">Instantiates a new Infantry unit with + a simplified constructor.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html#%3Cinit%3E(java.lang.String,int,int,int)" class="member-name-link">InfantryUnit(String, int, int, int)</a> - Constructor for class edu.ntnu.idatt2001.carljgu.units.specialized.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></dt> +<dd> +<div class="block">Instantiates a new Infantry unit.</div> +</dd> +<dt><a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html#initialize(java.net.URL,java.util.ResourceBundle)" class="member-name-link">initialize(URL, ResourceBundle)</a> - Method in class edu.ntnu.idatt2001.carljgu.client.<a href="../edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a></dt> +<dd> +<div class="block">Run when the fxml file is first loaded.</div> +</dd> +</dl> +<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">D</a> <a href="index-5.html">E</a> <a href="index-6.html">F</a> <a href="index-7.html">G</a> <a href="index-8.html">H</a> <a href="index-9.html">I</a> <a href="index-10.html">M</a> <a href="index-11.html">P</a> <a href="index-12.html">R</a> <a href="index-13.html">S</a> <a href="index-14.html">T</a> <a href="index-15.html">U</a> <a href="index-16.html">V</a> <a href="index-17.html">W</a> <br><a href="../allclasses-index.html">All Classes and Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All Packages</a><span class="vertical-separator">|</span><a href="../constant-values.html">Constant Field Values</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized Form</a></main> +</div> +</div> +</body> +</html> diff --git a/javadoc/index.html b/javadoc/index.html new file mode 100644 index 0000000..6aac313 --- /dev/null +++ b/javadoc/index.html @@ -0,0 +1,26 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Generated Documentation (Untitled)</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="index redirect"> +<meta name="generator" content="javadoc/IndexRedirectWriter"> +<link rel="canonical" href="edu.ntnu.idatt2001.carljgu.client/module-summary.html"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<script type="text/javascript">window.location.replace('edu.ntnu.idatt2001.carljgu.client/module-summary.html')</script> +<noscript> +<meta http-equiv="Refresh" content="0;edu.ntnu.idatt2001.carljgu.client/module-summary.html"> +</noscript> +</head> +<body class="index-redirect-page"> +<main role="main"> +<noscript> +<p>JavaScript is disabled on your browser.</p> +</noscript> +<p><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">edu.ntnu.idatt2001.carljgu.client/module-summary.html</a></p> +</main> +</body> +</html> diff --git a/javadoc/jquery-ui.overrides.css b/javadoc/jquery-ui.overrides.css new file mode 100644 index 0000000..1abff95 --- /dev/null +++ b/javadoc/jquery-ui.overrides.css @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + */ + +.ui-state-active, +.ui-widget-content .ui-state-active, +.ui-widget-header .ui-state-active, +a.ui-button:active, +.ui-button:active, +.ui-button.ui-state-active:hover { + /* Overrides the color of selection used in jQuery UI */ + background: #F8981D; +} diff --git a/javadoc/legal/COPYRIGHT b/javadoc/legal/COPYRIGHT new file mode 100644 index 0000000..ca74fff --- /dev/null +++ b/javadoc/legal/COPYRIGHT @@ -0,0 +1 @@ +Please see ..\java.base\COPYRIGHT diff --git a/javadoc/legal/LICENSE b/javadoc/legal/LICENSE new file mode 100644 index 0000000..4ad9fe4 --- /dev/null +++ b/javadoc/legal/LICENSE @@ -0,0 +1 @@ +Please see ..\java.base\LICENSE diff --git a/javadoc/legal/jquery.md b/javadoc/legal/jquery.md new file mode 100644 index 0000000..8054a34 --- /dev/null +++ b/javadoc/legal/jquery.md @@ -0,0 +1,72 @@ +## jQuery v3.5.1 + +### jQuery License +``` +jQuery v 3.5.1 +Copyright JS Foundation and other contributors, https://js.foundation/ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +****************************************** + +The jQuery JavaScript Library v3.5.1 also includes Sizzle.js + +Sizzle.js includes the following license: + +Copyright JS Foundation and other contributors, https://js.foundation/ + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/jquery/sizzle + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +All files located in the node_modules and external directories are +externally maintained libraries used by this software which have their +own licenses; we recommend you read them, as their terms may differ from +the terms above. + +********************* + +``` diff --git a/javadoc/legal/jqueryUI.md b/javadoc/legal/jqueryUI.md new file mode 100644 index 0000000..8031bdb --- /dev/null +++ b/javadoc/legal/jqueryUI.md @@ -0,0 +1,49 @@ +## jQuery UI v1.12.1 + +### jQuery UI License +``` +Copyright jQuery Foundation and other contributors, https://jquery.org/ + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/jquery/jquery-ui + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code contained within the demos directory. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +All files located in the node_modules and external directories are +externally maintained libraries used by this software which have their +own licenses; we recommend you read them, as their terms may differ from +the terms above. + +``` diff --git a/javadoc/member-search-index.js b/javadoc/member-search-index.js new file mode 100644 index 0000000..452e9c6 --- /dev/null +++ b/javadoc/member-search-index.js @@ -0,0 +1 @@ +memberSearchIndex = [{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"addHeader(String)","u":"addHeader(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"addImage(String)","u":"addImage(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"addListMessage(ArrayList<String>)","u":"addListMessage(java.util.ArrayList)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"addMessage(String)","u":"addMessage(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"addTitle(String)","u":"addTitle(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"addUnit(Unit)","u":"addUnit(edu.ntnu.idatt2001.carljgu.units.Unit)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"addUnits(ArrayList<Unit>)","u":"addUnits(java.util.ArrayList)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"App","l":"App()","u":"%3Cinit%3E()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"Army(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"Army(String, ArrayList<Unit>)","u":"%3Cinit%3E(java.lang.String,java.util.ArrayList)"},{"p":"edu.ntnu.idatt2001.carljgu","c":"ArmyFileHandler","l":"ArmyFileHandler()","u":"%3Cinit%3E()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"attack(Unit, Terrain)","u":"attack(edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"Battle(Army, Army, Terrain)","u":"%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"BattleController","l":"BattleController()","u":"%3Cinit%3E()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"build()"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CavalryUnit","l":"CavalryUnit(String, int)","u":"%3Cinit%3E(java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CavalryUnit","l":"CavalryUnit(String, int, int, int)","u":"%3Cinit%3E(java.lang.String,int,int,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CommanderUnit","l":"CommanderUnit(String, int)","u":"%3Cinit%3E(java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CommanderUnit","l":"CommanderUnit(String, int, int, int)","u":"%3Cinit%3E(java.lang.String,int,int,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"UnitFactory","l":"createListOfUnits(int, String, String, int)","u":"createListOfUnits(int,java.lang.String,java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"UnitFactory","l":"createUnit(String, String, int)","u":"createUnit(java.lang.String,java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"UnitFactory","l":"deepCopyBasicUnits(ArrayList<Unit>)","u":"deepCopyBasicUnits(java.util.ArrayList)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBox","l":"DialogBox(DialogBoxBuilder)","u":"%3Cinit%3E(edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"DialogBoxBuilder(Alert.AlertType)","u":"%3Cinit%3E(javafx.scene.control.Alert.AlertType)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"BattleController","l":"displayArmy(int, Army)","u":"displayArmy(int,edu.ntnu.idatt2001.carljgu.units.Army)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"edu.ntnu.idatt2001.carljgu","c":"FileExtensionException","l":"FileExtensionException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu","c":"Terrain","l":"FOREST"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getAlertType()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getAllUnits()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getArmor()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getAttack()"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CavalryUnit","l":"getAttackBonus(Terrain)","u":"getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"InfantryUnit","l":"getAttackBonus(Terrain)","u":"getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"RangedUnit","l":"getAttackBonus(Terrain)","u":"getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getAttackBonus(Terrain)","u":"getAttackBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getAttacker()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getAttackingArmy()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"getAttackLog()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getCavalryUnits()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getCommanderUnits()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getDamageDealt()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getDefender()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getDefendingArmy()"},{"p":"edu.ntnu.idatt2001.carljgu","c":"ArmyFileHandler","l":"getFilePath()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getHeader()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getHealth()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getImage()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getInfantryUnits()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getListMessages()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getMessage()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getName()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getName()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getRandom()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"getRangedUnits()"},{"p":"edu.ntnu.idatt2001.carljgu","c":"ArmyFileHandler","l":"getReadLinesSkipped()"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"CavalryUnit","l":"getResistBonus(Terrain)","u":"getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"InfantryUnit","l":"getResistBonus(Terrain)","u":"getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"RangedUnit","l":"getResistBonus(Terrain)","u":"getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"getResistBonus(Terrain)","u":"getResistBonus(edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"App","l":"getStage()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"getTerrain()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"getTerrain()"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"getTitle()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"getWinner()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"hashCode()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"hasUnits()"},{"p":"edu.ntnu.idatt2001.carljgu","c":"Terrain","l":"HILL"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"InfantryUnit","l":"InfantryUnit(String, int)","u":"%3Cinit%3E(java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"InfantryUnit","l":"InfantryUnit(String, int, int, int)","u":"%3Cinit%3E(java.lang.String,int,int,int)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"BattleController","l":"initialize(URL, ResourceBundle)","u":"initialize(java.net.URL,java.util.ResourceBundle)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"Main","l":"Main()","u":"%3Cinit%3E()"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"Main","l":"main(String[])","u":"main(java.lang.String[])"},{"p":"edu.ntnu.idatt2001.carljgu","c":"Terrain","l":"PLAINS"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"RangedUnit","l":"RangedUnit(String, int)","u":"%3Cinit%3E(java.lang.String,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","c":"RangedUnit","l":"RangedUnit(String, int, int, int)","u":"%3Cinit%3E(java.lang.String,int,int,int)"},{"p":"edu.ntnu.idatt2001.carljgu","c":"ArmyFileHandler","l":"readArmyFromFile(String)","u":"readArmyFromFile(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","c":"DialogBoxBuilder","l":"recurringDialogMessage"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"remove(Unit)","u":"remove(edu.ntnu.idatt2001.carljgu.units.Unit)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"App","l":"run(String[])","u":"run(java.lang.String[])"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"setHealth(int)"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"simulate()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"SimulationAttack(Army, Unit, Army, Unit, Terrain)","u":"%3Cinit%3E(edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.units.Army,edu.ntnu.idatt2001.carljgu.units.Unit,edu.ntnu.idatt2001.carljgu.Terrain)"},{"p":"edu.ntnu.idatt2001.carljgu.client","c":"App","l":"start(Stage)","u":"start(javafx.stage.Stage)"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"Battle","l":"toString()"},{"p":"edu.ntnu.idatt2001.carljgu.battle","c":"SimulationAttack","l":"toString()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Army","l":"toString()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"toString()"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"Unit","l":"Unit(String, int, int, int)","u":"%3Cinit%3E(java.lang.String,int,int,int)"},{"p":"edu.ntnu.idatt2001.carljgu.units","c":"UnitFactory","l":"UnitFactory()","u":"%3Cinit%3E()"},{"p":"edu.ntnu.idatt2001.carljgu","c":"Terrain","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"edu.ntnu.idatt2001.carljgu","c":"Terrain","l":"values()"},{"p":"edu.ntnu.idatt2001.carljgu","c":"ArmyFileHandler","l":"writeToFile(Army, String)","u":"writeToFile(edu.ntnu.idatt2001.carljgu.units.Army,java.lang.String)"}];updateSearchResults(); \ No newline at end of file diff --git a/javadoc/module-search-index.js b/javadoc/module-search-index.js new file mode 100644 index 0000000..168d2c6 --- /dev/null +++ b/javadoc/module-search-index.js @@ -0,0 +1 @@ +moduleSearchIndex = [{"l":"edu.ntnu.idatt2001.carljgu.client"}];updateSearchResults(); \ No newline at end of file diff --git a/javadoc/overview-tree.html b/javadoc/overview-tree.html new file mode 100644 index 0000000..3b4018f --- /dev/null +++ b/javadoc/overview-tree.html @@ -0,0 +1,139 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Class Hierarchy</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="class tree"> +<meta name="generator" content="javadoc/TreeWriter"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="tree-page"> +<script type="text/javascript">var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li>Module</li> +<li>Package</li> +<li>Class</li> +<li class="nav-bar-cell1-rev">Tree</li> +<li><a href="index-files/index-1.html">Index</a></li> +<li><a href="help-doc.html#tree">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 class="title">Hierarchy For All Packages</h1> +<span class="package-hierarchy-label">Package Hierarchies:</span> +<ul class="horizontal"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-tree.html">edu.ntnu.idatt2001.carljgu</a>, </li> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/package-tree.html">edu.ntnu.idatt2001.carljgu.battle</a>, </li> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/package-tree.html">edu.ntnu.idatt2001.carljgu.client</a>, </li> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/package-tree.html">edu.ntnu.idatt2001.carljgu.client.dialogs</a>, </li> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/package-tree.html">edu.ntnu.idatt2001.carljgu.units</a>, </li> +<li><a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/package-tree.html">edu.ntnu.idatt2001.carljgu.units.specialized</a></li> +</ul> +</div> +<section class="hierarchy"> +<h2 title="Class Hierarchy">Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">javafx.application.Application +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/App.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">App</a></li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Army.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Army</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">ArmyFileHandler</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.battle.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/Battle.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">Battle</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/BattleController.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">BattleController</a> (implements javafx.fxml.Initializable)</li> +<li class="circle">javafx.scene.control.Dialog<R> (implements javafx.event.EventTarget) +<ul> +<li class="circle">javafx.scene.control.Alert +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBox</a></li> +</ul> +</li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.dialogs.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client.dialogs">DialogBoxBuilder</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.client.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/client/Main.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.client">Main</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.battle.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/battle/SimulationAttack.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.battle">SimulationAttack</a></li> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" class="type-name-link external-link" title="class or interface in java.lang">Throwable</a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>) +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Exception.html" class="type-name-link external-link" title="class or interface in java.lang">Exception</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/RuntimeException.html" class="type-name-link external-link" title="class or interface in java.lang">RuntimeException</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" class="type-name-link external-link" title="class or interface in java.lang">IllegalArgumentException</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu">FileExtensionException</a></li> +</ul> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/Unit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">Unit</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CavalryUnit</a> +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">CommanderUnit</a></li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">InfantryUnit</a></li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.specialized.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units.specialized">RangedUnit</a></li> +</ul> +</li> +<li class="circle">edu.ntnu.idatt2001.carljgu.units.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/units/UnitFactory.html" class="type-name-link" title="class in edu.ntnu.idatt2001.carljgu.units">UnitFactory</a></li> +</ul> +</li> +</ul> +</section> +<section class="hierarchy"> +<h2 title="Enum Class Hierarchy">Enum Class Hierarchy</h2> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a> +<ul> +<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" class="type-name-link external-link" title="class or interface in java.lang">Enum</a><E> (implements java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a><T>, java.lang.constant.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a>, java.io.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>) +<ul> +<li class="circle">edu.ntnu.idatt2001.carljgu.<a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/Terrain.html" class="type-name-link" title="enum class in edu.ntnu.idatt2001.carljgu">Terrain</a></li> +</ul> +</li> +</ul> +</li> +</ul> +</section> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/package-search-index.js b/javadoc/package-search-index.js new file mode 100644 index 0000000..103c43e --- /dev/null +++ b/javadoc/package-search-index.js @@ -0,0 +1 @@ +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu.battle"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu.client"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu.client.dialogs"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu.units"},{"m":"edu.ntnu.idatt2001.carljgu.client","l":"edu.ntnu.idatt2001.carljgu.units.specialized"}];updateSearchResults(); \ No newline at end of file diff --git a/javadoc/resources/glass.png b/javadoc/resources/glass.png new file mode 100644 index 0000000000000000000000000000000000000000..a7f591f467a1c0c949bbc510156a0c1afb860a6e GIT binary patch literal 499 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFi!P!aSW-rmGtNTe|u&Qmvi^?IhLGixWU-L+VDeB zU_I-jdrv$2-b)lPxJ_VmIP2-~%}1e*<%o9U4^e^F4QE&%U3YlHWb%YBj9KZ~TVv)+ z#~Ug%1(q|4{%i4M;tgX8vTpogF7TT9Y29M!11v|T2FwngXxhv$p`PF4XkpRk45pU> zIeH9|3G7F*8@lQfgBe8Z|NVU}K7n=H4xR^0kIwV_VDy;BJe|?J;Rf4uzXXd8CQVa? zeSN1JBKI&g<vFxAMwl2gt@OO$5Yu*+L2Lr!eEU7$87{4Ekg8h170+O(@gS@5hNOr! z`}?|IUHY;cm~NhRm~;Bv$&+87f6r$NGb?M8zrXJudzUDKY4fF{WeR-t*B<TXKFpw^ z{+U6uIK!)k;mGsGS&nV@p9oK%_W#Q#O^sQH8`^RXWijX}gl-m0d11%M8M%&MU#|I( zvRK9muLuPp7KfwijZ@?UKI=PXvQFrp#>DHZa*NeNuahCjyCr4njQh6x*e}g+o5UF4 zY-IVfby?vjPNO~5HQ$v_vN`Z-HoAQ*YG7by_;hl<EJLNjQU(SF22WQ%mvv4FO#nFj B#b5vc literal 0 HcmV?d00001 diff --git a/javadoc/resources/x.png b/javadoc/resources/x.png new file mode 100644 index 0000000000000000000000000000000000000000..30548a756e151be4e927e8d28c508cc5b3514bf3 GIT binary patch literal 394 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFzR@^IEGZ*O3HaZ^8f?OQim9pBaxy<f4-Ld(9n0U zGtnVSNMJj|Rlmft!p|CvMY|ejuy-)`%h*@mJ$CAm72ny14q1`{pP4p_2fVFTQ&=qK z$tx|O&#uLDaABpUfUz=Xcq7jV)<^q2n%2B%dvJm0(&XbzDq@Tu>lNnpFKJ-S;!vKD zc4(oclmy%Ahy_gD3r*S-1I*0MYD+Fy*31~dkm6x8t9-`COgBS@ERGW^3p3gtT<J+< znB)}Gz`35G?}FR6b4d$kWvpR)(5dysAd(|Qx;c+Q@2tXYrN$rpvlO`-+KwDrq{ZWJ zv%Y0lALFc+$O$|%`GwM((s=d+vZkzW+x5hJmiI0Pwk?8PS}PQ@FYqufy;n7Z+u`R! vQvvtH%RMP4qB1IM*&gvI)QdSZFfwGaS2)}aWlm;bU|{fc^>bP0l+XkKG;Nb2 literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png b/javadoc/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..34abd18f32d3a55a297fdcf93409bd033ae573e7 GIT binary patch literal 335 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVp#K6F?VU^=~1_lPUByV?@|6srw@%;`1 z0|RG)M`SSr1A_+`yPeFoV_;zD^>lFz@i_kWydoEqqe#QU`gutLIn5m#7PC1@7*=z< z4qF{*ka_oa1@pn?idNCG?#I#xABnmg_KyE?*?-^5WtQ9w5^aeR_t~yac{S@!?YDPv zA6UE+PxP!cNP1W1<oHBIMCWecj17yF;!R9GUOvHZyCt|VS?o=v>)vgiA6UY<m~FBh zUtIX#oq5=xNB$F=O`=M0$D2w$1_lPz64!{5l*E!$tK_28#FA77BLhPVT|*;X1G5kV w6Dt!#D`OLF0|P4qgA}P6Hxv!I`6-!cmAEyCx*z$)z`(%Z>FVdQ&MBb@01<d}w*UYD literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_glass_65_dadada_1x400.png b/javadoc/script-dir/images/ui-bg_glass_65_dadada_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..f058a938533344e5d93e06b7ced2725344bb1102 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVpz`(#DwYbxTfq{W3$=luK|9_FyhG!WV z7&r?&B8wRq7(Bq(?PRtch~eqt7-Dfcx#H3hgDyA0s~6Ws^K4%$`L4t0PHOrN^&<uM zr$2OLKYZAlr~j+uyc9#5*i#?gupIt;nn(Yd(Vi{I6_R#cZi0p!40Uosf1jT7P+?$T zP%UwdC`m~yNwrEYN=+<DWiT=@w9qv)(lsy(F)*<*F|;x^(Kax!GB8Mys&PZnkei>9 YnO2EggQ)wFUmy>9y85}Sb4q9e0ABJ>hyVZp literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_glass_75_dadada_1x400.png b/javadoc/script-dir/images/ui-bg_glass_75_dadada_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..2ce04c165179bde302921ca361f5c75163d9caa0 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVpz`(#DwYbxTfq{W3$=luK|9_FyhG!WV z7&r?&B8wRq7(Bq(?PRtch~eqt7-Dfcx#HLSM3G*lRg0syOXO7>-YHDpA$__aU+M5) zdmesc3Ax&YilB2Jz8D@Zwr>;vED;x%R8czZVX5Zf*PV+qL<E}|_JuE24HDZ}!@$6x zTH+c}l9E`GYL#4+npl#`U}Ruup=)TQYhV^)U}9xrXk~1wZD3$!U~nk6{1b|X-29Zx Xv`X9>HXEGx19{NX)z4*}Q$iB}dV)^@ literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png b/javadoc/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..a90afb8bf8028404d206114965669b023dcb85ea GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVpz`(#DwYbxTfq{W3$=luK|9_FyhG!WV z7&r?&B8wRq7(Bq(?PRtch~eqt7-DfcxnlZpgDyA0s~0z?^PKOMn0G(1!f^7#RJFsa zE!wUt^5iE;+*@X}r#r1e{=kQWGaf1%A3na7XZ{ljJITI9fi65u480EDR2cM3^BEWz zR7+eVN>UO_QmvAUQWHy38H@}JEp!cybPdcx3{0#{46Te!v<(cb3=C4FYTQsX<mRVj Xrd8tBAnJbP7s!L2u6{1-oD!M<Z~{%w literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png b/javadoc/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..dbe091f6dc036fc1dc11b005738e951e27a43f7a GIT binary patch literal 332 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVp#K6F?VU^=~1_lPUByV?@|6srw@%;`1 z0|RG)M`SSr1A_+`yPeFoV_;zD@^o<w@i_kW{6=2JM2Yr~&;N@FJ&#cg6X?Ch=cOER zfMME&3*9cY!V(R<dTBrGPRe$^vt!-Z7_jH+`ifQUTPn`H6J};OUMTbY_JwVwvP>su z70#KoDNS7a(g(9$>w4v)=k~@dJ=ET`c+$n|v%?pMm=wL;DKXQ`N-{RgN<#LT4zGs9 zpQBqITb$#sWOCQlNSQUC6XZPA64!{5l*E!$tK_28#FA77BLhPVT|*;X1G5kV6Dt!# vD`OLF0|P4qgA}P6HwFd<gofPwl+3hB+!{pPkNjd_U|{fc^>bP0l+XkKfu3@< literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/javadoc/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc3593e4620dd41f9f1f0c7e81316d10ed8f0c7 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU`P>QU|?V{x_<LN0|Nt7lDE6d|NkPZ4bL(# zFmM)lL>4nJFnEBm+sSM@1_p*GPZ!4!iOb0qHNA~~8O(<lf9L7{A|dz8$R;CsNBqG8 z{qBc(I)`O>+oIzo^4_KIxOld}cFx0DLWie5=9yk@6qA*@BjQ{^BGciYYHh{rlIQLv zS-d__@aznO62r!6^IlDjtY%|iU{Eb_jVMV;EJ?LWE=o--No6oHFtpG$G}1LN3o$UU tGBLC=HqkaPure@6k*aY+(U6;;l9^VCTZ5?kkzXJ$d%F6$taD0e0s#7AS*QR2 literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-icons_222222_256x240.png b/javadoc/script-dir/images/ui-icons_222222_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..e723e17cb5428094de75a0d3c6f4f3c07dbd3bbe GIT binary patch literal 6922 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 L`njxgN@xNAtk@$X literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-icons_2e83ff_256x240.png b/javadoc/script-dir/images/ui-icons_2e83ff_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..1f5f49756ca64bd20a1048bd7a3a584457d4bf00 GIT binary patch literal 4549 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 QZ9t<mp00i_>zopr03p|Md;kCd literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-icons_454545_256x240.png b/javadoc/script-dir/images/ui-icons_454545_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..618f5b0ca756789f81bc276426805df6f61b91d7 GIT binary patch literal 6992 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 literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-icons_888888_256x240.png b/javadoc/script-dir/images/ui-icons_888888_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..ee5e33f27235d1b5cf0259f63f3894a6be33c679 GIT binary patch literal 6999 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 literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/images/ui-icons_cd0a0a_256x240.png b/javadoc/script-dir/images/ui-icons_cd0a0a_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..7e8ebc180a2d2a74739059799407b8b7b57a9092 GIT binary patch literal 4549 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 QZ9t<mp00i_>zopr0AIB!=l}o! literal 0 HcmV?d00001 diff --git a/javadoc/script-dir/jquery-3.5.1.min.js b/javadoc/script-dir/jquery-3.5.1.min.js new file mode 100644 index 0000000..b061403 --- /dev/null +++ b/javadoc/script-dir/jquery-3.5.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(D).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^key/,we=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function ke(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Ae(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,Ce)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=Te.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each(function(){S.event.remove(this,e,n,t)})}});var Ne=/<script|<style|<link/i,De=/checked\s*(?:[^=]|=\s*.checked.)/i,je=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function Pe(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&De.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Pe(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),Le)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,He),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(je,""),u,l))}return n}function Re(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Pe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Pe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Pe(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Ie=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},We=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Fe=new RegExp(ne.join("|"),"i");function Be(e,t,n){var r,i,o,a,s=e.style;return(n=n||Ie(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Me.test(a)&&Fe.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",n.style.height="9px",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=3<parseInt(r.height),re.removeChild(e)),a}}))}();var _e=["Webkit","Moz","ms"],ze=E.createElement("div").style,Ue={};function Xe(e){var t=S.cssProps[e]||Ue[e];return t||(e in ze?e:Ue[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in ze)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Ge=/^--/,Ye={position:"absolute",visibility:"hidden",display:"block"},Qe={letterSpacing:"0",fontWeight:"400"};function Je(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ke(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Ze(e,t,n){var r=Ie(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ke(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,i){return new et.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ge.test(t),l=e.style;if(u||(t=Xe(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ge.test(t)||(t=Xe(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ve.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Ze(e,u,n):We(e,Ye,function(){return Ze(e,u,n)})},set:function(e,t,n){var r,i=Ie(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Ke(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Ke(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Je(0,t,s)}}}),S.cssHooks.marginLeft=$e(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-We(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Je)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ie(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=et).prototype={constructor:et,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}}).init.prototype=et.prototype,(et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[Xe(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=et.prototype.init,S.fx.step={};var tt,nt,rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){nt&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(st):C.setTimeout(st,S.fx.interval),S.fx.tick())}function ut(){return C.setTimeout(function(){tt=void 0}),tt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(o,e,t){var n,a,r=0,i=ft.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=tt||ut(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:tt||ut(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=ft.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ct,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=ft(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&at.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(lt(r,!0),e,t,n)}}),S.each({slideDown:lt("show"),slideUp:lt("hide"),slideToggle:lt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),tt=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){nt||(nt=!0,st())},S.fx.stop=function(){nt=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},rt=E.createElement("input"),it=E.createElement("select").appendChild(E.createElement("option")),rt.type="checkbox",y.checkOn=""!==rt.value,y.optSelected=it.selected,(rt=E.createElement("input")).value="t",rt.type="radio",y.radioValue="t"===rt.value;var pt,dt=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=dt[t]||S.find.attr;dt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=dt[o],dt[o]=r,r=null!=a(e,t,n)?o:null,dt[o]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,yt(this)))});if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,yt(this)))});if(!arguments.length)return this.attr("class","");if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,yt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=mt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=yt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+vt(yt(n))+" ").indexOf(t))return!0;return!1}});var xt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(xt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:vt(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!bt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,bt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,wt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,wt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var Tt=C.location,Ct={guid:Date.now()},Et=/\?/;S.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||S.error("Invalid XML: "+e),t};var St=/\[\]$/,kt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||St.test(n)?i(n,t):Dt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)Dt(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)Dt(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\/\//,Rt={},Mt={},It="*/".concat("*"),Wt=E.createElement("a");function Ft(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Bt(t,i,o,a){var s={},u=t===Mt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function $t(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Wt.href=Tt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,S.ajaxSettings),t):$t(S.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Ht.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Wt.protocol+"//"+Wt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Bt(Rt,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Ot.test(v.type),f=v.url.replace(qt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(jt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Et.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Lt,"$1"),o=(Et.test(f)?"&":"?")+"_="+Ct.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+It+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Bt(Mt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=S.ajaxSettings.xhr();y.cors=!!zt&&"withCredentials"in zt,y.ajax=zt=!!zt,S.ajaxTransport(function(i){var o,a;if(y.cors||zt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(_t[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=vt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Gt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Gt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Yt=C.jQuery,Qt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Qt),e&&C.jQuery===S&&(C.jQuery=Yt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S}); diff --git a/javadoc/script-dir/jquery-ui.min.css b/javadoc/script-dir/jquery-ui.min.css new file mode 100644 index 0000000..6be72f5 --- /dev/null +++ b/javadoc/script-dir/jquery-ui.min.css @@ -0,0 +1,7 @@ +/*! jQuery UI - v1.12.1 - 2018-12-06 +* http://jqueryui.com +* Includes: core.css, autocomplete.css, menu.css, theme.css +* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=custom-theme&bgImgOpacityError=95&bgImgOpacityHighlight=55&bgImgOpacityActive=65&bgImgOpacityHover=75&bgImgOpacityDefault=75&bgImgOpacityContent=75&bgImgOpacityHeader=75&cornerRadiusShadow=8px&offsetLeftShadow=-8px&offsetTopShadow=-8px&thicknessShadow=8px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=%23aaaaaa&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=%23aaaaaa&iconColorError=%23cd0a0a&fcError=%23cd0a0a&borderColorError=%23cd0a0a&bgTextureError=glass&bgColorError=%23fef1ec&iconColorHighlight=%232e83ff&fcHighlight=%23363636&borderColorHighlight=%23fcefa1&bgTextureHighlight=glass&bgColorHighlight=%23fbf9ee&iconColorActive=%23454545&fcActive=%23212121&borderColorActive=%23aaaaaa&bgTextureActive=glass&bgColorActive=%23dadada&iconColorHover=%23454545&fcHover=%23212121&borderColorHover=%23999999&bgTextureHover=glass&bgColorHover=%23dadada&iconColorDefault=%23888888&fcDefault=%23555555&borderColorDefault=%23d3d3d3&bgTextureDefault=glass&bgColorDefault=%23e6e6e6&iconColorContent=%23222222&fcContent=%23222222&borderColorContent=%23aaaaaa&bgTextureContent=flat&bgColorContent=%23ffffff&iconColorHeader=%23222222&fcHeader=%23222222&borderColorHeader=%23aaaaaa&bgTextureHeader=highlight_soft&bgColorHeader=%23cccccc&cornerRadius=4px&fwDefault=normal&fsDefault=1.1em&ffDefault=Verdana%2CArial%2Csans-serif +* Copyright jQuery Foundation and other contributors; Licensed MIT */ + +.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #d3d3d3}.ui-widget-content{border:1px solid #aaa;background:#fff;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #d3d3d3;background:#e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #999;background:#dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#212121;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #aaa;background:#dadada url("images/ui-bg_glass_65_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-icon-background,.ui-state-active .ui-icon-background{border:#aaa;background-color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-checked{border:1px solid #fcefa1;background:#fbf9ee}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_888888_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:-8px -8px 8px #aaa;box-shadow:-8px -8px 8px #aaa} \ No newline at end of file diff --git a/javadoc/script-dir/jquery-ui.min.js b/javadoc/script-dir/jquery-ui.min.js new file mode 100644 index 0000000..54d4beb --- /dev/null +++ b/javadoc/script-dir/jquery-ui.min.js @@ -0,0 +1,6 @@ +/*! jQuery UI - v1.12.1 - 2018-12-06 +* http://jqueryui.com +* Includes: widget.js, position.js, keycode.js, unique-id.js, widgets/autocomplete.js, widgets/menu.js +* Copyright jQuery Foundation and other contributors; Licensed MIT */ + +(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){t.ui=t.ui||{},t.ui.version="1.12.1";var e=0,i=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},l=e.split(".")[0];e=e.split(".")[1];var h=l+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][h.toLowerCase()]=function(e){return!!t.data(e,h)},t[l]=t[l]||{},n=t[l][e],o=t[l][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:l,widgetName:e,widgetFullName:h}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var s,n,o=i.call(arguments,1),a=0,r=o.length;r>a;a++)for(s in o[a])n=o[a][s],o[a].hasOwnProperty(s)&&void 0!==n&&(e[s]=t.isPlainObject(n)?t.isPlainObject(e[s])?t.widget.extend({},e[s],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,s){var n=s.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=i.call(arguments,1),l=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(l=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(l=i&&i.jquery?l.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):l=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new s(o,this))})),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(i,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=e++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),i),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var l=s.match(/^([\w:-]*)\s*(.*)$/),h=l[1]+o.eventNamespace,c=l[2];c?n.on(h,c,r):i.on(h,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,l=/top|center|bottom/,h=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,o="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:o?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType,o=!s&&!n;return{element:i,isWindow:s,isDocument:n,offset:o?t(e).offset():{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:i.outerWidth(),height:i.outerHeight()}}},t.fn.position=function(n){if(!n||!n.of)return d.apply(this,arguments);n=t.extend({},n);var u,p,f,g,m,_,v=t(n.of),b=t.position.getWithinInfo(n.within),y=t.position.getScrollInfo(b),w=(n.collision||"flip").split(" "),k={};return _=s(v),v[0].preventDefault&&(n.at="left top"),p=_.width,f=_.height,g=_.offset,m=t.extend({},g),t.each(["my","at"],function(){var t,e,i=(n[this]||"").split(" ");1===i.length&&(i=r.test(i[0])?i.concat(["center"]):l.test(i[0])?["center"].concat(i):["center","center"]),i[0]=r.test(i[0])?i[0]:"center",i[1]=l.test(i[1])?i[1]:"center",t=h.exec(i[0]),e=h.exec(i[1]),k[this]=[t?t[0]:0,e?e[0]:0],n[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===n.at[0]?m.left+=p:"center"===n.at[0]&&(m.left+=p/2),"bottom"===n.at[1]?m.top+=f:"center"===n.at[1]&&(m.top+=f/2),u=e(k.at,p,f),m.left+=u[0],m.top+=u[1],this.each(function(){var s,r,l=t(this),h=l.outerWidth(),c=l.outerHeight(),d=i(this,"marginLeft"),_=i(this,"marginTop"),x=h+d+i(this,"marginRight")+y.width,C=c+_+i(this,"marginBottom")+y.height,D=t.extend({},m),T=e(k.my,l.outerWidth(),l.outerHeight());"right"===n.my[0]?D.left-=h:"center"===n.my[0]&&(D.left-=h/2),"bottom"===n.my[1]?D.top-=c:"center"===n.my[1]&&(D.top-=c/2),D.left+=T[0],D.top+=T[1],s={marginLeft:d,marginTop:_},t.each(["left","top"],function(e,i){t.ui.position[w[e]]&&t.ui.position[w[e]][i](D,{targetWidth:p,targetHeight:f,elemWidth:h,elemHeight:c,collisionPosition:s,collisionWidth:x,collisionHeight:C,offset:[u[0]+T[0],u[1]+T[1]],my:n.my,at:n.at,within:b,elem:l})}),n.using&&(r=function(t){var e=g.left-D.left,i=e+p-h,s=g.top-D.top,r=s+f-c,u={target:{element:v,left:g.left,top:g.top,width:p,height:f},element:{element:l,left:D.left,top:D.top,width:h,height:c},horizontal:0>i?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};h>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),l.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-r-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-r-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,(i>0||u>a(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.safeActiveElement=function(t){var e;try{e=t.activeElement}catch(i){e=t.body}return e||(e=t.body),e.nodeName||(e=t.body),e},t.widget("ui.menu",{version:"1.12.1",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault()},"click .ui-menu-item":function(e){var i=t(e.target),s=t(t.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(e),e.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(e):!this.element.is(":focus")&&s.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(e){if(!this.previousFilter){var i=t(e.target).closest(".ui-menu-item"),s=t(e.currentTarget);i[0]===s[0]&&(this._removeClass(s.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(e,s))}},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this.element.find(this.options.items).eq(0);e||this.focus(t,i)},blur:function(e){this._delay(function(){var i=!t.contains(this.element[0],t.ui.safeActiveElement(this.document[0]));i&&this.collapseAll(e)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t),this.mouseHandled=!1}})},_destroy:function(){var e=this.element.find(".ui-menu-item").removeAttr("role aria-disabled"),i=e.children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),i.children().each(function(){var e=t(this);e.data("ui-menu-submenu-caret")&&e.remove()})},_keydown:function(e){var i,s,n,o,a=!0;switch(e.keyCode){case t.ui.keyCode.PAGE_UP:this.previousPage(e);break;case t.ui.keyCode.PAGE_DOWN:this.nextPage(e);break;case t.ui.keyCode.HOME:this._move("first","first",e);break;case t.ui.keyCode.END:this._move("last","last",e);break;case t.ui.keyCode.UP:this.previous(e);break;case t.ui.keyCode.DOWN:this.next(e);break;case t.ui.keyCode.LEFT:this.collapse(e);break;case t.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(e);break;case t.ui.keyCode.ENTER:case t.ui.keyCode.SPACE:this._activate(e);break;case t.ui.keyCode.ESCAPE:this.collapse(e);break;default:a=!1,s=this.previousFilter||"",o=!1,n=e.keyCode>=96&&105>=e.keyCode?""+(e.keyCode-96):String.fromCharCode(e.keyCode),clearTimeout(this.filterTimer),n===s?o=!0:n=s+n,i=this._filterMenuItems(n),i=o&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i,i.length||(n=String.fromCharCode(e.keyCode),i=this._filterMenuItems(n)),i.length?(this.focus(e,i),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}a&&e.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var e,i,s,n,o,a=this,r=this.options.icons.submenu,l=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),s=l.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var e=t(this),i=e.prev(),s=t("<span>").data("ui-menu-submenu-caret",!0);a._addClass(s,"ui-menu-icon","ui-icon "+r),i.attr("aria-haspopup","true").prepend(s),e.attr("aria-labelledby",i.attr("id"))}),this._addClass(s,"ui-menu","ui-widget ui-widget-content ui-front"),e=l.add(this.element),i=e.find(this.options.items),i.not(".ui-menu-item").each(function(){var e=t(this);a._isDivider(e)&&a._addClass(e,"ui-menu-divider","ui-widget-content")}),n=i.not(".ui-menu-item, .ui-menu-divider"),o=n.children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(n,"ui-menu-item")._addClass(o,"ui-menu-item-wrapper"),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!t.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){if("icons"===t){var i=this.element.find(".ui-menu-icon");this._removeClass(i,null,this.options.icons.submenu)._addClass(i,null,e.submenu)}this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",t+""),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var i,s,n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),s=this.active.children(".ui-menu-item-wrapper"),this._addClass(s,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),n=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=e.children(".ui-menu"),i.length&&t&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(e){var i,s,n,o,a,r;this._hasScroll()&&(i=parseFloat(t.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(t.css(this.activeMenu[0],"paddingTop"))||0,n=e.offset().top-this.activeMenu.offset().top-i-s,o=this.activeMenu.scrollTop(),a=this.activeMenu.height(),r=e.outerHeight(),0>n?this.activeMenu.scrollTop(o+n):n+r>a&&this.activeMenu.scrollTop(o+n-a+r))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this._removeClass(this.active.children(".ui-menu-item-wrapper"),null,"ui-state-active"),this._trigger("blur",t,{item:this.active}),this.active=null)},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(e){var i=t.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(e.parents(".ui-menu")).hide().attr("aria-hidden","true"),e.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(e,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:t(e&&e.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(e),this._removeClass(s.find(".ui-state-active"),null,"ui-state-active"),this.activeMenu=s},this.delay)},_close:function(t){t||(t=this.active?this.active.parent():this.element),t.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false")},_closeOnDocumentClick:function(e){return!t(e.target).closest(".ui-menu").length},_isDivider:function(t){return!/[^\-\u2014\u2013\s]/.test(t.text())},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,i){var s;this.active&&(s="first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[e]()),this.focus(i,s)},nextPage:function(e){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=t(this),0>i.offset().top-s-n}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(e),void 0)},previousPage:function(e){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-s+n>0}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items).first())),void 0):(this.next(e),void 0)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(e){this.active=this.active||t(e.target).closest(".ui-menu-item");var i={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(e,!0),this._trigger("select",e,i)},_filterMenuItems:function(e){var i=e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),s=RegExp("^"+i,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return s.test(t.trim(t(this).children(".ui-menu-item-wrapper").text()))})}}),t.widget("ui.autocomplete",{version:"1.12.1",defaultElement:"<input>",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var e,i,s,n=this.element[0].nodeName.toLowerCase(),o="textarea"===n,a="input"===n;this.isMultiLine=o||!a&&this._isContentEditable(this.element),this.valueMethod=this.element[o||a?"val":"text"],this.isNewMenu=!0,this._addClass("ui-autocomplete-input"),this.element.attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return e=!0,s=!0,i=!0,void 0;e=!1,s=!1,i=!1;var o=t.ui.keyCode;switch(n.keyCode){case o.PAGE_UP:e=!0,this._move("previousPage",n);break;case o.PAGE_DOWN:e=!0,this._move("nextPage",n);break;case o.UP:e=!0,this._keyEvent("previous",n);break;case o.DOWN:e=!0,this._keyEvent("next",n);break;case o.ENTER:this.menu.active&&(e=!0,n.preventDefault(),this.menu.select(n));break;case o.TAB:this.menu.active&&this.menu.select(n);break;case o.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(e)return e=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),void 0;if(!i){var n=t.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(t){return s?(s=!1,t.preventDefault(),void 0):(this._searchTimeout(t),void 0)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(t){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(t),this._change(t),void 0)}}),this._initSource(),this.menu=t("<ul>").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance"),this._addClass(this.menu.element,"ui-autocomplete","ui-front"),this._on(this.menu.element,{mousedown:function(e){e.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,this.element[0]!==t.ui.safeActiveElement(this.document[0])&&this.element.trigger("focus")})},menufocus:function(e,i){var s,n;return this.isNewMenu&&(this.isNewMenu=!1,e.originalEvent&&/^mouse/.test(e.originalEvent.type))?(this.menu.blur(),this.document.one("mousemove",function(){t(e.target).trigger(e.originalEvent)}),void 0):(n=i.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",e,{item:n})&&e.originalEvent&&/^key/.test(e.originalEvent.type)&&this._value(n.value),s=i.item.attr("aria-label")||n.value,s&&t.trim(s).length&&(this.liveRegion.children().hide(),t("<div>").text(s).appendTo(this.liveRegion)),void 0)},menuselect:function(e,i){var s=i.item.data("ui-autocomplete-item"),n=this.previous;this.element[0]!==t.ui.safeActiveElement(this.document[0])&&(this.element.trigger("focus"),this.previous=n,this._delay(function(){this.previous=n,this.selectedItem=s})),!1!==this._trigger("select",e,{item:s})&&this._value(s.value),this.term=this._value(),this.close(e),this.selectedItem=s}}),this.liveRegion=t("<div>",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).appendTo(this.document[0].body),this._addClass(this.liveRegion,null,"ui-helper-hidden-accessible"),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(t,e){this._super(t,e),"source"===t&&this._initSource(),"appendTo"===t&&this.menu.element.appendTo(this._appendTo()),"disabled"===t&&e&&this.xhr&&this.xhr.abort()},_isEventTargetInWidget:function(e){var i=this.menu.element[0];return e.target===this.element[0]||e.target===i||t.contains(i,e.target)},_closeOnClickOutside:function(t){this._isEventTargetInWidget(t)||this.close()},_appendTo:function(){var e=this.options.appendTo;return e&&(e=e.jquery||e.nodeType?t(e):this.document.find(e).eq(0)),e&&e[0]||(e=this.element.closest(".ui-front, dialog")),e.length||(e=this.document[0].body),e},_initSource:function(){var e,i,s=this;t.isArray(this.options.source)?(e=this.options.source,this.source=function(i,s){s(t.ui.autocomplete.filter(e,i.term))}):"string"==typeof this.options.source?(i=this.options.source,this.source=function(e,n){s.xhr&&s.xhr.abort(),s.xhr=t.ajax({url:i,data:e,dataType:"json",success:function(t){n(t)},error:function(){n([])}})}):this.source=this.options.source},_searchTimeout:function(t){clearTimeout(this.searching),this.searching=this._delay(function(){var e=this.term===this._value(),i=this.menu.element.is(":visible"),s=t.altKey||t.ctrlKey||t.metaKey||t.shiftKey;(!e||e&&!i&&!s)&&(this.selectedItem=null,this.search(null,t))},this.options.delay)},search:function(t,e){return t=null!=t?t:this._value(),this.term=this._value(),t.length<this.options.minLength?this.close(e):this._trigger("search",e)!==!1?this._search(t):void 0},_search:function(t){this.pending++,this._addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:t},this._response())},_response:function(){var e=++this.requestIndex;return t.proxy(function(t){e===this.requestIndex&&this.__response(t),this.pending--,this.pending||this._removeClass("ui-autocomplete-loading")},this)},__response:function(t){t&&(t=this._normalize(t)),this._trigger("response",null,{content:t}),!this.options.disabled&&t&&t.length&&!this.cancelSearch?(this._suggest(t),this._trigger("open")):this._close()},close:function(t){this.cancelSearch=!0,this._close(t)},_close:function(t){this._off(this.document,"mousedown"),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",t))},_change:function(t){this.previous!==this._value()&&this._trigger("change",t,{item:this.selectedItem})},_normalize:function(e){return e.length&&e[0].label&&e[0].value?e:t.map(e,function(e){return"string"==typeof e?{label:e,value:e}:t.extend({},e,{label:e.label||e.value,value:e.value||e.label})})},_suggest:function(e){var i=this.menu.element.empty();this._renderMenu(i,e),this.isNewMenu=!0,this.menu.refresh(),i.show(),this._resizeMenu(),i.position(t.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(),this._on(this.document,{mousedown:"_closeOnClickOutside"})},_resizeMenu:function(){var t=this.menu.element;t.outerWidth(Math.max(t.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(e,i){var s=this;t.each(i,function(t,i){s._renderItemData(e,i)})},_renderItemData:function(t,e){return this._renderItem(t,e).data("ui-autocomplete-item",e)},_renderItem:function(e,i){return t("<li>").append(t("<div>").text(i.label)).appendTo(e)},_move:function(t,e){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(t)||this.menu.isLastItem()&&/^next/.test(t)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[t](e),void 0):(this.search(null,e),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(t,e){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(t,e),e.preventDefault())},_isContentEditable:function(t){if(!t.length)return!1;var e=t.prop("contentEditable");return"inherit"===e?this._isContentEditable(t.parent()):"true"===e}}),t.extend(t.ui.autocomplete,{escapeRegex:function(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(e,i){var s=RegExp(t.ui.autocomplete.escapeRegex(i),"i");return t.grep(e,function(t){return s.test(t.label||t.value||t)})}}),t.widget("ui.autocomplete",t.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(t){return t+(t>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var i;this._superApply(arguments),this.options.disabled||this.cancelSearch||(i=e&&e.length?this.options.messages.results(e.length):this.options.messages.noResults,this.liveRegion.children().hide(),t("<div>").text(i).appendTo(this.liveRegion))}}),t.ui.autocomplete}); \ No newline at end of file diff --git a/javadoc/script-dir/jquery-ui.structure.min.css b/javadoc/script-dir/jquery-ui.structure.min.css new file mode 100644 index 0000000..e880892 --- /dev/null +++ b/javadoc/script-dir/jquery-ui.structure.min.css @@ -0,0 +1,5 @@ +/*! jQuery UI - v1.12.1 - 2018-12-06 +* http://jqueryui.com +* Copyright jQuery Foundation and other contributors; Licensed MIT */ + +.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0} \ No newline at end of file diff --git a/javadoc/script.js b/javadoc/script.js new file mode 100644 index 0000000..0765364 --- /dev/null +++ b/javadoc/script.js @@ -0,0 +1,132 @@ +/* + * Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved. + * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + */ + +var moduleSearchIndex; +var packageSearchIndex; +var typeSearchIndex; +var memberSearchIndex; +var tagSearchIndex; +function loadScripts(doc, tag) { + createElem(doc, tag, 'search.js'); + + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); +} + +function createElem(doc, tag, path) { + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); +} + +function show(tableId, selected, columns) { + if (tableId !== selected) { + document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function(elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected) + .forEach(function(elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); +} + +function updateTabs(tableId, selected) { + document.querySelector('div#' + tableId +' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]') + .forEach(function(tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex',0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex',-1); + } + }); +} + +function switchTab(e) { + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); + } + } +} + +var updateSearchResults = function() {}; + +function indexFilesLoaded() { + return moduleSearchIndex + && packageSearchIndex + && typeSearchIndex + && memberSearchIndex + && tagSearchIndex; +} + +// Workaround for scroll position not being included in browser history (8249133) +document.addEventListener("DOMContentLoaded", function(e) { + var contentDiv = document.querySelector("div.flex-content"); + window.addEventListener("popstate", function(e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener("hashchange", function(e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener("scroll", function(e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function() { + history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); + } + }); + if (!location.hash) { + history.replaceState(contentDiv.scrollTop, document.title); + } +}); diff --git a/javadoc/search.js b/javadoc/search.js new file mode 100644 index 0000000..13aba85 --- /dev/null +++ b/javadoc/search.js @@ -0,0 +1,354 @@ +/* + * Copyright (c) 2015, 2020, Oracle and/or its affiliates. All rights reserved. + * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + */ + +var noResult = {l: "No results found"}; +var loading = {l: "Loading search index..."}; +var catModules = "Modules"; +var catPackages = "Packages"; +var catTypes = "Classes and Interfaces"; +var catMembers = "Members"; +var catSearchTags = "Search Tags"; +var highlight = "<span class=\"result-highlight\">$&</span>"; +var searchPattern = ""; +var fallbackPattern = ""; +var RANKING_THRESHOLD = 2; +var NO_MATCH = 0xffff; +var MIN_RESULTS = 3; +var MAX_RESULTS = 500; +var UNNAMED = "<Unnamed>"; +function escapeHtml(str) { + return str.replace(/</g, "<").replace(/>/g, ">"); +} +function getHighlightedText(item, matcher, fallbackMatcher) { + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight) + } + return highlighted; +} +function getURLPrefix(ui) { + var urlPrefix=""; + var slash = "/"; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function(index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; + } + }); + } + } + return urlPrefix; +} +function createSearchPattern(term) { + var pattern = ""; + var isWordToken = false; + term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; + } + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === "") { + continue; + } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += "([a-z0-9_$<>\\[\\]]*?)"; + } + } + }); + return pattern; +} +function createMatcher(pattern, flags) { + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); +} +var watermark = 'Search'; +$(function() { + var search = $("#search-input"); + var reset = $("#reset-button"); + search.val(''); + search.prop("disabled", false); + reset.prop("disabled", false); + search.val(watermark).addClass('watermark'); + search.blur(function() { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); + } + }); + search.on('click keydown paste', function() { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); + } + }); + reset.click(function() { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget("custom.catcomplete", $.ui.autocomplete, { + _create: function() { + this._super(); + this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); + }, + _renderMenu: function(ul, items) { + var rMenu = this; + var currentCategory = ""; + rMenu.menu.bindings = $(); + $.each(items, function(index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append("<li class=\"ui-autocomplete-category\">" + item.category + "</li>"); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr("aria-label", item.category + " : " + item.l); + li.attr("class", "result-item"); + } else { + li.attr("aria-label", item.l); + li.attr("class", "result-item"); + } + }); + }, + _renderItem: function(ul, item) { + var label = ""; + var matcher = createMatcher(escapeHtml(searchPattern), "g"); + var fallbackMatcher = new RegExp(fallbackPattern, "gi") + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; + } + var li = $("<li/>").appendTo(ul); + var div = $("<div/>").appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html(label + "<span class=\"search-tag-holder-result\"> (" + item.h + ")</span><br><span class=\"search-tag-desc-result\">" + + item.d + "</span><br>"); + } else { + div.html(label + "<span class=\"search-tag-holder-result\"> (" + item.h + ")</span>"); + } + } else { + if (item.m) { + div.html(item.m + "/" + label); + } else { + div.html(label); + } + } + return li; + } +}); +function rankMatch(match, category) { + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { + leftBoundaryMatch = 0; + } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { + leftBoundaryMatch = 1; + } + var matchEnd = index + match[0].length; + var leftParen = input.indexOf("("); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? "/" : "."; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; + } + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) + delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) + delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) + delta += 5; + } + return leftBoundaryMatch + periferalMatch + (delta / 200); + +} +function doSearch(request, response) { + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === "") { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ""); + var fallbackMatcher = new RegExp(fallbackPattern, "i"); + + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ranking: ranking, item: item}); + } + return newResults.length <= MAX_RESULTS; + }); + return newResults.sort(function(e1, e2) { + return e1.ranking - e2.ranking; + }).map(function(e) { + return e.item; + }); + } + return []; + } + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); + result = result.concat(secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + })); + } + } + + searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); + searchIndex(packageSearchIndex, catPackages, function(item) { + return (item.m && request.term.indexOf("/") > -1) + ? (item.m + "/" + item.l) : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function(item) { + return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function(item) { + return request.term.indexOf(".") > -1 + ? item.p + "." + item.c + "." + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); + + if (!indexFilesLoaded()) { + updateSearchResults = function() { + doSearch(request, response); + } + result.unshift(loading); + } else { + updateSearchResults = function() {}; + } + response(result); +} +$(function() { + $("#search-input").catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function(event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $("#search-input").empty(); + } + }, + autoFocus: true, + focus: function(event, ui) { + return false; + }, + position: { + collision: "flip" + }, + select: function(event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += "module-summary.html"; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + ".html"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + ".html" + "#"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; + } + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $("#search-input").focus(); + } + } + }); +}); diff --git a/javadoc/serialized-form.html b/javadoc/serialized-form.html new file mode 100644 index 0000000..ab5f6b0 --- /dev/null +++ b/javadoc/serialized-form.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> +<!-- Generated by javadoc (17) on Sun May 01 19:43:43 CEST 2022 --> +<title>Serialized Form</title> +<meta name="viewport" content="width=device-width, initial-scale=1"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta name="dc.created" content="2022-05-01"> +<meta name="description" content="serialized forms"> +<meta name="generator" content="javadoc/SerializedFormWriterImpl"> +<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> +<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style"> +<link rel="stylesheet" type="text/css" href="jquery-ui.overrides.css" title="Style"> +<script type="text/javascript" src="script.js"></script> +<script type="text/javascript" src="script-dir/jquery-3.5.1.min.js"></script> +<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script> +</head> +<body class="serialized-form-page"> +<script type="text/javascript">var pathtoroot = "./"; +loadScripts(document, 'script');</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<div class="flex-box"> +<header role="banner" class="flex-header"> +<nav role="navigation"> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="top-nav" id="navbar-top"> +<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> +<ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> +<li><a href="edu.ntnu.idatt2001.carljgu.client/module-summary.html">Module</a></li> +<li>Package</li> +<li>Class</li> +<li><a href="overview-tree.html">Tree</a></li> +<li><a href="index-files/index-1.html">Index</a></li> +<li><a href="help-doc.html#serialized-form">Help</a></li> +</ul> +</div> +<div class="sub-nav"> +<div class="nav-list-search"><label for="search-input">SEARCH:</label> +<input type="text" id="search-input" value="search" disabled="disabled"> +<input type="reset" id="reset-button" value="reset" disabled="disabled"> +</div> +</div> +<!-- ========= END OF TOP NAVBAR ========= --> +<span class="skip-nav" id="skip-navbar-top"></span></nav> +</header> +<div class="flex-content"> +<main role="main"> +<div class="header"> +<h1 title="Serialized Form" class="title">Serialized Form</h1> +</div> +<ul class="block-list"> +<li> +<section class="serialized-package-container"> +<h2 title="Package">Package <a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/package-summary.html">edu.ntnu.idatt2001.carljgu</a></h2> +<ul class="block-list"> +<li> +<section class="serialized-class-details" id="edu.ntnu.idatt2001.carljgu.FileExtensionException"> +<h3>Exception <a href="edu.ntnu.idatt2001.carljgu.client/edu/ntnu/idatt2001/carljgu/FileExtensionException.html" title="class in edu.ntnu.idatt2001.carljgu">edu.ntnu.idatt2001.carljgu.FileExtensionException</a></h3> +<div class="type-signature">class FileExtensionException extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a> implements <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></div> +</section> +</li> +</ul> +</section> +</li> +</ul> +</main> +</div> +</div> +</body> +</html> diff --git a/javadoc/stylesheet.css b/javadoc/stylesheet.css new file mode 100644 index 0000000..836c62d --- /dev/null +++ b/javadoc/stylesheet.css @@ -0,0 +1,865 @@ +/* + * Javadoc style sheet + */ + +@import url('resources/fonts/dejavu.css'); + +/* + * Styles for individual HTML elements. + * + * These are styles that are specific to individual HTML elements. Changing them affects the style of a particular + * HTML element throughout the page. + */ + +body { + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; + padding:0; + height:100%; + width:100%; +} +iframe { + margin:0; + padding:0; + height:100%; + width:100%; + overflow-y:scroll; + border:none; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a[href]:hover, a[href]:focus { + text-decoration:none; + color:#bb7a2a; +} +a[name] { + color:#353833; +} +pre { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; +} +h1 { + font-size:20px; +} +h2 { + font-size:18px; +} +h3 { + font-size:16px; +} +h4 { + font-size:15px; +} +h5 { + font-size:14px; +} +h6 { + font-size:13px; +} +ul { + list-style-type:disc; +} +code, tt { + font-family:'DejaVu Sans Mono', monospace; +} +:not(h1, h2, h3, h4, h5, h6) > code, +:not(h1, h2, h3, h4, h5, h6) > tt { + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; +} +dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; +} +.summary-table dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; +} +sup { + font-size:8px; +} +button { + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; +} +/* + * Styles for HTML generated by javadoc. + * + * These are style classes that are used by the standard doclet to generate HTML documentation. + */ + +/* + * Styles for document title and copyright. + */ +.clear { + clear:both; + height:0; + overflow:hidden; +} +.about-language { + float:right; + padding:0 21px 8px 8px; + font-size:11px; + margin-top:-9px; + height:2.9em; +} +.legal-copy { + margin-left:.5em; +} +.tab { + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; +} +/* + * Styles for navigation bar. + */ +@media screen { + .flex-box { + position:fixed; + display:flex; + flex-direction:column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } +} +.top-nav { + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + min-height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.sub-nav { + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; +} +.sub-nav div { + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; +} +.sub-nav .nav-list { + padding-top:5px; +} +ul.nav-list { + display:block; + margin:0 25px 0 0; + padding:0; +} +ul.sub-nav-list { + float:left; + margin:0 25px 0 0; + padding:0; +} +ul.nav-list li { + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; +} +.sub-nav .nav-list-search { + float:right; + margin:0 0 0 0; + padding:5px 6px; + clear:none; +} +.nav-list-search label { + position:relative; + right:-16px; +} +ul.sub-nav-list li { + list-style:none; + float:left; + padding-top:10px; +} +.top-nav a:link, .top-nav a:active, .top-nav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; +} +.top-nav a:hover { + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; +} +.nav-bar-cell1-rev { + background-color:#F8981D; + color:#253441; + margin: auto 5px; +} +.skip-nav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; +} +/* + * Hide navigation links and search box in print layout + */ +@media print { + ul.nav-list, div.sub-nav { + display:none; + } +} +/* + * Styles for page header and footer. + */ +.title { + color:#2c4557; + margin:10px 0; +} +.sub-title { + margin:5px 0 0 0; +} +.header ul { + margin:0 0 15px 0; + padding:0; +} +.header ul li, .footer ul li { + list-style:none; + font-size:13px; +} +/* + * Styles for headings. + */ +body.class-declaration-page .summary h2, +body.class-declaration-page .details h2, +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding:0; + margin:15px 0; +} +body.class-declaration-page .summary h3, +body.class-declaration-page .details h3, +body.class-declaration-page .summary .inherited-list h2 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +/* + * Styles for page layout containers. + */ +main { + clear:both; + padding:10px 20px; + position:relative; +} +dl.notes > dt { + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; +} +dl.notes > dd { + margin:5px 10px 10px 0; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} +dl.name-value > dt { + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; +} +dl.name-value > dd { + margin:0 0 0 1px; + font-size:1.1em; + display:inline; +} +/* + * Styles for lists. + */ +li.circle { + list-style:circle; +} +ul.horizontal li { + display:inline; + font-size:0.9em; +} +div.inheritance { + margin:0; + padding:0; +} +div.inheritance div.inheritance { + margin-left:2em; +} +ul.block-list, +ul.details-list, +ul.member-list, +ul.summary-list { + margin:10px 0 10px 0; + padding:0; +} +ul.block-list > li, +ul.details-list > li, +ul.member-list > li, +ul.summary-list > li { + list-style:none; + margin-bottom:15px; + line-height:1.4; +} +.summary-table dl, .summary-table dl dt, .summary-table dl dd { + margin-top:0; + margin-bottom:1px; +} +ul.see-list, ul.see-list-long { + padding-left: 0; + list-style: none; +} +ul.see-list li { + display: inline; +} +ul.see-list li:not(:last-child):after, +ul.see-list-long li:not(:last-child):after { + content: ", "; + white-space: pre-wrap; +} +/* + * Styles for tables. + */ +.summary-table, .details-table { + width:100%; + border-spacing:0; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; + padding:0; +} +.caption { + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0; + padding-top:10px; + padding-left:1px; + margin:0; + white-space:pre; +} +.caption a:link, .caption a:visited { + color:#1f389c; +} +.caption a:hover, +.caption a:active { + color:#FFFFFF; +} +.caption span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; +} +div.table-tabs { + padding:10px 0 0 1px; + margin:0; +} +div.table-tabs > button { + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; +} +div.table-tabs > button.active-table-tab { + background: #F8981D; + color: #253441; +} +div.table-tabs > button.table-tab { + background: #4D7A97; + color: #FFFFFF; +} +.two-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); +} +.three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); +} +.four-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); +} +@media screen and (max-width: 600px) { + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } +} +@media screen and (max-width: 800px) { + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } +} +@media screen and (max-width: 1000px) { + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, .details-table > div { + text-align:left; + padding: 8px 3px 3px 7px; +} +.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { + vertical-align:top; + padding-right:0; + padding-top:8px; + padding-bottom:3px; +} +.table-header { + background:#dee3e9; + font-weight: bold; +} +.col-first, .col-first { + font-size:13px; +} +.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { + font-size:13px; +} +.col-first, .col-second, .col-constructor-name { + vertical-align:top; + overflow: auto; +} +.col-last { + white-space:normal; +} +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-constructor-name a:link, .col-constructor-name a:visited, +.col-summary-item-name a:link, .col-summary-item-name a:visited, +.constant-values-container a:link, .constant-values-container a:visited, +.all-classes-container a:link, .all-classes-container a:visited, +.all-packages-container a:link, .all-packages-container a:visited { + font-weight:bold; +} +.table-sub-heading-color { + background-color:#EEEEFF; +} +.even-row-color, .even-row-color .table-header { + background-color:#FFFFFF; +} +.odd-row-color, .odd-row-color .table-header { + background-color:#EEEEEF; +} +/* + * Styles for contents. + */ +.deprecated-content { + margin:0; + padding:10px 0; +} +div.block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} +.col-last div { + padding-top:0; +} +.col-last a { + padding-bottom:3px; +} +.module-signature, +.package-signature, +.type-signature, +.member-signature { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + margin:14px 0; + white-space: pre-wrap; +} +.module-signature, +.package-signature, +.type-signature { + margin-top: 0; +} +.member-signature .type-parameters-long, +.member-signature .parameters, +.member-signature .exceptions { + display: inline-block; + vertical-align: top; + white-space: pre; +} +.member-signature .type-parameters { + white-space: normal; +} +/* + * Styles for formatting effect. + */ +.source-line-no { + color:green; + padding:0 30px 0 0; +} +h1.hidden { + visibility:hidden; + overflow:hidden; + font-size:10px; +} +.block { + display:block; + margin:0 10px 5px 0; + color:#474747; +} +.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, +.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, +.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { + font-weight:bold; +} +.deprecation-comment, .help-footnote, .preview-comment { + font-style:italic; +} +.deprecation-block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; +} +.preview-block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; +} +div.block div.deprecation-comment { + font-style:normal; +} +/* + * Styles specific to HTML5 elements. + */ +main, nav, header, footer, section { + display:block; +} +/* + * Styles for javadoc search. + */ +.ui-autocomplete-category { + font-weight:bold; + font-size:15px; + padding:7px 0 7px 3px; + background-color:#4D7A97; + color:#FFFFFF; +} +.result-item { + font-size:13px; +} +.ui-autocomplete { + max-height:85%; + max-width:65%; + overflow-y:scroll; + overflow-x:scroll; + white-space:nowrap; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); +} +ul.ui-autocomplete { + position:fixed; + z-index:999999; +} +ul.ui-autocomplete li { + float:left; + clear:both; + width:100%; +} +.result-highlight { + font-weight:bold; +} +#search-input { + background-image:url('resources/glass.png'); + background-size:13px; + background-repeat:no-repeat; + background-position:2px 3px; + padding-left:20px; + position:relative; + right:-18px; + width:400px; +} +#reset-button { + background-color: rgb(255,255,255); + background-image:url('resources/x.png'); + background-position:center; + background-repeat:no-repeat; + background-size:12px; + border:0 none; + width:16px; + height:16px; + position:relative; + left:-4px; + top:-4px; + font-size:0px; +} +.watermark { + color:#545454; +} +.search-tag-desc-result { + font-style:italic; + font-size:11px; +} +.search-tag-holder-result { + font-style:italic; + font-size:12px; +} +.search-tag-result:target { + background-color:yellow; +} +.module-graph span { + display:none; + position:absolute; +} +.module-graph:hover span { + display:block; + margin: -100px 0 0 100px; + z-index: 1; +} +.inherited-list { + margin: 10px 0 10px 0; +} +section.class-description { + line-height: 1.4; +} +.summary section[class$="-summary"], .details section[class$="-details"], +.class-uses .detail, .serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, section[class$="-details"] .detail { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; +} +.vertical-separator { + padding: 0 5px; +} +ul.help-section-list { + margin: 0; +} +ul.help-subtoc > li { + display: inline-block; + padding-right: 5px; + font-size: smaller; +} +ul.help-subtoc > li::before { + content: "\2022" ; + padding-right:2px; +} +span.help-note { + font-style: italic; +} +/* + * Indicator icon for external links. + */ +main a[href*="://"]::after { + content:""; + display:inline-block; + background-image:url('data:image/svg+xml; utf8, \ + <svg xmlns="http://www.w3.org/2000/svg" width="768" height="768">\ + <path d="M584 664H104V184h216V80H0v688h688V448H584zM384 0l132 \ + 132-240 240 120 120 240-240 132 132V0z" fill="%234a6782"/>\ + </svg>'); + background-size:100% 100%; + width:7px; + height:7px; + margin-left:2px; + margin-bottom:4px; +} +main a[href*="://"]:hover::after, +main a[href*="://"]:focus::after { + background-image:url('data:image/svg+xml; utf8, \ + <svg xmlns="http://www.w3.org/2000/svg" width="768" height="768">\ + <path d="M584 664H104V184h216V80H0v688h688V448H584zM384 0l132 \ + 132-240 240 120 120 240-240 132 132V0z" fill="%23bb7a2a"/>\ + </svg>'); +} + +/* + * Styles for user-provided tables. + * + * borderless: + * No borders, vertical margins, styled caption. + * This style is provided for use with existing doc comments. + * In general, borderless tables should not be used for layout purposes. + * + * plain: + * Plain borders around table and cells, vertical margins, styled caption. + * Best for small tables or for complex tables for tables with cells that span + * rows and columns, when the "striped" style does not work well. + * + * striped: + * Borders around the table and vertical borders between cells, striped rows, + * vertical margins, styled caption. + * Best for tables that have a header row, and a body containing a series of simple rows. + */ + +table.borderless, +table.plain, +table.striped { + margin-top: 10px; + margin-bottom: 10px; +} +table.borderless > caption, +table.plain > caption, +table.striped > caption { + font-weight: bold; + font-size: smaller; +} +table.borderless th, table.borderless td, +table.plain th, table.plain td, +table.striped th, table.striped td { + padding: 2px 5px; +} +table.borderless, +table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, +table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { + background-color: transparent; +} +table.plain { + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, +table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { + border: 1px solid black; +} +table.striped { + border-collapse: collapse; + border: 1px solid black; +} +table.striped > thead { + background-color: #E3E3E3; +} +table.striped > thead > tr > th, table.striped > thead > tr > td { + border: 1px solid black; +} +table.striped > tbody > tr:nth-child(even) { + background-color: #EEE +} +table.striped > tbody > tr:nth-child(odd) { + background-color: #FFF +} +table.striped > tbody > tr > th, table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; +} +table.striped > tbody > tr > th { + font-weight: normal; +} +/** + * Tweak font sizes and paddings for small screens. + */ +@media screen and (max-width: 1050px) { + #search-input { + width: 300px; + } +} +@media screen and (max-width: 800px) { + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$="-summary"], .details section[class$="-details"], + .class-uses .detail, .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } +} +@media screen and (max-width: 500px) { + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } +} diff --git a/javadoc/tag-search-index.js b/javadoc/tag-search-index.js new file mode 100644 index 0000000..bf10aaf --- /dev/null +++ b/javadoc/tag-search-index.js @@ -0,0 +1 @@ +tagSearchIndex = [{"l":"Constant Field Values","h":"","u":"constant-values.html"},{"l":"Serialized Form","h":"","u":"serialized-form.html"}];updateSearchResults(); \ No newline at end of file diff --git a/javadoc/type-search-index.js b/javadoc/type-search-index.js new file mode 100644 index 0000000..d277906 --- /dev/null +++ b/javadoc/type-search-index.js @@ -0,0 +1 @@ +typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"edu.ntnu.idatt2001.carljgu.client","l":"App"},{"p":"edu.ntnu.idatt2001.carljgu.units","l":"Army"},{"p":"edu.ntnu.idatt2001.carljgu","l":"ArmyFileHandler"},{"p":"edu.ntnu.idatt2001.carljgu.battle","l":"Battle"},{"p":"edu.ntnu.idatt2001.carljgu.client","l":"BattleController"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","l":"CavalryUnit"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","l":"CommanderUnit"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","l":"DialogBox"},{"p":"edu.ntnu.idatt2001.carljgu.client.dialogs","l":"DialogBoxBuilder"},{"p":"edu.ntnu.idatt2001.carljgu","l":"FileExtensionException"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","l":"InfantryUnit"},{"p":"edu.ntnu.idatt2001.carljgu.client","l":"Main"},{"p":"edu.ntnu.idatt2001.carljgu.units.specialized","l":"RangedUnit"},{"p":"edu.ntnu.idatt2001.carljgu.battle","l":"SimulationAttack"},{"p":"edu.ntnu.idatt2001.carljgu","l":"Terrain"},{"p":"edu.ntnu.idatt2001.carljgu.units","l":"Unit"},{"p":"edu.ntnu.idatt2001.carljgu.units","l":"UnitFactory"}];updateSearchResults(); \ No newline at end of file diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.java b/src/main/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.java index 9ab33c7..3af1018 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandler.java @@ -5,17 +5,25 @@ import edu.ntnu.idatt2001.carljgu.units.*; import javafx.stage.FileChooser; import java.io.*; +import java.util.ArrayList; /** * Handles writing, reading and importing * armies to and from a file. * * @author Carl Gützkow - * @version 1.3 13.04.2022 + * @version 1.4 1.05.2022 */ public class ArmyFileHandler { - private int readLinesSkipped = 0; + private final ArrayList<String> readLinesSkipped; + + /** + * Constructor which initiates the readLinesSkipped arraylist + */ + public ArmyFileHandler() { + readLinesSkipped = new ArrayList<>(); + } /** * Gets the amount of units @@ -24,7 +32,7 @@ public class ArmyFileHandler { * @return readLinesSkipped - amount of lines skipped when * reading army from file because of invalid unit. */ - public int getReadLinesSkipped() { + public ArrayList<String> getReadLinesSkipped() { return readLinesSkipped; } @@ -64,13 +72,13 @@ public class ArmyFileHandler { * with an error message the client creates. * * @param filePath - String - name of the file path to read from - * @return army - Army - an army read from a csv file - * @throws FileExtensionException thrown if file extension is not csv * @throws IOException thrown if an I/O error occurs * @throws FileNotFoundException thrown if the filepath was not found + * @throws IllegalArgumentException thrown if file extension is not csv or if army could not be created. + * @return army - Army - an army read from a csv file */ public Army readArmyFromFile(String filePath) - throws FileExtensionException, IOException, FileNotFoundException { + throws IOException, FileNotFoundException, IllegalArgumentException { if (!filePath.endsWith(".csv")) throw new FileExtensionException("File extension has to be csv"); UnitFactory unitFactory = new UnitFactory(); @@ -86,8 +94,10 @@ public class ArmyFileHandler { int health = Integer.parseInt(unit[2].trim()); army.addUnit(unitFactory.createUnit(unitType, name, health)); - } catch (IllegalArgumentException | IndexOutOfBoundsException e) { - readLinesSkipped++; + } catch (IllegalArgumentException e) { + readLinesSkipped.add("Line \"" + line + "\" skipped because \"" + e.getMessage() + "\""); + } catch (ArrayIndexOutOfBoundsException e) { + readLinesSkipped.add("Line \"" + line + "\" skipped because it did not contain enough information"); } } return army; diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/Terrain.java b/src/main/java/edu/ntnu/idatt2001/carljgu/Terrain.java index 2ab411c..3d1ede1 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/Terrain.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/Terrain.java @@ -1,7 +1,7 @@ package edu.ntnu.idatt2001.carljgu; /** - * En enum that represents the different terrain + * An enum that represents the different terrains * that the battles can occur on. * * @author Carl Gützkow diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/client/App.java b/src/main/java/edu/ntnu/idatt2001/carljgu/client/App.java index 9f43d4b..cb1b317 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/client/App.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/client/App.java @@ -1,16 +1,22 @@ package edu.ntnu.idatt2001.carljgu.client; import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; + +import edu.ntnu.idatt2001.carljgu.client.dialogs.DialogBoxBuilder; import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Scene; import javafx.scene.image.Image; import javafx.stage.Stage; +import static javafx.scene.control.Alert.AlertType.ERROR; + /** * Class that extends Application * from javafx. - * Responsibility for configuring the stage. + * Responsibility for creating the stage. * * @author Carl Gützkow * @version 1.1 27.03.2022 @@ -33,16 +39,22 @@ public class App extends Application { FXMLLoader fxmlLoader = new FXMLLoader(App.class.getClassLoader().getResource("wargames.fxml")); scene = new Scene(fxmlLoader.load(), 1300, 740); scene.getStylesheets().add("stylesheet.css"); + + stage.setTitle("Wargames"); + + Path currentPath = Paths.get("").toAbsolutePath(); + Path imagePath = Paths.get(currentPath.toString(), "src","main","resources","icons","wargames-logo.png"); + Image icon = new Image(imagePath.toString()); + stage.getIcons().add(icon); + + stage.setScene(scene); + stage.show(); } catch (IOException | IllegalStateException e) { - System.out.println(e.getMessage()); + new DialogBoxBuilder(ERROR) + .addHeader("Program could not be started. File was not found.") + .build().showAndWait(); } - stage.setTitle("Wargames"); - - Image icon = new Image("wargames-logo.png"); - stage.getIcons().add(icon); - stage.setScene(scene); - stage.show(); } /** diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/client/BattleController.java b/src/main/java/edu/ntnu/idatt2001/carljgu/client/BattleController.java index 41e2fbd..d5ee1d5 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/client/BattleController.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/client/BattleController.java @@ -11,17 +11,16 @@ import edu.ntnu.idatt2001.carljgu.units.UnitFactory; import java.io.IOException; import java.net.URL; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.ArrayList; -import java.util.Optional; import java.util.ResourceBundle; import javafx.fxml.Initializable; import javafx.scene.control.Button; import javafx.scene.control.ChoiceBox; import javafx.fxml.FXML; -import javafx.scene.control.ButtonType; import javafx.scene.control.ListView; -import javafx.scene.input.MouseButton; import javafx.scene.text.Text; import static javafx.scene.control.Alert.AlertType.*; @@ -31,7 +30,7 @@ import static javafx.scene.control.Alert.AlertType.*; * This includes requesting to import * armies and simulate the battle * - * @version 1.6 30.04.2022 + * @version 1.7 01.05.2022 * @author Carl Gützkow */ public class BattleController implements Initializable { @@ -80,21 +79,37 @@ public class BattleController implements Initializable { */ private void importArmy(int armyNumber) { ArmyFileHandler fileHandler = new ArmyFileHandler(); - new DialogBoxBuilder(ERROR).build().showAndWait(); try { - filePaths[armyNumber] = fileHandler.getFilePath(); - if (filePaths[armyNumber] == null) + String filePath = fileHandler.getFilePath(); + if (filePath != null) + filePaths[armyNumber] = filePath; + else return; armies[armyNumber] = fileHandler.readArmyFromFile(filePaths[armyNumber]); displayArmy(armyNumber, armies[armyNumber]); - new DialogBoxBuilder(INFORMATION) + + ArrayList<String> linesSkipped = fileHandler.getReadLinesSkipped(); + DialogBoxBuilder dialogBoxBuilder = new DialogBoxBuilder(INFORMATION) .addTitle("Army imported") - .addMessage("Army was successfully imported.\n" + - "In the process " + fileHandler.getReadLinesSkipped() + " units were corrupted") - .build().showAndWait(); + .addMessage("Army was successfully imported."); + + if (linesSkipped.size() > 0) { + Path currentPath = Paths.get("").toAbsolutePath(); + Path imagePath = Paths.get(currentPath.toString(), "src","main","resources","icons", "corrupt-file.png"); + dialogBoxBuilder.addMessage( + dialogBoxBuilder.getMessage() + "\n" + + "In the process " + linesSkipped.size() + " units were corrupted.\n" + + "Expand the \"Show details\" button to see all corrupted lines." + ) + .addImage(imagePath.toString()) + .addListMessage(linesSkipped); + } + dialogBoxBuilder.build().showAndWait(); + + } catch (FileExtensionException e) { new DialogBoxBuilder(ERROR) .addTitle("File is not supported") @@ -103,7 +118,10 @@ public class BattleController implements Initializable { } catch (IOException e) { new DialogBoxBuilder(ERROR) .addHeader("File could not be loaded") - .addMessage(DialogBoxBuilder.recurringErrorMessage) + .build().showAndWait(); + } catch (IllegalArgumentException e) { + new DialogBoxBuilder(ERROR) + .addMessage(e.getMessage()) .build().showAndWait(); } scores[0] = 0; @@ -233,32 +251,6 @@ public class BattleController implements Initializable { armyUnitListViews.get(armyNumber).getItems().addAll(army.getAllUnits()); } - /** - * Sets a selection model that is activated when - * the list view receives a double click. - * - * @param armyNumber int - the number of the list view - * which is to be updated and corresponds to the army shown. - */ - public void setDoubleClickSelectionModeOnListView(int armyNumber) { - armyUnitListViews.get(armyNumber).setOnMouseClicked(click -> { - if (click.getButton() == MouseButton.PRIMARY && click.getClickCount() == 2) { - Unit selectedUnit = armyUnitListViews.get(armyNumber).getSelectionModel().getSelectedItem(); - if (selectedUnit != null) { - Optional<ButtonType> optional = new DialogBoxBuilder(CONFIRMATION) - .addTitle("Delete unit?") - .addMessage("Are you sure you want to delete this unit?") - .build().showAndWait(); - boolean result = optional.filter(buttonType -> buttonType == ButtonType.OK).isPresent(); - if (result) { - armies[armyNumber].remove(selectedUnit); - displayArmy(armyNumber, armies[armyNumber]); - } - } - } - }); - } - /** * Run when the fxml file is first loaded. * Fills in the tables of information for the armies @@ -286,9 +278,5 @@ public class BattleController implements Initializable { terrainChoiceBox.getItems().clear(); terrainChoiceBox.getItems().addAll(Terrain.PLAINS, Terrain.FOREST, Terrain.HILL); terrainChoiceBox.setValue(Terrain.PLAINS); - - setDoubleClickSelectionModeOnListView(0); - setDoubleClickSelectionModeOnListView(1); - } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.java b/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.java index 8a800b1..0375929 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBox.java @@ -2,6 +2,7 @@ package edu.ntnu.idatt2001.carljgu.client.dialogs; import javafx.scene.control.Alert; import javafx.scene.control.ButtonType; +import javafx.scene.control.ListView; import javafx.scene.image.ImageView; import javafx.stage.Stage; @@ -10,7 +11,7 @@ import javafx.stage.Stage; * a builder to build a dialog box. * * @author Carl Gützkow - * @version 1.1 17.04.2022 + * @version 1.2 01.05.2022 */ public class DialogBox extends Alert { @@ -24,7 +25,7 @@ public class DialogBox extends Alert { * the default image is used. Otherwise, this * constructor will add image from resource folder. * - * @param builder + * @param builder DialogBoxBuilder - a builder class to configure a dialog box */ public DialogBox(DialogBoxBuilder builder) { super(builder.getAlertType()); @@ -35,11 +36,17 @@ public class DialogBox extends Alert { if (builder.getAlertType() == AlertType.NONE) { this.getDialogPane().getButtonTypes().add(ButtonType.OK); } + if (builder.getImage() != null) { - this.setGraphic(new ImageView(builder.getImage())); Stage stage = (Stage) this.getDialogPane().getScene().getWindow(); stage.getIcons().add(builder.getImage()); + this.setGraphic(new ImageView(builder.getImage())); } - } + if (builder.getListMessages() != null) { + ListView<String> list = new ListView<>(); + list.getItems().addAll(builder.getListMessages()); + getDialogPane().setExpandableContent(list); + } + } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.java b/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.java index dd51f27..84bab52 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/client/dialogs/DialogBoxBuilder.java @@ -3,19 +3,21 @@ package edu.ntnu.idatt2001.carljgu.client.dialogs; import javafx.scene.control.Alert.AlertType; import javafx.scene.image.Image; +import java.util.ArrayList; + /** - * A builder class which simplifies the - * DialogBox class. Using a builder makes it easy + * A builder class which simplifies the process of + * building a DialogBox object. Using a builder makes it easy * to create complex dialogs while still avoiding * the telescoping constructors problem. * It also makes it easier to add attributes in the future. * * @author Carl Gützkow - * @version 1.1 17.04.2022 + * @version 1.2 01.05.2022 */ public class DialogBoxBuilder { - public static final String recurringErrorMessage = + public static final String recurringDialogMessage = "If this a recurring and unsolvable event, please contact the creator of this program."; private AlertType alertType; @@ -23,6 +25,7 @@ public class DialogBoxBuilder { private String header; private String message; private Image image; + private ArrayList<String> listMessages; /** * Instantiates a new dialog box builder. @@ -35,7 +38,7 @@ public class DialogBoxBuilder { public DialogBoxBuilder(AlertType alertType) { this.alertType = alertType; this.title = alertType.name(); - this.message = recurringErrorMessage; + this.message = recurringDialogMessage; } /** @@ -93,7 +96,18 @@ public class DialogBoxBuilder { * @return dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations. */ public DialogBoxBuilder addImage(String imageName) { - this.image = new Image(imageName); + this.image = new Image(imageName, 50 ,50, false, false); + return this; + } + + /** + * Adds a list message for the dialog box. + * + * @param listMessages - ArrayList - the dialog box' list of messages + * @return dialogBoxBuilder - DialogBoxBuilder - returned to add further configurations. + */ + public DialogBoxBuilder addListMessage(ArrayList<String> listMessages) { + this.listMessages = listMessages; return this; } @@ -135,11 +149,20 @@ public class DialogBoxBuilder { } /** - * Gets the image for the dialog box- + * Gets the image for the dialog box. * * @return image - Image - the dialog box' icon and image */ public Image getImage() { return image; } + + /** + * Gets the list message for the dialog box. + * + * @return listMessages - ArrayList - the dialog box' list of messages + */ + public ArrayList<String> getListMessages() { + return listMessages; + } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/Army.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/Army.java index 46f057e..7a1d961 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/Army.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/Army.java @@ -30,7 +30,7 @@ public class Army { * Used if a list of units already exists. * * @param name String - the name of the army. - * @param units ArrayList<Unit> - the units of the army. + * @param units ArrayList - the units of the army. * @throws IllegalArgumentException thrown if name is not valid. */ public Army(String name, ArrayList<Unit> units) throws IllegalArgumentException { @@ -73,7 +73,7 @@ public class Army { * Iterates over units and adds them if * they do not exist from before. * - * @param units ArrayList<Unit> - a list of units. + * @param units ArrayList - a list of units. */ public void addUnits(ArrayList<Unit> units) { for (Unit unit : units) { @@ -102,7 +102,7 @@ public class Army { /** * Gets all units. * - * @return units - ArrayList<Unit> - a list of units. + * @return units - ArrayList - a list of units. */ public ArrayList<Unit> getAllUnits() { return units; diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/Unit.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/Unit.java index 517eeb7..c4c5074 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/Unit.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/Unit.java @@ -139,13 +139,4 @@ public abstract class Unit { * @return the resist bonus */ public abstract int getResistBonus(Terrain terrain); - - /** - * Returns a deep copy of - * the object. - * Abstract method that is to defined in subclasses. - * - * @return unit - Unit - a deep copy of the unit - */ - public abstract Unit deepCopyUnit(); } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.java index abe3588..f712df9 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CavalryUnit.java @@ -9,7 +9,7 @@ import edu.ntnu.idatt2001.carljgu.units.Unit; * the superclass. * * @author Carl Gützkow - * @version 1.3 09.04.2022 + * @version 1.4 01.05.2022 */ public class CavalryUnit extends Unit { @@ -18,6 +18,8 @@ public class CavalryUnit extends Unit { for structure and simplification if they are to be changed. Constant meleeAttackBonus is used to calculate attack bonus. Constant resistBonus is used to return resist bonus. + Constant plains_bonus is the bonus for attacking in the plains terrain. + Constant forest_bonus is the resulting resist bonus when attacking in a forest Integer usedAttackBonus is the variable that is to be used for calculating attack bonus. In the method getAttackBonus this variable changes the first time it is run and therefore @@ -88,16 +90,4 @@ public class CavalryUnit extends Unit { public int getResistBonus(Terrain terrain) { return (terrain == Terrain.FOREST) ? FOREST_BONUS : RESIST_BONUS; } - - /** - * Overrides the abstract method deepCopyUnit from Unit. - * Returns a deep copy of - * the object. - * - * @return cavalryUnit - Unit - a deep copy of the unit - */ - @Override - public Unit deepCopyUnit() { - return new CavalryUnit(this.getName(), this.getHealth(), this.getAttack(), this.getArmor()); - } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.java index ccbe8bf..25aea43 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/CommanderUnit.java @@ -1,14 +1,12 @@ package edu.ntnu.idatt2001.carljgu.units.specialized; -import edu.ntnu.idatt2001.carljgu.units.Unit; - /** * Class CommanderUnit that inherits from CavalryUnit. * CommanderUnit objects does not implement methods from * the superclass Unit as they are defined in CavalryUnit. * * @author Carl Gützkow - * @version 1.3 09.04.2022 + * @version 1.4 01.05.2022 */ public class CommanderUnit extends CavalryUnit { @@ -38,16 +36,4 @@ public class CommanderUnit extends CavalryUnit { public CommanderUnit(String name, int health) { super(name, health, 25, 15); } - - /** - * Overrides the abstract method deepCopyUnit from Unit. - * Returns a deep copy of - * the object. - * - * @return commanderUnit - Unit - a deep copy of the unit - */ - @Override - public Unit deepCopyUnit() { - return new CommanderUnit(this.getName(), this.getHealth(), this.getAttack(), this.getArmor()); - } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.java index 4555383..9ade0e7 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/InfantryUnit.java @@ -9,7 +9,7 @@ import edu.ntnu.idatt2001.carljgu.units.Unit; * the superclass. * * @author Carl Gützkow - * @version 1.3 09.04.2022 + * @version 1.4 01.05.2022 */ public class InfantryUnit extends Unit { @@ -18,6 +18,7 @@ public class InfantryUnit extends Unit { for structure and simplification if they are to be changed. Constant attackBonus is the attack bonus for the object's lifetime. Constant resistBonus is the resistance bonus for the object's lifetime. + Constant forest_bonus is a bonus for attacking and defending in a forest. */ private final int ATTACK_BONUS = 2; private final int RESIST_BONUS = 1; @@ -72,18 +73,6 @@ public class InfantryUnit extends Unit { */ @Override public int getResistBonus(Terrain terrain) { - return (terrain == Terrain.FOREST) ? RESIST_BONUS + FOREST_BONUS : ATTACK_BONUS; - } - - /** - * Overrides the abstract method deepCopyUnit from Unit. - * Returns a deep copy of - * the object. - * - * @return infantryUunit - Unit - a deep copy of the unit - */ - @Override - public Unit deepCopyUnit() { - return new InfantryUnit(this.getName(), this.getHealth(), this.getAttack(), this.getArmor()); + return (terrain == Terrain.FOREST) ? RESIST_BONUS + FOREST_BONUS : RESIST_BONUS; } } diff --git a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.java b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.java index 96675c6..01f9dc9 100644 --- a/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.java +++ b/src/main/java/edu/ntnu/idatt2001/carljgu/units/specialized/RangedUnit.java @@ -9,21 +9,23 @@ import edu.ntnu.idatt2001.carljgu.units.Unit; * the superclass. * * @author Carl Gützkow - * @version 1.3 09.04.2022 + * @version 1.4 01.05.2022 */ public class RangedUnit extends Unit { /* - Constants are defined here - for structure and simplification if they are to be changed. - Constant attackBonus is the attack bonus for the object's lifetime. - Constant initialResistBonus is the first resistance bonus. - Constant finalResistBonus is the default resistance bonus after a number - of times resisted. - Integer timesResisted is used to calculate the resistance bonus. - In the method getResistBonus this variable increases for each time the - method is called. Therefore, it can not be a constant. - */ + Constants are defined here + for structure and simplification if they are to be changed. + Constant attackBonus is the attack bonus for the object's lifetime. + Constant initialResistBonus is the first resistance bonus. + Constant finalResistBonus is the default resistance bonus after a number + of times resisted. + Constant hill_bonus is a bonus for an attack on a hill + Constant forest_penalty is a penalty for an attack in the forest. + Integer timesResisted is used to calculate the resistance bonus. + In the method getResistBonus this variable increases for each time the + method is called. Therefore, it can not be a constant. + */ private final int ATTACK_BONUS = 3; private final int INITIAL_RESIST_BONUS = 6; private final int FINAL_RESIST_BONUS = 2; @@ -94,16 +96,4 @@ public class RangedUnit extends Unit { timesResisted++; return resistBonus; } - - /** - * Overrides the abstract method deepCopyUnit from Unit. - * Returns a deep copy of - * the object. - * - * @return rangedUnit - Unit - a deep copy of the unit - */ - @Override - public Unit deepCopyUnit() { - return new RangedUnit(this.getName(), this.getHealth(), this.getAttack(), this.getArmor()); - } } diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java index 98e2cde..f848caa 100644 --- a/src/main/java/module-info.java +++ b/src/main/java/module-info.java @@ -4,10 +4,10 @@ module edu.ntnu.idatt2001.carljgu.client { requires javafx.graphics; opens edu.ntnu.idatt2001.carljgu.client to javafx.fxml; + opens edu.ntnu.idatt2001.carljgu.client.dialogs to javafx.fxml; exports edu.ntnu.idatt2001.carljgu.client ; exports edu.ntnu.idatt2001.carljgu.units ; exports edu.ntnu.idatt2001.carljgu ; exports edu.ntnu.idatt2001.carljgu.battle; exports edu.ntnu.idatt2001.carljgu.client.dialogs; - opens edu.ntnu.idatt2001.carljgu.client.dialogs to javafx.fxml; } diff --git a/src/main/resources/icons/corrupt-file.png b/src/main/resources/icons/corrupt-file.png new file mode 100644 index 0000000000000000000000000000000000000000..5f72b53b20a17a7f289c2c19efd4feed3ab45207 GIT binary patch literal 17416 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 Z{GWG)=8e>Fg%#jT>FMg{vd$@?2>|}?*tP%w literal 0 HcmV?d00001 diff --git a/src/main/resources/wargames-logo.png b/src/main/resources/icons/wargames-logo.png similarity index 100% rename from src/main/resources/wargames-logo.png rename to src/main/resources/icons/wargames-logo.png diff --git a/src/main/resources/stylesheet.css b/src/main/resources/stylesheet.css index ea7f51a..381f959 100644 --- a/src/main/resources/stylesheet.css +++ b/src/main/resources/stylesheet.css @@ -1,9 +1,4 @@ .root{ - -fx-font-size: 20pt; + -fx-font-size: 20px; -fx-font-family: "Arial"; } - -.vbox { - -fx-background-color: #98bb84; - -fx-border-color: red; -} \ No newline at end of file diff --git a/src/main/resources/wargames.fxml b/src/main/resources/wargames.fxml index 8a46e11..29e0686 100644 --- a/src/main/resources/wargames.fxml +++ b/src/main/resources/wargames.fxml @@ -28,7 +28,7 @@ <Insets bottom="10.0" top="10.0" /> </VBox.margin> </Text> - <Text fx:id="armyOneToString" strokeType="OUTSIDE" strokeWidth="0.0" text="Import an army" textAlignment="CENTER" wrappingWidth="301.96319580078125" VBox.vgrow="ALWAYS"> + <Text fx:id="armyOneToString" strokeType="OUTSIDE" strokeWidth="0.0" text="Import an army" textAlignment="CENTER" wrappingWidth="250" VBox.vgrow="ALWAYS"> <font> <Font name="Arial" size="20.0" /> </font> @@ -52,7 +52,14 @@ </HBox.margin> </Button> </HBox> - <Text fx:id="armyOneImportPath" strokeType="OUTSIDE" strokeWidth="0.0" /> + <Text fx:id="armyOneImportPath" strokeType="OUTSIDE" VBox.vgrow="ALWAYS" strokeWidth="0.0" wrappingWidth="250"> + <font> + <Font name="Arial" size="18.0" /> + </font> + <VBox.margin> + <Insets bottom="10.0" /> + </VBox.margin> + </Text> <TitledPane animated="false" collapsible="false" maxHeight="500.0" text="Units" VBox.vgrow="ALWAYS"> <font> <Font name="Arial" size="18.0" /> @@ -164,7 +171,7 @@ <Insets bottom="10.0" top="10.0" /> </VBox.margin> </Text> - <Text fx:id="armyTwoToString" strokeType="OUTSIDE" strokeWidth="0.0" text="Import an army" textAlignment="CENTER" wrappingWidth="301.96319580078125" VBox.vgrow="ALWAYS"> + <Text fx:id="armyTwoToString" strokeType="OUTSIDE" strokeWidth="0.0" text="Import an army" textAlignment="CENTER" wrappingWidth="250" VBox.vgrow="ALWAYS"> <font> <Font name="Arial" size="20.0" /> </font> @@ -188,7 +195,14 @@ </HBox.margin> </Button> </HBox> - <Text fx:id="armyTwoImportPath" strokeType="OUTSIDE" strokeWidth="0.0" VBox.vgrow="ALWAYS" /> + <Text fx:id="armyTwoImportPath" strokeType="OUTSIDE" VBox.vgrow="ALWAYS" strokeWidth="0.0" wrappingWidth="250"> + <font> + <Font name="Arial" size="18.0" /> + </font> + <VBox.margin> + <Insets bottom="10.0" /> + </VBox.margin> + </Text> <TitledPane animated="false" collapsible="false" maxHeight="500.0" text="Units" VBox.vgrow="ALWAYS"> <font> <Font name="Arial" size="18.0" /> diff --git a/src/test/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandlerTest.java b/src/test/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandlerTest.java index 5176f18..5a57b6c 100644 --- a/src/test/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandlerTest.java +++ b/src/test/java/edu/ntnu/idatt2001/carljgu/ArmyFileHandlerTest.java @@ -44,7 +44,7 @@ public class ArmyFileHandlerTest { } @Nested - public class write_army_to_file { + public class Write_army_to_file { @Test public void writing_to_file_does_not_cause_error_and_file_path_is_valid() { @@ -67,21 +67,51 @@ public class ArmyFileHandlerTest { assertThrows(FileExtensionException.class, () -> fileHandler.writeToFile(army, filePath)); } + + @Test + public void army_read_from_file_is_equal_to_army_written() { + /* Does not use army's equals method as the unit list will be different */ + ArmyFileHandler fileHandler = new ArmyFileHandler(); + + String filePath = tempDir.resolve("valid-name.csv").toString(); + Army readArmy = new Army("empty-army"); + + try { + fileHandler.writeToFile(army, filePath); + readArmy = fileHandler.readArmyFromFile(filePath); + } catch (IOException e) { + fail(); + } + + assertEquals(readArmy.getAllUnits().size(), army.getAllUnits().size()); + assertEquals(readArmy.getName(), army.getName()); + } } @Nested - public class read_army_from_file { + public class Read_invalid_army_values_from_file { + + String filePath; + + @BeforeEach + public void write_valid_army_to_file() { + ArmyFileHandler fileHandler = new ArmyFileHandler(); + filePath = tempDir.resolve("valid-name.csv").toString(); + try { + fileHandler.writeToFile(army, filePath); + } catch (IOException e) { + fail(); + } + } @Test public void file_handler_reads_forty_one_units_from_file_when_several_extra_lines_are_not_valid_units_but_one_is() { ArmyFileHandler fileHandler = new ArmyFileHandler(); - String filePath = tempDir.resolve("valid-name.csv").toString(); int unitSize = army.getAllUnits().size(); int rangedUnitSize = army.getRangedUnits().size(); try (FileWriter fileWriter = new FileWriter(filePath, true)) { - fileHandler.writeToFile(army, filePath); fileWriter.write("InfantryUnit,unit,2.0\n"); fileWriter.write("InfantryUnit,unit,NaN\n"); fileWriter.write("RangedUnit,infantry,10\n"); @@ -96,10 +126,30 @@ public class ArmyFileHandlerTest { assertEquals(unitSize + 1, armyFromFile.getAllUnits().size()); assertEquals(rangedUnitSize + 1, armyFromFile.getRangedUnits().size()); - assertEquals(4, fileHandler.getReadLinesSkipped()); + assertEquals(4, fileHandler.getReadLinesSkipped().size()); } catch (IOException e) { fail(); } } + + @Test + public void line_skipped_when_line_can_not_be_seperated() { + ArmyFileHandler fileHandler = new ArmyFileHandler(); + + try (FileWriter fileWriter = new FileWriter(filePath, true)) { + fileWriter.write("InfantryUnit\n"); + } catch (IOException e) { + fail(); + } + + try { + fileHandler.readArmyFromFile(filePath); + } catch (IOException e) { + fail(); + } + + assertEquals(1, fileHandler.getReadLinesSkipped().size()); + assertEquals("Line \"InfantryUnit\" skipped because it did not contain enough information", fileHandler.getReadLinesSkipped().get(0)); + } } } diff --git a/src/test/java/edu/ntnu/idatt2001/carljgu/WarUnitTest.java b/src/test/java/edu/ntnu/idatt2001/carljgu/WarUnitTest.java index 7cb11ec..bba713d 100644 --- a/src/test/java/edu/ntnu/idatt2001/carljgu/WarUnitTest.java +++ b/src/test/java/edu/ntnu/idatt2001/carljgu/WarUnitTest.java @@ -88,11 +88,6 @@ public class WarUnitTest { public int getResistBonus(Terrain terrain) { return 0; } - - @Override - public Unit deepCopyUnit() { - return null; - } }; defender = @@ -106,11 +101,6 @@ public class WarUnitTest { public int getResistBonus(Terrain terrain) { return 0; } - - @Override - public Unit deepCopyUnit() { - return null; - } }; } diff --git a/wargames.bmpr b/wargames.bmpr index 093d72fd34c3bed29bf12ce003c9dee966f7dec4..2a5bfb7d1093fe21d3a04eda179f44d287e3829e 100644 GIT binary patch delta 50586 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 Lw)8KHs4@otV=mi& delta 21525 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%0D7h%tx6mZO%{McwJjmB4tSa2lF*VYtD6=>{J3S)5 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�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 -- GitLab