001: // @@
002: // @@
003: /*
004: * Wi.Ser Framework
005: *
006: * Version: 1.8.1, 20-September-2007
007: * Copyright (C) 2005 Dirk von der Weiden <dvdw@imail.de>
008: *
009: * This library is free software; you can redistribute it and/or
010: * modify it under the terms of the GNU Lesser General Public
011: * License as published by the Free Software Foundation; either
012: * version 2 of the License, or (at your option) any later version.
013: *
014: * This library is distributed in the hope that it will be useful,
015: * but WITHOUT ANY WARRANTY; without even the implied warranty of
016: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
017: * Lesser General Public License for more details.
018: *
019: * You should have received a copy of the GNU Lesser General Public
020: * License along with this library located in LGPL.txt in the
021: * license directory; if not, write to the
022: * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
023: * Boston, MA 02111-1307, USA.
024: *
025: * If this agreement does not cover your requirements, please contact us
026: * via email to get detailed information about the commercial license
027: * or our service offerings!
028: *
029: */
030: // @@
031: package de.ug2t.unifiedGui.interfaces;
032:
033: import de.ug2t.kernel.*;
034:
035: /**
036: * @author Dirk
037: *
038: * date: 15.03.2004 project: WiSer-Framework
039: *
040: * <p>
041: * IUnListBox is the common interface to listbox-widgets. A listbox presents a
042: * list of items to the user. The user is able to select one of the items
043: * </p>
044: */
045: public interface IUnListBox extends IUnInputComponent, IUnComponent,
046: IUnListSelectComponent, IUnListComponent, IUnScrollController {
047: /**
048: * @author Dirk
049: *
050: * date: 29.05.2007 project: WiSer-Framework
051: *
052: * <p>
053: * Factory is a convenience class to create components of the surrounding
054: * interface's type without taking care for the WidgetServer MultiChannel API.
055: * It's use is similar to a constructor.
056: * </p>
057: */
058: public static class Factory {
059: /**
060: * Creates a standard version of this component as described in the factory.
061: * If you create masses of components for e.g. within a renderer use
062: * <i> create(IUnApplication xAppl)</i> for performance
063: * reasons.
064: *
065: * @param xLen
066: * ammount of rows in the box
067: * @return new component
068: */
069: public static IUnListBox create(int xLen) {
070: IUnApplication l_appl = (IUnApplication) KeRegisteredObject
071: .pcmf_getObjByName(IUnApplication.MY_APPL);
072: return (l_appl.pcmf_getComponentFactory()
073: .pcmf_createListBox(l_appl.pcmf_getApplType(), "",
074: "", "", xLen, l_appl));
075: }
076:
077: /**
078: * Creates a special version of this component as described in the factory
079: * configuration under the descriptor xFactoryDesc. If you create masses of
080: * components for e.g. within a renderer use <i>
081: * create(IUnApplication xAppl, String xFactoryDesc)</i> for performance
082: * reasons.
083: *
084: * @param xLen
085: * ammount of rows in the box
086: * @param xFactoryDesc
087: * descriptor
088: * @return new component
089: */
090: public static IUnListBox create(int xLen, String xFactoryDesc) {
091: IUnApplication l_appl = (IUnApplication) KeRegisteredObject
092: .pcmf_getObjByName(IUnApplication.MY_APPL);
093: return (l_appl.pcmf_getComponentFactory()
094: .pcmf_createListBoxPlugin(
095: l_appl.pcmf_getApplType(), "", "", "",
096: xLen, l_appl, xFactoryDesc));
097: }
098:
099: /**
100: * Creates a standard version of this component as described in the factory
101: * within the given application-context. If you create masses of components
102: * for e.g. within a renderer use this method for performance reasons.
103: *
104: * @param xLen
105: * ammount of rows in the box
106: * @param xAppl
107: * application in which context the component is created
108: * @return new component
109: */
110: public static IUnListBox create(int xLen, IUnApplication xAppl) {
111: return (xAppl.pcmf_getComponentFactory()
112: .pcmf_createListBox(xAppl.pcmf_getApplType(), "",
113: "", "", xLen, xAppl));
114: }
115:
116: /**
117: * Creates a special version of this component as described in the factory
118: * configuration under the descriptor xFactoryDesc. If you create masses of
119: * components for e.g. within a renderer use this function for performance
120: * reasons.
121: *
122: * @param xLen
123: * ammount of rows in the box
124: * @param xFactoryDesc
125: * descriptor
126: * @param xAppl
127: * application in which context the component is created
128: * @return new component
129: */
130: public static IUnListBox create(int xLen, IUnApplication xAppl,
131: String xFactoryDesc) {
132: return (xAppl.pcmf_getComponentFactory()
133: .pcmf_createListBoxPlugin(xAppl.pcmf_getApplType(),
134: "", "", "", xLen, xAppl, xFactoryDesc));
135: }
136: }
137:
138: /**
139: * <p>
140: * Returns the size of the listBox
141: * </p>
142: * <p>
143: *
144: * @return size
145: * </p>
146: * <p>
147: * </p>
148: */
149: public int pcmf_getVisibleRows();
150:
151: /**
152: * <p>
153: * Sets the size of the listBox
154: * </p>
155: * <p>
156: *
157: * </p>
158: * <p>
159: *
160: * @param xSize
161: * the size in lines of the listBox
162: * </p>
163: */
164: public void pcmf_setVisibleRows(int xSize);
165:
166: /**
167: * <p>
168: * Removes all values from the listBox
169: * </p>
170: * <p>
171: *
172: * </p>
173: * <p>
174: * </p>
175: */
176: public void pcmf_clearListBox();
177:
178: /**
179: * <p>
180: * Removes all values from the listBox and deletes the values if they are
181: * registred
182: * </p>
183: * <p>
184: *
185: * </p>
186: * <p>
187: * </p>
188: */
189: public void pcmf_clearAndReleaseListBox();
190: };
|