< prev index next >
modules/graphics/src/test/java/test/javafx/stage/PopupTest.java
Print this page
@@ -23,10 +23,11 @@
* questions.
*/
package test.javafx.stage;
+import com.sun.javafx.scene.NodeHelper;
import com.sun.javafx.scene.SceneHelper;
import com.sun.javafx.stage.WindowHelper;
import test.com.sun.javafx.pgstub.StubPopupStage;
import test.com.sun.javafx.pgstub.StubStage;
import test.com.sun.javafx.pgstub.StubToolkit;
@@ -53,18 +54,20 @@
import org.junit.Ignore;
import org.junit.Test;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.atomic.AtomicBoolean;
+import javafx.scene.Node;
import javafx.scene.ParentShim;
import javafx.stage.Popup;
import javafx.stage.PopupWindow;
import javafx.stage.Screen;
import javafx.stage.Stage;
import javafx.stage.Window;
import static org.junit.Assert.*;
+import test.com.sun.javafx.stage.PopupRootHelper;
public class PopupTest {
private StubToolkit toolkit;
private Stage stage;
@@ -130,18 +133,32 @@
StubPopupStage peer = (StubPopupStage) WindowHelper.getPeer(p1);
assertEquals(10, peer.x, 1e-100);
assertEquals(20, peer.y, 1e-100);
}
- private static final class PopupRoot extends Parent {
+ public static final class PopupRoot extends Parent {
+ static {
+ PopupRootHelper.setPopupRootAccessor(
+ new PopupRootHelper.PopupRootAccessor() {
+ @Override
+ public Bounds doComputeLayoutBounds(Node node) {
+ return ((PopupRoot) node).doComputeLayoutBounds();
+ }
+ });
+ }
+
private final Rectangle geomBoundsRect;
private double layoutBoundsX;
private double layoutBoundsY;
private double layoutBoundsWidth;
private double layoutBoundsHeight;
+ {
+ // To initialize the class helper at the begining each constructor of this class
+ PopupRootHelper.initHelper(this);
+ }
public PopupRoot() {
geomBoundsRect = new Rectangle(0, 0, 100, 100);
layoutBoundsWidth = 100;
layoutBoundsHeight = 100;
@@ -163,15 +180,14 @@
layoutBoundsX = x;
layoutBoundsY = y;
layoutBoundsWidth = width;
layoutBoundsHeight = height;
- impl_layoutBoundsChanged();
+ NodeHelper.layoutBoundsChanged(this);
}
- @Override
- protected Bounds impl_computeLayoutBounds() {
+ private Bounds doComputeLayoutBounds() {
return new BoundingBox(layoutBoundsX, layoutBoundsY,
layoutBoundsWidth, layoutBoundsHeight);
}
}
< prev index next >