aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java')
-rw-r--r--src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java90
1 files changed, 90 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java b/src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java
new file mode 100644
index 0000000000..54550b9b62
--- /dev/null
+++ b/src/com/itmill/toolkit/demo/sampler/features/windows/SubwindowPositionedExample.java
@@ -0,0 +1,90 @@
+package com.itmill.toolkit.demo.sampler.features.windows;
+
+import com.itmill.toolkit.ui.Button;
+import com.itmill.toolkit.ui.Label;
+import com.itmill.toolkit.ui.VerticalLayout;
+import com.itmill.toolkit.ui.Window;
+import com.itmill.toolkit.ui.Button.ClickEvent;
+
+public class SubwindowPositionedExample extends VerticalLayout {
+
+ Window subwindow;
+
+ public SubwindowPositionedExample() {
+ setSpacing(true);
+
+ // Create the window
+ subwindow = new Window("A positioned subwindow");
+
+ // Configure the windws layout; by default a VerticalLayout
+ VerticalLayout layout = (VerticalLayout) subwindow.getLayout();
+ layout.setMargin(true);
+ layout.setSpacing(true);
+ // make it fill the whole window
+ layout.setSizeFull();
+
+ // Add some content; a label and a close-button
+ Label message = new Label("This is a positioned window");
+ subwindow.addComponent(message);
+
+ Button close = new Button("Close", new Button.ClickListener() {
+ // inline click-listener
+ public void buttonClick(ClickEvent event) {
+ // close the window by removing it from the main window
+ getApplication().getMainWindow().removeWindow(subwindow);
+ }
+ });
+ // The components added to the window are actually added to the window's
+ // layout; you can use either. Alignments are set using the layout
+ layout.addComponent(close);
+ layout.setComponentAlignment(close, "right bottom");
+
+ // Add buttons for opening the subwindow
+ Button fifty = new Button("Open positioned window at 50x50",
+ new Button.ClickListener() {
+ // inline click-listener
+ public void buttonClick(ClickEvent event) {
+ subwindow.setPositionX(50);
+ subwindow.setPositionY(50);
+ if (subwindow.getParent() == null) {
+ // Open the subwindow by adding it to the main
+ // window
+ getApplication().getMainWindow().addWindow(
+ subwindow);
+ }
+ }
+ });
+ addComponent(fifty);
+ Button onefifty = new Button("Open positioned window at 150x150",
+ new Button.ClickListener() {
+ // inline click-listener
+ public void buttonClick(ClickEvent event) {
+ subwindow.setPositionX(150);
+ subwindow.setPositionY(150);
+ if (subwindow.getParent() == null) {
+ // Open the subwindow by adding it to the main
+ // window
+ getApplication().getMainWindow().addWindow(
+ subwindow);
+ }
+ }
+ });
+ addComponent(onefifty);
+ Button center = new Button("Open centered window",
+ new Button.ClickListener() {
+ // inline click-listener
+ public void buttonClick(ClickEvent event) {
+ subwindow.center();
+ if (subwindow.getParent() == null) {
+ // Open the subwindow by adding it to the main
+ // window
+ getApplication().getMainWindow().addWindow(
+ subwindow);
+ }
+ }
+ });
+ addComponent(center);
+
+ }
+
+} \ No newline at end of file