diff --git a/app/src/main/java/org/toop/app/App.java b/app/src/main/java/org/toop/app/App.java index 6072589..8f49113 100644 --- a/app/src/main/java/org/toop/app/App.java +++ b/app/src/main/java/org/toop/app/App.java @@ -69,15 +69,14 @@ public final class App extends Application { var cab = new ConfirmWidget("cab"); abc.addButton("test", () -> { - WidgetContainer.add(Pos.CENTER, cab); - WidgetContainer.remove(abc); + abc.replace(cab, Pos.CENTER); }); + abc.addButton("test3333", () -> IO.println("Second test works!")); cab.addButton("cab321312", () -> IO.println("Third test")); cab.addButton("cab31232132131", () -> { IO.println("Fourth test"); - WidgetContainer.remove(cab); }); WidgetContainer.add(Pos.CENTER, abc); diff --git a/app/src/main/java/org/toop/app/widget/Widget.java b/app/src/main/java/org/toop/app/widget/Widget.java index e543b4e..f5de6a2 100644 --- a/app/src/main/java/org/toop/app/widget/Widget.java +++ b/app/src/main/java/org/toop/app/widget/Widget.java @@ -13,4 +13,9 @@ public interface Widget { default void hide() { WidgetContainer.remove(this); } + + default void replace(Widget newWidget, Pos newWidgetPosition) { + this.hide(); + newWidget.show(newWidgetPosition); + } } \ No newline at end of file