[sikuli] 219/385: more on IDE multi scripting language support

Gilles Filippini pini at moszumanska.debian.org
Sun Jun 29 19:26:16 UTC 2014


This is an automated email from the git hooks/post-receive script.

pini pushed a commit to tag upstream/1.1.0_beta1
in repository sikuli.

commit 8ee92ff638d4846aa04de8a20e1eeda89907232f
Author: Raimund Hocke <info at its-me-raiman.de>
Date:   Tue Feb 18 08:43:55 2014 +0100

    more on IDE multi scripting language support
---
 .../src/main/java/org/sikuli/basics/Settings.java  | 27 ++++++-
 IDE/src/main/java/org/sikuli/ide/EditorPane.java   | 89 ++++++++++++----------
 .../java/org/sikuli/ide/EditorViewFactory.java     | 61 ++++++++++-----
 .../main/java/org/sikuli/ide/SikuliEditorKit.java  |  8 +-
 IDE/src/main/java/org/sikuli/ide/SikuliIDE.java    |  4 +-
 .../java/org/sikuli/ide/SikuliIDEPopUpMenu.java    | 35 +++++----
 .../org/sikuli/scriptrunner/JRubyScriptRunner.java |  2 +-
 .../sikuli/scriptrunner/JythonScriptRunner.java    |  5 +-
 8 files changed, 148 insertions(+), 83 deletions(-)

diff --git a/Basics/src/main/java/org/sikuli/basics/Settings.java b/Basics/src/main/java/org/sikuli/basics/Settings.java
index c188306..c4af0ea 100644
--- a/Basics/src/main/java/org/sikuli/basics/Settings.java
+++ b/Basics/src/main/java/org/sikuli/basics/Settings.java
@@ -10,6 +10,8 @@ import java.io.File;
 import java.net.InetAddress;
 import java.net.Proxy;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
 import java.util.Properties;
 import java.util.prefs.Preferences;
 
