Class SwingGui
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.mozilla.javascript.tools.debugger.SwingGui
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Accessible,RootPaneContainer,WindowConstants,GuiCallback
GUI for the Rhino debugger.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrameNested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested 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 TypeFieldDescriptionprivate EventQueueThe AWT EventQueue.private JSInternalConsoleThe console that displays I/O from the script.private ContextWindowTheJPanelthat shows information about the context.private FileWindowTheFileWindowthat last had the focus.private JDesktopPaneTheJDesktopPanethat holds the script windows.(package private) DimThe debugger.(package private) JFileChooserFile choose dialog for loading a script.private RunnableThe action to run when the 'Exit' menu item is chosen or the frame is closed.private final Map<String, FileWindow> Hash table of script URLs to their internal frames.private MenubarThe menu bar.private static final longSerializable magic number.private JSplitPaneprivate JLabelThe status bar.private JToolBarThe tool bar.Hash table of internal frame names to the internal frames themselves.Fields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabledFields inherited from class java.awt.Frame
CROSSHAIR_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_CURSORFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidPerforms an action from the menu or toolbar.(package private) voidaddTopLevel(String key, JFrame frame) Records a new internal frame.private StringchooseFile(String title) Displays aJFileChooserand returns the selected filename.protected voidcreateFileWindow(Dim.SourceInfo sourceInfo, int line) Creates and shows a newFileWindowfor the given source.voidProcesses the next GUI event.voidenterInterrupt(Dim.StackFrame lastFrame, String threadTitle, String alertMessage) Called when the interrupt loop has been entered.(package private) voidenterInterruptImpl(Dim.StackFrame lastFrame, String threadTitle, String alertMessage) Handles script interruption.private voidexit()Runs theexitAction.Returns the debugger console component.(package private) FileWindowgetFileWindow(String url) Returns theFileWindowfor the given URL.Returns the Menubar of this debugger frame.private JInternalFrameReturns the current selected internal frame.(package private) static StringgetShortName(String url) Returns a short version of the given URL.private JMenuReturns the 'Window' menu.private voidinit()Constructs the debugger GUI.booleanReturns whether the current thread is the GUI event thread.private StringReads the file with the given name and returns its contents as a String.(package private) voidCloses the givenFileWindow.voidSets theRunnablethat will be run when the "Exit" menu item is chosen.private voidsetFilePosition(FileWindow w, int line) Moves the current position in the givenFileWindowto the given line.(package private) static voidsetResizeWeight(JSplitPane pane, double weight) CallsJSplitPane.setResizeWeight(double)via reflection.voidsetVisible(boolean b) Sets the visibility of the debugger GUI.protected voidshowFileWindow(String sourceUrl, int lineNumber) Shows aFileWindowfor the given source, creating it if it doesn't exist yet.(package private) voidshowStopLine(Dim.StackFrame frame) Shows the line at which execution in the given stack frame just stopped.private voidupdateEnabled(boolean interrupted) Enables or disables the menu and tool bars with respect to the state of script execution.protected booleanupdateFileWindow(Dim.SourceInfo sourceInfo) Update the source text forsourceInfo.voidupdateSourceText(Dim.SourceInfo sourceInfo) Called when the source text for a script has been updated.Methods inherited from class javax.swing.JFrame
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, updateMethods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecoratedMethods inherited from class java.awt.Window
addPropertyChangeListener, 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, show, toBack, toFrontMethods inherited from class java.awt.Container
add, 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, validateTreeMethods inherited from class java.awt.Component
action, 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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerializable magic number.- See Also:
-
dim
Dim dimThe debugger. -
exitAction
The action to run when the 'Exit' menu item is chosen or the frame is closed. -
desk
TheJDesktopPanethat holds the script windows. -
context
TheJPanelthat shows information about the context. -
toolBar
The tool bar. -
console
The console that displays I/O from the script. -
split1
-
statusBar
The status bar. -
toplevels
Hash table of internal frame names to the internal frames themselves. -
fileWindows
Hash table of script URLs to their internal frames. -
currentWindow
TheFileWindowthat last had the focus. -
dlg
JFileChooser dlgFile choose dialog for loading a script. -
awtEventQueue
The AWT EventQueue. Used for manually pumping AWT events fromdispatchNextGuiEvent().
-
-
Constructor Details
-
SwingGui
Creates a new SwingGui.
-
-
Method Details
-
getMenubar
Returns the Menubar of this debugger frame. -
setExitAction
Sets theRunnablethat will be run when the "Exit" menu item is chosen. -
getConsole
Returns the debugger console component. -
setVisible
public void setVisible(boolean b) Sets the visibility of the debugger GUI.- Overrides:
setVisiblein classWindow
-
addTopLevel
Records a new internal frame. -
init
private void init()Constructs the debugger GUI. -
exit
private void exit()Runs theexitAction. -
getFileWindow
Returns theFileWindowfor the given URL. -
getShortName
Returns a short version of the given URL. -
removeWindow
Closes the givenFileWindow. -
showStopLine
Shows the line at which execution in the given stack frame just stopped. -
showFileWindow
Shows aFileWindowfor the given source, creating it if it doesn't exist yet. iflineNumberis greater than -1, it indicates the line number to select and display.- Parameters:
sourceUrl- the source URLlineNumber- the line number to select, or -1
-
createFileWindow
Creates and shows a newFileWindowfor the given source. -
updateFileWindow
Update the source text forsourceInfo. This returns true if aFileWindowfor the given source exists and could be updated. Otherwise, this does nothing and returns false.- Parameters:
sourceInfo- the source info- Returns:
- true if a
FileWindowfor the given source exists and could be updated, false otherwise.
-
setFilePosition
Moves the current position in the givenFileWindowto the given line. -
enterInterruptImpl
Handles script interruption. -
getWindowMenu
Returns the 'Window' menu. -
chooseFile
Displays aJFileChooserand returns the selected filename. -
getSelectedFrame
Returns the current selected internal frame. -
updateEnabled
private void updateEnabled(boolean interrupted) Enables or disables the menu and tool bars with respect to the state of script execution. -
setResizeWeight
CallsJSplitPane.setResizeWeight(double)via reflection. For compatibility, since JDK < 1.3 does not have this method. -
readFile
Reads the file with the given name and returns its contents as a String. -
updateSourceText
Called when the source text for a script has been updated.- Specified by:
updateSourceTextin interfaceGuiCallback
-
enterInterrupt
Called when the interrupt loop has been entered.- Specified by:
enterInterruptin interfaceGuiCallback
-
isGuiEventThread
public boolean isGuiEventThread()Returns whether the current thread is the GUI event thread.- Specified by:
isGuiEventThreadin interfaceGuiCallback
-
dispatchNextGuiEvent
Processes the next GUI event.- Specified by:
dispatchNextGuiEventin interfaceGuiCallback- Throws:
InterruptedException
-
actionPerformed
Performs an action from the menu or toolbar.
-