Package megameklab.ui.combatVehicle
Class GEMainUI
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
megameklab.ui.MegaMekLabMainUI
megameklab.ui.combatVehicle.GEMainUI
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,EventListener,Accessible,BFSLinkedEditor,EntitySource,FileNameManager,RefreshListener
- 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
Fields inherited from class megameklab.ui.MegaMekLabMainUI
configPane, refreshRequiredFields 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 TypeMethodDescriptionprotected voidapplyRestoredAsset(megamek.common.battlefieldSupport.BattlefieldSupportAsset asset) Re-injects a Battlefield Support Asset carrier restored from a memento (undo/redo/reload) back onto this editor.voidcreateNewUnit(long entityType, boolean isPrimitive, boolean isIndustrial, megamek.common.units.Entity oldUnit) Replace the current Entity with a new one of the indicated typeprotected BFSAssetSourceThe linked Battlefield Support Asset source (carrier + enable flag + asset file path) this editor holds, ornullwhen this editor cannot hold a linked asset.protected FluffTabReturns the FluffTab for this unit editor.megamek.common.interfaces.ITechManagerList<megamek.common.equipment.Mounted<?>> Retrieves a list of mounted components that are currently not assigned to a location.booleanbooleanvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidvoidsetBattlefieldSupportAssetLinked(boolean enabled) Enables or disables the linked asset: toggles the carrier's enabled state, shows/hides the Asset tab and records the change as a dirty/undo state change.Methods inherited from class megameklab.ui.MegaMekLabMainUI
adoptLinkedBattlefieldSupportAsset, adoptLinkedBattlefieldSupportAsset, canHoldLinkedBattlefieldSupportAsset, canReload, clearUndoRedoHistory, commitPendingEditorChanges, exit, forceDirtyUntilNextSave, getBattlefieldSupportAsset, getBattlefieldSupportAssetCarrier, getBattlefieldSupportAssetFilePath, getConfigPane, getEntity, getFileName, getParentFrame, getPendingPairedSaveFileName, getTabOwner, hasEntityNameChanged, hasRedo, hasUndo, isBattlefieldSupportAssetEnabled, isDirty, onActivated, reattachAllTabs, redo, refreshHeader, reload, requestDirtyCheck, restorePendingPairedSaveFileName, safetyPrompt, saveUnit, saveUnitAs, scheduleRefresh, setEntity, setEntity, setFileName, setTabOwner, setVisible, undoMethods 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
copyUnitBasics, createNewUnit, createNewUnit, createNewUnit, createNewUnit
-
Constructor Details
-
GEMainUI
-
GEMainUI
public GEMainUI()
-
-
Method Details
-
getFluffTab
Description copied from class:MegaMekLabMainUIReturns the FluffTab for this unit editor. Subclasses should override to return their fluffTab field.- Overrides:
getFluffTabin classMegaMekLabMainUI- Returns:
- The FluffTab instance, or null if not available.
-
reloadTabs
public void reloadTabs()- Specified by:
reloadTabsin classMegaMekLabMainUI
-
refreshAll
public void refreshAll()- Specified by:
refreshAllin interfaceRefreshListener- Overrides:
refreshAllin classMegaMekLabMainUI
-
getBattlefieldSupportAssetSource
Description copied from class:MegaMekLabMainUIThe linked Battlefield Support Asset source (carrier + enable flag + asset file path) this editor holds, ornullwhen this editor cannot hold a linked asset. Eligible base-unit editors override this to expose theirBFSLinkedAssetSupport.- Overrides:
getBattlefieldSupportAssetSourcein classMegaMekLabMainUI- Returns:
- the asset source, or
null
-
applyRestoredAsset
protected void applyRestoredAsset(@Nullable megamek.common.battlefieldSupport.BattlefieldSupportAsset asset) Description copied from class:MegaMekLabMainUIRe-injects a Battlefield Support Asset carrier restored from a memento (undo/redo/reload) back onto this editor. The default is a no-op (for editors with no linked asset); eligible base-unit editors override this to adopt the restored carrier.- Overrides:
applyRestoredAssetin classMegaMekLabMainUI- Parameters:
asset- the restored asset carrier, ornullif the memento had none
-
setBattlefieldSupportAssetLinked
public void setBattlefieldSupportAssetLinked(boolean enabled) Description copied from interface:BFSLinkedEditorEnables or disables the linked asset: toggles the carrier's enabled state, shows/hides the Asset tab and records the change as a dirty/undo state change.- Specified by:
setBattlefieldSupportAssetLinkedin interfaceBFSLinkedEditor- Parameters:
enabled- whether the unit should have a linked Battlefield Support Asset
-
isBattlefieldSupportAssetLinked
public boolean isBattlefieldSupportAssetLinked()- Specified by:
isBattlefieldSupportAssetLinkedin interfaceBFSLinkedEditor- Returns:
- whether the linked asset is currently enabled.
-
isBattlefieldSupportAssetMotiveEligible
public boolean isBattlefieldSupportAssetMotiveEligible()- Specified by:
isBattlefieldSupportAssetMotiveEligiblein interfaceBFSLinkedEditor- Returns:
- whether the base unit's current movement mode is a legal asset motive (see
BFSLinkedAssetSupport.isMotiveEligible(megamek.common.units.Entity)). Whenfalse, the unit cannot have an asset and the enable checkbox is disabled.
-
refreshArmor
public void refreshArmor()- Specified by:
refreshArmorin interfaceRefreshListener- Overrides:
refreshArmorin classMegaMekLabMainUI
-
refreshBuild
public void refreshBuild()- Specified by:
refreshBuildin interfaceRefreshListener- Overrides:
refreshBuildin classMegaMekLabMainUI
-
refreshEquipment
public void refreshEquipment()- Specified by:
refreshEquipmentin interfaceRefreshListener- Overrides:
refreshEquipmentin classMegaMekLabMainUI
-
refreshTransport
public void refreshTransport()- Specified by:
refreshTransportin interfaceRefreshListener- Overrides:
refreshTransportin classMegaMekLabMainUI
-
refreshStatus
public void refreshStatus()- Specified by:
refreshStatusin interfaceRefreshListener- Overrides:
refreshStatusin classMegaMekLabMainUI
-
refreshStructure
public void refreshStructure()- Specified by:
refreshStructurein interfaceRefreshListener- Overrides:
refreshStructurein classMegaMekLabMainUI
-
refreshWeapons
public void refreshWeapons()- Specified by:
refreshWeaponsin interfaceRefreshListener- Overrides:
refreshWeaponsin classMegaMekLabMainUI
-
refreshPreview
public void refreshPreview()- Specified by:
refreshPreviewin interfaceRefreshListener- Overrides:
refreshPreviewin classMegaMekLabMainUI
-
refreshSummary
public void refreshSummary()- Specified by:
refreshSummaryin interfaceRefreshListener- Overrides:
refreshSummaryin classMegaMekLabMainUI
-
refreshEquipmentTable
public void refreshEquipmentTable()- Specified by:
refreshEquipmentTablein interfaceRefreshListener- Overrides:
refreshEquipmentTablein classMegaMekLabMainUI
-
getFloatingEquipmentDatabase
- Specified by:
getFloatingEquipmentDatabasein classMegaMekLabMainUI
-
getUnallocatedMounted
Description copied from class:MegaMekLabMainUIRetrieves a list of mounted components that are currently not assigned to a location. Such equipment would be deleted on save and reload.- Specified by:
getUnallocatedMountedin classMegaMekLabMainUI- Returns:
- a List containing unallocated Mounted objects.
-
createNewUnit
public void createNewUnit(long entityType, boolean isPrimitive, boolean isIndustrial, megamek.common.units.Entity oldUnit) Description copied from interface:EntitySourceReplace the current Entity with a new one of the indicated type- Specified by:
createNewUnitin interfaceEntitySource- Parameters:
entityType- An ETYPE flag indicating the type of Entity to create. Rather than the entire bitmask, only the flag that distinguishes the class from its parent is used.isPrimitive- Whether the new Entity should be primitive; not used by all unit typesisIndustrial- Whether the new Entity should be an industrial mek; not used by other unit typesoldUnit- If not null, the basic information (name, year, source, tech level, manual bv) will be copied from the old unit.
-
getTechManager
public megamek.common.interfaces.ITechManager getTechManager()- Specified by:
getTechManagerin interfaceEntitySource- Returns:
- the current TechManager, which provides the means to determine legality of any piece of tech.
-