aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java
diff options
context:
space:
mode:
Diffstat (limited to 'uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java')
-rw-r--r--uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java146
1 files changed, 146 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java b/uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java
new file mode 100644
index 0000000000..4cf7b98679
--- /dev/null
+++ b/uitest/src/com/vaadin/tests/components/datefield/DateFieldInSubWindow.java
@@ -0,0 +1,146 @@
+package com.vaadin.tests.components.datefield;
+
+import java.util.Date;
+
+import com.vaadin.data.Item;
+import com.vaadin.data.util.BeanItem;
+import com.vaadin.tests.components.AbstractTestCase;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.Component;
+import com.vaadin.ui.DateField;
+import com.vaadin.ui.DefaultFieldFactory;
+import com.vaadin.ui.Field;
+import com.vaadin.ui.Form;
+import com.vaadin.ui.HorizontalLayout;
+import com.vaadin.ui.UI.LegacyWindow;
+import com.vaadin.ui.VerticalLayout;
+import com.vaadin.ui.Window;
+
+public class DateFieldInSubWindow extends AbstractTestCase {
+
+ @SuppressWarnings("serial")
+ public class TestCaseWindow extends Window {
+
+ public class MyBean {
+ private Date myDate;
+ private String myString;
+
+ public Date getMyDate() {
+ return myDate;
+ }
+
+ public void setMyDate(Date myDate) {
+ this.myDate = myDate;
+ }
+
+ public String getMyString() {
+ return myString;
+ }
+
+ public void setMyString(String myString) {
+ this.myString = myString;
+ }
+
+ }
+
+ private MyBean myBean;
+
+ public TestCaseWindow() {
+ super("Test Case Window");
+ setModal(true);
+ setWidth("400px");
+ myBean = new MyBean();
+
+ initWindow();
+ }
+
+ protected class CustomerFieldFactory extends DefaultFieldFactory {
+
+ public static final String COMMON_FIELD_WIDTH = "12em";
+
+ @Override
+ public Field<?> createField(Item item, Object propertyId,
+ Component uiContext) {
+ Field<?> f = super.createField(item, propertyId, uiContext);
+
+ if ("myDate".equals(propertyId)) {
+ ((DateField) f).setResolution(DateField.RESOLUTION_MIN);
+ ((DateField) f).setCaption("This is my date");
+
+ }
+
+ return f;
+ }
+ }
+
+ protected void initWindow() {
+ VerticalLayout layout = (VerticalLayout) getContent();
+ layout.setMargin(true);
+ layout.setSpacing(true);
+
+ /**
+ * This causes the window to add the .v-readonly style!
+ */
+ setClosable(false);
+
+ CustomerFieldFactory fieldFactory = new CustomerFieldFactory();
+ final Form generalForm = new Form();
+ {
+ generalForm.setCaption("My form");
+ generalForm.setBuffered(false);
+ generalForm.setFormFieldFactory(fieldFactory);
+
+ BeanItem<MyBean> myBeanItem = new BeanItem<MyBean>(myBean);
+ generalForm.setItemDataSource(myBeanItem);
+
+ generalForm.setVisibleItemProperties(new String[] { "myDate",
+ "myString" });
+ generalForm.setValidationVisible(true);
+ addComponent(generalForm);
+ }
+
+ HorizontalLayout buttons = new HorizontalLayout();
+ {
+ buttons.setSpacing(true);
+
+ Button b = new Button("Close", new Button.ClickListener() {
+
+ @Override
+ public void buttonClick(ClickEvent event) {
+ TestCaseWindow.this.close();
+ }
+ });
+ buttons.addComponent(b);
+ layout.addComponent(buttons);
+
+ }
+ }
+ }
+
+ @Override
+ public void init() {
+ LegacyWindow mainWindow = new LegacyWindow();
+ setMainWindow(mainWindow);
+ Button open = new Button("Open window", new Button.ClickListener() {
+ @Override
+ public void buttonClick(ClickEvent event) {
+ getMainWindow().addWindow(new TestCaseWindow());
+ }
+ });
+
+ mainWindow.addComponent(open);
+ }
+
+ @Override
+ protected String getDescription() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ protected Integer getTicketNumber() {
+ return 4582;
+ }
+
+}