server

Clone or download

Refactored DashboardBase to use resizable SplitPanes

Modified Files

--- 'a/src/main/java/com/stream_pi/server/controller/Controller.java'
+++ b/src/main/java/com/stream_pi/server/controller/Controller.java
@@ -488,7 +488,7 @@ public class Controller extends Base imp
}
@Override
- public synchronized boolean onNormalActionClicked(NormalAction action) {
+ public boolean onNormalActionClicked(NormalAction action) {
try{
getLogger().info("action "+action.getID()+" clicked!");
--- 'a/src/main/java/com/stream_pi/server/window/dashboard/ClientAndProfileSelectorPane.java'
+++ b/src/main/java/com/stream_pi/server/window/dashboard/ClientAndProfileSelectorPane.java
@@ -25,6 +25,7 @@ public class ClientAndProfileSelectorPan
getStyleClass().add("client_and_profile_selector_pane");
setPadding(new Insets(10));
setMinHeight(90);
+ setMaxHeight(90);
initUI();
loadData();
--- 'a/src/main/java/com/stream_pi/server/window/dashboard/DashboardBase.java'
+++ b/src/main/java/com/stream_pi/server/window/dashboard/DashboardBase.java
@@ -9,13 +9,15 @@ import com.stream_pi.server.window.dashb
import com.stream_pi.server.window.ExceptionAndAlertHandler;
import com.stream_pi.util.exception.SevereException;
import javafx.application.HostServices;
+import javafx.geometry.Orientation;
+import javafx.scene.control.SplitPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Priority;
import javafx.scene.layout.VBox;
-public class DashboardBase extends HBox implements DashboardInterface {
+public class DashboardBase extends SplitPane implements DashboardInterface {
- private final VBox leftPane;
+ private final SplitPane leftSplitPane;
private Logger logger;
@@ -28,10 +30,14 @@ public class DashboardBase extends HBox
{
this.exceptionAndAlertHandler = exceptionAndAlertHandler;
logger = Logger.getLogger(DashboardBase.class.getName());
- leftPane = new VBox();
- HBox.setHgrow(leftPane, Priority.ALWAYS);
- getChildren().add(leftPane);
+ leftSplitPane = new SplitPane();
+ leftSplitPane.getStyleClass().add("dashboard_left_split_pane");
+ leftSplitPane.setOrientation(Orientation.VERTICAL);
+
+ getStyleClass().add("dashboard_right_split_pane");
+
+ getItems().add(leftSplitPane);
setPluginsPane(new PluginsPane(hostServices));
@@ -50,7 +56,7 @@ public class DashboardBase extends HBox
private void setPluginsPane(PluginsPane pluginsPane)
{
this.pluginsPane = pluginsPane;
- getChildren().add(this.pluginsPane);
+ getItems().add(this.pluginsPane);
}
public PluginsPane getPluginsPane()
{
@@ -61,7 +67,7 @@ public class DashboardBase extends HBox
private void setClientDetailsPane(ClientAndProfileSelectorPane clientAndProfileSelectorPane)
{
this.clientAndProfileSelectorPane = clientAndProfileSelectorPane;
- leftPane.getChildren().add(this.clientAndProfileSelectorPane);
+ leftSplitPane.getItems().add(this.clientAndProfileSelectorPane);
}
public ClientAndProfileSelectorPane getClientDetailsPane()
{
@@ -72,7 +78,7 @@ public class DashboardBase extends HBox
private void setActionGridPane(ActionGridPane actionGridPane)
{
this.actionGridPane = actionGridPane;
- leftPane.getChildren().add(this.actionGridPane);
+ leftSplitPane.getItems().add(this.actionGridPane);
}
public ActionGridPane getActionGridPane()
{
@@ -83,7 +89,7 @@ public class DashboardBase extends HBox
private void setActionDetailsPane(ActionDetailsPane actionDetailsPane)
{
this.actionDetailsPane = actionDetailsPane;
- leftPane.getChildren().add(this.actionDetailsPane);
+ leftSplitPane.getItems().add(this.actionDetailsPane);
}
public ActionDetailsPane getActionDetailsPane()
{
--- 'a/src/main/java/com/stream_pi/server/window/dashboard/PluginsPane.java'
+++ b/src/main/java/com/stream_pi/server/window/dashboard/PluginsPane.java
@@ -33,6 +33,7 @@ public class PluginsPane extends VBox {
public PluginsPane(HostServices hostServices)
{
setMinWidth(250);
+ setMaxWidth(350);
getStyleClass().add("plugins_pane");
setPadding(new Insets(10));
--- 'a/src/main/java/com/stream_pi/server/window/dashboard/actiondetailpane/ActionDetailsPane.java'
+++ b/src/main/java/com/stream_pi/server/window/dashboard/actiondetailpane/ActionDetailsPane.java
@@ -91,7 +91,7 @@ public class ActionDetailsPane extends V
scrollPane.getStyleClass().add("action_details_pane_scroll_pane");
- setMinHeight(310);
+ setMinHeight(210);
scrollPane.setContent(vbox);
vbox.prefWidthProperty().bind(scrollPane.widthProperty());
--- 'a/src/main/java/com/stream_pi/server/window/dashboard/actiongridpane/ActionGridPane.java'
+++ b/src/main/java/com/stream_pi/server/window/dashboard/actiongridpane/ActionGridPane.java
@@ -31,8 +31,6 @@ public class ActionGridPane extends Scro
this.exceptionAndAlertHandler = exceptionAndAlertHandler;
getStyleClass().add("action_grid_pane_parent");
- VBox.setVgrow(this, Priority.ALWAYS);
-
actionsGridPane = new GridPane();
actionsGridPane.setPadding(new Insets(5.0));
actionsGridPane.getStyleClass().add("action_grid_pane");
--- 'a/src/main/java/com/stream_pi/server/window/settings/PluginsSettings.java'
+++ b/src/main/java/com/stream_pi/server/window/settings/PluginsSettings.java
@@ -342,8 +342,9 @@ public class PluginsSettings extends VBo
if(action.getButtonBar()!=null)
{
+ action.getButtonBar().getStyleClass().add("plugins_settings_each_plugin_button_bar");
HBox buttonBarHBox = new HBox(SpaceFiller.horizontal(), action.getButtonBar());
- buttonBarHBox.getStyleClass().add("plugins_settings_each_plugin_button_bar");
+ buttonBarHBox.getStyleClass().add("plugins_settings_each_plugin_button_bar_hbox");
vBox.getChildren().add(buttonBarHBox);
}
Binary files 'a/src/main/resources/com/stream_pi/server/Default.zip' and b/src/main/resources/com/stream_pi/server/Default.zip differ
--- 'a/src/main/resources/com/stream_pi/server/style.css'
+++ b/src/main/resources/com/stream_pi/server/style.css
@@ -8,6 +8,11 @@
-fx-font-weight : bold;
}
+.plugins_settings_each_plugin_button_bar
+{
+ -fx-alignment:center-right;
+}
+
.about_license_label
{
-fx-font-size : 16;
@@ -259,4 +264,8 @@
.alert_button_bar
{
-fx-background-color:white;
+}
+
+.split-pane-divider {
+ -fx-padding: 2;
}
\ No newline at end of file