public class ScriptEditor extends JFrame implements ActionListener, PropertyChangeListener, WindowListener
JFrame.AccessibleJFrameFrame.AccessibleAWTFrameWindow.AccessibleAWTWindow, Window.TypeContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategyaccessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabledCROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSORBOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTDISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSEABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Modifier | Constructor and Description |
|---|---|
private |
ScriptEditor()
Create the frame.
|
| Modifier and Type | Method and Description |
|---|---|
void |
actionPerformed(ActionEvent e) |
void |
closeFile()
Closes the current file and waits for edits
|
protected void |
disableCancellation()
Don't let the user cancel the script using Ctrl+C.
|
private void |
disableF5Running()
Disables running a script using the F5 key.
|
protected void |
enableCancellation()
Let the user cancel the script using Ctrl+C.
|
private void |
enableF5Running()
Enables running the script using the F5 key.
|
private File |
getCurDir() |
static ScriptEditor |
getInstance()
Gets the current instance of the script editor.
|
ScriptEditorTab |
getSelectedTab()
Returns the currently selected tab.
|
int |
getTabIndexForFile(File f)
Searches for an index in the tabbed pane where the file may already be
loaded.
|
private void |
handleRedoAction() |
private void |
handleUndoAction() |
void |
initDialogs()
Creates the Find and Replace dialogs.
|
static void |
main(String[] args)
Launch the application.
|
int |
newTab()
Add a new tab.
|
void |
openFile(boolean viaDialog)
Opens a file selected by a file chooser, or sets the tab visible, which
contains the script
|
void |
openInNewTab(File f)
Opens a script file in a new editor tab.
|
void |
propertyChange(PropertyChangeEvent evt) |
int |
removeTab(ScriptEditorTab tab)
Removes the specified tab object.
|
protected void |
runScript()
Kicks off the script engine for the selected tab.
|
private void |
save(ScriptEditorTab tab) |
void |
saveAll()
Saves all open tabs either to their specified files or to a new file, if
they contain any content
|
private void |
saveAs()
Choose a location and save the file as new one in the same tab.
|
private void |
setInitialMenuState() |
private void |
validateMenuState()
Sets the menu state according to the editing state of the text in the
currently selected tab.
|
void |
windowActivated(WindowEvent e) |
void |
windowClosed(WindowEvent e) |
void |
windowClosing(WindowEvent e) |
void |
windowDeactivated(WindowEvent e) |
void |
windowDeiconified(WindowEvent e) |
void |
windowIconified(WindowEvent e) |
void |
windowOpened(WindowEvent e) |
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, updateaddNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecoratedaddPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFrontadd, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetFont, postEventprivate static final org.apache.log4j.Logger logger
private static final long serialVersionUID
private static ScriptEditor currentInstance
private JPanel contentPane
private org.fife.rsta.ui.search.FindDialog findDialog
private org.fife.rsta.ui.search.ReplaceDialog replaceDialog
private PropertyManager pm
private ArrayList<ScriptEditorTab> allTabs
ScriptEditorTabs.private String defaultTitle
private JLabel lblInfo
private JMenuItem mntmSave
private JMenuItem mntmSaveAs
private JMenuItem mntmOpen
private JMenuItem mntmClose
private JMenuItem mntmExit
private JMenuItem mntmUndo
private JMenuItem mntmRedo
private JMenuItem mntmCut
private JMenuItem mntmCopy
private JMenuItem mntmPaste
private JMenuItem mntmFind
private JMenuItem mntmReplace
private JMenuItem mntmGoToLine
private JLabel lblProcessingIcon
private GroovyScriptConsoleFrame frame
private OutputStreamInterceptor osi
private PrintStream stdOut
private SwingWorker<Void,Void> executor
private JButton btnConsole
private Component horizontalStrut
private JTabbedPane tabbedPane
private JMenuItem mntmNew
private JMenuItem mntmSaveAll
public static void main(String[] args)
private void validateMenuState()
private void enableF5Running()
private void disableF5Running()
public void initDialogs()
public void actionPerformed(ActionEvent e)
actionPerformed in interface ActionListenerpublic int getTabIndexForFile(File f)
f - the file to search forpublic void openFile(boolean viaDialog)
private File getCurDir()
protected void runScript()
protected void disableCancellation()
protected void enableCancellation()
public void closeFile()
private void save(ScriptEditorTab tab)
private void saveAs()
private void setInitialMenuState()
public static ScriptEditor getInstance()
private void handleUndoAction()
private void handleRedoAction()
public void openInNewTab(File f)
f - the file to openpublic int newTab()
public int removeTab(ScriptEditorTab tab)
tab - the tab to be removedpublic ScriptEditorTab getSelectedTab()
ScriptEditorTabpublic void saveAll()
public void propertyChange(PropertyChangeEvent evt)
propertyChange in interface PropertyChangeListenerpublic void windowOpened(WindowEvent e)
windowOpened in interface WindowListenerpublic void windowClosing(WindowEvent e)
windowClosing in interface WindowListenerpublic void windowClosed(WindowEvent e)
windowClosed in interface WindowListenerpublic void windowIconified(WindowEvent e)
windowIconified in interface WindowListenerpublic void windowDeiconified(WindowEvent e)
windowDeiconified in interface WindowListenerpublic void windowActivated(WindowEvent e)
windowActivated in interface WindowListenerpublic void windowDeactivated(WindowEvent e)
windowDeactivated in interface WindowListenerCopyright © 2009–2017 Helmut Ahammer, Philipp Kainz. All rights reserved.