Getting sud files working

This commit is contained in:
Jamie Mac 2022-10-10 10:05:16 +01:00
parent bb4720b8b7
commit f2d334dec2
54 changed files with 16031 additions and 594 deletions

View File

@ -6,8 +6,9 @@
<attribute name="maven.pomderived" value="true"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/Java 17">
<attributes> <attributes>
<attribute name="module" value="true"/>
<attribute name="maven.pomderived" value="true"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
@ -16,6 +17,5 @@
<attribute name="maven.pomderived" value="true"/> <attribute name="maven.pomderived" value="true"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry kind="lib" path="/X3/src/org"/>
<classpathentry kind="output" path="target/classes"/> <classpathentry kind="output" path="target/classes"/>
</classpath> </classpath>

View File

@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
<stringAttribute key="M2_GOALS" value="package shade:shade"/>
<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
<booleanAttribute key="M2_OFFLINE" value="false"/>
<stringAttribute key="M2_PROFILES" value=""/>
<listAttribute key="M2_PROPERTIES"/>
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
<booleanAttribute key="M2_SKIP_TESTS" value="true"/>
<intAttribute key="M2_THREADS" value="1"/>
<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
<stringAttribute key="M2_USER_SETTINGS" value=""/>
<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_ATTR_USE_ARGFILE" value="false"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-13/"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-mx6000m&#13;&#10;-Djava.library.path=lib64"/>
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:/PamGuard Main DG}"/>
</launchConfiguration>

View File

@ -4,7 +4,7 @@
<groupId>org.pamguard</groupId> <groupId>org.pamguard</groupId>
<artifactId>Pamguard</artifactId> <artifactId>Pamguard</artifactId>
<name>Pamguard Java12+</name> <name>Pamguard Java12+</name>
<version>2.02.04a</version> <version>2.02.04ac</version>
<description>Pamguard for Java 12+, using Maven to control dependcies</description> <description>Pamguard for Java 12+, using Maven to control dependcies</description>
<url>www.pamguard.org</url> <url>www.pamguard.org</url>
<organization> <organization>
@ -74,9 +74,9 @@
<artifactId>javafx-maven-plugin</artifactId> <artifactId>javafx-maven-plugin</artifactId>
<version>0.0.6</version> <version>0.0.6</version>
<configuration> <configuration>
<source>16</source> <source>17</source>
<target>16</target> <target>17</target>
<release>16</release> <release>17</release>
</configuration> </configuration>
</plugin> </plugin>
<plugin> <plugin>
@ -163,14 +163,6 @@
<name>Unidata netCDF</name> <name>Unidata netCDF</name>
<url>https://artifacts.unidata.ucar.edu/repository/unidata-all/</url> <url>https://artifacts.unidata.ucar.edu/repository/unidata-all/</url>
</repository> </repository>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>geomajas</id>
<name>geomajas</name>
<url>http://maven.geomajas.org/</url>
</repository>
<repository> <repository>
<snapshots> <snapshots>
<enabled>false</enabled> <enabled>false</enabled>

14
pom.xml
View File

@ -76,9 +76,9 @@
<artifactId>javafx-maven-plugin</artifactId> <artifactId>javafx-maven-plugin</artifactId>
<version>0.0.6</version> <version>0.0.6</version>
<configuration> <configuration>
<source>16</source> <source>17</source>
<target>16</target> <target>17</target>
<release>16</release> <release>17</release>
</configuration> </configuration>
</plugin> </plugin>
@ -777,7 +777,7 @@
<dependency> <dependency>
<groupId>pamguard.org</groupId> <groupId>pamguard.org</groupId>
<artifactId>x3</artifactId> <artifactId>x3</artifactId>
<version>2.0.0</version> <version>2.1.0</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/it.sauronsoftware/jave --> <!-- https://mvnrepository.com/artifact/it.sauronsoftware/jave -->
@ -826,6 +826,12 @@
<version>1.6.5-1</version> <version>1.6.5-1</version>
</dependency> </dependency>
<dependency>
<groupId>io.github.mkpaz</groupId>
<artifactId>atlantafx-base</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -0,0 +1,4 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Fri Aug 14 15:49:24 CEST 2020
x3-1.0.0.pom>=
x3-1.0.0.jar>=

Binary file not shown.

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>pamguard.org</groupId>
<artifactId>x3</artifactId>
<version>1.0.0</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -0,0 +1,4 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Fri Sep 25 10:46:11 CEST 2020
x3-2.0.0.pom>=
x3-2.0.0.jar>=

View File

@ -0,0 +1,39 @@
#Fri Jan 14 08:14:25 GMT 2022
repo|file\:///Users/au671271/pamguard/PAMGuard/repo|sources=1632311094649
central|https\://jmachund.jfrog.io/artifactory/jpam2|javadoc=1641807924466
repo|file\:///Users/au671271/git/PAMGuard/repo|javadoc=1642148065400
github|https\://maven.pkg.github.com/macster110/jpam|sources=1642147913185
repo|file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo|sources=1625576160247
icm|http\://maven.icm.edu.pl/artifactory/repo|javadoc=1600971368390
talan|https\://nexus.talanlabs.com/content/repositories/releases/|sources=1642147913185
geomajas|http\://maven.geomajas.org/|javadoc=1642148065400
central|https\://repo.maven.apache.org/maven2|javadoc=1642065819015
bedatadriven|https\://nexus.bedatadriven.com/content/groups/public/|sources=1642147913185
repo|file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo|sources=1602589977893
jpamutils|https\://raw.github.com/macster110/jpam/mvn-repo/|javadoc=1642065819015
icm|http\://maven.icm.edu.pl/artifactory/repo|sources=1600971300139
geomajas|http\://maven.geomajas.org/|sources=1642147913185
central|https\://repo1.maven.org/maven2|sources=1642147913185
central|https\://repo.maven.apache.org/maven2|sources=1642065813019
github|https\://maven.pkg.github.com/macster110/jpam|javadoc=1642148065400
bintray-jerady-maven|https\://dl.bintray.com/jerady/maven|sources=1602589977893
bedatadriven|https\://nexus.bedatadriven.com/content/groups/public/|javadoc=1642148065400
jpamutils|https\://raw.github.com/macster110/jpam/mvn-repo/|sources=1642065813019
my-local-repo|file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars|sources=1600949483388
repo|file\:///Users/au671271/git/PAMGuard/repo|sources=1642147913185
bintray-macster110-jtorch4pam|macster110|https\://dl.bintray.com/macster110/jtorch4pam|javadoc=1642148065400
jdl4pam|https\://raw.github.com/macster110/jpam/mvn-repo/|javadoc=1642065819015
unidata-all|https\://artifacts.unidata.ucar.edu/repository/unidata-all/|sources=1642147913185
icm|https\://maven.averbis.com/m2/|sources=1601026887474
bintray-jerady-maven|https\://dl.bintray.com/jerady/maven|javadoc=1602590126606
talan|https\://nexus.talanlabs.com/content/repositories/releases/|javadoc=1642148065400
central|https\://jmachund.jfrog.io/artifactory/jpam2|sources=1641807658592
my-local-repo|file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars|javadoc=1600949605299
unidata-all|https\://artifacts.unidata.ucar.edu/repository/unidata-all/|javadoc=1642148065400
icm|https\://maven.averbis.com/m2/|javadoc=1601027283465
repo|file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo|javadoc=1602590126606
jdl4pam|https\://raw.github.com/macster110/jpam/mvn-repo/|sources=1642065813019
bintray-macster110-jtorch4pam|macster110|https\://dl.bintray.com/macster110/jtorch4pam|sources=1642147913185
repo|file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo|javadoc=1625576167973
repo|file\:///Users/au671271/pamguard/PAMGuard/repo|javadoc=1632313121603
central|https\://repo1.maven.org/maven2|javadoc=1642148065400

View File

@ -0,0 +1,38 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Fri Jan 14 08:14:25 GMT 2022
https\://dl.bintray.com/macster110/jtorch4pam/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.error=
https\://jmachund.jfrog.io/artifactory/jpam2/.lastUpdated=1625576167971
file\:///Users/au671271/pamguard/PAMGuard/repo/.error=
file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo/.lastUpdated=1622023729745
https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1600949601867
file\:///Users/au671271/git/PAMGuard/repo/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1600949603273
https\://maven.averbis.com/m2/.lastUpdated=1601027283464
file\:///Users/au671271/git/PAMGuard/repo/.lastUpdated=1641807924465
https\://raw.github.com/macster110/jpam/mvn-repo/.lastUpdated=1642065819012
file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo/.error=
http\://maven.icm.edu.pl/artifactory/repo/.lastUpdated=1600971368389
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1600949604396
http\://maven.icm.edu.pl/artifactory/repo/.error=
https\://repo1.maven.org/maven2/.error=
@default-github-https\://maven.pkg.github.com/macster110/jpam/.lastUpdated=1642148065399
file\:///Users/au671271/pamguard/PAMGuard/repo/.lastUpdated=1632313121601
https\://repo1.maven.org/maven2/.lastUpdated=1642148065192
https\://dl.bintray.com/jerady/maven/.lastUpdated=1600949602327
http\://maven.geomajas.org/.lastUpdated=1600949604068
https\://nexus.talanlabs.com/content/repositories/releases/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.lastUpdated=1600949601869
https\://repo.maven.apache.org/maven2/.lastUpdated=1600949605299
http\://maven.geomajas.org/.error=
https\://jmachund.jfrog.io/artifactory/jpam2/.error=
https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1600949604877
https\://maven.averbis.com/m2/.error=
https\://repo.maven.apache.org/maven2/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo/.lastUpdated=1602590126603
https\://maven.pkg.github.com/macster110/jpam/.error=Could not transfer artifact pamguard.org\:x3\:jar\:javadoc\:2.0.0 from/to github (https\://maven.pkg.github.com/macster110/jpam)\: Access denied to https\://maven.pkg.github.com/macster110/jpam/pamguard/org/x3/2.0.0/x3-2.0.0-javadoc.jar. Error code 401,
https\://dl.bintray.com/jerady/maven/.error=
https\://raw.github.com/macster110/jpam/mvn-repo/.error=

View File

@ -0,0 +1,38 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Fri Jan 14 08:11:53 GMT 2022
https\://dl.bintray.com/macster110/jtorch4pam/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.error=
https\://jmachund.jfrog.io/artifactory/jpam2/.lastUpdated=1625576160246
file\:///Users/au671271/pamguard/PAMGuard/repo/.error=
file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo/.lastUpdated=1622023729649
https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1600949479758
file\:///Users/au671271/git/PAMGuard/repo/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1600949481209
https\://maven.averbis.com/m2/.lastUpdated=1601026887474
file\:///Users/au671271/git/PAMGuard/repo/.lastUpdated=1641807658590
https\://raw.github.com/macster110/jpam/mvn-repo/.lastUpdated=1642065813017
file\:///Users/au671271/pamguard/PAMGuard_16_mvn/repo/.error=
http\://maven.icm.edu.pl/artifactory/repo/.lastUpdated=1600971300137
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1600949482388
http\://maven.icm.edu.pl/artifactory/repo/.error=
https\://repo1.maven.org/maven2/.error=
@default-github-https\://maven.pkg.github.com/macster110/jpam/.lastUpdated=1642147913184
file\:///Users/au671271/pamguard/PAMGuard/repo/.lastUpdated=1632311094646
https\://repo1.maven.org/maven2/.lastUpdated=1642147912977
https\://dl.bintray.com/jerady/maven/.lastUpdated=1600949480238
http\://maven.geomajas.org/.lastUpdated=1600949482017
https\://nexus.talanlabs.com/content/repositories/releases/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.lastUpdated=1600949479759
https\://repo.maven.apache.org/maven2/.lastUpdated=1600949483387
http\://maven.geomajas.org/.error=
https\://jmachund.jfrog.io/artifactory/jpam2/.error=
https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1600949482866
https\://maven.averbis.com/m2/.error=
https\://repo.maven.apache.org/maven2/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/repo/.lastUpdated=1602589977891
https\://maven.pkg.github.com/macster110/jpam/.error=Could not transfer artifact pamguard.org\:x3\:jar\:sources\:2.0.0 from/to github (https\://maven.pkg.github.com/macster110/jpam)\: Access denied to https\://maven.pkg.github.com/macster110/jpam/pamguard/org/x3/2.0.0/x3-2.0.0-sources.jar. Error code 401,
https\://dl.bintray.com/jerady/maven/.error=
https\://raw.github.com/macster110/jpam/mvn-repo/.error=

