diff --git a/src/main/java/istlab/KisoJikken/CommandRunner.java b/src/main/java/istlab/KisoJikken/CommandRunner.java index b35bd3b..26e3558 100644 --- a/src/main/java/istlab/KisoJikken/CommandRunner.java +++ b/src/main/java/istlab/KisoJikken/CommandRunner.java @@ -14,6 +14,7 @@ Process process; // JButton runB; String workingDir; + int win_height = 200; public CommandRunner(String cmd) { command = cmd; @@ -30,6 +31,10 @@ } // runB = rB; } + public CommandRunner(String cmd, String chdir, int winheight) { + this(cmd, chdir); + win_height = winheight; + } public void startstop() { if (thread == null) { @@ -52,7 +57,7 @@ // ProcessBuilder processBuilder = new ProcessBuilder("pwd"); processBuilder.directory(new File(workingDir)); // processBuilder.inheritIO(); - JTAConsole con = new JTAConsole("(Exec) " + command); + JTAConsole con = new JTAConsole("(Exec) " + command, win_height); con.Systemoutprintln("=== 実行開始 ==="); if (workingDir.equals(App.userhome + App.nwpsrc)) { con.Systemoutprintln(prompt+"cd ~" + App.nwpsrc); diff --git a/src/main/java/istlab/KisoJikken/GitManager.java b/src/main/java/istlab/KisoJikken/GitManager.java index c0b7819..9387b73 100644 --- a/src/main/java/istlab/KisoJikken/GitManager.java +++ b/src/main/java/istlab/KisoJikken/GitManager.java @@ -60,13 +60,20 @@ for (String filePath : untrackedFiles) { System.out.println(filePath); } - int res = JOptionPane.showConfirmDialog(Launcher.theapp, "教員提供のSampleSrcが修正されています。\n\n" + // - "これまでの作業を消して,初期状態に戻しますか?\n\n" + // - "「はい」を押すと,修正を削除して初期状態に戻します。\n" + // + JOptionPane.showMessageDialog(Launcher.theapp, "教員提供のSampleSrcが変更されています。\n\nOKを押すと、変更されたファイルを示します。\n\n( git status 実行結果 )"); + + Launcher.theapp.runCommand("git status -s", App.userhome + App.nwp, 600); + // Launcher.theapp.runCommand("git diff", App.userhome + App.nwp); + + int res = JOptionPane.showConfirmDialog(Launcher.theapp, "変更内容の詳細をみるには cd ~/NWP ; git diff をしてください。\n\n" + // + "これまでの変更内容を消して,初期状態に戻しますか?\n\n" + // + "「はい」を押すと,変更内容を消して初期状態に戻します。\n" + // "「いいえ」「取消」を押すと,なにもしません。\n\n" + // "あなたがまだ何も作業しておらず,これから実験を\n" + // - "始めるときだけ「はい」を押してください。\n作業の続きを行うときは「いいえ」を押してください。\n(「いいえ」で回答すると、次は3日後までチェックしません。)", - "教員が提供するサンプルソースコードが修正されています", + "始めるときだけ「はい」を押してください。\n" + // + "作業の続きを行うときは「いいえ」を押してください。\n" + // + "(「いいえ」で回答すると、3日後まで起動時チェックしません。)", + "教員提供のSampleSrcが変更されています", JOptionPane.YES_NO_CANCEL_OPTION); if (res == JOptionPane.YES_OPTION) { int res2 = JOptionPane.showConfirmDialog(Launcher.theapp, "これまでに編集したファイルが消えます。\n本当に消してよいですか?", "ファイルが消えます", diff --git a/src/main/java/istlab/KisoJikken/JTAConsole.java b/src/main/java/istlab/KisoJikken/JTAConsole.java index 330481b..c48dffa 100644 --- a/src/main/java/istlab/KisoJikken/JTAConsole.java +++ b/src/main/java/istlab/KisoJikken/JTAConsole.java @@ -52,12 +52,17 @@ // ProcessBuilder pb; // public JTAConsole(ProcessBuilder prob) { + public JTAConsole(String title) { + this(title, 200); + } + + public JTAConsole(String title, int win_height) { // pb = prob; frame = new JFrame(title); frame.getContentPane().add(new JScrollPane(this)); - frame.setSize(500, 200); + frame.setSize(500, win_height); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); frame.addWindowListener(this); @@ -238,7 +243,7 @@ } if (e.isControlDown() || e.isAltDown() || e.isAltGraphDown() || e.isMetaDown()) { - if (e.getKeyCode() == 67) { // CTRL+C + if (e.getKeyCode() == 67) { // CTRL+C if (getSelectedText() != null) { // 文字列をクリップボードにコピーする Toolkit kit = Toolkit.getDefaultToolkit(); diff --git a/src/main/java/istlab/KisoJikken/Launcher.java b/src/main/java/istlab/KisoJikken/Launcher.java index d8f9547..7ea652b 100644 --- a/src/main/java/istlab/KisoJikken/Launcher.java +++ b/src/main/java/istlab/KisoJikken/Launcher.java @@ -218,6 +218,10 @@ System.out.println(cmd); new CommandRunner(cmd, chdir).startstop(); } + public void runCommand(String cmd, String chdir, int wheight) { + System.out.println(cmd); + new CommandRunner(cmd, chdir, wheight).startstop(); + } public void stopProcess(boolean isAll) { ArrayList toberemoved = new ArrayList();