Class CodeEditor
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
com.inductiveautomation.ignition.designer.gui.tools.CodeEditor
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Accessible
CodeEditor is a panel that includes a syntax highlighting text area that defaults to Python syntax, bracket matching,
line numbering, etc.
The main components are RSyntaxTextArea, and related packages from.
- Since:
- 7.8.1
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.fife.ui.autocomplete.AutoCompletionprotected org.fife.rsta.ui.CollapsibleSectionPanelstatic final String[]protected org.fife.ui.rtextarea.RTextScrollPaneprotected com.inductiveautomation.ignition.designer.gui.tools.DisplayTrackingSyntaxTextAreaFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionCodeEditor(DesignerContext context) CodeEditor(JFrame parent, DesignerContext context) This constructor will instantiate a CodeEditor and use the context's script manager to populate and initialize the auto completion hints using default color theme and Python syntax highlighting. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAutoCompletionhints(String pathKey, List<ScriptFunctionHint> hints) Will add a one or more hints to the autocomplete system for all CodeEditors for the lifetime of this gateway.static voidfixCommentAction(org.fife.ui.rsyntaxtextarea.RSyntaxTextArea textArea) Remove the pre-seeded 'close tag' action fromKeyEvent.VK_SLASHand replace it withRSyntaxTextAreaEditorKit.rstaToggleCommentActionorg.fife.ui.autocomplete.AutoCompletionorg.fife.rsta.ui.CollapsibleSectionPanelorg.fife.ui.autocomplete.CompletionProviderorg.fife.ui.rsyntaxtextarea.ErrorStriporg.fife.ui.rtextarea.RTextScrollPanegetText()Returns the text held by the internal RSyntaxText area.org.fife.ui.rsyntaxtextarea.RSyntaxTextAreabooleanprotected voidWill rebuild the completionsvoidremoveAutoCompletions(String pathKey, List<ScriptFunctionHint> hints) Removes all hints that have the same function signature as those in the list and are associated with the given pathKeyvoidsetCurrentTheme(NamedTheme namedTheme) voidvoidshowCompletionDescription(boolean show) Sets whether or not the autocompletion should pop up the description window for functionsMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeMethods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
PYTHON_KEYWORDS
-
textArea
protected com.inductiveautomation.ignition.designer.gui.tools.DisplayTrackingSyntaxTextArea textArea -
rTextScrollPane
protected org.fife.ui.rtextarea.RTextScrollPane rTextScrollPane -
autoCompleter
protected org.fife.ui.autocomplete.AutoCompletion autoCompleter -
collapsingSectionPanel
protected org.fife.rsta.ui.CollapsibleSectionPanel collapsingSectionPanel
-
-
Constructor Details
-
CodeEditor
public CodeEditor() -
CodeEditor
This constructor will instantiate a CodeEditor and use the context's script manager to populate and initialize the auto completion hints using default color theme and Python syntax highlighting. -
CodeEditor
-
-
Method Details
-
addAutoCompletionhints
Will add a one or more hints to the autocomplete system for all CodeEditors for the lifetime of this gateway. The 'pathKey' is generally the first part of the function's fully qualified path. For example, 'shared.timers.startTimer()' would have a pathKey of 'shared'.- Parameters:
pathKey- the key that will be registered with the autocompletion system.hints- a list ofScriptFunctionHintthat will be added to the auto-completion system
-
removeAutoCompletions
Removes all hints that have the same function signature as those in the list and are associated with the given pathKey- Parameters:
pathKey- the pathkey, generally the first part of the full function pathhints- a list of all hints that should be removed from the map
-
rebuildDefaultCompletions
protected void rebuildDefaultCompletions()Will rebuild the completions -
fixCommentAction
public static void fixCommentAction(org.fife.ui.rsyntaxtextarea.RSyntaxTextArea textArea) Remove the pre-seeded 'close tag' action fromKeyEvent.VK_SLASHand replace it withRSyntaxTextAreaEditorKit.rstaToggleCommentAction- Parameters:
textArea- the text area to modify the input map of
-
getCurrentTheme
-
setCurrentTheme
-
showCompletionDescription
public void showCompletionDescription(boolean show) Sets whether or not the autocompletion should pop up the description window for functions- Parameters:
show- true to show the description window, false to only show the autocomplete options
-
isShowCompletionDescription
public boolean isShowCompletionDescription() -
getAutoCompleter
public org.fife.ui.autocomplete.AutoCompletion getAutoCompleter() -
getCollapsingSectionPanel
public org.fife.rsta.ui.CollapsibleSectionPanel getCollapsingSectionPanel() -
getCompletionProvider
public org.fife.ui.autocomplete.CompletionProvider getCompletionProvider() -
getrTextScrollPane
public org.fife.ui.rtextarea.RTextScrollPane getrTextScrollPane() -
getErrorStrip
public org.fife.ui.rsyntaxtextarea.ErrorStrip getErrorStrip() -
getTextArea
public org.fife.ui.rsyntaxtextarea.RSyntaxTextArea getTextArea() -
getText
Returns the text held by the internal RSyntaxText area. If the text area is null, an empty string is returned.- Returns:
- the contents of the code editor, or an empty String
-
setFont
- Overrides:
setFontin classJComponent
-