001: /* *************************************************************************
002:
003: Millstone(TM)
004: Open Sourced User Interface Library for
005: Internet Development with Java
006:
007: Millstone is a registered trademark of IT Mill Ltd
008: Copyright (C) 2000-2005 IT Mill Ltd
009:
010: *************************************************************************
011:
012: This library is free software; you can redistribute it and/or
013: modify it under the terms of the GNU Lesser General Public
014: license version 2.1 as published by the Free Software Foundation.
015:
016: This library is distributed in the hope that it will be useful,
017: but WITHOUT ANY WARRANTY; without even the implied warranty of
018: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
019: Lesser General Public License for more details.
020:
021: You should have received a copy of the GNU Lesser General Public
022: License along with this library; if not, write to the Free Software
023: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
024:
025: *************************************************************************
026:
027: For more information, contact:
028:
029: IT Mill Ltd phone: +358 2 4802 7180
030: Ruukinkatu 2-4 fax: +358 2 4802 7181
031: 20540, Turku email: info@itmill.com
032: Finland company www: www.itmill.com
033:
034: Primary source for MillStone information and releases: www.millstone.org
035:
036: ********************************************************************** */
037:
038: package org.millstone.examples.features;
039:
040: import org.millstone.base.ui.*;
041:
042: public class FeatureLabel extends Feature {
043:
044: public FeatureLabel() {
045: super ();
046: }
047:
048: protected Component getDemoComponent() {
049:
050: OrderedLayout l = new OrderedLayout();
051:
052: // Example panel
053: Panel show = new Panel("Label component");
054: Label lab = new Label("Label text");
055: show.addComponent(lab);
056: l.addComponent(show);
057:
058: // Properties
059: PropertyPanel p = new PropertyPanel(lab);
060: Form ap = p.createBeanPropertySet(new String[] { "contentMode",
061: "value" });
062: ap.replaceWithSelect("contentMode", new Object[] {
063: new Integer(Label.CONTENT_PREFORMATTED),
064: new Integer(Label.CONTENT_TEXT),
065: new Integer(Label.CONTENT_UIDL),
066: new Integer(Label.CONTENT_XHTML),
067: new Integer(Label.CONTENT_XML) }, new Object[] {
068: "Preformatted", "Text", "UIDL (Must be valid)",
069: "XHTML Fragment(Must be valid)",
070: "XML (Subtree with namespace)" });
071: p.addProperties("Label Properties", ap);
072: l.addComponent(p);
073:
074: return l;
075: }
076:
077: protected String getExampleSrc() {
078: return "Label l = new Label(\"Caption\");\n";
079: }
080:
081: /**
082: * @see org.millstone.examples.features.Feature#getDescriptionXHTML()
083: */
084: protected String getDescriptionXHTML() {
085: return "Labels components are for captions and plain text. "
086: + "By default, it is a light-weight component for presenting "
087: + "text content in application, but it can be also used to present "
088: + "formatted information and even XML."
089: + "<br /><br />"
090: + "Label can also be directly associated with data property to display "
091: + "information from different data sources automatically. This makes it "
092: + "trivial to present the current user in the corner of applications main window. "
093: + "<br /><br />"
094: + "On the demo tab you can try out how the different properties affect "
095: + "the presentation of the component.";
096: }
097:
098: protected String getImage() {
099: return "label.jpg";
100: }
101:
102: protected String getTitle() {
103: return "Label";
104: }
105:
106: }
|