Class AbstractDemo
java.lang.Object
javafx.application.Application
org.episteme.core.ui.AbstractDemo
- Direct Known Subclasses:
AbstractSimulationDemo, ArtsColorTheoryDemo, ChemicalReactionDemo, CircuitSimulatorDemo, CSGDemo, DistributionsDemo, EarthquakeDemo, EconomicsGDPDemo, EconomicsMarketDemo, FormulaNotationDemo, FunctionExplorer2D3DDemo, GeneticsDemo, GeographyGISDemo, GeometryBoardDemo, GeoscienceVoxelDemo, HistoryTimelineDemo, HumanBodyDemo, InterplanetaryTrajectoryDemo, KnowledgeNavigatorDemo, KurzweilDemo, LinguisticsWordFreqDemo, LorenzDemo, MagneticFieldDemo, MandelbrotDemo, MatrixDemo, MedicineVoxelDemo, MetamathDemo, MolecularViewerDemo, PeriodicTableDemo, PeripheralsDemo, PhylogeneticTreeDemo, PoliticsVotingDemo, QuantumCircuitDemo, RelativisticFlightDemo, ResistorColorCodeDemo, SequenceAlignmentDemo, SociologyNetworkDemo, SolenoidMagneticFieldDemo, SpeciesBrowserDemo, SportsResultsDemo, StellarSkyDemo, ThermodynamicsDemo, UnitConverterDemo, VoxelVolumeDemo
Abstract base class for all Episteme Demonstrations.
Provides a consistent layout with a viewer area and a control panel.
Subclasses MUST override: getCategory(), getName(), getDescription(), getLongDescription()
with proper I18N support.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested classes/interfaces inherited from class javafx.application.Application
javafx.application.Application.Parameters -
Field Summary
FieldsFields inherited from class javafx.application.Application
STYLESHEET_CASPIAN, STYLESHEET_MODENA -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected javafx.scene.layout.VBoxprotected abstract javafx.scene.Nodeabstract StringReturns the category for grouping (e.g., "Chemistry", "Physics").abstract StringReturns a short description (1-2 lines).abstract StringReturns a long description (multi-line, detailed explanation).abstract StringgetName()Returns the display name of the viewer/demo.Returns a list of parameters exposed by this viewer.booleanisDemo()Returns true if this is a Demo, false if it is a full App.voidshow(javafx.stage.Stage stage) Launches the component in the given stage.voidstart(javafx.stage.Stage stage) Methods inherited from class javafx.application.Application
getHostServices, getParameters, getUserAgentStylesheet, init, launch, launch, notifyPreloader, setUserAgentStylesheet, stopMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Viewer
getParameter, setParameter
-
Field Details
-
viewer
protected javafx.scene.Node viewer
-
-
Constructor Details
-
AbstractDemo
public AbstractDemo()
-
-
Method Details
-
isDemo
-
start
public void start(javafx.stage.Stage stage) - Specified by:
startin classjavafx.application.Application
-
createControlPanel
protected javafx.scene.layout.VBox createControlPanel() -
getCategory
Description copied from interface:ViewerReturns the category for grouping (e.g., "Chemistry", "Physics"). Must be internationalized via I18N.- Specified by:
getCategoryin interfaceViewer- Returns:
- the category name
-
getName
-
getDescription
Description copied from interface:ViewerReturns a short description (1-2 lines). Must be internationalized via I18N.- Specified by:
getDescriptionin interfaceViewer- Returns:
- the short description
-
getLongDescription
Description copied from interface:ViewerReturns a long description (multi-line, detailed explanation). Must be internationalized via I18N.- Specified by:
getLongDescriptionin interfaceViewer- Returns:
- the long description
-
createViewerNode
protected abstract javafx.scene.Node createViewerNode() -
getViewerParameters
Description copied from interface:ViewerReturns a list of parameters exposed by this viewer. Parameters allow external control and configuration.- Specified by:
getViewerParametersin interfaceViewer- Returns:
- list of configurable parameters
-
show
-