use of javafx.scene.control.ScrollPane in project Board-Instrumentation-Framework by intel.
the class Marvin method testAppSize.
/*
* private void LoadApplication(Stage stage) { stage.setIconified(true); _Config
* = new ConfigurationReader(); if (null == _Config) { return; }
*
* Configuration config = _Config.ReadStartupInfo(ConfigFilename); if (null ==
* config) { return; } _objTabPane = new TabPane();
* _objTabPane.setSide(config.getSide());
*
* GridPane sceneGrid = new GridPane();
*
* GridPane.setHalignment(_Config.getConfiguration().getMenuBar(), HPos.LEFT);
* GridPane.setValignment(_Config.getConfiguration().getMenuBar(), VPos.TOP);
*
* sceneGrid.add(_Config.getConfiguration().getMenuBar(), 0, 0);
* sceneGrid.add(_objTabPane, 0, 1);
*
* Scene scene = null; Rectangle2D visualBounds =
* _Config.getConfiguration().getPrimaryScreen().getVisualBounds(); int appWidth
* = (int) visualBounds.getWidth(); int appHeight = (int)
* visualBounds.getHeight();
*
* if (config.getWidth() > 0) { appWidth = config.getWidth(); } else {
* config.setWidth(appWidth); } if (config.getHeight() > 0) { appHeight =
* config.getHeight(); } else { config.setHeight(appHeight); }
*
* scene = new Scene(sceneGrid); SetAppStyle(scene.getStylesheets());
* stage.setScene(scene); stage.setIconified(true);
*
* stage.setX(_Config.getConfiguration().getPrimaryScreen().getVisualBounds().
* getMinX());
* stage.setY(_Config.getConfiguration().getPrimaryScreen().getVisualBounds().
* getMinY());
*
* stage.setMaximized(true);
*
* stage.addEventHandler(WindowEvent.WINDOW_SHOWN, new
* EventHandler<WindowEvent>() {
*
* @Override public void handle(WindowEvent window) { FinishLoad(stage); } });
*
* while (false && !_SizeCheckWindowShowing) { try { Thread.sleep(100); } catch
* (InterruptedException ex) {
* Logger.getLogger(Marvin.class.getName()).log(Level.SEVERE, null, ex); } }
*
* FinishLoad(stage);
*
* }
*/
// / pop up quick simple tab,menu and style it, then grab the size of the window
// / so we know the canvas dimenstions
private boolean testAppSize(Stage stage) {
final GridPane stagePane = new GridPane();
final GridPane canvasPane = new GridPane();
canvasPane.setAlignment(Pos.TOP_LEFT);
_Config = new ConfigurationReader();
if (null == _Config) {
return false;
}
final Configuration basicConfig = _Config.ReadStartupInfo(ConfigFilename);
if (null == basicConfig) {
return false;
}
stage.setX(basicConfig.getPrimaryScreen().getVisualBounds().getMinX());
stage.setY(basicConfig.getPrimaryScreen().getVisualBounds().getMinY());
TabPane tabPane = new TabPane();
Tab objTab = new Tab();
final Side tabSide = basicConfig.getSide();
if (tabSide == Side.TOP || tabSide == Side.BOTTOM) {
tabPane.setSide(Side.TOP);
} else {
tabPane.setSide(Side.LEFT);
}
objTab.setText("");
tabPane.getTabs().add(objTab);
stagePane.add(tabPane, 0, 1);
MenuBar objMenuBar = new MenuBar();
if (basicConfig.getShowMenuBar()) {
Menu objMenu = new Menu("About");
MenuItem objItem = new MenuItem("Dummy");
objMenu.getItems().add(objItem);
objMenuBar.getMenus().add(objMenu);
stagePane.add(objMenuBar, 0, 0);
}
if (basicConfig.getEnableScrollBars()) {
ScrollPane testScrollPane = new ScrollPane();
testScrollPane.setPannable(true);
testScrollPane.setHbarPolicy(ScrollPane.ScrollBarPolicy.ALWAYS);
testScrollPane.setVbarPolicy(ScrollPane.ScrollBarPolicy.ALWAYS);
testScrollPane.setContent(canvasPane);
objTab.setContent(testScrollPane);
} else {
objTab.setContent(canvasPane);
}
stage.setTitle(basicConfig.getAppTitle());
Scene scene = new Scene(stagePane);
stage.setScene(scene);
SetAppStyle(scene.getStylesheets());
if (_Config.getConfiguration().getKioskMode()) {
stage.initStyle(StageStyle.UNDECORATED);
}
URL resource = AboutBox.class.getResource("About.png");
Image iconImg = new Image(resource.toString());
stage.getIcons().add(iconImg);
stage.addEventHandler(WindowEvent.WINDOW_SHOWN, new EventHandler<WindowEvent>() {
@Override
public void handle(WindowEvent window) {
scene.heightProperty().addListener(new ChangeListener<Number>() {
@Override
public void changed(ObservableValue<? extends Number> observableValue, Number oldSceneHeight, Number newSceneHeight) {
scene.heightProperty().removeListener(this);
Point2D canvasInScene = canvasPane.localToScene(0.0, 0.0);
int cvHeight;
int cvWidth;
if (tabSide == Side.TOP || tabSide == Side.BOTTOM) {
cvHeight = (int) (scene.getHeight() - canvasInScene.getY());
cvWidth = (int) scene.getWidth();
} else {
cvHeight = (int) (scene.getHeight() - canvasInScene.getY());
cvWidth = (int) (scene.getWidth() - canvasInScene.getX());
}
basicConfig.setCanvasWidth(cvWidth);
basicConfig.setCanvasHeight(cvHeight);
stage.setIconified(true);
Platform.runLater(new Runnable() {
@Override
public void run() {
FinishLoad(stage);
}
});
}
});
}
});
stage.show();
if (basicConfig.getWidth() > 0) {
stage.setWidth(basicConfig.getWidth());
stage.setHeight(basicConfig.getHeight());
} else {
stage.setMaximized(true);
}
return true;
}
Aggregations