deis-tools / h-uppaal Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Create an "Export as XML" version in the File menu.
This should create an XML version of the project and bring up a file chooser where the file name can be selected.
Note: The functionality to create the actual XML version should already exist as it was created by the students originally working on the project.
/usr/lib/jvm/zulu11.39.15-ca-fx-jdk11.0.7-linux_x64/bin/java -javaagent:/snap/intellij-idea-community/226/lib/idea_rt.jar=34895:/snap/intellij-idea-community/226/bin -Dfile.encoding=UTF-8 -classpath /home/ulrik/Code/H-Uppaal/build/classes/java/main:/home/ulrik/Code/H-Uppaal/build/classes/kotlin/main:/home/ulrik/Code/H-Uppaal/build/resources/main:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-pdf.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-svg.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-pdf-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/slf4j-nop.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-swf.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-jena-provider.jar:/home/ulrik/Code/H-Uppaal/libs/jh.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsbase-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-emf-sources.jar:/home/ulrik/Code/H-Uppaal/libs/model.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsbase.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-emf.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-svg-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-svg-sources.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-io.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-swf-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/jena-core.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-java-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/servlet-api-3.0.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-core-sources.jar:/home/ulrik/Code/H-Uppaal/libs/xerces.jar:/home/ulrik/Code/H-Uppaal/libs/jsr311-api-1.1.1.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphics2d.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-wink-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphics2d-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-pdf-sources.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsbase-sources.jar:/home/ulrik/Code/H-Uppaal/libs/xml-apis.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-java-sources.jar:/home/ulrik/Code/H-Uppaal/libs/jdom.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-ps.jar:/home/ulrik/Code/H-Uppaal/libs/wink-common.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-ps-sources.jar:/home/ulrik/Code/H-Uppaal/libs/model-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/jlfgr-1_0.jar:/home/ulrik/Code/H-Uppaal/libs/wink-client.jar:/home/ulrik/Code/H-Uppaal/libs/slf4j-api.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-ps-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-swf-sources.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-emf-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-json4j-provider.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-wink.jar:/home/ulrik/Code/H-Uppaal/libs/jena-iri.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-sources.jar:/home/ulrik/Code/H-Uppaal/libs/swixml.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-core.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphicsio-java.jar:/home/ulrik/Code/H-Uppaal/libs/editor.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-wink-sources.jar:/home/ulrik/Code/H-Uppaal/libs/freehep-graphics2d-sources.jar:/home/ulrik/Code/H-Uppaal/libs/oslc4j-core-javadoc.jar:/home/ulrik/Code/H-Uppaal/libs/uppaal-oslc4j-common.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-fxml/11/e7a757b580fc3e2e1a121768606c7836eef418c/javafx-fxml-11-linux.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-controls/11/58d961774262ec972bf304e16c154a8e18c2050b/javafx-controls-11.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-controls/11/794488e3b1f4635d9a1b842bdc872a5eb8fd54ca/javafx-controls-11-linux.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-graphics/11/a736dd079047ec0b72b8c4970842a5c5e0c19f2f/javafx-graphics-11.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-graphics/11/4ab9edd8d481a420044c473fdb5718ccdd35c836/javafx-graphics-11-linux.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-base/11/9fcd3e8e3227ec97bf503f7991fad1f3b14d005/javafx-base-11.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.openjfx/javafx-base/11/f8d1ced6047b010f1e3bb92dc060862179ce5897/javafx-base-11-linux.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.jfoenix/jfoenix/9.0.9/df1b688e1dc42a59e560c29f231278e20cfcd52/jfoenix-9.0.9.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/de.codecentric.centerdevice/javafxsvg/1.0.0/5caacc6870f31fd83fccba7784e48a34e527c4d8/javafxsvg-1.0.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.github.jiconfont/jiconfont-javafx/1.0.0/233530f110ab0c3ff845aa52799c43645a11f1c8/jiconfont-javafx-1.0.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.github.jiconfont/jiconfont-google_material_design_icons/2.2.0.1/fc7b40105e13ce81c249d4d440deb1939e687aaa/jiconfont-google_material_design_icons-2.2.0.1.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.kordamp.ikonli/ikonli-material-pack/2.3.0/2be81d3585ac7cbba0be56d2f4510298cc1f27a8/ikonli-material-pack-2.3.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.kordamp.ikonli/ikonli-javafx/2.3.0/a2d46c55cb9d68523f5dfaf3fef881ef4a989fb0/ikonli-javafx-2.3.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.kordamp.ikonli/ikonli-core/2.3.0/e0840f570d30f9ca74b2ef2b855c9b56ec5302a6/ikonli-core-2.3.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/r05/97fd3078118f05895ba5c3a95f3c335e2a2f34d/guava-r05.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.hildan.fxgson/fx-gson/2.0.0/3237843558b455775afac6fdb310958e79f64e6/fx-gson-2.0.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.fxmisc.richtext/richtextfx/0.10.5/df9f31a099aa066c63b231f4bbb3826cd892b35c/richtextfx-0.10.5.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.3.71/4defc79915cf4f78b49bbc4a8f1e80e87767a5b/kotlin-stdlib-jdk8-1.3.71.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-transcoder/1.7/aa2eb6300cb50bbb9dbf52daf7d625aa0df1d930/batik-transcoder-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.github.jiconfont/jiconfont/1.0.0/e17d93321975b6735ebc283f6832fa0350614d3a/jiconfont-1.0.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.fxmisc.undo/undofx/2.1.0/e50ee1e30ce5ac1817d35f56c79099201211c76c/undofx-2.1.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.fxmisc.flowless/flowless/0.6.1/d0794811efbc07d247de681ee0ee427cdb685d58/flowless-0.6.1.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.reactfx/reactfx/2.0-M5/aa02bc40ebbb87a76d4b188516294612c8972b80/reactfx-2.0-M5.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.fxmisc.wellbehaved/wellbehavedfx/0.3.3/c69c986469f23feee75f09812357e6b6a0657d57/wellbehavedfx-0.3.3.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.3.71/9180d3aec3f0b2ea6ef0dcf01b464a6e2219e381/kotlin-stdlib-jdk7-1.3.71.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.3.71/898273189ad22779da6bed88ded39b14cb5fd432/kotlin-stdlib-1.3.71.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/fop/0.94/d37ddd876ae66910f73235c71d3ab3f0c85a2b87/fop-0.94.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-gvt/1.7/3d315e60d72c761c52946b4acaa4b86239ef938/batik-gvt-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-bridge/1.7/8e0cde3830e0f17704cd392b0a09b13944987a51/batik-bridge-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-svg-dom/1.7/5b3b1fea480fabbd3e0c44540af25b9fda0587ae/batik-svg-dom-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-svggen/1.7/baa58d0f5bfd2a28142e222cee126eb71bd0a938/batik-svggen-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-awt-util/1.7/67605a29d49bf33f3c1d7832f490b0a007e7a6e2/batik-awt-util-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-dom/1.7/710d559bd1df52581b57b75a99ed5fd2e2918bb7/batik-dom-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-xml/1.7/17e3da8bd9d4a131350a7835f5cc0d93ba199c89/batik-xml-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-util/1.7/5c4dd0dd9a86a2fba2c6ea26fb62b32b21b2a61e/batik-util-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/xml-apis/xml-apis-ext/1.3.04/41a8b86b358e87f3f13cf46069721719105aff66/xml-apis-ext-1.3.04.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.3.71/e71c3fef58e26affeb03d675e91fd8abdd44aa7b/kotlin-stdlib-common-1.3.71.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/xmlgraphics-commons/1.2/95b325b99d52725661da9db187e6e9a2b0764a27/xmlgraphics-commons-1.2.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/commons-logging/commons-logging/1.0.4/f029a2aefe2b3e1517573c580f948caac31b1056/commons-logging-1.0.4.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/1.1/5e986a7e4b0472aebe121154178dab2da26a8bf5/commons-io-1.1.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.avalon.framework/avalon-framework-impl/4.3.1/2d5f5a07fd14513ce6d7a7bfaff69419c26dbd0b/avalon-framework-impl-4.3.1.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.avalon.framework/avalon-framework-api/4.3.1/2dacadeb49bc14420990b1f28897d46f96e2181d/avalon-framework-api-4.3.1.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-script/1.7/4ea7906724bfefc1fca3e5b28229a458523e1fbf/batik-script-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-anim/1.7/a45dd2ff8e4ecd56a4fc64dc668b53bee90bf601/batik-anim-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-parser/1.7/5d756cc4f6bf891793e6c7590773859c33a8609f/batik-parser-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-css/1.7/e6bb5c85753331534593f33fb9236acb41a0ab79/batik-css-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-ext/1.7/4784302b44a0336166fef6153a5e3d73e861aecc/batik-ext-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/xalan/xalan/2.6.0/5b010b70e16d540dcb737caa09da1034ea721704/xalan-2.6.0.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-js/1.7/688eb1bf13b7a54491fcb3405068fc5092589884/batik-js-1.7.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.6/9180733b7df8542621dc12e21e87557e8c99b8cb/gson-2.8.6.jar:/home/ulrik/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/15.0/d40ab99147584cf6cfb5245be67b3fee2c7220f9/annotations-15.0.jar HUPPAAL
Could not find backend-file: /home/ulrik/Code/H-Uppaal/build/classes/java/servers/bin-Linux/server. Please make sure to copy UPPAAL binaries to this location.
Could not find backend-file: /home/ulrik/Code/H-Uppaal/build/classes/java/servers/bin-Linux/server. Please make sure to copy UPPAAL binaries to this location.
Could not find backend-file: /home/ulrik/Code/H-Uppaal/build/classes/java/servers/bin-Linux/server. Please make sure to copy UPPAAL binaries to this location.
Could not find backend-file: /home/ulrik/Code/H-Uppaal/build/classes/java/servers/bin-Linux/server. Please make sure to copy UPPAAL binaries to this location.
(java:603): Gdk-WARNING **: 11:05:45.485: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Exception in thread "AWT-EventQueue-0" java.lang.IllegalStateException: Not on FX application thread; currentThread = AWT-EventQueue-0
at javafx.graphics/com.sun.javafx.tk.Toolkit.checkFxUserThread(Toolkit.java:291)
at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.checkFxUserThread(QuantumToolkit.java:424)
at javafx.graphics/javafx.stage.Window.setShowing(Window.java:1173)
at javafx.graphics/javafx.stage.Window.hide(Window.java:1199)
at javafx.graphics/javafx.stage.PopupWindow.hide(PopupWindow.java:486)
at com.jfoenix.controls.JFXPopup.hide(JFXPopup.java:169)
at dk.cs.aau.huppaal.presentations.DropDownMenu.close(DropDownMenu.java:87)
at dk.cs.aau.huppaal.presentations.DropDownMenu.lambda$new$0(DropDownMenu.java:68)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:317)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:249)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Create a "Save Project as ..." menu option in the File menu.
This should open a file selector in which in which it should be possible to create a new folder and select this new folder.
The project should then be saved in this new folder.
Apparently the extra shift-check in the onScroll
event handler is not required.
Simply remove the if-statement
setOnScroll(e -> {
var dx = getTranslateX() + e.getDeltaX();
var dy = getTranslateY() + e.getDeltaY();
setTranslateX(dx);
setTranslateY(dy);
});
Disable the ability to remove "main" from component and set new component as main, if project has no main component
Summary:
Deleting components that are referenced as subcomponents invalidates the model and results in bad loads.
Steps to Reproduce:
Expected results:
The editor loads the project, with an invalid subcomponent (preferably highlighted)
Actual results:
The editor does not load the project at all and logs the following error:
java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "java.util.Map.get(Object)" is null
at dk.cs.aau.huppaal.HUPPAAL.updateDepthMap(HUPPAAL.java:394)
at dk.cs.aau.huppaal.HUPPAAL.updateDepthMap(HUPPAAL.java:403)
at dk.cs.aau.huppaal.HUPPAAL.deserializeProject(HUPPAAL.java:366)
at dk.cs.aau.huppaal.HUPPAAL.initializeProjectFolder(HUPPAAL.java:282)
at dk.cs.aau.huppaal.HUPPAAL.start(HUPPAAL.java:207)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:474)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:447)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:446)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277)
at java.base/java.lang.Thread.run(Thread.java:831)
Given for example the markdown-style link: [someText](component:myComponent(foo, bar))
does not work.
When loading large projects, the editor freezes and seems to not respond.
The error is displayed whenever trying to run queries.
I have been looking into the exception generating the message, and it seems to originate from the parseInteger method within the Parser class (line 58). The method calls the nextToken method, which returns 2, causing the parseInteger method to throw the exception.
The exception is caught on line 155 in the Engine class and thrown as an EngineException.
All the classes mentioned above are part of the model.jar file located within the libs folder and originate from UPPAAL. The method called from H-UPPAAL causing the exception is located on line 150 in the UPPAALDriver class. The input is a UppaalSystem object, which is generated based on the HUPPAALDocument generated for the project. This also happens within the Engine class inside the model.jar and is assumed be handled correctly, hence the element closest to the exception handled by H-UPPAAL is the UPPAALDocument generated inside the HUPPAALDocument class.
I have also discovered that the 10. Semester project mentioned that H-UPPAAL was compiled using UPPAAL version 4.1.19 (from 2014). Using this version, a “Syntax error” is shown instead of the “Bug: Integer expected” error. This error is given within the parseProlog method inside the Parser class.
It should be possible to zoom in, zoom out and pan up/down and left/right in the editing canvas. This will include adding scroll bars to the right and bottom of the canvas.
Specification:
Four buttons should be added to the bar above the canvas.
Zoom-in: https://material.io/resources/icons/?icon=zoom_in&style=outline
Zoom-to-fit: https://material.io/resources/icons/?icon=zoom_out_map&style=outline
Zoom-to-standard: https://material.io/resources/icons/?icon=crop_original&style=outline
Zoom-out: https://material.io/resources/icons/?icon=zoom_out&style=outline
Keyboard shortcuts
Ctrl++ Zoom-in
Ctrl+- Zoom-out
Ctrl+= Zoom-to-fit
Ctrl+1 Zoom-to-standard
To reproduce:
In console:
Exception in thread "AWT-EventQueue-0" java.lang.IllegalStateException: Not on FX application thread; currentThread = AWT-EventQueue-0
at javafx.graphics/com.sun.javafx.tk.Toolkit.checkFxUserThread(Toolkit.java:291)
at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.checkFxUserThread(QuantumToolkit.java:424)
at javafx.graphics/javafx.stage.Window.setShowing(Window.java:1173)
at javafx.graphics/javafx.stage.Window.hide(Window.java:1199)
at javafx.graphics/javafx.stage.PopupWindow.hide(PopupWindow.java:486)
at com.jfoenix.controls.JFXPopup.hide(JFXPopup.java:169)
at dk.cs.aau.huppaal.presentations.DropDownMenu.close(DropDownMenu.java:90)
at dk.cs.aau.huppaal.presentations.DropDownMenu.lambda$new$0(DropDownMenu.java:71)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:317)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:249)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
BUILD SUCCESSFUL in 28s
5 actionable tasks: 5 executed
08:59:40: Task execution finished 'run'.
Trying to auto generate queries for reachability or deadlock checking causes exceptions when the main component for the project is not set
It should be possible to create a new project from within the GUI
The Errors/Warnings view at the bottom of the screen auto-expands on new errors or warnings.
This is not ideal on particular smaller displays.
Change the behavior such that the tab just updates the number of errors/warnings and does not auto-expand.
The last release of H-UPPAAL was made in 2017, and there's been made quite a few changes since then. 226 commits to be exact.
I suggest creating a new release, such that users won't be downloading a zip archive with a three year old version of the program.
I think it would be best to create the release after you've had a look at #40, #41, #42 and #43, in case you'd like to bring in those changes.
The warning about the UPPAAL server file location not pointing to a file is not removed from the UI when the file path is updated to an accepted path
When dragging a location it should not be possible to put one on top of another location.
In the editor window it should be possible to drag the source or destination of an edge from one location to another.
The queries that are executed in the background to check the reachability to locations should have a wait time added.
When creating a new location this location will have no edges leading to it, thus it will be clear that it will generate a warning when there is no path to the location. We should have a wait period X such that the check will only happen after this amount of time has passed after a location has been created.
We can later tweak how long this wait time should be.
Summary:
Save and SaveAs returns "no such file" when saving a new project.
Steps to Reproduce:
Expected results:
The project is saved.
Actual results:
No such file or directory exception is thrown. Unable to save project error is displayed in GUI.
When the queries are added, their UPPAALDriver is set and never updated. As a consequence, updating the UPPAAL server file location and thus changing the UPPAALDriver will not affect the driver used for the quries before the application is restarted
When I use the tool on a 4K screen the icons are too small. It would be nice if they scaled automatically according to the physical size of the screen.
Blog post with potential solutions.
https://news.kynosarges.org/2018/01/26/javafx-dpi-scaling-in-java-9/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.