View File

@ -0,0 +1,18 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Thu Sep 24 13:58:55 CEST 2020
https\://dl.bintray.com/macster110/jtorch4pam/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.error=
https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1600948677455
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1600948714963
https\://dl.bintray.com/jerady/maven/.lastUpdated=1600948680041
http\://maven.geomajas.org/.lastUpdated=1600948729479
https\://nexus.talanlabs.com/content/repositories/releases/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.lastUpdated=1600948677498
https\://repo.maven.apache.org/maven2/.lastUpdated=1600948686447
http\://maven.geomajas.org/.error=
https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1600948735430
https\://repo.maven.apache.org/maven2/.error=
https\://dl.bintray.com/jerady/maven/.error=
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1600948734692

View File

@ -1 +0,0 @@
851e2c9b153f1686858523e69d78da20

View File

@ -1 +0,0 @@
4d89dd98cf0188bb3bfe4afd74dc427ce23d3a41

View File

@ -0,0 +1,18 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Thu Sep 24 13:57:29 CEST 2020
https\://dl.bintray.com/macster110/jtorch4pam/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.error=
https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1600948647604
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1600948648002
https\://dl.bintray.com/jerady/maven/.lastUpdated=1600948647670
http\://maven.geomajas.org/.lastUpdated=1600948648672
https\://nexus.talanlabs.com/content/repositories/releases/.error=
file\:///Users/au671271/pamguard/PAMGuard_12_mvn/src/jars/.lastUpdated=1600948647606
https\://repo.maven.apache.org/maven2/.lastUpdated=1600948649503
http\://maven.geomajas.org/.error=
https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1600948649324
https\://repo.maven.apache.org/maven2/.error=
https\://dl.bintray.com/jerady/maven/.error=
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1600948648816

View File

@ -1 +0,0 @@
e09a0e45701b683f485aedf1349cab24

View File

@ -1 +0,0 @@
45129eae7b4f9c502cceffe8358fdc7e19ceaa39

View File

@ -0,0 +1,4 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Fri Oct 07 14:40:39 BST 2022
x3-2.1.0.jar>=
x3-2.1.0.pom>=

View File

@ -0,0 +1,13 @@
#Thu Oct 06 15:38:43 BST 2022
bedatadriven|https\://nexus.bedatadriven.com/content/groups/public/|javadoc=1665067123455
repo|file\:///Users/au671271/git/PAMGuard/repo|javadoc=1665067123455
repo|file\:///Users/au671271/git/PAMGuard/repo|sources=1665067040129
talan|https\://nexus.talanlabs.com/content/repositories/releases/|sources=1665067040129
bintray-macster110-jtorch4pam|macster110|https\://dl.bintray.com/macster110/jtorch4pam|javadoc=1665067123455
bedatadriven|https\://nexus.bedatadriven.com/content/groups/public/|sources=1665067040129
unidata-all|https\://artifacts.unidata.ucar.edu/repository/unidata-all/|sources=1665067040129
talan|https\://nexus.talanlabs.com/content/repositories/releases/|javadoc=1665067123455
central|https\://repo1.maven.org/maven2|sources=1665067040129
unidata-all|https\://artifacts.unidata.ucar.edu/repository/unidata-all/|javadoc=1665067123455
bintray-macster110-jtorch4pam|macster110|https\://dl.bintray.com/macster110/jtorch4pam|sources=1665067040129
central|https\://repo1.maven.org/maven2|javadoc=1665067123455

View File

@ -0,0 +1,14 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Thu Oct 06 15:38:43 BST 2022
@default-talan-https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1665067122194
https\://dl.bintray.com/macster110/jtorch4pam/.error=Could not transfer artifact pamguard.org\:x3\:jar\:javadoc\:2.1.0 from/to bintray-macster110-jtorch4pam (https\://dl.bintray.com/macster110/jtorch4pam)\: Remote host terminated the handshake
https\://repo1.maven.org/maven2/.error=
file\:///Users/au671271/git/PAMGuard/repo/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1665067121806
https\://repo1.maven.org/maven2/.lastUpdated=1665067123455
https\://nexus.talanlabs.com/content/repositories/releases/.error=Could not transfer artifact pamguard.org\:x3\:jar\:javadoc\:2.1.0 from/to talan (https\://nexus.talanlabs.com/content/repositories/releases/)\: Access denied to https\://nexus.talanlabs.com/content/repositories/releases/pamguard/org/x3/2.1.0/x3-2.1.0-javadoc.jar. Error code 401, Unauthorized
file\:///Users/au671271/git/PAMGuard/repo/.lastUpdated=1665067120886
4d1f727a0c17e3b21ef2f6654eed0b3113a4db97@default-bintray-macster110-jtorch4pam-https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1665067120883
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1665067122025

View File

@ -0,0 +1,14 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Thu Oct 06 15:37:20 BST 2022
@default-talan-https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1665067039941
https\://dl.bintray.com/macster110/jtorch4pam/.error=Could not transfer artifact pamguard.org\:x3\:jar\:sources\:2.1.0 from/to bintray-macster110-jtorch4pam (https\://dl.bintray.com/macster110/jtorch4pam)\: Remote host terminated the handshake
https\://repo1.maven.org/maven2/.error=
file\:///Users/au671271/git/PAMGuard/repo/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1665067039627
https\://repo1.maven.org/maven2/.lastUpdated=1665067040128
https\://nexus.talanlabs.com/content/repositories/releases/.error=Could not transfer artifact pamguard.org\:x3\:jar\:sources\:2.1.0 from/to talan (https\://nexus.talanlabs.com/content/repositories/releases/)\: Access denied to https\://nexus.talanlabs.com/content/repositories/releases/pamguard/org/x3/2.1.0/x3-2.1.0-sources.jar. Error code 401, Unauthorized
file\:///Users/au671271/git/PAMGuard/repo/.lastUpdated=1665067038933
4d1f727a0c17e3b21ef2f6654eed0b3113a4db97@default-bintray-macster110-jtorch4pam-https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1665067038929
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1665067039782

Binary file not shown.

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>pamguard.org</groupId>
<artifactId>x3</artifactId>
<version>2.1.0</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -0,0 +1,16 @@
#NOTE: This is a Maven Resolver internal implementation file, its format can be changed without prior notice.
#Thu Oct 06 15:51:34 BST 2022
@default-talan-https\://nexus.talanlabs.com/content/repositories/releases/.lastUpdated=1665067894494
https\://dl.bintray.com/macster110/jtorch4pam/.error=Could not transfer artifact pamguard.org\:x3\:pom\:2.1.0 from/to bintray-macster110-jtorch4pam (https\://dl.bintray.com/macster110/jtorch4pam)\: Remote host terminated the handshake
@default-repo-file\://${project.basedir}/repo/.lastUpdated=1665067029837
https\://repo1.maven.org/maven2/.error=
file\:///Users/au671271/git/PAMGuard/repo/.error=
https\://nexus.bedatadriven.com/content/groups/public/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.error=
https\://artifacts.unidata.ucar.edu/repository/unidata-all/.lastUpdated=1665067032579
https\://repo1.maven.org/maven2/.lastUpdated=1665067036872
https\://nexus.talanlabs.com/content/repositories/releases/.error=Could not transfer artifact pamguard.org\:x3\:pom\:2.1.0 from/to talan (https\://nexus.talanlabs.com/content/repositories/releases/)\: Access denied to https\://nexus.talanlabs.com/content/repositories/releases/pamguard/org/x3/2.1.0/x3-2.1.0.pom. Error code 401, Unauthorized
file\://${project.basedir}/repo/.error=Could not transfer artifact pamguard.org\:x3\:pom\:2.1.0 from/to repo (file\://${project.basedir}/repo)\: Repository path /repo does not exist, and cannot be created.
file\:///Users/au671271/git/PAMGuard/repo/.lastUpdated=1665067033714
4d1f727a0c17e3b21ef2f6654eed0b3113a4db97@default-bintray-macster110-jtorch4pam-https\://dl.bintray.com/macster110/jtorch4pam/.lastUpdated=1665067894257
https\://nexus.bedatadriven.com/content/groups/public/.lastUpdated=1665067034011

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>pamguard.org</groupId>
<artifactId>x3</artifactId>
<versioning>
<release>2.0.0</release>
<versions>
<version>2.0.0</version>
</versions>
<lastUpdated>20200929205724</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
47ffb77b88155d037480604e508371ff

View File

@ -1 +0,0 @@
9c238e70383b552aaaf3161eaeee8ed238d90ff8

View File

