Package VASSAL.build
Interface Buildable
- All Known Subinterfaces:
AutoConfigurable
,Configurable
,Translatable
- All Known Implementing Classes:
AboutScreen
,AbstractBuildable
,AbstractConfigurable
,AbstractDeckKeyCommand
,AbstractFolder
,AbstractScenarioProperty
,AbstractScript
,AbstractToolbarItem
,ActionScript
,BasicCommandEncoder
,BasicLogger
,BasicModule
,BasicPreference
,Board
,BoardPicker
,BooleanPreference
,BooleanScenarioProperty
,BoxWidget
,BrowserHelpFile
,BrowserHelpFile.ConfigSupport
,BrowserPDFFile
,BshCommandEncoder
,BshPlugin
,CardSlot
,ChangePropertyButton
,Chart
,ChartWindow
,ChatServerControls
,Chatter
,ChessClock
,ChessClockControl
,ColorManager
,ColorSwatch
,ConnectionWindow
,CounterDetailViewer
,CounterTurnLevel
,DebugControls
,DeckGlobalKeyCommand
,DeckSendKeyCommand
,DeckSortKeyCommand
,DeckSubFolder
,DiceButton
,DieManager
,DoActionButton
,Documentation
,DoublePreference
,DrawPile
,EnumPreference
,EventLog
,ExtensionElement
,Flare
,FontManager
,FontStyle
,ForwardToChatter
,ForwardToKeyBuffer
,GameModule
,GamePieceImage
,GamePieceImageDefinitions
,GamePieceLayout
,GamePieceLayoutsContainer
,GeneralScript
,GlobalKeyCommand
,GlobalMap
,GlobalMap.CounterViewer
,GlobalOptions
,GlobalProperties
,GlobalProperty
,GlobalPropertyFolder
,GlobalTranslatableMessage
,GlobalTranslatableMessages
,HandMetrics
,HelpFile
,HexGrid
,HexGridNumbering
,HidePiecesButton
,HighlightLastMoved
,HtmlChart
,IconFamily
,ImageItem
,ImageItemInstance
,ImageSaver
,IntegerPreference
,InternetDiceButton
,Inventory
,Item
,ItemInstance
,KeyBufferer
,KeyNamer
,Language
,LayerControl
,LayeredPieceCollection
,ListScenarioProperty
,ListTurnLevel
,ListWidget
,Localization
,LOS_Thread
,Map
,MapCenterer
,MapShader
,MapSubFolder
,MapWidget
,MassKeyCommand
,MenuDisplayer
,ModuleExtension
,ModulePlugin
,ModuleSubFolder
,MoveCameraButton
,MultiActionButton
,NotesWindow
,NumberScenarioProperty
,PanelWidget
,PieceMover
,PieceRecenterer
,PieceSlot
,PieceWindow
,PlayerHand
,PlayerRoster
,Plugin
,PredefinedSetup
,PrivateChatter
,PrivateMap
,PrototypeDefinition
,PrototypeFolder
,PrototypesContainer
,RandomTextButton
,Region
,RegionGrid
,RegularGridNumbering
,ScenarioPropertiesOptionTab
,ScriptContainer
,Scroller
,SelectionHighlighter
,SelectionHighlighters
,SetupStack
,ShapeItem
,ShapeItemInstance
,SpecialDiceButton
,SpecialDie
,SpecialDieFace
,SquareGrid
,SquareGridNumbering
,StackExpander
,StackMetrics
,StartupGlobalKeyCommand
,StringPreference
,StringScenarioProperty
,SymbolItem
,SymbolItemInstance
,TabWidget
,TextBoxItem
,TextBoxItemInstance
,TextItem
,TextItemInstance
,TextPreference
,TextSaver
,ToolbarMenu
,TranslatableMarker
,Translation
,TurnComponent
,TurnGlobalHotkey
,TurnLevel
,TurnTracker
,Tutorial
,VassalTranslation
,Widget
,WidgetMap
,Zone
,ZonedGrid
,ZonedGridHighlighter
,ZoneHighlight
,ZoneProperty
,Zoomer
public interface Buildable
A Buildable is an object which can be initialized from an XML configuration file
(e.g.
"buildFile"
) in which each XML element represents an component object. The Buildable
objects are built into a component hierarchy that mirrors the XML structure. Many Buildables
in a vassal module are also Configurable
, so that their attributes can be configured
in the Editor. SEE ALSO: AbstractBuildable
, AbstractConfigurable
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a child component.void
Adds this component to its parent.void
Build the object from the XML representation of the BuildablegetBuildElement
(Document doc) default boolean
Is this component a reqired component within its parent?default boolean
Is this component allowed to be moved around the Configure Tree?default boolean
isUnique()
Does this component need to be unique within it's parent?
-
Method Details
-
build
Build the object from the XML representation of the Buildable- Parameters:
e
- the XML element containing the object data
-
addTo
Adds this component to its parent. In order to make Buildable objects extensible, the child is responsible for adding itself to the parent. That way, Buildable subcomponents can be defined in an extension package without needing to modify the containing class.- Parameters:
parent
- parent Buildable to add this component to as a subcomponent.
-
add
Adds a child component. Both this method andaddTo(VASSAL.build.Buildable)
are invoked when adding a child to a parent- Parameters:
child
- Child to attach to this buildable as a subcomponent
-
getBuildElement
-
isMandatory
default boolean isMandatory()Is this component a reqired component within its parent?- Returns:
- true if component is mandatory
-
isMovable
default boolean isMovable()Is this component allowed to be moved around the Configure Tree?- Returns:
- true is component is movable
-
isUnique
default boolean isUnique()Does this component need to be unique within it's parent?- Returns:
-