Package megameklab.ui
Class MegaMekLabMainUI
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
megameklab.ui.MegaMekLabMainUI
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,EventListener,Accessible,EntitySource,FileNameManager,RefreshListener
- Direct Known Subclasses:
ASMainUI,BAMainUI,BMMainUI,CIMainUI,CVMainUI,DSMainUI,GEMainUI,HHWMainUI,PMMainUI,SVMainUI,WSMainUI
public abstract class MegaMekLabMainUI
extends JPanel
implements RefreshListener, EntitySource, FileNameManager
- 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 megamek.common.ui.EnhancedTabbedPaneprotected booleanFields 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidClears the undo and redo history stacks.booleanexit()voidInvalidates the current snapshot of the unit.megamek.common.ui.EnhancedTabbedPanemegamek.common.units.Entityabstract JDialogabstract List<megamek.common.equipment.Mounted<?>>Retrieves a list of mounted components that are currently not assigned to a location.booleanbooleanhasRedo()Checks if there is a redo operation available.booleanhasUndo()Checks if there is an undo operation available.booleanisDirty()Returns true if the unit has been modified since it was last saved.voidCalled when the panel is activated or shown for the first initialization (lazy tab loading)voidReattaches all tabs to the main window.voidredo()Performs redo operation if available.voidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidreload()Performs reload operation if available.abstract voidvoidRequests a dirty check on the unit.booleanbooleansaveUnit()booleanvoidSchedules a full refresh.voidsetEntity(megamek.common.units.Entity en) voidvoidsetFileName(String fileName) voidsetTabOwner(MegaMekLabTabbedUI owner) voidsetVisible(boolean b) voidundo()Performs undo operation if available.Methods 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, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, 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, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface megameklab.ui.EntitySource
createNewUnit, createNewUnit, createNewUnit, createNewUnit, createNewUnit, getTechManager
-
Field Details
-
configPane
protected megamek.common.ui.EnhancedTabbedPane configPane -
refreshRequired
protected boolean refreshRequired
-
-
Constructor Details
-
MegaMekLabMainUI
public MegaMekLabMainUI()
-
-
Method Details
-
onActivated
public void onActivated()Called when the panel is activated or shown for the first initialization (lazy tab loading) -
getConfigPane
public megamek.common.ui.EnhancedTabbedPane getConfigPane() -
reattachAllTabs
public void reattachAllTabs()Reattaches all tabs to the main window. -
requestDirtyCheck
public void requestDirtyCheck()Requests a dirty check on the unit. This is done by scheduling a dirtyCheck() call to be run on the event dispatch thread. -
forceDirtyUntilNextSave
public void forceDirtyUntilNextSave()Invalidates the current snapshot of the unit. -
hasUndo
public boolean hasUndo()Checks if there is an undo operation available. -
hasRedo
public boolean hasRedo()Checks if there is a redo operation available. -
canReload
public boolean canReload() -
undo
public void undo()Performs undo operation if available. -
redo
public void redo()Performs redo operation if available. -
reload
public void reload()Performs reload operation if available. -
isDirty
public boolean isDirty()Returns true if the unit has been modified since it was last saved. -
clearUndoRedoHistory
public void clearUndoRedoHistory()Clears the undo and redo history stacks. -
setVisible
public void setVisible(boolean b) - Overrides:
setVisiblein classJComponent
-
safetyPrompt
public boolean safetyPrompt() -
saveUnitAs
public boolean saveUnitAs() -
saveUnit
public boolean saveUnit() -
exit
public boolean exit() -
reloadTabs
public abstract void reloadTabs() -
refreshAll
public void refreshAll()- Specified by:
refreshAllin interfaceRefreshListener
-
refreshArmor
public void refreshArmor()- Specified by:
refreshArmorin interfaceRefreshListener
-
refreshBuild
public void refreshBuild()- Specified by:
refreshBuildin interfaceRefreshListener
-
refreshEquipment
public void refreshEquipment()- Specified by:
refreshEquipmentin interfaceRefreshListener
-
refreshEquipmentTable
public void refreshEquipmentTable()- Specified by:
refreshEquipmentTablein interfaceRefreshListener
-
refreshHeader
public void refreshHeader()- Specified by:
refreshHeaderin interfaceRefreshListener
-
refreshStatus
public void refreshStatus()- Specified by:
refreshStatusin interfaceRefreshListener
-
refreshTransport
public void refreshTransport()- Specified by:
refreshTransportin interfaceRefreshListener
-
refreshStructure
public void refreshStructure()- Specified by:
refreshStructurein interfaceRefreshListener
-
refreshWeapons
public void refreshWeapons()- Specified by:
refreshWeaponsin interfaceRefreshListener
-
refreshPreview
public void refreshPreview()- Specified by:
refreshPreviewin interfaceRefreshListener
-
refreshSummary
public void refreshSummary()- Specified by:
refreshSummaryin interfaceRefreshListener
-
setEntity
public void setEntity(megamek.common.units.Entity en) -
getEntity
public megamek.common.units.Entity getEntity()- Specified by:
getEntityin interfaceEntitySource
-
setEntity
-
scheduleRefresh
public void scheduleRefresh()Description copied from interface:RefreshListenerSchedules a full refresh. This can be called any number of times but the refresh itself will be performed only once at the end of the current Swing UI Event (it is scheduled usingSwingUtilities.invokeLater(Runnable)) and prevented from running several times in a row.- Specified by:
scheduleRefreshin interfaceRefreshListener
-
getFloatingEquipmentDatabase
-
getFileName
- Specified by:
getFileNamein interfaceFileNameManager
-
setFileName
- Specified by:
setFileNamein interfaceFileNameManager
-
hasEntityNameChanged
public boolean hasEntityNameChanged()- Specified by:
hasEntityNameChangedin interfaceFileNameManager
-
setTabOwner
-
getTabOwner
-
getParentFrame
-
getUnallocatedMounted
Retrieves a list of mounted components that are currently not assigned to a location. Such equipment would be deleted on save and reload.- Returns:
- a List containing unallocated Mounted objects.
-