@@ -94,7 +96,19 @@ public class Settings {
 
   private static Preferences options = Preferences.userNodeForPackage(SikuliX.class);
 
-  static {
+	public static Map<String, String> EndingTypes = new HashMap<String, String>();
+	public static Map<String, String> TypeEndings = new HashMap<String, String>();
+	public static String CPYTHON = "text/python";
+	public static String CRUBY = "text/ruby";
+	public static String CPLAIN = "text/plain";
+	public static String EPYTHON = "py";
+	public static String ERUBY = "rb";
+	public static String EPLAIN = "txt";
+	public static String RPYTHON = "jython";
+	public static String RRUBY = "jruby";
+	public static String EDEFAULT = EPYTHON;
+
+	static {
     Properties props = System.getProperties(); //for debugging
 
     if (System.getProperty("user.name") != null && !"".equals(System.getProperty("user.name"))) {
@@ -116,6 +130,13 @@ public class Settings {
       SikuliVersionIDE = SikuliVersionDefaultIDE;
       SikuliVersionScript = SikuliVersionDefaultScript;
     }
+
+		EndingTypes.put("py", CPYTHON );
+		EndingTypes.put("rb", CRUBY);
+		EndingTypes.put("txt", CPLAIN);
+		for (String k : EndingTypes.keySet()) {
+			TypeEndings.put(EndingTypes.get(k), k);
+		}
   }
 
   public static final int ISWINDOWS = 0;
@@ -129,6 +150,7 @@ public class Settings {
   public static final float FOREVER = Float.POSITIVE_INFINITY;
   public static final int JavaVersion = Integer.parseInt(java.lang.System.getProperty("java.version").substring(2, 3));
   public static final String JREVersion = java.lang.System.getProperty("java.runtime.version");
+
   public static boolean ThrowException = true; // throw FindFailed exception
   public static float AutoWaitTimeout = 3f; // in seconds
   public static float WaitScanRate = 3f; // frames per second
@@ -153,6 +175,9 @@ public class Settings {
    * true = start slow motion mode, false: stop it (default: false) show a visual for
    * SlowMotionDelay seconds (default: 2)
    */
+	public static boolean TRUE = true;
+	public static boolean FALSE = false;
+
   private static boolean ShowActions = false;
 
   public static boolean isShowActions() {
diff --git a/IDE/src/main/java/org/sikuli/ide/EditorPane.java b/IDE/src/main/java/org/sikuli/ide/EditorPane.java
index c454564..7fee103 100755
--- a/IDE/src/main/java/org/sikuli/ide/EditorPane.java
+++ b/IDE/src/main/java/org/sikuli/ide/EditorPane.java
@@ -60,30 +60,12 @@ public class EditorPane extends JTextPane implements KeyListener, CaretListener
 	private int _caret_last_x = -1;
 	private boolean _can_update_caret_last_x = true;
 	private SikuliIDEPopUpMenu popMenuImage;
-	private SikuliIDE theIDE;
-	private static Map<String, SikuliEditorKit> editorKits = new HashMap<String, SikuliEditorKit>();
+	private String sikuliContentType;
 
 	//<editor-fold defaultstate="collapsed" desc="Initialization">
 	public EditorPane(SikuliIDE ide) {
-		theIDE = ide;
 		pref = PreferencesUser.getInstance();
 		showThumbs = !pref.getPrefMorePlainText();
-		initKeyMap();
-		if (transferHandler == null) {
-			transferHandler = new MyTransferHandler();
-		}
-		setTransferHandler(transferHandler);
-		_highlighter = new EditorCurrentLineHighlighter(this);
-		addCaretListener(_highlighter);
-		setFont(new Font(pref.getFontName(), Font.PLAIN, pref.getFontSize()));
-		setMargin(new Insets(3, 3, 3, 3));
-		setBackground(Color.WHITE);
-		if (!Settings.isMac()) {
-			setSelectionColor(new Color(170, 200, 255));
-		}
-		updateDocumentListeners();
-
-		initEditorPane();
 	}
 
 	private void initEditorPane() {
@@ -98,34 +80,57 @@ public class EditorPane extends JTextPane implements KeyListener, CaretListener
 	public void initBeforeLoad(String scriptType) {
 		//TODO ask for scripttype on new pane
 		String scrType = null;
+		boolean paneIsEmpty = false;
 		if (scriptType == null) {
-			scriptType = "py";
+			scriptType = Settings.EDEFAULT;
+			paneIsEmpty = true;
 		}
-		if ("py".equals(scriptType)) {
-			scrType = "text/python";
+		if (Settings.EPYTHON.equals(scriptType)) {
+			scrType = Settings.CPYTHON;
 			_indentationLogic = SikuliIDE.getIDESupport(scriptType).getIndentationLogic();
 			_indentationLogic.setTabWidth(pref.getTabWidth());
-		} else if ("rb".equals(scriptType)) {
-			scrType = "text/ruby";
+		} else if (Settings.ERUBY.equals(scriptType)) {
+			scrType = Settings.CRUBY;
+			_indentationLogic = null;
 		}
 		if (scrType != null) {
-			if (!editorKits.containsKey(scrType)) {
-				SikuliEditorKit ek = new SikuliEditorKit(this);
-				editorKits.put(scrType, ek);
-				setEditorKitForContentType(scrType, ek);
-			}
-			setEditorKit(editorKits.get(scrType));
+			sikuliContentType = scrType;
+			SikuliEditorKit ek = new SikuliEditorKit(this);
+			setEditorKit(ek);
 			setContentType(scrType);
-		}
-		pref.addPreferenceChangeListener(new PreferenceChangeListener() {
-			@Override
-			public void preferenceChange(PreferenceChangeEvent event) {
-				if (event.getKey().equals("TAB_WIDTH")) {
-					_indentationLogic.setTabWidth(Integer.parseInt(event.getNewValue()));
-				}
+			if (paneIsEmpty) {
+				this.setText("");
 			}
-		});
+			pref.addPreferenceChangeListener(new PreferenceChangeListener() {
+				@Override
+				public void preferenceChange(PreferenceChangeEvent event) {
+					if (event.getKey().equals("TAB_WIDTH")) {
+						_indentationLogic.setTabWidth(Integer.parseInt(event.getNewValue()));
+					}
+				}
+			});
+		}
 		Debug.log(3, "InitTab: %s :--: %s", getContentType(), getEditorKit());
+		initKeyMap();
+		if (transferHandler == null) {
+			transferHandler = new MyTransferHandler();
+		}
+		setTransferHandler(transferHandler);
+		_highlighter = new EditorCurrentLineHighlighter(this);
+		addCaretListener(_highlighter);
+		setFont(new Font(pref.getFontName(), Font.PLAIN, pref.getFontSize()));
+		setMargin(new Insets(3, 3, 3, 3));
+		setBackground(Color.WHITE);
+		if (!Settings.isMac()) {
+			setSelectionColor(new Color(170, 200, 255));
+		}
+		updateDocumentListeners();
+
+		initEditorPane();
+	}
+
+	public String getSikuliContentType() {
+		return sikuliContentType;
 	}
 
 	public SikuliIDEPopUpMenu getPopMenuImage() {
@@ -287,8 +292,8 @@ public class EditorPane extends JTextPane implements KeyListener, CaretListener
 		}
 		ImagePath.remove(_srcBundlePath);
 		setSrcBundle(bundlePath);
-		_editingFile = createSourceFile(bundlePath, ".py");
-		Debug.log(2, "save to bundle: " + getSrcBundle());
+		_editingFile = createSourceFile(bundlePath, "." + Settings.TypeEndings.get(sikuliContentType));
+		Debug.log(3, "IDE: saveAsBundle: " + getSrcBundle());
 		writeSrcFile();
 		reparse();
 	}
@@ -304,13 +309,15 @@ public class EditorPane extends JTextPane implements KeyListener, CaretListener
 	}
 
 	private void writeSrcFile() throws IOException {
+		Debug.log(3, "IDE: writeSrcFile: " + _editingFile.getName());
 		writeFile(_editingFile.getAbsolutePath());
 		if (PreferencesUser.getInstance().getAtSaveMakeHTML()) {
 			convertSrcToHtml(getSrcBundle());
 		} else {
 			(new File(_editingFile.getAbsolutePath().replaceFirst("py", "html"))).delete();
 		}
-		if (PreferencesUser.getInstance().getAtSaveCleanBundle()) {
+//TODO bundle image clean in Java
+		if (Settings.CPYTHON.equals(getSikuliContentType()) && PreferencesUser.getInstance().getAtSaveCleanBundle()) {
 			cleanBundle(getSrcBundle());
 		}
 		setDirty(false);
diff --git a/IDE/src/main/java/org/sikuli/ide/EditorViewFactory.java b/IDE/src/main/java/org/sikuli/ide/EditorViewFactory.java
index 37724ff..63412a6 100755
--- a/IDE/src/main/java/org/sikuli/ide/EditorViewFactory.java
+++ b/IDE/src/main/java/org/sikuli/ide/EditorViewFactory.java
@@ -20,7 +20,7 @@ import org.sikuli.basics.Debug;
 
 public class EditorViewFactory implements ViewFactory {
 
-	private EditorPane pane;
+	private String sikuliContentType;
 
   @Override
   public View create(Element elem) {
@@ -28,7 +28,7 @@ public class EditorViewFactory implements ViewFactory {
     Debug.log(6, "ViewCreate: " + kind);
     if (kind != null) {
       if (kind.equals(AbstractDocument.ContentElementName)) {
-        return new HighlightLabelView(elem);
+        return new SyntaxHighlightLabelView(elem, sikuliContentType);
       } else if (kind.equals(AbstractDocument.ParagraphElementName)) {
         return new LineBoxView(elem, View.X_AXIS);
       } else if (kind.equals(AbstractDocument.SectionElementName)) {
@@ -43,8 +43,8 @@ public class EditorViewFactory implements ViewFactory {
     return new LabelView(elem);
   }
 
-	public void setPane(EditorPane p) {
-		pane = p;
+	public void setContentType(String ct) {
+		sikuliContentType = ct;
 	}
 }
 
@@ -127,16 +127,19 @@ class LineBoxView extends BoxView {
 //</editor-fold>
 
 //<editor-fold defaultstate="collapsed" desc="Highlight">
-class HighlightLabelView extends LabelView {
+class SyntaxHighlightLabelView extends LabelView {
 
   static FontMetrics _fMetrics = null;
   static String tabStr = nSpaces(PreferencesUser.getInstance().getTabWidth());
 
   private static Map<Pattern, Color> patternColors;
+  private static Map<Pattern, Color> patternColorsPython;
+  private static Map<Pattern, Color> patternColorsRuby;
+  private static Map<Pattern, Color> patternColorsSikuli;
   private static Font fontParenthesis;
 
   //<editor-fold defaultstate="collapsed" desc="keyword lists">
-  private static String[] keywords = {
+  private static String[] keywordsPython = {
     "and", "del", "for", "is", "raise",
     "assert", "elif", "from", "lambda", "return",
     "break", "else", "global", "not", "try",
@@ -144,10 +147,19 @@ class HighlightLabelView extends LabelView {
     "continue", "exec", "import", "pass", "yield",
     "def", "finally", "in", "print", "with"
   };
+  private static String[] keywordsRuby = {
+    "return", "break", "else", "class", "if", "nil", "begin", "end", "rescue",
+    "next", "def", "puts", "java_import", "eval", "then", "alias", "and",
+		"case", "defined?", "do", "elsif", "ensure", "false", "for", "in", "module",
+		"not", "or", "redo", "retry", "self", "super", "true", "undef", "unless",
+		"until", "when", "while", "yield", "BEGIN", "END", "__ENCODING__", "__END__",
+		"__FILE__", "__LINE__"
+  };
   private static String[] keywordsSikuliClass = {
     "Region", "Screen", "Match", "Pattern",
-    "Location", "VDict", "Env", "Key", "Button", "Finder",
-    "App", "KeyModifier", "Vision"
+    "Location", "Env", "Key", "Button", "Finder",
+    "App", "KeyModifier", "Mouse", "Image", "ImagePath", "ImageGroup",
+		"ImageFind", "ImageFinder"
   };
   private static String[] keywordsSikuli = {
     "find", "wait", "findAll", "waitVanish", "exists",
@@ -195,6 +207,8 @@ class HighlightLabelView extends LabelView {
     "NUM1", "NUM2", "NUM3", "NUM4", "NUM5", "NUM6", "NUM7", "NUM8", "NUM9",
     "SEPARATOR", "NUM_LOCK", "ADD", "MINUS", "MULTIPLY", "DIVIDE"
   };
+
+	private String sikuliContentType;
   //</editor-fold>
 
   static {
@@ -212,30 +226,43 @@ class HighlightLabelView extends LabelView {
 
     // NOTE: the order is important!
     patternColors = new HashMap<Pattern, Color>();
+    patternColorsPython = new HashMap<Pattern, Color>();
+    patternColorsRuby = new HashMap<Pattern, Color>();
+    patternColorsSikuli = new HashMap<Pattern, Color>();
     patternColors.put(Pattern.compile("(#:.*$)"), new Color(220, 220, 220));
     patternColors.put(Pattern.compile("(#.*$)"), new Color(138, 140, 193));
     patternColors.put(Pattern.compile("(\"[^\"]*\"?)"), new Color(128, 0, 0));
     patternColors.put(Pattern.compile("(\'[^\']*\'?)"), new Color(128, 0, 0));
     patternColors.put(Pattern.compile("\\b([0-9]+)\\b"), new Color(128, 64, 0));
-    for (int i = 0; i < keywords.length; i++) { patternColors.put(Pattern.compile(
-              "\\b(" + keywords[i] + ")\\b"), Color.blue);
+    for (int i = 0; i < keywordsPython.length; i++) { patternColorsPython.put(Pattern.compile(
+              "\\b(" + keywordsPython[i] + ")\\b"), Color.blue);
+    }
+    for (int i = 0; i < keywordsRuby.length; i++) { patternColorsRuby.put(Pattern.compile(
+              "\\b(" + keywordsRuby[i] + ")\\b"), Color.blue);
     }
-    for (int i = 0; i < keywordsSikuli.length; i++) { patternColors.put(Pattern.compile(
+    for (int i = 0; i < keywordsSikuli.length; i++) { patternColorsSikuli.put(Pattern.compile(
               "\\b(" + keywordsSikuli[i] + ")\\b"), new Color(63, 127, 127));
     }
-    for (int i = 0; i < keywordsSikuliClass.length; i++) { patternColors.put(Pattern.compile(
+    for (int i = 0; i < keywordsSikuliClass.length; i++) { patternColorsSikuli.put(Pattern.compile(
               "\\b(" + keywordsSikuliClass[i] + ")\\b"), new Color(215, 41, 56));
     }
-    for (int i = 0; i < constantsSikuli.length; i++) { patternColors.put(Pattern.compile(
+    for (int i = 0; i < constantsSikuli.length; i++) { patternColorsSikuli.put(Pattern.compile(
               "\\b(" + constantsSikuli[i] + ")\\b"), new Color(128, 64, 0));
     }
   }
 
-  public HighlightLabelView(Element elm) {
-    super(elm);
-  }
+	public SyntaxHighlightLabelView(Element elm, String contentType) {
+		super(elm);
+		sikuliContentType = contentType;
+		if (Settings.CPYTHON.equals(sikuliContentType)) {
+			patternColors.putAll(patternColorsPython);
+		} else if (Settings.CRUBY.equals(sikuliContentType)) {
+			patternColors.putAll(patternColorsRuby);
+		}
+		patternColors.putAll(patternColorsSikuli);
+	}
 
-  private static String nSpaces(int n) {
+	private static String nSpaces(int n) {
     char[] s = new char[n];
     Arrays.fill(s, ' ');
     return new String(s);
diff --git a/IDE/src/main/java/org/sikuli/ide/SikuliEditorKit.java b/IDE/src/main/java/org/sikuli/ide/SikuliEditorKit.java
index 6ded5e6..85e01a9 100755
--- a/IDE/src/main/java/org/sikuli/ide/SikuliEditorKit.java
+++ b/IDE/src/main/java/org/sikuli/ide/SikuliEditorKit.java
@@ -25,6 +25,7 @@ public class SikuliEditorKit extends StyledEditorKit {
 	public SikuliEditorKit(EditorPane p) {
 		_viewFactory = new EditorViewFactory();
 		pane = p;
+		((EditorViewFactory) _viewFactory).setContentType(pane.getSikuliContentType());
 	}
 	public static final String deIndentAction = "SKL.DeindentAction";
 	private static final TextAction[] defaultActions = {
@@ -61,10 +62,6 @@ public class SikuliEditorKit extends StyledEditorKit {
 		}
 
 		public void actionPerformed(JTextComponent text) {
-			indentationLogic = ((EditorPane) text).getIndentationLogic();
-			if (indentationLogic == null) {
-				return;
-			}
 			boolean indentError = false;
 			Document doc = text.getDocument();
 			Element map = doc.getDefaultRootElement();
@@ -516,8 +513,7 @@ public class SikuliEditorKit extends StyledEditorKit {
 
 	@Override
 	public String getContentType() {
-		//TODO other content type: ruby, DSL, ...
-		return "text/python";
+		return pane.getSikuliContentType();
 	}
 
 	@Override
diff --git a/IDE/src/main/java/org/sikuli/ide/SikuliIDE.java b/IDE/src/main/java/org/sikuli/ide/SikuliIDE.java
index 4fee9e7..c61300e 100755
--- a/IDE/src/main/java/org/sikuli/ide/SikuliIDE.java
+++ b/IDE/src/main/java/org/sikuli/ide/SikuliIDE.java
@@ -2010,6 +2010,8 @@ public class SikuliIDE extends JFrame {
 		}
 
 		protected void addScriptCode(IScriptRunner srunner) {
+			srunner.execBefore(null);
+			srunner.execBefore(new String[]{"Settings.setShowActions(Settings.FALSE)"});
 		}
 
 		public void stopRunning() {
@@ -2061,7 +2063,7 @@ public class SikuliIDE extends JFrame {
 		@Override
 		protected void addScriptCode(IScriptRunner srunner) {
 			srunner.execBefore(null);
-			srunner.execBefore(new String[]{"setShowActions(True)"});
+			srunner.execBefore(new String[]{"Settings.setShowActions(Settings.TRUE)"});
 		}
 	}
 
diff --git a/IDE/src/main/java/org/sikuli/ide/SikuliIDEPopUpMenu.java b/IDE/src/main/java/org/sikuli/ide/SikuliIDEPopUpMenu.java
index ad513a9..9806d31 100644
--- a/IDE/src/main/java/org/sikuli/ide/SikuliIDEPopUpMenu.java
+++ b/IDE/src/main/java/org/sikuli/ide/SikuliIDEPopUpMenu.java
@@ -24,7 +24,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
   private EditorPane refEditorPane = null;
   public static final String POP_LINE = "POP_LINE";
   private EditorLineNumberView refLineNumberView = null;
-  
+
   private MouseEvent mouseTrigger;
 
   /**
@@ -62,7 +62,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
       return;
     }
   }
-  
+
   public void doShow(CloseableTabbedPane comp, MouseEvent me) {
     mouseTrigger = me;
     show(comp, me.getX(), me.getY());
@@ -98,7 +98,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
     SikuliIDE.FileAction insertNewTab = SikuliIDE.getInstance().getFileAction(tabIndex);
     insertNewTab.doInsert(null);
   }
-  
+
   private JMenuItem createMenuItem(JMenuItem item, ActionListener listener) {
     item.addActionListener(listener);
     return item;
@@ -107,7 +107,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
   private JMenuItem createMenuItem(String name, ActionListener listener) {
     return createMenuItem(new JMenuItem(name), listener);
   }
-  
+
   private void setMenuText(int index, String text) {
     ((JMenuItem) getComponent(index)).setText(text);
   }
@@ -157,6 +157,8 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
 
   private void popTabMenu() {
     try {
+      add(createMenuItem("Set Type", new PopTabAction(PopTabAction.SET_TYPE)));
+      addSeparator();
       add(createMenuItem("Move Tab", new PopTabAction(PopTabAction.MOVE_TAB)));
       add(createMenuItem("Duplicate", new PopTabAction(PopTabAction.DUPLICATE)));
       add(createMenuItem("Open", new PopTabAction(PopTabAction.OPEN)));
@@ -169,7 +171,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
       add(createMenuItem("Run Slowly", new PopTabAction(PopTabAction.RUN_SLOW)));
       addSeparator();
       add(createMenuItem("Reset", new PopTabAction(PopTabAction.RESET)));
-      
+
     } catch (NoSuchMethodException ex) {
       validMenu = false;
     }
@@ -177,6 +179,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
 
   class PopTabAction extends MenuAction {
 
+    static final String SET_TYPE = "doSetType";
     static final String MOVE_TAB = "doMoveTab";
     static final String DUPLICATE = "doDuplicate";
     static final String OPEN = "doOpen";
@@ -186,7 +189,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
     static final String RUN = "doRun";
     static final String RUN_SLOW = "doRunSlow";
     static final String RESET = "doReset";
-    
+
     public PopTabAction() {
       super();
     }
@@ -195,13 +198,17 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
       super(item);
     }
 
+    public void doSetType(ActionEvent ae) {
+			Debug.log(3, "doSetType: selected");
+		}
+
     public void doMoveTab(ActionEvent ae) throws NoSuchMethodException {
       log(lvl, "doMoveTab: entered");
       if (getMenuText(0).contains("Insert")) {
         log(lvl, "doMoveTab: insert");
         doLoad(refTab.getSelectedIndex()+1);
-        setMenuText(0, "Move Tab"); 
-        setMenuText(3, "Open left"); 
+        setMenuText(0, "Move Tab");
+        setMenuText(3, "Open left");
         return;
       }
       refTab.resetLastClosed();
@@ -217,7 +224,7 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
       log(lvl, "doDuplicate: entered");
       fireIDEFileMenu("SAVE");
       fireIDEFileMenu("SAVE_AS");
-      setMenuText(3, "Insert left"); 
+      setMenuText(3, "Insert left");
       doOpenLeft(null);
     }
 
@@ -226,26 +233,26 @@ public class SikuliIDEPopUpMenu extends JPopupMenu {
       fireInsertTabAndLoad(tabIndex);
       return success;
     }
-    
+
     public void doOpen(ActionEvent ae) throws NoSuchMethodException {
       log(lvl, "doOpen: entered");
       refTab.resetLastClosed();
       doLoad(refTab.getSelectedIndex()+1);
     }
-    
+
     public void doOpenLeft(ActionEvent ae) throws NoSuchMethodException {
       log(lvl, "doOpenLeft: entered");
       if (getMenuText(3).contains("Insert")) {
         log(lvl, "doMoveTab: insert left");
         doLoad(refTab.getSelectedIndex());
-        setMenuText(0, "Move Tab"); 
-        setMenuText(3, "Open left"); 
+        setMenuText(0, "Move Tab");
+        setMenuText(3, "Open left");
         return;
       }
       refTab.resetLastClosed();
       doLoad(refTab.getSelectedIndex());
     }
-    
+
     public void doSave(ActionEvent ae) throws NoSuchMethodException {
       log(lvl, "doSave: entered");
       fireIDEFileMenu("SAVE");
diff --git a/JRuby/src/main/java/org/sikuli/scriptrunner/JRubyScriptRunner.java b/JRuby/src/main/java/org/sikuli/scriptrunner/JRubyScriptRunner.java
index 3bf9633..3c791d5 100755
--- a/JRuby/src/main/java/org/sikuli/scriptrunner/JRubyScriptRunner.java
+++ b/JRuby/src/main/java/org/sikuli/scriptrunner/JRubyScriptRunner.java
@@ -157,7 +157,7 @@ public class JRubyScriptRunner implements IScriptRunner {
 
 	@Override
 	public String getName() {
-		return "jruby";
+		return Settings.RRUBY;
 	}
 
 	@Override
diff --git a/Jython/src/main/java/org/sikuli/scriptrunner/JythonScriptRunner.java b/Jython/src/main/java/org/sikuli/scriptrunner/JythonScriptRunner.java
index 3251ca6..57b1303 100644
--- a/Jython/src/main/java/org/sikuli/scriptrunner/JythonScriptRunner.java
+++ b/Jython/src/main/java/org/sikuli/scriptrunner/JythonScriptRunner.java
@@ -429,7 +429,7 @@ public class JythonScriptRunner implements IScriptRunner {
    */
   @Override
   public String getName() {
-    return "jython";
+    return Settings.RPYTHON;
   }
 
   /**
@@ -524,7 +524,8 @@ public class JythonScriptRunner implements IScriptRunner {
   /**
    * {@inheritDoc}
    */
-  @Override
+
+	@Override
   public void execBefore(String[] stmts) {
     if (stmts == null) {
       codeBefore = null;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/sikuli.git



More information about the pkg-java-commits mailing list