import com.itmill.toolkit.demo.sampler.features.notifications.NotificationHumanized;
import com.itmill.toolkit.demo.sampler.features.notifications.NotificationTray;
import com.itmill.toolkit.demo.sampler.features.notifications.NotificationWarning;
+import com.itmill.toolkit.demo.sampler.features.selects.ComboBoxPlain;
+import com.itmill.toolkit.demo.sampler.features.selects.ListSelectMultiple;
+import com.itmill.toolkit.demo.sampler.features.selects.ListSelectSingle;
+import com.itmill.toolkit.demo.sampler.features.selects.NativeSelection;
+import com.itmill.toolkit.demo.sampler.features.selects.TwinColumnSelect;
/**
* Contains the FeatureSet implementation and the structure for the feature
new Buttons(), //
new Links(), //
new Notifications(), //
+ new Selects(), //
});
}
}
}
}
+ public static class Selects extends FeatureSet {
+ public Selects() {
+ super("Selects", new Feature[] {
+ //
+ new ListSelectSingle(), //
+ new ListSelectMultiple(), //
+ new TwinColumnSelect(), //
+ new NativeSelection(), //
+ new ComboBoxPlain(), //
+
+ });
+ }
+ }
+
// ----------------------------------------------------------
/*
* FeatureSet implementation follows.
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.demo.sampler.APIResource;\r
+import com.itmill.toolkit.demo.sampler.Feature;\r
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;\r
+import com.itmill.toolkit.ui.ComboBox;\r
+\r
+public class ComboBoxPlain extends Feature {\r
+\r
+ @Override\r
+ public String getDescription() {\r
+ return "A drop-down selection component with single item selection."\r
+ + " No special features used in this example";\r
+ }\r
+\r
+ @Override\r
+ public APIResource[] getRelatedAPI() {\r
+ return new APIResource[] { new APIResource(ComboBox.class) };\r
+ }\r
+\r
+ @Override\r
+ public Class[] getRelatedFeatures() {\r
+ return new Class[] { ListSelectSingle.class, NativeSelection.class,\r
+ ListSelectMultiple.class, TwinColumnSelect.class };\r
+ }\r
+\r
+ @Override\r
+ public NamedExternalResource[] getRelatedResources() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.data.Property;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
+import com.itmill.toolkit.ui.ComboBox;\r
+import com.itmill.toolkit.ui.VerticalLayout;\r
+\r
+public class ComboBoxPlainExample extends VerticalLayout implements\r
+ Property.ValueChangeListener {\r
+\r
+ private static final String[] cities = new String[] { "Berlin", "Brussels",\r
+ "Helsinki", "Madrid", "Oslo", "Paris", "Stockholm" };\r
+\r
+ public ComboBoxPlainExample() {\r
+ setSpacing(true);\r
+\r
+ ComboBox l = new ComboBox("Please select a city");\r
+ for (int i = 0; i < cities.length; i++) {\r
+ l.addItem(cities[i]);\r
+ }\r
+\r
+ l.setNullSelectionAllowed(false);\r
+ l.setValue("Berlin");\r
+ l.setImmediate(true);\r
+ l.addListener(this);\r
+\r
+ addComponent(l);\r
+ }\r
+\r
+ /*\r
+ * Shows a notification when a selection is made.\r
+ */\r
+ @Override\r
+ public void valueChange(ValueChangeEvent event) {\r
+ getWindow().showNotification("Selected city: " + event.getProperty());\r
+\r
+ }\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.demo.sampler.APIResource;\r
+import com.itmill.toolkit.demo.sampler.Feature;\r
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;\r
+import com.itmill.toolkit.ui.ListSelect;\r
+\r
+public class ListSelectMultiple extends Feature {\r
+\r
+ @Override\r
+ public String getDescription() {\r
+ return "A simple list select component with multiple item selection."\r
+ + " A null selection is also allowed in this example."\r
+ + "<br>You can select multiple items from the list by holding"\r
+ + " the CTRL of SHIFT key while clicking the items.";\r
+ }\r
+\r
+ @Override\r
+ public APIResource[] getRelatedAPI() {\r
+ return new APIResource[] { new APIResource(ListSelect.class) };\r
+ }\r
+\r
+ @Override\r
+ public Class[] getRelatedFeatures() {\r
+ return new Class[] { ComboBoxPlain.class, NativeSelection.class,\r
+ ListSelectSingle.class, TwinColumnSelect.class };\r
+ }\r
+\r
+ @Override\r
+ public NamedExternalResource[] getRelatedResources() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.data.Property;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
+import com.itmill.toolkit.ui.ListSelect;\r
+import com.itmill.toolkit.ui.VerticalLayout;\r
+\r
+public class ListSelectMultipleExample extends VerticalLayout implements\r
+ Property.ValueChangeListener {\r
+\r
+ private static final String[] cities = new String[] { "Berlin", "Brussels",\r
+ "Helsinki", "Madrid", "Oslo", "Paris", "Stockholm" };\r
+\r
+ public ListSelectMultipleExample() {\r
+ setSpacing(true);\r
+\r
+ ListSelect l = new ListSelect("Please select some cities");\r
+ for (int i = 0; i < cities.length; i++) {\r
+ l.addItem(cities[i]);\r
+ }\r
+ l.setRows(7);\r
+ l.setNullSelectionAllowed(true);\r
+ l.setMultiSelect(true);\r
+ l.setImmediate(true);\r
+ l.addListener(this);\r
+\r
+ addComponent(l);\r
+ }\r
+\r
+ /*\r
+ * Shows a notification when a selection is made.\r
+ */\r
+ @Override\r
+ public void valueChange(ValueChangeEvent event) {\r
+ getWindow().showNotification("Selected cities: " + event.getProperty());\r
+\r
+ }\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.demo.sampler.APIResource;\r
+import com.itmill.toolkit.demo.sampler.Feature;\r
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;\r
+import com.itmill.toolkit.ui.ListSelect;\r
+\r
+public class ListSelectSingle extends Feature {\r
+\r
+ @Override\r
+ public String getDescription() {\r
+ return "A simple list select component with single item selection."\r
+ + " A null selection is not allowed in this example.";\r
+ }\r
+\r
+ @Override\r
+ public APIResource[] getRelatedAPI() {\r
+ return new APIResource[] { new APIResource(ListSelect.class) };\r
+ }\r
+\r
+ @Override\r
+ public Class[] getRelatedFeatures() {\r
+ return new Class[] { ComboBoxPlain.class, NativeSelection.class,\r
+ ListSelectMultiple.class, TwinColumnSelect.class };\r
+ }\r
+\r
+ @Override\r
+ public NamedExternalResource[] getRelatedResources() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.data.Property;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
+import com.itmill.toolkit.ui.ListSelect;\r
+import com.itmill.toolkit.ui.VerticalLayout;\r
+\r
+public class ListSelectSingleExample extends VerticalLayout implements\r
+ Property.ValueChangeListener {\r
+\r
+ private static final String[] cities = new String[] { "Berlin", "Brussels",\r
+ "Helsinki", "Madrid", "Oslo", "Paris", "Stockholm" };\r
+\r
+ public ListSelectSingleExample() {\r
+ setSpacing(true);\r
+\r
+ ListSelect l = new ListSelect("Please select a city");\r
+ for (int i = 0; i < cities.length; i++) {\r
+ l.addItem(cities[i]);\r
+ }\r
+ l.setRows(7);\r
+ l.setNullSelectionAllowed(false);\r
+ l.setValue("Berlin");\r
+ l.setImmediate(true);\r
+ l.addListener(this);\r
+\r
+ addComponent(l);\r
+ }\r
+\r
+ /*\r
+ * Shows a notification when a selection is made.\r
+ */\r
+ @Override\r
+ public void valueChange(ValueChangeEvent event) {\r
+ getWindow().showNotification("Selected city: " + event.getProperty());\r
+\r
+ }\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.demo.sampler.APIResource;\r
+import com.itmill.toolkit.demo.sampler.Feature;\r
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;\r
+import com.itmill.toolkit.ui.NativeSelect;\r
+\r
+public class NativeSelection extends Feature {\r
+\r
+ @Override\r
+ public String getDescription() {\r
+ return "A native selection component provides a simple drop-down list for selecting one item.";\r
+ }\r
+\r
+ @Override\r
+ public APIResource[] getRelatedAPI() {\r
+ return new APIResource[] { new APIResource(NativeSelect.class) };\r
+ }\r
+\r
+ @Override\r
+ public Class[] getRelatedFeatures() {\r
+ return new Class[] { ComboBoxPlain.class, ListSelectSingle.class,\r
+ ListSelectMultiple.class, TwinColumnSelect.class };\r
+ }\r
+\r
+ @Override\r
+ public NamedExternalResource[] getRelatedResources() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.data.Property;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
+import com.itmill.toolkit.ui.NativeSelect;\r
+import com.itmill.toolkit.ui.VerticalLayout;\r
+\r
+public class NativeSelectionExample extends VerticalLayout implements\r
+ Property.ValueChangeListener {\r
+\r
+ private static final String[] cities = new String[] { "Berlin", "Brussels",\r
+ "Helsinki", "Madrid", "Oslo", "Paris", "Stockholm" };\r
+\r
+ public NativeSelectionExample() {\r
+ setSpacing(true);\r
+\r
+ NativeSelect l = new NativeSelect("Please select a city");\r
+ for (int i = 0; i < cities.length; i++) {\r
+ l.addItem(cities[i]);\r
+ }\r
+\r
+ l.setNullSelectionAllowed(false);\r
+ l.setValue("Berlin");\r
+ l.setImmediate(true);\r
+ l.addListener(this);\r
+\r
+ addComponent(l);\r
+ }\r
+\r
+ /*\r
+ * Shows a notification when a selection is made.\r
+ */\r
+ @Override\r
+ public void valueChange(ValueChangeEvent event) {\r
+ getWindow().showNotification("Selected city: " + event.getProperty());\r
+\r
+ }\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.demo.sampler.APIResource;\r
+import com.itmill.toolkit.demo.sampler.Feature;\r
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;\r
+import com.itmill.toolkit.ui.TwinColSelect;\r
+\r
+public class TwinColumnSelect extends Feature {\r
+\r
+ @Override\r
+ public String getDescription() {\r
+ return "The TwinColumnSelect is a multiple selection component"\r
+ + " that shows two lists side by side. The list on the left"\r
+ + " shows the available items and the list on the right shows"\r
+ + " the selected items. <br>You can select items"\r
+ + " from the list on the left and click on the >> button to move"\r
+ + " them to the list on the right. Items can be moved back by"\r
+ + " selecting them and clicking on the << button.";\r
+ }\r
+\r
+ @Override\r
+ public APIResource[] getRelatedAPI() {\r
+ return new APIResource[] { new APIResource(TwinColSelect.class) };\r
+ }\r
+\r
+ @Override\r
+ public Class[] getRelatedFeatures() {\r
+ return new Class[] { ComboBoxPlain.class, NativeSelection.class,\r
+ ListSelectMultiple.class, ListSelectSingle.class };\r
+ }\r
+\r
+ @Override\r
+ public NamedExternalResource[] getRelatedResources() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+}\r
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.selects;\r
+\r
+import com.itmill.toolkit.data.Property;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
+import com.itmill.toolkit.ui.TwinColSelect;\r
+import com.itmill.toolkit.ui.VerticalLayout;\r
+\r
+public class TwinColumnSelectExample extends VerticalLayout implements\r
+ Property.ValueChangeListener {\r
+\r
+ private static final String[] cities = new String[] { "Berlin", "Brussels",\r
+ "Helsinki", "Madrid", "Oslo", "Paris", "Stockholm" };\r
+\r
+ public TwinColumnSelectExample() {\r
+ setSpacing(true);\r
+\r
+ TwinColSelect l = new TwinColSelect("Please select some cities");\r
+ for (int i = 0; i < cities.length; i++) {\r
+ l.addItem(cities[i]);\r
+ }\r
+ l.setRows(7);\r
+ l.setNullSelectionAllowed(true);\r
+ l.setMultiSelect(true);\r
+ l.setImmediate(true);\r
+ l.addListener(this);\r
+\r
+ addComponent(l);\r
+ }\r
+\r
+ /*\r
+ * Shows a notification when a selection is made.\r
+ */\r
+ @Override\r
+ public void valueChange(ValueChangeEvent event) {\r
+ if (!event.getProperty().toString().equals("[]")) {\r
+ getWindow().showNotification(\r
+ "Selected cities: " + event.getProperty());\r
+ }\r
+ }\r
+}\r