aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/itmill/toolkit/demo/SelectDemo.java
diff options
context:
space:
mode:
authorJani Laakso <jani.laakso@itmill.com>2007-04-03 06:54:56 +0000
committerJani Laakso <jani.laakso@itmill.com>2007-04-03 06:54:56 +0000
commit3febfb5a1f30fd58ae1afcdea75ad6ab5b0c9458 (patch)
tree7edaa2e4e88e3b1f0d24fb2599ddfb646a58b452 /src/com/itmill/toolkit/demo/SelectDemo.java
parent7397520086aec1cff86d6da93577c9c8d68aeb3f (diff)
downloadvaadin-framework-3febfb5a1f30fd58ae1afcdea75ad6ab5b0c9458.tar.gz
vaadin-framework-3febfb5a1f30fd58ae1afcdea75ad6ab5b0c9458.zip
Added few demos more. Enhanced documentation and looks.
svn changeset:1099/svn branch:trunk
Diffstat (limited to 'src/com/itmill/toolkit/demo/SelectDemo.java')
-rw-r--r--src/com/itmill/toolkit/demo/SelectDemo.java74
1 files changed, 74 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/demo/SelectDemo.java b/src/com/itmill/toolkit/demo/SelectDemo.java
new file mode 100644
index 0000000000..e8a76d1686
--- /dev/null
+++ b/src/com/itmill/toolkit/demo/SelectDemo.java
@@ -0,0 +1,74 @@
+package com.itmill.toolkit.demo;
+
+import java.sql.SQLException;
+import com.itmill.toolkit.data.util.QueryContainer;
+import com.itmill.toolkit.demo.util.SampleDatabase;
+import com.itmill.toolkit.ui.*;
+
+/**
+ * This example demonstrates what is lazy loading feature on Select component.
+ * Demo Uses similar concepts to QueryContainerDemo.
+ *
+ * @author IT Mill Ltd.
+ * @since 4.0.0
+ *
+ */
+public class SelectDemo extends com.itmill.toolkit.Application {
+
+ // Select component where SQL rows are attached (using QueryContainer)
+ private Select select = new Select();
+
+ private Select lazySelect = new Select();
+
+ // Database provided with sample data
+ private SampleDatabase sampleDatabase;
+
+ /**
+ * Initialize Application. Demo components are added to main window.
+ */
+ public void init() {
+ Window main = new Window("Select demo");
+ setMainWindow(main);
+
+ // set the application to use Corporate -theme
+ setTheme("corporate");
+
+ // Main window contains heading, table, select and tree
+ Panel panel = new Panel("Select demo (a.k.a Google Suggests)");
+ panel.addComponent(lazySelect);
+ panel.addComponent(new Label("<hr />", Label.CONTENT_XHTML));
+ panel.addComponent(select);
+ main.addComponent(panel);
+
+ // create demo database
+ sampleDatabase = new SampleDatabase();
+
+ initSelects();
+ }
+
+ private void initSelects() {
+ // init select
+ select.setCaption("All employees default functionality.");
+ select.setItemCaptionPropertyId("WORKER");
+ // populate Toolkit select component with test SQL table rows
+ try {
+ QueryContainer qc = new QueryContainer(
+ "SELECT ID, UNIT||', '||LASTNAME||' '||FIRSTNAME"
+ + " AS WORKER FROM employee ORDER BY WORKER",
+ sampleDatabase.getConnection());
+ select.setContainerDataSource(qc);
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+
+ // init lazySelect
+ lazySelect.setCaption("All employees with lazy loading "
+ + "(a.k.a Google Suggests) activated.");
+ lazySelect.setItemCaptionPropertyId("WORKER");
+ // use lazy loading (a.k.a Google Suggest)
+ lazySelect.setLazyLoading(true);
+ // use same datasource as select object uses
+ lazySelect.setContainerDataSource(select.getContainerDataSource());
+ }
+
+}