@ -537,6 +537,7 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
} }
public File getCurrentFile() { public File getCurrentFile() {
System.out.println("fileInputParameters: " + fileInputParameters);
if (fileInputParameters.recentFiles == null) return null; if (fileInputParameters.recentFiles == null) return null;
if (fileInputParameters.recentFiles.size() < 1) return null; if (fileInputParameters.recentFiles.size() < 1) return null;
String fileName = fileInputParameters.recentFiles.get(0); String fileName = fileInputParameters.recentFiles.get(0);
@ -559,8 +560,11 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
public boolean prepareInputFile() { public boolean prepareInputFile() {
File currentFile = getCurrentFile(); File currentFile = getCurrentFile();
// System.out.printf("*********************************** Opening file %s\n", currentFile.getName()); if (currentFile == null) {
if (currentFile == null) return false; System.out.println("The current file was null");
return false;
}
System.out.printf("*********************************** Opening file %s\n", currentFile.getName());
try { try {
@ -645,7 +649,8 @@ public class FileInputSystem extends DaqSystem implements ActionListener, PamSe
String audioFileStr = getCurrentFile()==null? "Null File": getCurrentFile().getAbsolutePath(); String audioFileStr = getCurrentFile()==null? "Null File": getCurrentFile().getAbsolutePath();
System.err.println("FileInputSystem: runFileAnalysis: AudioFilr format is null: " + audioFileStr); System.err.println("FileInputSystem: runFileAnalysis: AudioFile format is null: " + audioFileStr);
return false; return false;
} }

View File

@ -429,6 +429,8 @@ public class FolderInputSystem extends FileInputSystem implements PamSettings{
File aFile = files[0]; File aFile = files[0];
setNewFile(aFile.getAbsolutePath()); setNewFile(aFile.getAbsolutePath());
} }
/* /*
* The file chooser is returning sub classes of File which are not * The file chooser is returning sub classes of File which are not
* serialisable, so we can't use them. We need to convert their * serialisable, so we can't use them. We need to convert their
@ -568,6 +570,7 @@ public class FolderInputSystem extends FileInputSystem implements PamSettings{
@Override @Override
public File getCurrentFile() { public File getCurrentFile() {
//System.out.println("All files: " + allFiles);
if (allFiles != null && allFiles.size() > currentFile) { if (allFiles != null && allFiles.size() > currentFile) {
return allFiles.get(currentFile); return allFiles.get(currentFile);
} }

View File

@ -13,7 +13,6 @@ import Acquisition.FolderInputParameters;
import Acquisition.FolderInputSystem; import Acquisition.FolderInputSystem;
import PamController.PamController; import PamController.PamController;
import PamController.PamFolders; import PamController.PamFolders;
import PamController.SettingsPane;
import PamUtils.PamAudioFileFilter; import PamUtils.PamAudioFileFilter;
import PamUtils.PamCalendar; import PamUtils.PamCalendar;
import PamUtils.worker.PamWorker; import PamUtils.worker.PamWorker;
@ -24,7 +23,6 @@ import javafx.beans.property.SimpleIntegerProperty;
import javafx.beans.property.SimpleStringProperty; import javafx.beans.property.SimpleStringProperty;
import javafx.collections.FXCollections; import javafx.collections.FXCollections;
import javafx.collections.ObservableList; import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Node;
import javafx.scene.control.CheckBox; import javafx.scene.control.CheckBox;
@ -48,7 +46,6 @@ import pamViewFX.fxNodes.PamComboBox;
import pamViewFX.fxNodes.PamHBox; import pamViewFX.fxNodes.PamHBox;
import pamViewFX.fxNodes.PamProgressBar; import pamViewFX.fxNodes.PamProgressBar;
import pamViewFX.fxNodes.PamVBox; import pamViewFX.fxNodes.PamVBox;
import pamViewFX.fxNodes.utilityPanes.PamToggleSwitch;
/** /**
* Pane for the folder input of the sound acquisition. * Pane for the folder input of the sound acquisition.
@ -413,7 +410,7 @@ public class FolderInputPane extends DAQSettingsPane<FolderInputParameters>{
for (int i=0; i<filesArr.length; i++) { for (int i=0; i<filesArr.length; i++) {
filesArr[i] = files.get(i); filesArr[i] = files.get(i);
} }
folderInputSystem.getFolderInputParameters().setSelectedFiles(filesArr); folderInputSystem.getFolderInputParameters().setSelectedFiles(filesArr);
folderInputSystem.makeSelFileList(); folderInputSystem.makeSelFileList();
// folderInputSystem.makeSelFileList(folderInputSystem.getFolderInputParameters().getSelectedFiles()); // folderInputSystem.makeSelFileList(folderInputSystem.getFolderInputParameters().getSelectedFiles());
@ -626,7 +623,7 @@ public class FolderInputPane extends DAQSettingsPane<FolderInputParameters>{
return; return;
} }
System.out.println("File list worker: " + worker ); //System.out.println("File list worker: " + worker );
//must ensure this is on the FX thread //must ensure this is on the FX thread
//Platform.runLater(()->{ //Platform.runLater(()->{
this.progressBar.progressProperty().bind(worker.getPamWorkProgress().getProgressProperty()); this.progressBar.progressProperty().bind(worker.getPamWorkProgress().getProgressProperty());

View File

@ -50,7 +50,7 @@ public class PamAudioSystem {
return new SudAudioFileReader().getAudioInputStream(file); return new SudAudioFileReader().getAudioInputStream(file);
} }
catch (UnsupportedAudioFileException e) { catch (UnsupportedAudioFileException e) {
//e.printStackTrace();
} }
} }
try { try {
@ -58,6 +58,7 @@ public class PamAudioSystem {
} }
catch (Exception e) { catch (Exception e) {
System.out.println("Error in audio file " + file.getName() + ": " + e.getMessage()); System.out.println("Error in audio file " + file.getName() + ": " + e.getMessage());
e.printStackTrace();
return null; return null;
} }
} }
@ -93,10 +94,10 @@ public class PamAudioSystem {
*/ */
private static boolean isSudFile(File file) { private static boolean isSudFile(File file) {
String name = file.getName(); String name = file.getName();
if (name.length() < 5) { if (name.length() < 4) {
return false; return false;
} }
String end = name.substring(name.length()-5).toLowerCase(); String end = name.substring(name.length()-4).toLowerCase();
return (end.equals(".sud")); return (end.equals(".sud"));
} }

View File

@ -2,6 +2,7 @@ package Acquisition.pamAudio;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import org.pamguard.x3.sud.*;
import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.UnsupportedAudioFileException; import javax.sound.sampled.UnsupportedAudioFileException;
@ -13,11 +14,41 @@ import javax.sound.sampled.UnsupportedAudioFileException;
* *
*/ */
public class SudAudioFileReader { public class SudAudioFileReader {
/**
* The current sud audio input stream
*/
SudAudioInputStream sudAudioInputStream;
/**
* Parameters for opening .sud files.
*/
SudParams sudParams;
public SudAudioFileReader() {
sudParams = new SudParams();
//set up[ the sud params for default. i.e. just read files and
//don't save any decompressed or meta data.
sudParams.saveWav = false;
sudParams.saveMeta = false;
sudParams.zeroPad = true;
}
/**
* Get the audio input streamn.
* @param file - the .sud file to open.
* @return the sud AudioStream.
* @throws UnsupportedAudioFileException
* @throws IOException
*/
public AudioInputStream getAudioInputStream(File file) throws UnsupportedAudioFileException, IOException { public AudioInputStream getAudioInputStream(File file) throws UnsupportedAudioFileException, IOException {
// TODO Auto-generated method stub try {
return null; sudAudioInputStream = SudAudioInputStream.openInputStream(file, sudParams, false);
} catch (Exception e) {
e.printStackTrace();
}
return sudAudioInputStream;
} }
} }

View File

@ -536,7 +536,8 @@ public class PamSettingManager {
"This could occur if the psf file location is in a read-only folder, or the filename is " + "This could occur if the psf file location is in a read-only folder, or the filename is " +
"invalid. Please check and try again."; "invalid. Please check and try again.";
String help = null; String help = null;
int ans = WarnOnce.showWarning(PamController.getInstance().getGuiFrameManager().getFrame(0), title, msg, WarnOnce.WARNING_MESSAGE, help); //Let the warning dialog class choose GUI frame or get a class cast exception if closing PG with different GUI
int ans = WarnOnce.showWarning( title, msg, WarnOnce.WARNING_MESSAGE, help);
} }
} }
/** /**

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,935 @@
{
-color-dark: #010409;
-color-light: #ffffff;
-color-base-0: #f0f6fc;
-color-base-1: #c9d1d9;
-color-base-2: #b1bac4;
-color-base-3: #8b949e;
-color-base-4: #6e7681;
-color-base-5: #484f58;
-color-base-6: #30363d;
-color-base-7: #21262d;
-color-base-8: #161b22;
-color-base-9: #0d1117;
-color-accent-0: #cae8ff;
-color-accent-1: #a5d6ff;
-color-accent-2: #79c0ff;
-color-accent-3: #58a6ff;
-color-accent-4: #388bfd;
-color-accent-5: #1f6feb;
-color-accent-6: #1158c7;
-color-accent-7: #0d419d;
-color-accent-8: #0c2d6b;
-color-accent-9: #051d4d;
-color-success-0: #aff5b4;
-color-success-1: #7ee787;
-color-success-2: #56d364;
-color-success-3: #3fb950;
-color-success-4: #2ea043;
-color-success-5: #238636;
-color-success-6: #196c2e;
-color-success-7: #0f5323;
-color-success-8: #033a16;
-color-success-9: #04260f;
-color-warning-0: #f8e3a1;
-color-warning-1: #f2cc60;
-color-warning-2: #e3b341;
-color-warning-3: #d29922;
-color-warning-4: #bb8009;
-color-warning-5: #9e6a03;
-color-warning-6: #845306;
-color-warning-7: #693e00;
-color-warning-8: #4b2900;
-color-warning-9: #341a00;
-color-danger-0: #ffdcd7;
-color-danger-1: #ffc1ba;
-color-danger-2: #ffa198;
-color-danger-3: #ff7b72;
-color-danger-4: #f85149;
-color-danger-5: #da3633;
-color-danger-6: #b62324;
-color-danger-7: #8e1519;
-color-danger-8: #67060c;
-color-danger-9: #490202;
-color-fg-default: #c9d1d9;
-color-fg-muted: #8b949e;
-color-fg-subtle: #6e7681;
-color-fg-emphasis: #ffffff;
-color-bg-default: #0d1117;
-color-bg-overlay: #0d1117;
-color-bg-subtle: #161b22;
-color-bg-inset: #010409;
-color-border-default: #30363d;
-color-border-muted: #21262d;
-color-border-subtle: rgba(240, 246, 252, 0.1);
-color-shadow-default: #010409;
-color-neutral-emphasis-plus: #6e7681;
-color-neutral-emphasis: #6e7681;
-color-neutral-muted: rgba(110, 118, 129, 0.4);
-color-neutral-subtle: rgba(110, 118, 129, 0.1);
-color-accent-fg: #58a6ff;
-color-accent-emphasis: #1f6feb;
-color-accent-muted: rgba(56, 139, 253, 0.4);
-color-accent-subtle: rgba(56, 139, 253, 0.15);
-color-warning-fg: #d29922;
-color-warning-emphasis: #9e6a03;
-color-warning-muted: rgba(187, 128, 9, 0.4);
-color-warning-subtle: rgba(187, 128, 9, 0.15);
-color-success-fg: #3fb950;
-color-success-emphasis: #238636;
-color-success-muted: rgba(46, 160, 67, 0.4);
-color-success-subtle: rgba(46, 160, 67, 0.15);
-color-danger-fg: #f85149;
-color-danger-emphasis: #da3633;
-color-danger-muted: rgba(248, 81, 73, 0.4);
-color-danger-subtle: rgba(248, 81, 73, 0.15);
-color-chart-1: #f3622d;
-color-chart-2: #fba71b;
-color-chart-3: #57b757;
-color-chart-4: #41a9c9;
-color-chart-5: #4258c9;
-color-chart-6: #9a42c8;
-color-chart-7: #c84164;
-color-chart-8: #888888;
-color-chart-1-alpha70: rgba(243, 98, 45, 0.7);
-color-chart-2-alpha70: rgba(251, 167, 27, 0.7);
-color-chart-3-alpha70: rgba(87, 183, 87, 0.7);
-color-chart-4-alpha70: rgba(65, 169, 201, 0.7);
-color-chart-5-alpha70: rgba(66, 88, 201, 0.7);
-color-chart-6-alpha70: rgba(154, 66, 200, 0.7);
-color-chart-7-alpha70: rgba(200, 65, 100, 0.7);
-color-chart-8-alpha70: rgba(136, 136, 136, 0.7);
-color-chart-1-alpha20: rgba(243, 98, 45, 0.2);
-color-chart-2-alpha20: rgba(251, 167, 27, 0.2);
-color-chart-3-alpha20: rgba(87, 183, 87, 0.2);
-color-chart-4-alpha20: rgba(65, 169, 201, 0.2);
-color-chart-5-alpha20: rgba(66, 88, 201, 0.2);
-color-chart-6-alpha20: rgba(154, 66, 200, 0.2);
-color-chart-7-alpha20: rgba(200, 65, 100, 0.2);
-color-chart-8-alpha20: rgba(136, 136, 136, 0.2);
-fx-pambackground: rgba(238,238,238);
-fx-darkbackground: -color-bg-default;
-fx-darkbackground-trans: rgba(13, 17, 23,0.90);
-fx-highlight: -color-base-6;
-fx-highlight_border: -color-button-fg;
-fx-text: -color-fg-default;
-fx-border_col: -color-border-default;
-fx-icon_col: -color-fg-default;
}
.root {
-fx-background-color:-fx-darkbackground;
-fx-font-size: 12px;
-fx-background-radius: inherit;
-fx-background-insets: inherit;
-fx-padding: 5px 5px 5px 5px;
}
/*******************************************************************************
* *
* Panes *
* *
******************************************************************************/
.pane {
-fx-background-color: -fx-darkbackground;
}
.pane-trans{
-fx-background-color: -fx-darkbackground-trans;
}
.pane-opaque {
-fx-background-color: -fx-pambackground;
}
/*for plot panes*/
.pane-plot {
-fx-background-color: -fx-plotbackground;
}
.button {
-color-button-bg: -color-bg-subtle;
-color-button-fg: -color-fg-default;
-color-button-border: -color-border-default;
-color-button-bg-hover: -color-base-6;
-color-button-fg-hover: -color-button-fg;
-color-button-border-hover: -color-button-border;
-color-button-bg-focused: -color-button-bg;
-color-button-fg-focused: -color-button-fg;
-color-button-border-focused: -color-accent-emphasis;
-color-button-bg-pressed: -color-bg-subtle;
-color-button-fg-pressed: -color-button-fg;
-color-button-border-pressed: transparent;
-fx-background-color: -color-button-border, -color-button-bg;
-fx-background-insets: 0, 1px;
-fx-background-radius: 4px;
-fx-graphic-text-gap: 6px;
-fx-text-fill: -color-button-fg;
-fx-alignment: CENTER;
-fx-padding: 8px 12px 8px 12px;
}
.menu-button,
.split-menu-button {
-color-button-bg: -color-bg-subtle;
-color-button-fg: -color-fg-default;
-color-button-border: -color-border-default;
-color-button-bg-hover: -color-base-6;
-color-button-fg-hover: -color-button-fg;
-color-button-border-hover: -color-button-border;
-color-button-bg-focused: -color-button-bg;
-color-button-fg-focused: -color-button-fg;
-color-button-border-focused: -color-accent-emphasis;
-color-button-bg-pressed: -color-bg-subtle;
-color-button-fg-pressed: -color-button-fg;
-color-button-border-pressed: transparent;
-fx-background-color: -color-button-border, -color-button-bg;
-fx-background-insets: 0, 1px;
-fx-background-radius: 4px;
-fx-graphic-text-gap: 6px;
-fx-text-fill: -color-button-fg;
-fx-alignment: CENTER;
-fx-padding: 0;
-fx-alignment: CENTER_LEFT;
}
.menu-button.accent,
.split-menu-button.accent {
-color-button-bg: -color-accent-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-accent-emphasis;
-color-button-bg-hover: -color-accent-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-accent-emphasis;
-color-button-bg-focused: -color-accent-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-accent-emphasis;
-color-button-bg-pressed: -color-accent-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.accent.button-outlined,
.split-menu-button.accent.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-accent-fg;
-color-button-bg-hover: -color-accent-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.accent.flat,
.split-menu-button.accent.flat {
-color-button-fg: -color-accent-fg;
-color-button-bg-hover: -color-accent-subtle;
}
.menu-button.success,
.split-menu-button.success {
-color-button-bg: -color-success-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-success-emphasis;
-color-button-bg-hover: -color-success-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-success-emphasis;
-color-button-bg-focused: -color-success-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-success-emphasis;
-color-button-bg-pressed: -color-success-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.success.button-outlined,
.split-menu-button.success.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-success-fg;
-color-button-bg-hover: -color-success-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.success.flat,
.split-menu-button.success.flat {
-color-button-fg: -color-success-fg;
-color-button-bg-hover: -color-success-subtle;
}
.menu-button.danger,
.split-menu-button.danger {
-color-button-bg: -color-danger-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-danger-emphasis;
-color-button-bg-hover: -color-danger-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-danger-emphasis;
-color-button-bg-focused: -color-danger-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-danger-emphasis;
-color-button-bg-pressed: -color-danger-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.danger.button-outlined,
.split-menu-button.danger.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-danger-fg;
-color-button-bg-hover: -color-danger-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.danger.flat,
.split-menu-button.danger.flat {
-color-button-fg: -color-danger-fg;
-color-button-bg-hover: -color-danger-subtle;
}
.menu-button.flat,
.split-menu-button.flat {
-color-button-bg: transparent;
-color-button-fg: -color-fg-default;
-color-button-border: transparent;
-color-button-bg-hover: -color-bg-subtle;
-color-button-fg-hover: -color-button-fg;
-color-button-border-hover: -color-bg-subtle;
-color-button-bg-focused: -color-button-bg;
-color-button-fg-focused: -color-button-fg;
-color-button-border-focused: -color-button-bg;
-color-button-bg-pressed: -color-button-bg;
-color-button-fg-pressed: -color-button-fg;
-color-button-border-pressed: transparent;
}
.toggle-button {
-color-button-bg: -color-bg-subtle;
-color-button-fg: -color-fg-default;
-color-button-border: -color-border-default;
-color-button-bg-hover: -color-base-6;
-color-button-fg-hover: -color-button-fg;
-color-button-border-hover: -color-button-border;
-color-button-bg-focused: -color-button-bg;
-color-button-fg-focused: -color-button-fg;
-color-button-border-focused: -color-accent-emphasis;
-color-button-bg-pressed: -color-bg-subtle;
-color-button-fg-pressed: -color-button-fg;
-color-button-border-pressed: transparent;
-fx-background-color: -color-button-border, -color-button-bg;
-fx-background-insets: 0, 1px;
-fx-background-radius: 4px;
-fx-graphic-text-gap: 6px;
-fx-text-fill: -color-button-fg;
-fx-alignment: CENTER;
-color-button-bg-selected: -color-accent-emphasis;
-color-button-fg-selected: -color-fg-emphasis;
-fx-padding: 8px 12px 8px 12px;
}
.list-view {
-color-cell-bg: -color-bg-default;
-color-cell-fg: -color-fg-default;
-color-cell-bg-selected: -color-base-6;
-color-cell-fg-selected: -color-fg-default;
-color-cell-bg-odd: -color-bg-subtle;
-color-cell-border: -color-border-default;
-fx-border-color: -color-cell-border;
-fx-border-width: 1px;
-fx-border-radius: 0;
}
.table-view {
-color-cell-bg: -color-bg-default;
-color-cell-fg: -color-fg-default;
-color-cell-bg-selected: -color-base-6;
-color-cell-fg-selected: -color-fg-default;
-color-cell-bg-odd: -color-bg-subtle;
-color-cell-border: -color-border-default;
-fx-border-color: -color-cell-border;
-fx-border-width: 1px;
-fx-border-radius: 0;
-color-header-bg: -color-bg-subtle;
-color-header-fg: -color-fg-default;
}
.titled-pane > .title > .text {
-fx-font-size: 1em;
}
.radio-button {
-fx-background-color: -color-bg-default;
-fx-text-fill: transparent;
-fx-label-padding: 2px 2px 0 6px;
}
.tree-view {
-color-cell-bg: -color-bg-default;
-color-cell-fg: -color-fg-default;
-color-cell-bg-selected: -color-base-6;
-color-cell-fg-selected: -color-fg-default;
-color-cell-bg-odd: -color-bg-subtle;
-color-cell-border: -color-border-default;
-fx-border-color: -color-cell-border;
-fx-border-width: 1px;
-fx-border-radius: 0;
}
.tree-table-view {
-color-cell-bg: -color-bg-default;
-color-cell-fg: -color-fg-default;
-color-cell-bg-selected: -color-base-6;
-color-cell-fg-selected: -color-fg-default;
-color-cell-bg-odd: -color-bg-subtle;
-color-cell-border: -color-border-default;
-fx-border-color: -color-cell-border;
-fx-border-width: 1px;
-fx-border-radius: 0;
-color-header-bg: -color-bg-subtle;
-color-header-fg: -color-fg-default;
}
.list-view:focused > .virtual-flow > .clipped-container > .sheet > .list-cell:filled:selected,
.tree-view:focused > .virtual-flow > .clipped-container > .sheet > .tree-cell:filled:selected,
.table-view:focused > .virtual-flow > .clipped-container > .sheet > .table-row-cell:filled:selected,
.tree-table-view:focused > .virtual-flow > .clipped-container > .sheet > .tree-table-row-cell:filled:selected {
-color-cell-fg: -color-cell-fg-selected;
-fx-background-color: -color-cell-border, -color-cell-bg-selected;
}
/*******************************************************************************
* *
* ikonli icons *
* *
******************************************************************************/
#module-pane .ikonli-font-icon {
-fx-icon-color: black;
}
.titled-pane {
-fx-background-color: -color-bg-default;
-fx-text-fill: -color-fg-default;
-fx-effect: none;
}
/****************************************************************
ScrollPane
****************************************************************/
.scroll-pane {
-fx-background: #0d1117;
-fx-background-color: transparent;
}
.scroll-pane > .viewport {
-fx-background-color: transparent;
}
.scroll-pane-dark {
-fx-background: -fx-darkbackground;
-fx-background-color: -fx-darkbackground;
}
/*******************************************************************************
* *
* Hiding Tab *
* *
******************************************************************************/
#hide-tab {
-fx-background-color: transparent;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-border_col;
}
#show-tab {
-fx-background-color: transparent;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-border_col;
}
#hide-tab-highlight {
-fx-background-color: -fx-highlight;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-highlight_border;
}
/*******************************************************************************
* *
* Button *
* *
******************************************************************************/
/*.button{
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
-fx-background-radius:6;
-fx-padding: 3 6 6 6;
}*/
/*.button:hover{
-fx-background-color: -fx-highlight;
-fx-border-color: -fx-highlight_border;
}
.button:selected{
-fx-border-color: -fx-highlight;
}
*/
/**
* Button for closing a hiding panel. Right indicates bottoms points towards the right, closing a hiding panel
* on the right hand side of the screen. These buttons have a transparent background and rounded corners.
*/
/** top-left, top-right, bottom-right, and bottom-left corners, in that order. */
.close-button-right{
-fx-background-color: transparent;
-fx-background-radius: 0 10 10 0;
-fx-border-color: transparent;
-fx-border-radius: 0 10 10 0;
}
.close-button-left{
-fx-background-color: transparent;
-fx-background-radius: 10 0 0 10;
-fx-border-color: transparent;
-fx-border-radius: 10 0 0 10;
}
.close-button-top{
-fx-background-color: transparent;
-fx-background-radius: 10 10 0 0;
-fx-border-color: transparent;
-fx-border-radius: 10 10 0 0;
}
.close-button-bottom{
-fx-background-color: transparent;
-fx-background-radius: 0 0 10 10;
-fx-border-color: transparent;
-fx-border-radius: 0 0 10 10;
}
.close-button-bottom-trans{
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-background-radius: 0 0 10 10;
-fx-border-radius: 0 0 10 10;
}
.close-button-left-trans{
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-background-radius: 10 0 0 10;
-fx-border-radius: 10 0 0 10;
}
.close-button-right-trans{
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-background-radius: 0 10 10 0;
-fx-border-radius: 0 10 10 0;
}
.square-button{
-fx-background-radius: 0 0 0 0;
-fx-border-radius: 0 0 0 0;
}
.square-button-trans{
-fx-background-color: transparent;
-fx-border-color: transparent;
-fx-background-radius: 0 0 0 0;
-fx-border-radius: 0 0 0 0;
}
.module-hide-top{
-fx-border-color: transparent;
-fx-background-radius: 5 5 0 0;
-fx-border-radius: 5 5 0 0;
}
.module-hide-bottom{
-fx-border-color: transparent;
-fx-background-radius: 0 0 5 5;
-fx-border-radius: 0 0 5 5;
}
.delete-button:hover{
-fx-background-color: rgba(1,0,0,0.7);
}
/*******************************************************************************
* *
* Pop over *
* *
******************************************************************************/
.popover {
-fx-background-color: -fx-darkbackground;
-fx-background-radius: 5;
-fx-border-radius: 5;
}
.popover > .content {
-fx-background-color: -fx-darkbackground;
-fx-background-radius: 5;
-fx-border-radius: 5;
}
.popover > .arrow {
-fx-background-color: -fx-darkbackground;
-fx-background-radius: 5;
-fx-border-radius: 5;
}
/*weird way to do it but need this to colour the arrow*/
.popover > .border {
/*-fx-stroke: linear-gradient(to bottom, rgba(0,0,0, .3), rgba(0, 0, 0, .7)) ;*/
-fx-stroke-width: 0.5;
-fx-fill: -fx-darkbackground; /* instead -fx-background-color */
}
/*******************************************************************************
* *
* SplitMenuButton *
* *
******************************************************************************/
.split-menu-button{
-fx-text-fill: -fx-text;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
}
.split-menu-button:hover{
/*-fx-border-color: -fx-highlight_border;*/
}
.split-menu-button .label {
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-radius: 5;
}
.split-menu-button .label:hover {
-fx-background-color: -fx-highlight;
}
.split-menu-button .arrow-button {
-fx-text-fill: -fx-text;
-fx-background-color: -fx-darkbackground;
-fx-border-radius: 5;
}
.split-menu-button .arrow-button:hover {
-fx-background-color: -fx-highlight;
}
/**********/
.context-menu:show-mnemonics > .mnemonic-underline,
.menu:show-mnemonics > .mnemonic-underline,
.menu-bar:show-mnemonics > .mnemonic-underline,
.menu-item > .label:show-mnemonics > .mnemonic-underline {
-fx-stroke: -color-fg-default;
}
.menu-button .font-icon, .menu-button .ikonli-font-icon,
.split-menu-button .font-icon,
.split-menu-button .ikonli-font-icon {
-fx-icon-color: -color-button-fg;
-fx-fill: -color-button-fg;
}
.menu-button:disabled,
.split-menu-button:disabled {
-fx-opacity: 0.4;
}
.menu-button:show-mnemonics > .mnemonic-underline,
.split-menu-button:show-mnemonics > .mnemonic-underline {
-fx-stroke: -color-button-fg;
}
.menu-button.button-icon,
.split-menu-button.button-icon {
-fx-padding: 8px;
}
.menu-button.button-icon > .text,
.split-menu-button.button-icon > .text {
visibility: hidden;
}
.menu-button.button-circle,
.split-menu-button.button-circle {
-fx-background-radius: 50;
-fx-padding: 6px 8px 6px 8px;
}
.menu-button.button-circle .text,
.split-menu-button.button-circle .text {
visibility: hidden;
}
.menu-button.left-pill,
.split-menu-button.left-pill {
-fx-background-radius: 4px 0 0 4px;
-fx-background-insets: 0, 1px 0 1px 1px;
}
.menu-button.left-pill:hover, .menu-button.left-pill:focused,
.split-menu-button.left-pill:hover,
.split-menu-button.left-pill:focused {
-fx-background-insets: 0, 1px;
}
.menu-button.center-pill,
.split-menu-button.center-pill {
-fx-background-radius: 0;
-fx-background-insets: 0, 1px 0 1px 0;
}
.menu-button.center-pill:hover, .menu-button.center-pill:focused,
.split-menu-button.center-pill:hover,
.split-menu-button.center-pill:focused {
-fx-background-insets: 0, 1px;
}
.menu-button.right-pill,
.split-menu-button.right-pill {
-fx-background-radius: 0 4px 4px 0;
-fx-background-insets: 0, 1px 1px 1px 0;
}
.menu-button.right-pill:hover, .menu-button.right-pill:focused,
.split-menu-button.right-pill:hover,
.split-menu-button.right-pill:focused {
-fx-background-insets: 0, 1px;
}
.menu-button > .label,
.split-menu-button > .label {
-fx-padding: 8px 12px 8px 12px;
-fx-text-fill: -color-button-fg;
}
.menu-button > .arrow-button,
.split-menu-button > .arrow-button {
-fx-padding: 8px 12px 8px 0;
}
.menu-button > .arrow-button > .arrow,
.split-menu-button > .arrow-button > .arrow {
-fx-shape: "M10 17l5-5-5-5v10z";
-fx-scale-shape: false;
-fx-background-color: -color-button-fg;
-fx-min-width: 0.5em;
}
.menu-button:openvertically > .arrow-button > .arrow,
.split-menu-button:openvertically > .arrow-button > .arrow {
-fx-shape: "M7 10l5 5 5-5z";
-fx-scale-shape: false;
}
.menu-button:show-mnemonics > .label > .mnemonic-underline,
.split-menu-button:show-mnemonics > .label > .mnemonic-underline {
-fx-stroke: -color-button-fg;
}
.menu-button.button-icon,
.split-menu-button.button-icon {
-fx-padding: 0;
}
.menu-button:hover,
.split-menu-button:hover {
-fx-background-color: -color-button-border-hover, -color-button-bg-hover;
-fx-opacity: 0.9;
}
.menu-button:hover > .label,
.split-menu-button:hover > .label {
-fx-text-fill: -color-button-fg-hover;
}
.menu-button:hover > .arrow-button > .arrow,
.split-menu-button:hover > .arrow-button > .arrow {
-fx-background-color: -color-button-fg-hover;
}
.menu-button:hover .font-icon, .menu-button:hover .ikonli-font-icon,
.split-menu-button:hover .font-icon,
.split-menu-button:hover .ikonli-font-icon {
-fx-icon-color: -color-button-fg-hover;
-fx-fill: -color-button-fg-hover;
}
.menu-button:focused,
.split-menu-button:focused {
-fx-background-color: -color-button-border-focused, -color-button-bg-focused;
}
.menu-button:focused > .label,
.split-menu-button:focused > .label {
-fx-text-fill: -color-button-fg-focused;
}
.menu-button:focused > .arrow-button > .arrow,
.split-menu-button:focused > .arrow-button > .arrow {
-fx-background-color: -color-button-fg-focused;
}
.menu-button:focused .font-icon, .menu-button:focused .ikonli-font-icon,
.split-menu-button:focused .font-icon,
.split-menu-button:focused .ikonli-font-icon {
-fx-icon-color: -color-button-fg-focused;
-fx-fill: -color-button-fg-focused;
}
.menu-button:armed, .menu-button:focused:armed,
.split-menu-button:armed,
.split-menu-button:focused:armed {
-fx-background-color: -color-button-border-pressed, -color-button-bg-pressed;
-fx-text-fill: -color-button-fg-pressed;
}
.menu-button:armed > .label, .menu-button:focused:armed > .label,
.split-menu-button:armed > .label,
.split-menu-button:focused:armed > .label {
-fx-text-fill: -color-button-fg-pressed;
}
.menu-button:armed > .arrow-button > .arrow, .menu-button:focused:armed > .arrow-button > .arrow,
.split-menu-button:armed > .arrow-button > .arrow,
.split-menu-button:focused:armed > .arrow-button > .arrow {
-fx-background-color: -color-button-fg-pressed;
}
.menu-button:armed .font-icon, .menu-button:armed .ikonli-font-icon, .menu-button:focused:armed .font-icon, .menu-button:focused:armed .ikonli-font-icon,
.split-menu-button:armed .font-icon,
.split-menu-button:armed .ikonli-font-icon,
.split-menu-button:focused:armed .font-icon,
.split-menu-button:focused:armed .ikonli-font-icon {
-fx-icon-color: -color-button-fg-pressed;
-fx-fill: -color-button-fg-pressed;
}
.menu-button.accent,
.split-menu-button.accent {
-color-button-bg: -color-accent-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-accent-emphasis;
-color-button-bg-hover: -color-accent-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-accent-emphasis;
-color-button-bg-focused: -color-accent-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-accent-emphasis;
-color-button-bg-pressed: -color-accent-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.accent.button-outlined,
.split-menu-button.accent.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-accent-fg;
-color-button-bg-hover: -color-accent-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.accent.flat,
.split-menu-button.accent.flat {
-color-button-fg: -color-accent-fg;
-color-button-bg-hover: -color-accent-subtle;
}
.menu-button.success,
.split-menu-button.success {
-color-button-bg: -color-success-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-success-emphasis;
-color-button-bg-hover: -color-success-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-success-emphasis;
-color-button-bg-focused: -color-success-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-success-emphasis;
-color-button-bg-pressed: -color-success-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.success.button-outlined,
.split-menu-button.success.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-success-fg;
-color-button-bg-hover: -color-success-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.success.flat,
.split-menu-button.success.flat {
-color-button-fg: -color-success-fg;
-color-button-bg-hover: -color-success-subtle;
}
.menu-button.danger,
.split-menu-button.danger {
-color-button-bg: -color-danger-emphasis;
-color-button-fg: -color-fg-emphasis;
-color-button-border: -color-danger-emphasis;
-color-button-bg-hover: -color-danger-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
-color-button-border-hover: -color-danger-emphasis;
-color-button-bg-focused: -color-danger-6;
-color-button-fg-focused: -color-fg-emphasis;
-color-button-border-focused: -color-danger-emphasis;
-color-button-bg-pressed: -color-danger-emphasis;
-color-button-fg-pressed: -color-fg-emphasis;
-color-button-border-pressed: transparent;
}
.menu-button.danger.button-outlined,
.split-menu-button.danger.button-outlined {
-color-button-bg: -color-bg-default;
-color-button-fg: -color-danger-fg;
-color-button-bg-hover: -color-danger-emphasis;
-color-button-fg-hover: -color-fg-emphasis;
}
.menu-button.danger.flat,
.split-menu-button.danger.flat {
-color-button-fg: -color-danger-fg;
-color-button-bg-hover: -color-danger-subtle;
}
.menu-button.flat,
.split-menu-button.flat {
-color-button-bg: transparent;
-color-button-fg: -color-fg-default;
-color-button-border: transparent;
-color-button-bg-hover: -color-bg-subtle;
-color-button-fg-hover: -color-button-fg;
-color-button-border-hover: -color-bg-subtle;
-color-button-bg-focused: -color-button-bg;
-color-button-fg-focused: -color-button-fg;
-color-button-border-focused: -color-button-bg;
-color-button-bg-pressed: -color-button-bg;
-color-button-fg-pressed: -color-button-fg;
-color-button-border-pressed: transparent;
}
.menu-button.no-arrow > .arrow-button {
-fx-padding: 0;
}
.menu-button.no-arrow > .arrow-button > .arrow {
-fx-shape: none;
-fx-scale-shape: false;
-fx-min-width: -1;
}
.menu-item {
-fx-background-color: -color-bg-default;
-fx-padding: 8px 12px 8px 12px;
}
.menu-item > .graphic-container {
-fx-padding: 0 6px 0 0;
}
.menu-item > .label {
-fx-padding: 0 1em 0 0;
-fx-text-fill: -color-fg-default;
}
.menu-item > .left-container {
-fx-padding: 0 1em 0 0;
}
.menu-item > .right-container {
-fx-padding: 0 0 0 0.5em;
}
.menu-item:focused {
-fx-background-color: -color-base-7, -color-base-7;
}
.menu-item:disabled {
-fx-opacity: 0.4;
-fx-background-color: -color-bg-default;
}

View File

@ -9,10 +9,7 @@ import clickTrainDetector.classification.CTClassifier;
import clickTrainDetector.classification.CTClassifierParams; import clickTrainDetector.classification.CTClassifierParams;
import clickTrainDetector.classification.CTClassifierType; import clickTrainDetector.classification.CTClassifierType;
import clickTrainDetector.classification.bearingClassifier.BearingClassifier; import clickTrainDetector.classification.bearingClassifier.BearingClassifier;
import clickTrainDetector.classification.bearingClassifier.BearingClassifierParams;
import clickTrainDetector.classification.idiClassifier.IDIClassification;
import clickTrainDetector.classification.idiClassifier.IDIClassifier; import clickTrainDetector.classification.idiClassifier.IDIClassifier;
import clickTrainDetector.classification.simplechi2classifier.Chi2CTClassification;
import clickTrainDetector.classification.simplechi2classifier.Chi2ThresholdClassifier; import clickTrainDetector.classification.simplechi2classifier.Chi2ThresholdClassifier;
import clickTrainDetector.classification.templateClassifier.CTTemplateClassifier; import clickTrainDetector.classification.templateClassifier.CTTemplateClassifier;
import clickTrainDetector.layout.classification.CTClassifierGraphics; import clickTrainDetector.layout.classification.CTClassifierGraphics;

View File

@ -4,6 +4,7 @@ import java.util.ArrayList;
import PamController.PamController; import PamController.PamController;
import PamModel.PamModuleInfo; import PamModel.PamModuleInfo;
import atlantafx.base.theme.PrimerDark;
import dataModelFX.ConnectionNodeParams.PAMConnectionNodeType; import dataModelFX.ConnectionNodeParams.PAMConnectionNodeType;
import dataModelFX.connectionNodes.ModuleIconFactory; import dataModelFX.connectionNodes.ModuleIconFactory;
import javafx.beans.property.ObjectProperty; import javafx.beans.property.ObjectProperty;
@ -12,6 +13,7 @@ import javafx.event.EventHandler;
import javafx.geometry.Insets; import javafx.geometry.Insets;
import javafx.scene.Node; import javafx.scene.Node;
import javafx.scene.SnapshotParameters; import javafx.scene.SnapshotParameters;
import javafx.scene.control.Button;
import javafx.scene.control.Tooltip; import javafx.scene.control.Tooltip;
import javafx.scene.image.ImageView; import javafx.scene.image.ImageView;
import javafx.scene.input.ClipboardContent; import javafx.scene.input.ClipboardContent;
@ -72,7 +74,9 @@ public class DataModelModulePane extends PamBorderPane {
private PamScrollPane createPane(){ private PamScrollPane createPane(){
moduleSelectPane=new PamScrollPane(); moduleSelectPane=new PamScrollPane();
moduleSelectPane.getStylesheets().add(PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS());
moduleSelectPane.getStylesheets().add(PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS());
moduleSelectPane.setPrefWidth(250); moduleSelectPane.setPrefWidth(250);
moduleSelectPane.getStyleClass().add("scroll-pane-dark"); moduleSelectPane.getStyleClass().add("scroll-pane-dark");

View File

@ -16,6 +16,7 @@ import pamViewFX.fxNodes.connectionPane.StandardConnectionNode;
import pamViewFX.fxNodes.connectionPane.StandardConnectionPlug; import pamViewFX.fxNodes.connectionPane.StandardConnectionPlug;
import pamViewFX.fxNodes.connectionPane.structures.ConnectionGroupStructure; import pamViewFX.fxNodes.connectionPane.structures.ConnectionGroupStructure;
import pamViewFX.fxNodes.connectionPane.structures.ConnectionStructure; import pamViewFX.fxNodes.connectionPane.structures.ConnectionStructure;
import pamViewFX.fxStyles.PamStylesManagerFX;
import javafx.beans.property.ObjectProperty; import javafx.beans.property.ObjectProperty;
import javafx.geometry.Orientation; import javafx.geometry.Orientation;
import javafx.scene.control.SplitPane; import javafx.scene.control.SplitPane;

View File

@ -71,7 +71,7 @@ public class ModuleProcessDiagram extends PamBorderPane {
public ModuleProcessDiagram (PamControlledUnit pamControlledUnit){ public ModuleProcessDiagram (PamControlledUnit pamControlledUnit){
this.getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS()); //this.getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS());
this.pamControlledUnit=pamControlledUnit; this.pamControlledUnit=pamControlledUnit;
createUpdateTimer(); createUpdateTimer();
createControlDataModel(); createControlDataModel();
@ -81,7 +81,7 @@ public class ModuleProcessDiagram extends PamBorderPane {
private void createControlDataModel(){ private void createControlDataModel(){
this.setMinWidth(100); this.setMinWidth(100);
this.setPrefWidth(USE_COMPUTED_SIZE); this.setPrefWidth(USE_COMPUTED_SIZE);
this.setStyle("-fx-background-color: -fx-darkbackground"); //this.setStyle("-fx-background-color: -fx-darkbackground");
this.populateDataModel(); this.populateDataModel();
} }

View File

@ -158,7 +158,7 @@ public class TDDisplayFX extends PamBorderPane {
/** /**
* The height of the control pane. * The height of the control pane.
*/ */
final static double controlPaneHeight=63; final static double CONTROL_PANE_HEIGHT=80;
/** /**
@ -238,7 +238,7 @@ public class TDDisplayFX extends PamBorderPane {
//create top hiding panel. //create top hiding panel.
controlPane=new TDControlPaneFX(tdControl,this); controlPane=new TDControlPaneFX(tdControl,this);
controlPane.setParams(tdParametersFX); controlPane.setParams(tdParametersFX);
controlPane.setPrefHeight(controlPaneHeight); controlPane.setPrefHeight(CONTROL_PANE_HEIGHT);
hidingControlPane=new HidingPane(Side.TOP, controlPane, this, false ); hidingControlPane=new HidingPane(Side.TOP, controlPane, this, false );
hidingControlPane.showHidePane(tdParametersFX.showControl); hidingControlPane.showHidePane(tdParametersFX.showControl);

View File

@ -9,9 +9,10 @@ import java.net.Socket;
import javax.swing.JComponent; import javax.swing.JComponent;
import javax.swing.Timer; import javax.swing.Timer;
import x3.CRC16; import org.pamguard.x3.x3.CRC16;
import x3.X3FrameDecode; import org.pamguard.x3.x3.X3FrameDecode;
import x3.X3FrameHeader; import org.pamguard.x3.x3.X3FrameHeader;
import networkTransfer.NetworkObject; import networkTransfer.NetworkObject;
import networkTransfer.receive.BuoyStatusDataUnit; import networkTransfer.receive.BuoyStatusDataUnit;
import networkTransfer.receive.NetworkDataUser; import networkTransfer.receive.NetworkDataUser;

View File

@ -13,12 +13,15 @@ import pamViewFX.fxNodes.PamVBox;
import pamViewFX.fxNodes.internalNode.PamInternalPane; import pamViewFX.fxNodes.internalNode.PamInternalPane;
import pamViewFX.fxNodes.pamDialogFX.PamDialogFX; import pamViewFX.fxNodes.pamDialogFX.PamDialogFX;
import pamViewFX.fxNodes.pamDialogFX.PamSettingsDialogFX; import pamViewFX.fxNodes.pamDialogFX.PamSettingsDialogFX;
import pamViewFX.fxStyles.PamAtlantaStyle;
import pamViewFX.fxStyles.PamStylesManagerFX; import pamViewFX.fxStyles.PamStylesManagerFX;
import pamViewFX.pamTask.PamTaskUpdate; import pamViewFX.pamTask.PamTaskUpdate;
import userDisplayFX.UserDisplayNodeFX; import userDisplayFX.UserDisplayNodeFX;
import PamModel.PamModel; import PamModel.PamModel;
import PamModel.PamModuleInfo; import PamModel.PamModuleInfo;
import PamView.PamViewInterface; import PamView.PamViewInterface;
import atlantafx.base.theme.PrimerDark;
import atlantafx.base.theme.PrimerLight;
import dataMap.layoutFX.DataMapPaneFX; import dataMap.layoutFX.DataMapPaneFX;
import PamController.PAMControllerGUI; import PamController.PAMControllerGUI;
import PamController.PamControlledUnit; import PamController.PamControlledUnit;
@ -28,6 +31,7 @@ import PamController.PamGUIManager;
import PamController.PamSettingManager; import PamController.PamSettingManager;
import PamController.PamSettings; import PamController.PamSettings;
import dataModelFX.DataModelPaneFX; import dataModelFX.DataModelPaneFX;
import javafx.application.Application;
import javafx.application.Platform; import javafx.application.Platform;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.geometry.Insets; import javafx.geometry.Insets;
@ -134,11 +138,11 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
public PamGuiManagerFX(PamController pamController, Object stage) { public PamGuiManagerFX(PamController pamController, Object stage) {
this.pamController=pamController; this.pamController=pamController;
pamGuiSettings= new PAMGuiFXSettings(); pamGuiSettings= new PAMGuiFXSettings();
primaryStage= (Stage) stage; primaryStage= (Stage) stage;
primaryStage.setOnCloseRequest(e->{ primaryStage.setOnCloseRequest(e->{
@ -159,19 +163,22 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
*/ */
private void start(Stage primaryStage) { private void start(Stage primaryStage) {
PamStylesManagerFX.getPamStylesManagerFX().setCurStyle(new PamAtlantaStyle());
//add stage //add stage
stages.add(primaryView = new PamGuiFX(primaryStage, this)); stages.add(primaryView = new PamGuiFX(primaryStage, this));
//create new data model. //create new data model.
dataModelFX=stages.get(0).addDataModelTab(); dataModelFX=stages.get(0).addDataModelTab();
scene = new Scene(stages.get(0)); scene = new Scene(stages.get(0));
scene.getStylesheets().add(getPamCSS());
// Application.setUserAgentStylesheet(new PrimerDark().getUserAgentStylesheet());
// stages.get(0).prefWidthProperty().bind(scene.widthProperty()); // stages.get(0).prefWidthProperty().bind(scene.widthProperty());
// stages.get(0).prefHeightProperty().bind(scene.heightProperty()); // stages.get(0).prefHeightProperty().bind(scene.heightProperty());
primaryStage.setScene(scene); primaryStage.setScene(scene);
// scene.getStylesheets().add(pamCSS);
scene.getStylesheets().add(getPamCSS());
//need to add this for material design icons and fontawesome icons //need to add this for material design icons and fontawesome icons
// scene.getStylesheets().addAll(GlyphsStyle.DEFAULT.getStylePath()); // scene.getStylesheets().addAll(GlyphsStyle.DEFAULT.getStylePath());
@ -458,7 +465,7 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
TabSelectionPane tabSelectionPane=new TabSelectionPane(stages.get(0)); TabSelectionPane tabSelectionPane=new TabSelectionPane(stages.get(0));
PamSettingsDialogFX<?> settingsDialog=new PamSettingsDialogFX(tabSelectionPane); PamSettingsDialogFX<?> settingsDialog=new PamSettingsDialogFX(tabSelectionPane);
settingsDialog.getDialogPane().getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS()); settingsDialog.getDialogPane().getStylesheets().add(PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getDialogCSS());
settingsDialog.initStyle(StageStyle.UNDECORATED); settingsDialog.initStyle(StageStyle.UNDECORATED);
// ChoiceDialog<String> dialog = new ChoiceDialog<>(tabStrings.get(1), tabStrings); // ChoiceDialog<String> dialog = new ChoiceDialog<>(tabStrings.get(1), tabStrings);
@ -485,7 +492,7 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
* Get CSS for PAMGUARD setting 'look and feel' for sliding dialogs * Get CSS for PAMGUARD setting 'look and feel' for sliding dialogs
* @return the CSS for settings feels. * @return the CSS for settings feels.
*/ */
public String getPamSettingsCSS() { public String getPamSettingsCSS() {//return new PrimerDark().getUserAgentStylesheet();
// return getClass().getResource("/Resources/css/pamSettingsCSS.css").toExternalForm(); // return getClass().getResource("/Resources/css/pamSettingsCSS.css").toExternalForm();
return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS(); return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS();
} }
@ -495,6 +502,7 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
* @return the standard CSS fro PAMGUARD. * @return the standard CSS fro PAMGUARD.
*/ */
public String getPamCSS() { public String getPamCSS() {
//return new PrimerLight().getUserAgentStylesheet();
// return getClass().getResource("/Resources/css/pamCSS.css").toExternalForm(); // return getClass().getResource("/Resources/css/pamCSS.css").toExternalForm();
return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getGUICSS(); return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getGUICSS();
} }
@ -503,8 +511,9 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
* Get CSS for PAMGUARD GUI standard 'look and feel' for regular dialogs * Get CSS for PAMGUARD GUI standard 'look and feel' for regular dialogs
* @return the standard CSS fro PAMGUARD. * @return the standard CSS fro PAMGUARD.
*/ */
public String getPamDialogCSS() { public String getPamDialogCSS() {//return new PrimerDark().getUserAgentStylesheet();
return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS();
return PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getDialogCSS();
} }
@ -644,7 +653,7 @@ public class PamGuiManagerFX implements PAMControllerGUI, PamSettings {
mainPane.getChildren().addAll(title, namePane); mainPane.getChildren().addAll(title, namePane);
dialog.getDialogPane().setContent(mainPane); dialog.getDialogPane().setContent(mainPane);
dialog.getDialogPane().getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS()); dialog.getDialogPane().getStylesheets().add(this.getPamDialogCSS());
//add listener to prevent close request if the dialog //add listener to prevent close request if the dialog
final Button btOk = (Button) dialog.getDialogPane().lookupButton(ButtonType.OK); final Button btOk = (Button) dialog.getDialogPane().lookupButton(ButtonType.OK);

View File

@ -166,6 +166,8 @@ public class PamGuiTabFX extends PamTabFX {
//create a new GUI frame. //create a new GUI frame.
PamGuiFX pamGUIFX=new PamGuiFX(tabPane, newStage, pamGui.getPamGuiManagerFX()); PamGuiFX pamGUIFX=new PamGuiFX(tabPane, newStage, pamGui.getPamGuiManagerFX());
pamGUIFX.getStylesheets().add(pamGui.getPamGuiManagerFX().getPamCSS()); pamGUIFX.getStylesheets().add(pamGui.getPamGuiManagerFX().getPamCSS());
//need to add PamGUIFX to list in PamGUIManagerFX. //need to add PamGUIFX to list in PamGUIManagerFX.
pamGui.getPamGuiManagerFX().getPamGuiFXList().add(pamGUIFX); pamGui.getPamGuiManagerFX().getPamGuiFXList().add(pamGUIFX);
newStage.setOnCloseRequest(e->{ newStage.setOnCloseRequest(e->{

View File

@ -1,492 +0,0 @@
/**
* CSS for PAMGUARD settings panels. These are dark with clean white buttons and a cyan highlight them.
*
* Author: Jamie Macaulay;
**/
/*******************************************************************************
* *
* Declare colour variables *
* *
******************************************************************************/
* {
-fx-darkbackground: rgba(60,60,60,.90);
-fx-highlight: rgba(0,204,204,.75);
-fx-highlight_border: rgba(0,204,204,1);
-fx-text: white;
-fx-border_col: white;
}
/*******************************************************************************
* *
* Panes *
* *
******************************************************************************/
.root {
-fx-background-color: -fx-darkbackground;
-fx-padding: 10;
}
.pane {
-fx-background-color: -fx-darkbackground;
}
.border{
-fx-background-color: -fx-darkbackground;
}
.grid {
-fx-background-color: -fx-darkbackground;
}
.hBox {
-fx-background-color: -fx-darkbackground;
}
/*******************************************************************************
* *
* Hiding Tab *
* *
******************************************************************************/
#hide-tab {
-fx-background-color: transparent;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-border_col;
}
#show-tab {
-fx-background-color: transparent;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-border_col;
}
#hide-tab-highlight {
-fx-background-color: -fx-highlight;
-fx-border-radius: 5 5 0 0;
-fx-background-radius: 5 5 0 0;
-fx-border-color: -fx-highlight_border;
}
/*******************************************************************************
* *
* Label *
* *
******************************************************************************/
.label{
-fx-text-fill: -fx-text;
}
/*******************************************************************************
* *
* Slider *
* *
******************************************************************************/
.slider .axis {
-fx-fill: -fx-text;
-fx-stroke: -fx-text;
-fx-tick-label-fill: -fx-text;
-fx-text-fill: -fx-text;
-fx-tick-mark-stroke: -fx-text;
}
/*******************************************************************************
* *
* Dialog Pane *
* *
******************************************************************************/
.dialog-pane {
-fx-background-color: -fx-darkbackground;
}
/*******************************************************************************
* *
* Button *
* *
******************************************************************************/
.button{
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
-fx-background-radius:6;
-fx-padding: 3 6 6 6;
}
.button:hover{
-fx-background-color: -fx-highlight;
-fx-border-color: -fx-highlight_border;
}
.button:selected{
-fx-border-color: -fx-highlight;
}
/**
* Button for closing a hiding panel. Right indicates bottoms points towards the right, closing a hiding panel
* on the right hand side of the screen. These buttons have a transparent background and rounded corners.
*/
/** top-left, top-right, bottom-right, and bottom-left corners, in that order. */
.close-button-right{
-fx-background-color: transparent;
-fx-background-radius: 0 10 10 0;
-fx-border-radius: 0 10 10 0;
}
.close-button-left{
-fx-background-color: transparent;
-fx-background-radius: 10 0 0 10;
-fx-border-radius: 10 0 0 10;
}
.close-button-top{
-fx-background-color: transparent;
-fx-background-radius: 10 10 0 0;
-fx-border-radius: 10 10 0 0;
}
.close-button-bottom{
-fx-background-color: transparent;
-fx-background-radius: 0 0 10 10;
-fx-border-radius: 0 0 10 10;
}
.close-button-bottom-grey{
-fx-border-color: transparent;
-fx-background-radius: 0 0 10 10;
-fx-border-radius: 0 0 10 10;
}
.close-button-left-trans{
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-background-radius: 10 0 0 10;
-fx-border-radius: 10 0 0 10;
}
.close-button-right-trans{
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-background-radius: 0 10 10 0;
-fx-border-radius: 0 10 10 0;
}
/*******************************************************************************
* *
* TextField *
* *
******************************************************************************/
.text-field {
-fx-border-color: transparent;
-fx-background-color: transparent;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
-fx-text-fill: -fx-text;
}
.text-field:selected{
-fx-border-color: -fx-highlight;
}
.text-field:focused{
-fx-border-color: -fx-highlight;
}
/*******************************************************************************
* *
* MenuButton *
* *
******************************************************************************/
.menu-button{
-fx-text-fill: -fx-text;
-fx-background-color: -fx-darkbackground;
-fx-border-color: rgb(255, 255, 255);
-fx-border-radius: 5;
-fx-padding: 3 6 6 6;
}
/*******************************************************************************
* *
* SplitMenuButton *
* *
******************************************************************************/
.split-menu-button{
-fx-text-fill: -fx-text;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
}
.split-menu-button:hover{
-fx-border-color: -fx-highlight_border;
}
.split-menu-button .label {
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-radius: 5;
}
.split-menu-button .label:hover {
-fx-background-color: -fx-highlight;
}
.split-menu-button .arrow-button {
-fx-text-fill: -fx-text;
-fx-background-color: -fx-darkbackground;
-fx-border-radius: 5;
}
.split-menu-button .arrow-button:hover {
-fx-background-color: -fx-highlight;
}
/*******************************************************************************
* *
* Radio Button *
* *
******************************************************************************/
.radio-button {
/* -fx-text-fill: rgb(255, 255, 255, 0.4);*/
-fx-text-fill: -fx-text;
/* -fx-effect: dropshadow(one-pass-box , rgba(0, 0, 0, 0.6), 0, 0.0 , 0 , 1 );*/
-fx-border-width: 0px;
}
/*******************************************************************************
* *
* Check Box *
* *
******************************************************************************/
.check-box {
/* -fx-text-fill: rgb(255, 255, 255, 0.4);*/
-fx-text-fill: -fx-text;
/* -fx-effect: dropshadow(one-pass-box , rgba(0, 0, 0, 0.6), 0, 0.0 , 0 , 1 );*/
-fx-border-width: 0px;
}
/*******************************************************************************
* *
* ComboBox *
* *
******************************************************************************/
.combo-box-base{
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
-fx-padding: 3 6 6 6;
}
.choice-box{
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5;
-fx-padding: 3 6 6 6;
}
/*******************************************************************************
* *
* MenuItem *
* *
******************************************************************************/
.menu-item .label {
-fx-text-fill: -fx-text;
/*Must be transpernt so that semi transparent colour is not added to smei transparent*/
-fx-background-color: transparent;
}
.menu-item:focused {
-fx-background-color: -fx-highlight;
}
.menu-item:focused .label {
-fx-text-fill: -fx-text;
/*Weird fix-must make transparent for correct colour to show*/
-fx-background-color: rgba(0,204,204,0);
}
.context-menu {
-fx-skin: "com.sun.javafx.scene.control.skin.ContextMenuSkin";
-fx-background-color: -fx-darkbackground;
-fx-background-insets: 0, 1, 2;
-fx-background-radius: 0 6 6 6, 0 5 5 5, 0 4 4 4;
/* -fx-padding: 0.666667em 0.083333em 0.666667em 0.083333em; 8 1 8 1 */
-fx-padding: 0.333333em 0.083333em 0.666667em 0.083333em; /* 4 1 8 1 */
}
/****************************************************************
ScrollPane
****************************************************************/
.scroll-pane {
-fx-background: transparent;
-fx-background-color: transparent;
}
/****************************************************************
ScrollBar
****************************************************************/
.scroll-bar {
-fx-background-color: -fx-darkbackground;
-fx-background-radius: 2em;
}
.scroll-bar:horizontal .track,
.scroll-bar:vertical .track {
-fx-background-color: transparent;
-fx-border-color:transparent;
-fx-background-radius: 2em;
}
.scroll-bar:vertical .track-background,
.scroll-bar:horizontal .track-background {
-fx-background-color: transparent;
-fx-background-insets: 0;
-fx-background-radius: 2em;
}
.scroll-bar:horizontal .thumb {
-fx-background-color: rgb(211,211,211);
-fx-background-insets: 4 0 4 0;
-fx-background-radius: 2em;
}
.scroll-bar:vertical .thumb {
-fx-background-color: rgb(211,211,211);
-fx-background-insets: 0 4 0 4;
-fx-background-radius: 2em;
}
.scroll-bar:horizontal .thumb:hover,
.scroll-bar:vertical .thumb:hover {
-fx-background-color: rgb(231,231,231);
}
.scroll-bar:horizontal .thumb:pressed,
.scroll-bar:vertical .thumb:pressed {
-fx-background-color: rgb(255,255,255);
}
.scroll-bar:vertical .increment-button, .scroll-bar:vertical .decrement-button {
-fx-background-color:transparent;
-fx-background-radius: 2em;
-fx-padding: 5;
}
.scroll-bar:horizontal .increment-button, .scroll-bar:horizontal .decrement-button {
-fx-background-color:transparent;
-fx-background-radius: 2em;
-fx-padding: 5;
}
.scroll-bar:horizontal .increment-arrow {
-fx-shape: "M 0 0 L 4 8 L 8 0 Z";
-fx-background-color: rgb(211,211,211);
-fx-padding: 0.25em;
-fx-rotate: -90;
}
.scroll-bar:vertical .increment-arrow {
-fx-background-color: rgb(211,211,211);
-fx-shape: "M 0 0 L 4 8 L 8 0 Z";
-fx-padding: 0.25em;
-fx-rotate: 0;
}
.scroll-bar:horizontal .decrement-arrow {
-fx-background-color: rgb(211,211,211);
-fx-shape: "M 0 0 L 4 8 L 8 0 Z";
-fx-padding: 0.25em;
-fx-rotate: 90;
}
.scroll-bar:vertical .decrement-arrow {
-fx-background-color: rgb(211,211,211);
-fx-shape: "M 0 0 L 4 8 L 8 0 Z";
-fx-padding: 0.25em;
-fx-rotate: -180;
}
.scroll-bar:vertical:focused,
.scroll-bar:horizontal:focused {
-fx-background-color: transparent,rgb(96,96,96),rgb(96,96,96);
}
/****************************************************************
Spinner
****************************************************************/
.spinner {
-fx-background: -fx-darkbackground;
-fx-background-color: -fx-darkbackground;
-fx-background-radius: 10;
-fx-border-radius: 10;
-fx-border-color: transparent;
}
.spinner .text-field {
-fx-background: -fx-darkbackground;
-fx-background-color: -fx-darkbackground;
-fx-border-radius: 0 0 0 0;
-fx-padding: 7 0 7 0;
-fx-border-color: transparent;
}
.spinner .increment-arrow-button {
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 5 5 0 0;
-fx-padding: 7 0 7 0;
}
.spinner .increment-arrow {
-fx-background-color: white;
}
.spinner .increment-arrow-button:hover {
-fx-background-color: -fx-highlight;
-fx-border-color: -fx-highlight_border;
-fx-background-radius: 6 6 0 0;
-fx-border-radius: 6 6 0 0;
}
.spinner .decrement-arrow-button {
-fx-text-fill: white;
-fx-background-color: -fx-darkbackground;
-fx-border-color: -fx-border_col;
-fx-border-radius: 0 0 6 6
}
.spinner .decrement-arrow {
-fx-background-color: white;
}
.spinner .decrement-arrow-button:hover {
-fx-background-color: -fx-highlight;
-fx-border-color: -fx-highlight_border;
-fx-background-radius: 0 0 6 6;
-fx-border-radius: 0 0 6 6;
}

View File

@ -2,6 +2,7 @@ package pamViewFX.fxNodes.pamDialogFX;
import java.util.Optional; import java.util.Optional;
import javafx.geometry.Insets;
import javafx.stage.Stage; import javafx.stage.Stage;
import javafx.stage.StageStyle; import javafx.stage.StageStyle;
import pamViewFX.fxStyles.PamStylesManagerFX; import pamViewFX.fxStyles.PamStylesManagerFX;
@ -25,11 +26,13 @@ public class PamSettingsDialogFX<T> extends PamDialogFX<T> {
this.settingsPane=settingsPane; this.settingsPane=settingsPane;
this.setTitle(settingsPane.getName()); this.setTitle(settingsPane.getName());
this.setContent(settingsPane.getContentNode()); this.setContent(settingsPane.getContentNode());
// if (PamController.getInstance().getGuiManagerFX()!=null){ // if (PamController.getInstance().getGuiManagerFX()!=null){
// this.getDialogPane().getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS()); // this.getDialogPane().getStylesheets().add(PamController.getInstance().getGuiManagerFX().getPamSettingsCSS());
// } // }
PamStylesManagerFX stylesManager = PamStylesManagerFX.getPamStylesManagerFX(); PamStylesManagerFX stylesManager = PamStylesManagerFX.getPamStylesManagerFX();
this.getDialogPane().getStylesheets().add(stylesManager.getCurStyle().getSlidingDialogCSS()); this.getDialogPane().getStylesheets().add(stylesManager.getCurStyle().getDialogCSS());
this.setOnShown((value)->{ this.setOnShown((value)->{
settingsPane.paneInitialized(); settingsPane.paneInitialized();
}); });

View File

@ -39,7 +39,7 @@ public class SettingsFileDialogFX {
singleInstance = new SettingsFileDialogFX(); singleInstance = new SettingsFileDialogFX();
singleInstance.settingsDialog=new PamSettingsDialogFX(singleInstance.settingsFilePane); singleInstance.settingsDialog=new PamSettingsDialogFX(singleInstance.settingsFilePane);
// singleInstance.settingsDialog.getDialogPane().getStylesheets().add(singleInstance.getClass().getResource("/Resources/css/pamSettingsCSS.css").toExternalForm()); // singleInstance.settingsDialog.getDialogPane().getStylesheets().add(singleInstance.getClass().getResource("/Resources/css/pamSettingsCSS.css").toExternalForm());
singleInstance.settingsDialog.getDialogPane().getStylesheets().add(PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getSlidingDialogCSS()); singleInstance.settingsDialog.getDialogPane().getStylesheets().add(PamStylesManagerFX.getPamStylesManagerFX().getCurStyle().getDialogCSS());
} }
singleInstance.settingsFilePane.setParams(settingsFileData); singleInstance.settingsFilePane.setParams(settingsFileData);

View File

@ -72,6 +72,9 @@ public class SettingsFilePane extends SettingsPane<SettingsFileData> {
browseButton.setOnAction((action)->{ browseButton.setOnAction((action)->{
browseFile(false); browseFile(false);
}); });
browseButton.prefHeightProperty().bind(fileBox.heightProperty());
PamButton browseSaveButton = new PamButton(); PamButton browseSaveButton = new PamButton();
// browseSaveButton.setGraphic(PamGlyphDude.createPamGlyph(MaterialDesignIcon.PLUS, Color.WHITE, PamGuiManagerFX.iconSize)); // browseSaveButton.setGraphic(PamGlyphDude.createPamGlyph(MaterialDesignIcon.PLUS, Color.WHITE, PamGuiManagerFX.iconSize));
browseSaveButton.setGraphic(PamGlyphDude.createPamIcon("mdi2p-plus", Color.WHITE, PamGuiManagerFX.iconSize)); browseSaveButton.setGraphic(PamGlyphDude.createPamIcon("mdi2p-plus", Color.WHITE, PamGuiManagerFX.iconSize));
@ -82,6 +85,9 @@ public class SettingsFilePane extends SettingsPane<SettingsFileData> {
folderSelectPane.getChildren().addAll(fileBox, browseSaveButton, browseButton); folderSelectPane.getChildren().addAll(fileBox, browseSaveButton, browseButton);
vBox.getChildren().add(folderSelectPane); vBox.getChildren().add(folderSelectPane);
browseSaveButton.prefHeightProperty().bind(fileBox.heightProperty());
fileBox.prefHeightProperty().bind(browseButton.heightProperty()); fileBox.prefHeightProperty().bind(browseButton.heightProperty());
// //option to show on start up. // //option to show on start up.

View File

@ -10,6 +10,7 @@ import binaryFileStorage.BinaryStore;
import pamViewFX.fxNodes.PamBorderPane; import pamViewFX.fxNodes.PamBorderPane;
import pamViewFX.fxNodes.PamGridPane; import pamViewFX.fxNodes.PamGridPane;
import pamViewFX.fxNodes.pamDialogFX.PamDialogFX; import pamViewFX.fxNodes.pamDialogFX.PamDialogFX;
import pamViewFX.fxStyles.PamStylesManagerFX;
import javafx.geometry.HPos; import javafx.geometry.HPos;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Node;
@ -56,6 +57,8 @@ public class StorageOptionsPane extends SettingsPane<StorageParameters>{
PamGridPane gridPane=new PamGridPane(); PamGridPane gridPane=new PamGridPane();
Label l = new Label(" Binary Store "); Label l = new Label(" Binary Store ");
l.setTextAlignment(TextAlignment.CENTER); l.setTextAlignment(TextAlignment.CENTER);

View File

@ -0,0 +1,77 @@
package pamViewFX.fxStyles;
/*
* PAMGUARD - Passive Acoustic Monitoring GUARDianship.
* To assist in the Detection Classification and Localisation
* of marine mammals (cetaceans).
*
* Copyright (C) 2006
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import PamView.ColourScheme;
import PamView.PamColors;
import atlantafx.base.theme.NordDark;
import atlantafx.base.theme.PrimerDark;
import atlantafx.base.theme.PrimerLight;
/**
* Class defining the default CSS Style sheets to use for JavaFX displays. This class can be extended and one or more methods overridden to
* specify new CSS styles. Style sheets can be specified for 3 different categories: sliding dialogs, regular dialogs, and all other components
* (incl. displays, etc). In addition, each category can have a style sheet to use for daytime mode and one to use for nighttime mode. The
* relative URI paths to the individual style sheets are specified as private fields, and accessed through public methods. The day/night switch
* is based on the name of the current PamColors colour scheme being used.
*
* @author Jamie Macaulay
*
*/
public class PamAtlantaStyle extends PamDefaultStyle {
/**
* Relative location of the CSS style sheet to be used for the Pamguard GUI (but not dialogs)
*/
//private String guiCSS = "/Resources/css/pamCSS.css";
//private String guiCSS = new NordDark().getUserAgentStylesheet();
protected String primerGuiCSS = "/Resources/css/primer-light.css";
/**
* Relative location of the CSS style sheet to be used for the Pamguard standard dialogs
*/
//private String dialogCSS = "/Resources/css/pamSettingsCSS.css";
//private String dialogCSS = new PrimerDark().getUserAgentStylesheet();
protected String primerDialogCSS = "/Resources/css/primer-dark.css";
/**
* Relative location of the CSS style sheet to be used for the Pamguard sliding dialogs
*/
//private String slidingDialogCSS = "/Resources/css/pamCSS.css";
//private String slidingDialogCSS = new PrimerDark().getUserAgentStylesheet();
protected String primerSlidingDialogCSS = "/Resources/css/primer-pamguard.css";
public PamAtlantaStyle() {
super.guiCSS = primerGuiCSS;
super.dialogCSS = primerDialogCSS;
super.slidingDialogCSS = primerSlidingDialogCSS;
}
}

View File

@ -42,35 +42,35 @@ public class PamDefaultStyle {
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard GUI (but not dialogs) * Relative location of the CSS style sheet to be used for the Pamguard GUI (but not dialogs)
*/ */
private String guiCSS = "/Resources/css/pamCSS.css"; protected String guiCSS = "/Resources/css/pamCSS.css";
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard GUI when in night mode. If there * Relative location of the CSS style sheet to be used for the Pamguard GUI when in night mode. If there
* is not a style sheet specific to night mode, set it to null or point back to the guiCSS field. * is not a style sheet specific to night mode, set it to null or point back to the guiCSS field.
*/ */
private String guiCSSNightMode = guiCSS; protected String guiCSSNightMode = guiCSS;
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard standard dialogs * Relative location of the CSS style sheet to be used for the Pamguard standard dialogs
*/ */
private String dialogCSS = "/Resources/css/pamDefaultDialogCSS.css"; protected String dialogCSS = "/Resources/css/pamDefaultDialogCSS.css";
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard std dialogs when in night mode. If there * Relative location of the CSS style sheet to be used for the Pamguard std dialogs when in night mode. If there
* is not a style sheet specific to night mode, set it to null or point back to the dialogCSS field. * is not a style sheet specific to night mode, set it to null or point back to the dialogCSS field.
*/ */
private String dialogCSSNightMode = dialogCSS; protected String dialogCSSNightMode = dialogCSS;
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard sliding dialogs * Relative location of the CSS style sheet to be used for the Pamguard sliding dialogs
*/ */
private String slidingDialogCSS = "/Resources/css/pamSettingsCSS.css"; protected String slidingDialogCSS = "/Resources/css/pamSettingsCSS.css";
/** /**
* Relative location of the CSS style sheet to be used for the Pamguard sliding dialogs when in night mode. If there * Relative location of the CSS style sheet to be used for the Pamguard sliding dialogs when in night mode. If there
* is not a style sheet specific to night mode, set it to null or point back to the slidingDialogCSS field. * is not a style sheet specific to night mode, set it to null or point back to the slidingDialogCSS field.
*/ */
private String slidingDialogCSSNightMode = slidingDialogCSS; protected String slidingDialogCSSNightMode = slidingDialogCSS;
/** /**
* <p>Return the CSS Style sheet to be used for the Pamguard GUI (displays and such) but not the dialogs.</p> * <p>Return the CSS Style sheet to be used for the Pamguard GUI (displays and such) but not the dialogs.</p>

View File

@ -16,8 +16,8 @@ import org.apache.commons.compress.archivers.ArchiveStreamFactory;
import org.apache.commons.compress.archivers.tar.TarArchiveEntry; import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
import org.apache.commons.compress.utils.IOUtils; import org.apache.commons.compress.utils.IOUtils;
import org.pamguard.x3.x3.X3JNIEncoder;
import x3.X3JNIEncoder;
import PamController.PamControlledUnitSettings; import PamController.PamControlledUnitSettings;
import PamController.PamController; import PamController.PamController;
import PamController.PamSettingManager; import PamController.PamSettingManager;
@ -37,7 +37,7 @@ public class ZipUnpacker implements PamSettings {
private ZipSettings zipSettings = new ZipSettings(); private ZipSettings zipSettings = new ZipSettings();
private x3.X3JNIEncoder x3Encoder; private X3JNIEncoder x3Encoder;
public ZipUnpacker(PamController pamController) { public ZipUnpacker(PamController pamController) {
super(); super();