1 /*
2 * Copyright 2006-2016 The JGUIraffe Team.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License")
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 package net.sf.jguiraffe.gui.builder.components.model;
17
18 import net.sf.jguiraffe.gui.forms.ComponentHandler;
19
20 /**
21 * <p>
22 * Definition of an interface for a handler that represents a static text
23 * component.
24 * </p>
25 * <p>
26 * Though static text elements are no input elements in the common sense it is
27 * possible to update some of their properties. For this purpose this interface
28 * provides some convenience methods, so that specific properties can be set and
29 * it is unnecessary to call <code>setData()</code> all the time.
30 * </p>
31 * <p>
32 * The <code>setData()</code> and <code>getData()</code> methods of this handler
33 * interface operate on <code>{@link StaticTextData}</code> objects. By calling
34 * <code>setData()</code> with a <code>StaticTextData</code> object all
35 * properties of the managed static text object are updated. If <b>null</b> is
36 * passed in, all properties (text and icon) and cleared.
37 * </p>
38 * <p>
39 * The <code>getData()</code> method will always return a
40 * <code>{@link StaticTextData}</code> object representing the current state
41 * of the static text element. Note that the returned object is disconnected
42 * from the static text component, i.e. a manipulation of its properties will
43 * not affect the static text component directly. You have to call
44 * <code>setData()</code> explicitly for setting the changed values.
45 * </p>
46 * <p>
47 * This interface simply combines the <code>{@link StaticTextData}</code>
48 * interface with the <code>{@link ComponentHandler}</code> interface.
49 * </p>
50 *
51 * @author Oliver Heger
52 * @version $Id: StaticTextHandler.java 205 2012-01-29 18:29:57Z oheger $
53 */
54 public interface StaticTextHandler extends ComponentHandler<StaticTextData>, StaticTextData
55 {
56 }