diff --git a/pom.xml b/pom.xml
index 8a3457e..879188b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
istlab.KisoJikkenNWP
KisoJikkenNWP
jar
- 1.0-SNAPSHOT
+ 0.3
KisoJikkenNWP
http://maven.apache.org
@@ -49,11 +49,19 @@
-
+
+
+
org.codehaus.mojo
@@ -82,6 +90,8 @@
jar-with-dependencies
+ ${project.artifactId}-${project.version}-launcher
+ false
diff --git a/src/main/java/istlab/KisoJikken/Launcher.java b/src/main/java/istlab/KisoJikken/Launcher.java
index b8a1d40..bcf36ed 100644
--- a/src/main/java/istlab/KisoJikken/Launcher.java
+++ b/src/main/java/istlab/KisoJikken/Launcher.java
@@ -5,10 +5,21 @@
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.security.CodeSource;
+import java.security.ProtectionDomain;
import java.util.Arrays;
import java.util.Hashtable;
import javax.swing.JFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.event.MouseInputListener;
@@ -16,18 +27,19 @@
import javax.swing.tree.TreeModel;
import javax.swing.tree.TreePath;
-public class Launcher extends JFrame implements MouseInputListener , KeyListener{
+public class Launcher extends JFrame implements MouseInputListener, KeyListener {
public static Launcher theapp;
+ public static String version = "0.3";
// JPanel mainP;
JTree tree;
Hashtable file2editor;
public Launcher(String[] args) {
- super("Kiso NWP Launcher");
+ super("Kiso NWP Launcher v"+version);
setDefaultCloseOperation(EXIT_ON_CLOSE);
// mainP = new JPanel();
- file2editor = new Hashtable();
+ file2editor = new Hashtable();
theapp = this;
File root;
@@ -55,10 +67,42 @@
// ShellScriptPanel run11 = new ShellScriptPanel("run1-1.sh");
getContentPane().add(scrollpane, BorderLayout.CENTER);
+ // Menu
+ JMenuBar menuBar = new JMenuBar();
+ JMenu menu = new JMenu("App");
+ JMenuItem mi = new JMenuItem("show Version");
+ mi.addActionListener(ae -> JOptionPane.showMessageDialog(this, "Kiso NWP Launcher v"+version));
+ menu.add(mi);
+
+ mi = new JMenuItem("download Latest");
+ mi.addActionListener(ae -> downloadLatest());
+ menu.add(mi);
+
+ menuBar.add(menu);
+ setJMenuBar(menuBar);
+
// getContentPane().add(mainP, BorderLayout.WEST);
setSize(400, 600);
}
+ public void downloadLatest() {
+ try {
+ System.out.println(getApplicationPath(this.getClass()));
+ } catch (URISyntaxException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ public static Path getApplicationPath(Class> cls) throws URISyntaxException {
+ ProtectionDomain pd = cls.getProtectionDomain();
+ CodeSource cs = pd.getCodeSource();
+ URL location = cs.getLocation();
+ URI uri = location.toURI();
+ Path path = Paths.get(uri);
+ return path;
+ }
+
@Override
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2) {
@@ -66,14 +110,15 @@
}
}
- private void openEditor(){
+ private void openEditor() {
TreePath tp = tree.getSelectionModel().getSelectionPath();
- if (tp==null) return;
+ if (tp == null)
+ return;
File node = (File) tp.getLastPathComponent();
Editor ed = file2editor.get(node);
- if (ed==null) {
+ if (ed == null) {
ed = new Editor(node);
- file2editor.put(node,ed);
+ file2editor.put(node, ed);
} else {
ed.setVisible(true);
ed.toFront();
@@ -81,7 +126,6 @@
System.out.println(node.toString());
}
-
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
@@ -121,23 +165,23 @@
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
-
+
}
@Override
public void keyPressed(KeyEvent e) {
- if (e.getKeyCode()==32){
+ if (e.getKeyCode() == 32) {
openEditor();
}
// TODO Auto-generated method stub
-
+
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
-
+
}
}
@@ -179,7 +223,8 @@
public Object getChild(Object parent, int index) {
String[] children = ((File) parent).list();
Arrays.sort(children);
- if ((children == null) || (index >= children.length)) return null;
+ if ((children == null) || (index >= children.length))
+ return null;
return new File((File) parent, children[index]);
}
@@ -187,7 +232,8 @@
public int getIndexOfChild(Object parent, Object child) {
String[] children = ((File) parent).list();
Arrays.sort(children);
- if (children == null) return -1;
+ if (children == null)
+ return -1;
String childname = ((File) child).getName();
// if (childname.startsWith(".")) return -1;
for (int i = 0; i < children.length; i++) {
diff --git a/target/classes/Hello.java b/target/classes/Hello.java
deleted file mode 100644
index aa4ed8a..0000000
--- a/target/classes/Hello.java
+++ /dev/null
@@ -1,8 +0,0 @@
-import javax.swing.JOptionPane;
-
-public class Hello {
- public String toString() {
- JOptionPane.showMessageDialog(null,"これはテストです");
- return "helloMiura";
- }
-}
\ No newline at end of file
diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties
index c523283..c22887b 100644
--- a/target/maven-archiver/pom.properties
+++ b/target/maven-archiver/pom.properties
@@ -1,5 +1,5 @@
#Generated by Maven
-#Tue Aug 30 16:36:05 JST 2022
+#Wed Sep 07 15:50:24 JST 2022
artifactId=KisoJikkenNWP
groupId=istlab.KisoJikkenNWP
-version=1.0-SNAPSHOT
+version=0.3
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
index f4c28f3..15f432d 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -1,10 +1,14 @@
+/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/JCompiler.java
+/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/ConsoleTest.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/org/mdkt/compiler/CompilationException.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/ShellScriptPanel.java
+/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/JTAConsole.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/org/mdkt/compiler/SourceCode.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/Editor.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/org/mdkt/compiler/ExtendedStandardJavaFileManager.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/Launcher.java
+/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/JExecutor.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/CCellRenderer.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/ScriptRunner.java
/Users/miura/Nextcloud/binsh/Java/Maven/KisoJikkenNWP/src/main/java/istlab/KisoJikken/AutoCompleteDemo.java