import com.itmill.toolkit.demo.sampler.features.buttons.ButtonLink;
import com.itmill.toolkit.demo.sampler.features.buttons.ButtonPush;
import com.itmill.toolkit.demo.sampler.features.buttons.ButtonSwitch;
+import com.itmill.toolkit.demo.sampler.features.commons.Icons;
import com.itmill.toolkit.demo.sampler.features.commons.Tooltips;
import com.itmill.toolkit.demo.sampler.features.link.LinkCurrentWindow;
import com.itmill.toolkit.demo.sampler.features.link.LinkNoDecorations;
new FeatureSet("Components", new Feature[] {
// Components
- new FeatureSet("Commons",
- new Feature[] { new Tooltips(), // tooltips
+ new FeatureSet("Commons", new Feature[] {
+ new Tooltips(), // tooltips
+ new Icons(), // icons
- }),
+ }),
new FeatureSet("Buttons", new Feature[] {
new ButtonPush(), // basic
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.commons;
+
+import com.itmill.toolkit.demo.sampler.APIResource;
+import com.itmill.toolkit.demo.sampler.Feature;
+import com.itmill.toolkit.demo.sampler.NamedExternalResource;
+import com.itmill.toolkit.ui.Component;
+
+public class Icons extends Feature {
+
+ @Override
+ public String getDescription() {
+ return "Most components can have an <i>icon</i>,"
+ + " which is usually displayed next to the caption.<br/>"
+ + "When used correctly, icons can make it significantly"
+ + " easier for the user to find a specific functionality."
+ + " Beware of overuse, which will have the opposite effect.";
+ }
+
+ @Override
+ public APIResource[] getRelatedAPI() {
+ return new APIResource[] { new APIResource(Component.class) };
+ }
+
+ @Override
+ public Class[] getRelatedFeatures() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public NamedExternalResource[] getRelatedResources() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
--- /dev/null
+package com.itmill.toolkit.demo.sampler.features.commons;
+
+import com.itmill.toolkit.terminal.ExternalResource;
+import com.itmill.toolkit.terminal.ThemeResource;
+import com.itmill.toolkit.ui.Button;
+import com.itmill.toolkit.ui.Label;
+import com.itmill.toolkit.ui.Link;
+import com.itmill.toolkit.ui.OrderedLayout;
+import com.itmill.toolkit.ui.Panel;
+
+public class IconsExample extends OrderedLayout {
+
+ public IconsExample() {
+ setSpacing(true);
+
+ /* Button w/ icon */
+ Button button = new Button("Save");
+ button.setIcon(new ThemeResource("icons/action_save.gif"));
+ addComponent(button);
+
+ /* Label */;
+ Label l = new Label("Icons are very handy");
+ l.setCaption("Comment");
+ l.setIcon(new ThemeResource("icons/comment_yellow.gif"));
+ addComponent(l);
+
+ /* Panel w/ links */
+ Panel p = new Panel("Handy links");
+ p.setIcon(new ThemeResource("icons/icon_info.gif"));
+ addComponent(p);
+ Link lnk = new Link("http://www.itmill.com", new ExternalResource(
+ "http://www.itmill.com"));
+ lnk.setIcon(new ThemeResource("icons/icon_world.gif"));
+ p.addComponent(lnk);
+ lnk = new Link("http://www.itmill.com/developers/",
+ new ExternalResource("http://www.itmill.com/developers/"));
+ lnk.setIcon(new ThemeResource("icons/icon_world.gif"));
+ p.addComponent(lnk);
+ lnk = new Link("http://dev.itmill.com/", new ExternalResource(
+ "http://dev.itmill.com/"));
+ lnk.setIcon(new ThemeResource("icons/icon_world.gif"));
+ p.addComponent(lnk);
+ lnk = new Link("http://forum.itmill.com", new ExternalResource(
+ "http://forum.itmill.com"));
+ lnk.setIcon(new ThemeResource("icons/icon_world.gif"));
+ p.addComponent(lnk);
+
+ }
+}