mars.venus
Class EditTabbedPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JTabbedPane
                  extended by mars.venus.EditTabbedPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants

public class EditTabbedPane
extends JTabbedPane

Tabbed pane for the editor. Each of its tabs represents an open file.

Author:
Sanderson
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JTabbedPane
JTabbedPane.AccessibleJTabbedPane, JTabbedPane.ModelListener
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JTabbedPane
changeEvent, changeListener, model, SCROLL_TAB_LAYOUT, tabPlacement, WRAP_TAB_LAYOUT
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
EditTabbedPane(VenusUI appFrame, Editor editor, MainPane mainPane)
          Constructor for the EditTabbedPane class.
 
Method Summary
 boolean closeAllFiles()
          Carries out all necessary operations to implement the Close All operation from the File menu.
 boolean closeCurrentFile()
          Carries out all necessary operations to implement the Close operation from the File menu.
 boolean editsSavedOrAbandoned()
          Check whether file has unsaved edits and, if so, check with user about saving them.
 EditPane getCurrentEditTab()
          The current EditPane representing a file.
 EditPane getCurrentEditTabForFile(File file)
          If the given file is open in the tabbed pane, make it the current tab.
 EditPane getEditPaneForFile(String pathname)
          If there is an EditPane for the given file pathname, return it else return null.
 void newFile()
          Carries out all necessary operations to implement the New operation from the File menu.
 boolean openFile()
          Carries out all necessary operations to implement the Open operation from the File menu.
 boolean openFile(File file)
          Carries out all necessary operations to open the specified file in the editor.
 void remove(EditPane editPane)
          Remove the pane and update menu status
 boolean saveAllFiles()
          Saves all files currently open in the editor.
 boolean saveAsCurrentFile()
          Pops up a dialog box to do "Save As" operation.
 boolean saveCurrentFile()
          Saves file under existing name.
 void setCurrentEditTab(EditPane editPane)
          Select the specified EditPane to be the current tab.
 
Methods inherited from class javax.swing.JTabbedPane
add, add, add, add, add, addChangeListener, addTab, addTab, addTab, createChangeListener, fireStateChanged, getAccessibleContext, getBackgroundAt, getBoundsAt, getChangeListeners, getComponentAt, getDisabledIconAt, getDisplayedMnemonicIndexAt, getForegroundAt, getIconAt, getMnemonicAt, getModel, getSelectedComponent, getSelectedIndex, getTabComponentAt, getTabCount, getTabLayoutPolicy, getTabPlacement, getTabRunCount, getTitleAt, getToolTipText, getToolTipTextAt, getUI, getUIClassID, indexAtLocation, indexOfComponent, indexOfTab, indexOfTab, indexOfTabComponent, insertTab, isEnabledAt, paramString, remove, remove, removeAll, removeChangeListener, removeTabAt, setBackgroundAt, setComponentAt, setDisabledIconAt, setDisplayedMnemonicIndexAt, setEnabledAt, setForegroundAt, setIconAt, setMnemonicAt, setModel, setSelectedComponent, setSelectedIndex, setTabComponentAt, setTabLayoutPolicy, setTabPlacement, setTitleAt, setToolTipTextAt, setUI, updateUI
 
Methods 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, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EditTabbedPane

public EditTabbedPane(VenusUI appFrame,
                      Editor editor,
                      MainPane mainPane)
Constructor for the EditTabbedPane class.

Method Detail

getCurrentEditTab

public EditPane getCurrentEditTab()
The current EditPane representing a file. Returns null if no files open.

Returns:
the current editor pane

setCurrentEditTab

public void setCurrentEditTab(EditPane editPane)
Select the specified EditPane to be the current tab.

Parameters:
editPane - The EditPane tab to become current.

getCurrentEditTabForFile

public EditPane getCurrentEditTabForFile(File file)
If the given file is open in the tabbed pane, make it the current tab. If not opened, open it in a new tab and make it the current tab. If file is unable to be opened, leave current tab as is.

Parameters:
file - File object for the desired file.
Returns:
EditPane for the specified file, or null if file is unable to be opened in an EditPane

newFile

public void newFile()
Carries out all necessary operations to implement the New operation from the File menu.


openFile

public boolean openFile()
Carries out all necessary operations to implement the Open operation from the File menu. This begins with an Open File dialog.

Returns:
true if file was opened, false otherwise.

openFile

public boolean openFile(File file)
Carries out all necessary operations to open the specified file in the editor.

Returns:
true if file was opened, false otherwise.

closeCurrentFile

public boolean closeCurrentFile()
Carries out all necessary operations to implement the Close operation from the File menu. May return false, for instance when file has unsaved changes and user selects Cancel from the warning dialog.

Returns:
true if file was closed, false otherwise.

closeAllFiles

public boolean closeAllFiles()
Carries out all necessary operations to implement the Close All operation from the File menu.

Returns:
true if files closed, false otherwise.

saveCurrentFile

public boolean saveCurrentFile()
Saves file under existing name. If no name, will invoke Save As.

Returns:
true if the file was actually saved.

saveAsCurrentFile

public boolean saveAsCurrentFile()
Pops up a dialog box to do "Save As" operation. If necessary an additional overwrite dialog is performed.

Returns:
true if the file was actually saved.

saveAllFiles

public boolean saveAllFiles()
Saves all files currently open in the editor.

Returns:
true if operation succeeded otherwise false.

remove

public void remove(EditPane editPane)
Remove the pane and update menu status


getEditPaneForFile

public EditPane getEditPaneForFile(String pathname)
If there is an EditPane for the given file pathname, return it else return null.

Parameters:
pathname - Pathname for desired file
Returns:
the EditPane for this file if it is open in the editor, or null if not.

editsSavedOrAbandoned

public boolean editsSavedOrAbandoned()
Check whether file has unsaved edits and, if so, check with user about saving them.

Returns:
true if no unsaved edits or if user chooses to save them or not; false if there are unsaved edits and user cancels the operation.