diff options
author | Joonas Lehtinen <joonas.lehtinen@itmill.com> | 2006-11-01 09:11:32 +0000 |
---|---|---|
committer | Joonas Lehtinen <joonas.lehtinen@itmill.com> | 2006-11-01 09:11:32 +0000 |
commit | 13af8cba414fbb6f02ef458a86c5afcad70c5275 (patch) | |
tree | 959ccae1696d9c208124ec3982f166bca6c28f0a /src/com/itmill/toolkit/demo/features/FeatureDateField.java | |
parent | de5565e87dc08be0a577c663bb2e009d0838c872 (diff) | |
download | vaadin-framework-13af8cba414fbb6f02ef458a86c5afcad70c5275.tar.gz vaadin-framework-13af8cba414fbb6f02ef458a86c5afcad70c5275.zip |
Refactoring: Enably -> IT Mill Toolkit
svn changeset:92/svn branch:toolkit
Diffstat (limited to 'src/com/itmill/toolkit/demo/features/FeatureDateField.java')
-rw-r--r-- | src/com/itmill/toolkit/demo/features/FeatureDateField.java | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/demo/features/FeatureDateField.java b/src/com/itmill/toolkit/demo/features/FeatureDateField.java new file mode 100644 index 0000000000..74547ce238 --- /dev/null +++ b/src/com/itmill/toolkit/demo/features/FeatureDateField.java @@ -0,0 +1,136 @@ +/* ************************************************************************* + + IT Mill Toolkit + + Development of Browser User Intarfaces Made Easy + + Copyright (C) 2000-2006 IT Mill Ltd + + ************************************************************************* + + This product is distributed under commercial license that can be found + from the product package on license/license.txt. Use of this product might + require purchasing a commercial license from IT Mill Ltd. For guidelines + on usage, see license/licensing-guidelines.html + + ************************************************************************* + + For more information, contact: + + IT Mill Ltd phone: +358 2 4802 7180 + Ruukinkatu 2-4 fax: +358 2 4802 7181 + 20540, Turku email: info@itmill.com + Finland company www: www.itmill.com + + Primary source for information and releases: www.itmill.com + + ********************************************************************** */ + +package com.itmill.toolkit.demo.features; + +import java.util.Locale; + +import com.itmill.toolkit.data.util.IndexedContainer; +import com.itmill.toolkit.data.util.MethodProperty; +import com.itmill.toolkit.ui.*; + +public class FeatureDateField extends Feature { + + static private IndexedContainer localeContainer; + static { + localeContainer = new IndexedContainer(); + localeContainer.addContainerProperty("name", String.class, ""); + Locale[] locales = Locale.getAvailableLocales(); + for (int i = 0; i < locales.length; i++) + localeContainer.addItem(locales[i]).getItemProperty("name").setValue( + locales[i].getDisplayName()); + } + + public FeatureDateField() { + super(); + } + + protected Component getDemoComponent() { + + OrderedLayout l = new OrderedLayout(); + + // Example panel + Panel show = new Panel("DateField component"); + DateField df = new DateField("Caption"); + df.setValue(new java.util.Date()); + show.addComponent(df); + l.addComponent(show); + + // Create locale selector + Select selector = new Select("Application Locale",localeContainer); + selector.setItemCaptionPropertyId("name"); + selector.setImmediate(true); + selector.setPropertyDataSource( + new MethodProperty(this.getApplication(), "locale")); + l.addComponent(selector); + + // Properties + PropertyPanel p = new PropertyPanel(df); + Form ap = p.createBeanPropertySet(new String[] { "resolution" }); + ap.replaceWithSelect( + "resolution", + new Object[] { + new Integer(DateField.RESOLUTION_YEAR), + new Integer(DateField.RESOLUTION_MONTH), + new Integer(DateField.RESOLUTION_DAY), + new Integer(DateField.RESOLUTION_HOUR), + new Integer(DateField.RESOLUTION_MIN), + new Integer(DateField.RESOLUTION_SEC), + new Integer(DateField.RESOLUTION_MSEC)}, + new Object[] { + "Year", + "Month", + "Day", + "Hour", + "Minute", + "Second", + "Millisecond" }); + Select themes = (Select) p.getField("style"); + themes + .addItem("text") + .getItemProperty(themes.getItemCaptionPropertyId()) + .setValue("text"); + themes + .addItem("calendar") + .getItemProperty(themes.getItemCaptionPropertyId()) + .setValue("calendar"); + p.addProperties("DateField Properties", ap); + l.addComponent(p); + + return l; + } + + protected String getExampleSrc() { + return "DateField df = new DateField(\"Caption\");\n" + + "df.setValue(new java.util.Date());\n"; + + } + + protected String getDescriptionXHTML() { + return "<p>Representing Dates and times and providing a way to select " + + "or enter some specific date and/or time is an typical need in " + + "data-entry userinterfaces. Millstone provides a DateField " + + "component that is intuitive to use and yet controllable through " + + "its properties.</p>" + + "<p>The calendar-style allows point-and-click selection "+ + "of dates while text-style shows only minimalistic user interface." + + "Validators may be bound to the component to check and " + + "validate the given input.</p>" + + "<p>On the demo tab you can try out how the different properties affect the " + + "presentation of the component.</p>"; + } + + protected String getImage() { + return "datefield.jpg"; + } + + protected String getTitle() { + return "DateField"; + } + +} |