01: /* *************************************************************************
02:
03: Millstone(TM)
04: Open Sourced User Interface Library for
05: Internet Development with Java
06:
07: Millstone is a registered trademark of IT Mill Ltd
08: Copyright (C) 2000-2005 IT Mill Ltd
09:
10: *************************************************************************
11:
12: This library is free software; you can redistribute it and/or
13: modify it under the terms of the GNU Lesser General Public
14: license version 2.1 as published by the Free Software Foundation.
15:
16: This library is distributed in the hope that it will be useful,
17: but WITHOUT ANY WARRANTY; without even the implied warranty of
18: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19: Lesser General Public License for more details.
20:
21: You should have received a copy of the GNU Lesser General Public
22: License along with this library; if not, write to the Free Software
23: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24:
25: *************************************************************************
26:
27: For more information, contact:
28:
29: IT Mill Ltd phone: +358 2 4802 7180
30: Ruukinkatu 2-4 fax: +358 2 4802 7181
31: 20540, Turku email: info@itmill.com
32: Finland company www: www.itmill.com
33:
34: Primary source for MillStone information and releases: www.millstone.org
35:
36: ********************************************************************** */
37:
38: package org.millstone.examples.features;
39:
40: import org.millstone.base.ui.*;
41:
42: public class FeaturePanel extends Feature {
43:
44: public FeaturePanel() {
45: super ();
46: }
47:
48: protected Component getDemoComponent() {
49:
50: OrderedLayout l = new OrderedLayout();
51:
52: // Example panel
53: Panel show = new Panel("Panel caption");
54: show.addComponent(new Label("Label in Panel"));
55: l.addComponent(show);
56:
57: // Properties
58: PropertyPanel p = new PropertyPanel(show);
59: Form ap = p.createBeanPropertySet(new String[] { "width",
60: "height" });
61: Select themes = (Select) p.getField("style");
62: themes.addItem("light").getItemProperty(
63: themes.getItemCaptionPropertyId()).setValue("light");
64: themes.addItem("strong").getItemProperty(
65: themes.getItemCaptionPropertyId()).setValue("strong");
66: p.addProperties("Panel Properties", ap);
67: l.addComponent(p);
68:
69: return l;
70: }
71:
72: protected String getExampleSrc() {
73: return "Panel show = new Panel(\"Panel caption\");\n"
74: + "show.addComponent(new Label(\"Label in Panel\"));";
75:
76: }
77:
78: protected String getDescriptionXHTML() {
79: return "The Panel is a container for other components, it usually draws a frame around it's "
80: + "extremities and may have a caption to clarify the nature of the contained components purpose."
81: + "A panel always contains firstly a layout onto which the actual contained components are added, "
82: + "this layout may be switched on the fly. <br/><br/>"
83: + "On the demo tab you can try out how the different properties "
84: + "affect the presentation of the component.";
85: }
86:
87: protected String getImage() {
88: return "panel.jpg";
89: }
90:
91: protected String getTitle() {
92: return "Panel";
93: }
94:
95: }
|