Skip to content
Snippets Groups Projects
Commit 0941711e authored by Tobias Ullerich's avatar Tobias Ullerich
Browse files

Set correct pseudo classes on page change to preview view

parent 7df335e9
Branches
Tags
No related merge requests found
...@@ -30,6 +30,7 @@ import javafx.beans.property.Property; ...@@ -30,6 +30,7 @@ import javafx.beans.property.Property;
import javafx.css.PseudoClass; import javafx.css.PseudoClass;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Node;
import javafx.scene.Parent;
import javafx.scene.control.Button; import javafx.scene.control.Button;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar; import javafx.scene.control.ProgressBar;
...@@ -151,11 +152,11 @@ public class DesktopPadView implements IPadView { ...@@ -151,11 +152,11 @@ public class DesktopPadView implements IPadView {
PadContentFactory connect = registry.getFactory(content.getType()); PadContentFactory connect = registry.getFactory(content.getType());
previewContent = connect.getPadContentPreview(pad, preview); previewContent = connect.getPadContentPreview(pad, preview);
Node node = previewContent.getNode(); Parent node = previewContent.getNode();
// Copy Pseudo classes // Copy Pseudo classes
for (PseudoClass pseudoClass : superRoot.getPseudoClassStates()) { for (PseudoClass pseudoClass : superRoot.getPseudoClassStates()) {
node.pseudoClassStateChanged(pseudoClass, true); NodeWalker.getAllNodes(node).forEach(element -> element.pseudoClassStateChanged(pseudoClass, true));
} }
preview.getChildren().setAll(node); preview.getChildren().setAll(node);
......
...@@ -110,7 +110,7 @@ public class DesktopPadViewController implements IPadViewController, EventHandle ...@@ -110,7 +110,7 @@ public class DesktopPadViewController implements IPadViewController, EventHandle
// Initial Listener call with new data // Initial Listener call with new data
padContentListener.changed(null, null, pad.getContent()); // Add Duration listener padContentListener.changed(null, null, pad.getContent()); // Add Duration listener
padStatusListener.changed(null, null, pad.getStatus()); padStatusListener.changed(null, null, pad.getStatus()); // Show correct pseudo classes ...
// Add Drag and Drop Listener // Add Drag and Drop Listener
padDragListener = new DesktopPadDragListener(pad, padView, connect); padDragListener = new DesktopPadDragListener(pad, padView, connect);
......
...@@ -3,7 +3,7 @@ package de.tobias.playpad.pad.preview; ...@@ -3,7 +3,7 @@ package de.tobias.playpad.pad.preview;
import de.tobias.playpad.pad.Pad; import de.tobias.playpad.pad.Pad;
import de.tobias.playpad.pad.view.IPadContentView; import de.tobias.playpad.pad.view.IPadContentView;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Parent;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.layout.Pane; import javafx.scene.layout.Pane;
import javafx.scene.layout.Priority; import javafx.scene.layout.Priority;
...@@ -29,7 +29,7 @@ public class PadTextPreview implements IPadContentView { ...@@ -29,7 +29,7 @@ public class PadTextPreview implements IPadContentView {
} }
@Override @Override
public Node getNode() { public Parent getNode() {
return nameLabel; return nameLabel;
} }
......
package de.tobias.playpad.pad.view; package de.tobias.playpad.pad.view;
import javafx.scene.Node; import javafx.scene.Parent;
// TODO Rename to ContentView // TODO Rename to ContentView
...@@ -17,7 +17,7 @@ public interface IPadContentView { ...@@ -17,7 +17,7 @@ public interface IPadContentView {
* *
* @return GUI Element * @return GUI Element
*/ */
Node getNode(); Parent getNode();
/** /**
* Deinitialisiert die View. Hier können mögliche Bindings und Listener entfernt werden. * Deinitialisiert die View. Hier können mögliche Bindings und Listener entfernt werden.
......
...@@ -6,7 +6,7 @@ import de.tobias.playpad.pad.view.IPadContentView ...@@ -6,7 +6,7 @@ import de.tobias.playpad.pad.view.IPadContentView
import javafx.beans.binding.Bindings import javafx.beans.binding.Bindings
import javafx.collections.ListChangeListener import javafx.collections.ListChangeListener
import javafx.geometry.{Insets, Pos} import javafx.geometry.{Insets, Pos}
import javafx.scene.Node import javafx.scene.Parent
import javafx.scene.control.Label import javafx.scene.control.Label
import javafx.scene.layout.{Pane, Priority, VBox} import javafx.scene.layout.{Pane, Priority, VBox}
import javafx.scene.text.TextAlignment import javafx.scene.text.TextAlignment
...@@ -59,7 +59,7 @@ class ContentPlayerPadPreview(pad: Pad, parent: Pane) extends VBox with IPadCont ...@@ -59,7 +59,7 @@ class ContentPlayerPadPreview(pad: Pad, parent: Pane) extends VBox with IPadCont
VBox.setVgrow(label, Priority.ALWAYS) VBox.setVgrow(label, Priority.ALWAYS)
} }
override def getNode: Node = this override def getNode: Parent = this
override def deInit(): Unit = { override def deInit(): Unit = {
nameLabel.textProperty().unbind() nameLabel.textProperty().unbind()
......
...@@ -9,7 +9,7 @@ import javafx.collections.ListChangeListener; ...@@ -9,7 +9,7 @@ import javafx.collections.ListChangeListener;
import javafx.collections.SetChangeListener; import javafx.collections.SetChangeListener;
import javafx.css.PseudoClass; import javafx.css.PseudoClass;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Parent;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.layout.Pane; import javafx.scene.layout.Pane;
import javafx.scene.layout.Priority; import javafx.scene.layout.Priority;
...@@ -91,7 +91,7 @@ public class ImagePadContentFactory extends PadContentFactory { ...@@ -91,7 +91,7 @@ public class ImagePadContentFactory extends PadContentFactory {
} }
@Override @Override
public Node getNode() { public Parent getNode() {
return stackPane; return stackPane;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment