[Clean] Remove old ScilabEditBox
[scilab.git] / scilab / modules / gui / src / java / org / scilab / modules / gui / uitable / ScilabUiTableBridge.java
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2010 - Han DONG
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10  *
11  */
12
13 package org.scilab.modules.gui.uitable;
14
15 import java.awt.Color;
16 import java.awt.Font;
17
18 import org.scilab.modules.gui.bridge.uitable.SwingScilabUiTable;
19 import org.scilab.modules.gui.events.callback.CommonCallBack;
20 import org.scilab.modules.gui.utils.Position;
21 import org.scilab.modules.gui.utils.Size;
22
23 /**
24  * Bridge for Scilab UiTables in GUIs
25  * @author Han DONG
26  */
27 public class ScilabUiTableBridge {
28
29     /**
30      * Constructor
31      */
32     protected ScilabUiTableBridge() {
33         throw new UnsupportedOperationException(); /* Prevents calls from subclass */
34     }
35
36     /**
37      * Creates a Scilab UiTable
38      * @return the created UiTable
39      */
40     public static SimpleUiTable createUiTable() {
41         return new SwingScilabUiTable();
42     }
43
44     /**
45      * Sets the Text of a Scilab UiTable
46      * @param uiTable the UiTable we want to set the Text of
47      * @param newText the Text we want to set to the UiTable
48      */
49     public static void setText(UiTable uiTable, String newText) {
50         uiTable.getAsSimpleUiTable().setText(newText);
51     }
52
53     /**
54      * Sets the Text of a Scilab UiTable
55      * @param uiTable the UiTable we want to get the Text of
56      * @return the text of the UiTable
57      */
58     public static String getText(UiTable uiTable) {
59         return uiTable.getAsSimpleUiTable().getText();
60     }
61
62     /**
63      * Draws a Scilab uiTable
64      * @param uiTable the uiTable to draw
65      * @see org.scilab.modules.gui.UIElement#draw()
66      */
67     public static void draw(UiTable uiTable) {
68         uiTable.getAsSimpleUiTable().draw();
69     }
70
71     /**
72      * Gets the dimensions (width and height) of a Scilab UiTable
73      * @param uiTable the uiTable we want to get the dimensions of
74      * @return the size of the uiTable
75      * @see org.scilab.modules.gui.UIElement#getDims()
76      */
77     public static Size getDims(UiTable uiTable) {
78         return uiTable.getAsSimpleUiTable().getDims();
79     }
80
81     /**
82      * Gets the position (X-coordinate and Y-coordinate) of a Scilab uiTable
83      * @param uiTable the uiTable we want to get the position of
84      * @return the position of the uiTable
85      * @see org.scilab.modules.gui.UIElement#getPosition()
86      */
87     public static Position getPosition(UiTable uiTable) {
88         return uiTable.getAsSimpleUiTable().getPosition();
89     }
90
91     /**
92      * Gets the visibility status of a Scilab UiTable
93      * @param uiTable the uiTable we want to get the visiblity status of
94      * @return the visibility status of the uiTable (true if the uiTable is visible, false if not)
95      * @see org.scilab.modules.gui.UIElement#isVisible()
96      */
97     public static boolean isVisible(UiTable uiTable) {
98         return uiTable.getAsSimpleUiTable().isVisible();
99     }
100
101     /**
102      * Sets the dimensions (width and height) of a Scilab UiTable
103      * @param uiTable the uiTable we want to set the dimensions of
104      * @param newSize the size we want to set to the uiTable
105      * @see org.scilab.modules.gui.UIElement#setDims(org.scilab.modules.gui.utils.Size)
106      */
107     public static void setDims(UiTable uiTable, Size newSize) {
108         uiTable.getAsSimpleUiTable().setDims(newSize);
109     }
110
111     /**
112      * Sets the position (X-coordinate and Y-coordinate) of a Scilab uiTable
113      * @param uiTable the uiTable we want to set the position of
114      * @param newPosition the position we want to set to the uiTable
115      * @see org.scilab.modules.gui.UIElement#setPosition(org.scilab.modules.gui.utils.Position)
116      */
117     public static void setPosition(UiTable uiTable, Position newPosition) {
118         uiTable.getAsSimpleUiTable().setPosition(newPosition);
119     }
120
121     /**
122      * Sets the visibility status of a Scilab UiTable
123      * @param uiTable the uiTable we want to set the visiblity status of
124      * @param newVisibleState the visibility status we want to set to the uiTable (true to set the uiTable visible, false else)
125      * @see org.scilab.modules.gui.UIElement#setVisible(boolean)
126      */
127     public static void setVisible(UiTable uiTable, boolean newVisibleState) {
128         uiTable.getAsSimpleUiTable().setVisible(newVisibleState);
129     }
130
131     /**
132      * Add a callback to the UiTable
133      * @param uiTable the UiTable we want to set the callback of
134      * @param callback the CallBack to set.
135      */
136     public static void setCallback(UiTable uiTable, CommonCallBack callback) {
137         uiTable.getAsSimpleUiTable().setCallback(callback);
138     }
139
140     /**
141      * To set the Background color of the UiTable
142      * @param uiTable the UiTable we want to set the background of
143      * @param color the Color
144      */
145     public static void setBackground(UiTable uiTable, Color color) {
146         uiTable.getAsSimpleUiTable().setBackground(color);
147     }
148
149     /**
150      * Get the Background color of the UiTable
151      * @param uiTable the UiTable we want to get the background of
152      * @return the Color
153      */
154     public static Color getBackground(UiTable uiTable) {
155         return uiTable.getAsSimpleUiTable().getBackground();
156     }
157
158     /**
159      * To set the Foreground color of the uiTable
160      * @param uiTable the UiTable we want to set the foreground of
161      * @param color the Color
162      */
163     public static void setForeground(UiTable uiTable, Color color) {
164         uiTable.getAsSimpleUiTable().setForeground(color);
165     }
166
167     /**
168      * Get the Foreground color of the UiTable
169      * @param uiTable the UiTable we want to get the foreground of
170      * @return the Color
171      */
172     public static Color getForeground(UiTable uiTable) {
173         return uiTable.getAsSimpleUiTable().getForeground();
174     }
175
176     /**
177      * Set the font of the UiTable.
178      * @param uiTable the UiTable we want to set the font of
179      * @param font the font
180      */
181     public static void setFont(UiTable uiTable, Font font) {
182         uiTable.getAsSimpleUiTable().setFont(font);
183     }
184
185     /**
186      * Get the font of the UiTable.
187      * @param uiTable the UiTable we want to get the font of
188      * @return the font
189      */
190     public static Font getFont(UiTable uiTable) {
191         return uiTable.getAsSimpleUiTable().getFont();
192     }
193
194     /**
195      * Set if the UiTable is enabled or not
196      * @param uiTable the UiTable we want to set the status of
197      * @param status true if the UiTable is enabled
198      */
199     public static void setEnabled(UiTable uiTable, boolean status) {
200         uiTable.getAsSimpleUiTable().setEnabled(status);
201     }
202
203     /**
204      * Gets the enable status of a UiTable
205      * @param uiTable the UiTable we want to get the status of
206      * @return the enable status of the UiTable (true if the UiTable is enabled, false if not)
207      */
208     public static boolean isEnabled(UiTable uiTable) {
209         return uiTable.getAsSimpleUiTable().isEnabled();
210     }
211
212     /**
213      * Set the horizontal alignment for the UiTable text
214      * @param uiTable the UiTable we want to set the alignment of
215      * @param alignment the value for the alignment (See ScilabAlignment.java)
216      */
217     public static void setHorizontalAlignment(UiTable uiTable, String alignment) {
218         uiTable.getAsSimpleUiTable().setHorizontalAlignment(alignment);
219     }
220
221     /**
222      * Set the vertical alignment for the UiTable text
223      * @param uiTable the UiTable we want to set the alignment of
224      * @param alignment the value for the alignment (See ScilabAlignment.java)
225      */
226     public static void setVerticalAlignment(UiTable uiTable, String alignment) {
227         uiTable.getAsSimpleUiTable().setVerticalAlignment(alignment);
228     }
229
230     /**
231      * Set the Relief of the UiTable
232      * @param uiTable the UiTable which we want to set the Relief of
233      * @param reliefType the type of the relief to set (See ScilabRelief.java)
234      */
235     public static void setRelief(UiTable uiTable, String reliefType) {
236         uiTable.getAsSimpleUiTable().setRelief(reliefType);
237     }
238
239     /**
240      * Delete the UiTable
241      * @param uiTable the UiTable to be destroyed
242      */
243     public static void destroy(UiTable uiTable) {
244         uiTable.getAsSimpleUiTable().destroy();
245     }
246
247     /**
248      * Give the focus to the UiTable
249      * @param uiTable the UiTable
250      */
251     public static void requestFocus(UiTable uiTable) {
252         uiTable.getAsSimpleUiTable().requestFocus();
253     }
254
255     /**
256      * Sets the column namesfor uitable
257      * @param text the String that contains column names delimited by a '|'
258      */
259     public static void setColnames(UiTable uiTable, String text) {
260         // TODO remove
261         //uiTable.getAsSimpleUiTable().setColnames(text);
262     }
263
264     /**
265      * Sets the row names for uitable
266      * @param text the String that contains row name delimited by a '|'
267      */
268     public static void setRownames(UiTable uiTable, String text) {
269         // TODO remove
270         //uiTable.getAsSimpleUiTable().setRownames(text);
271     }
272
273     /**
274      * Sets the data for uitable
275      * @param text the String that contains row data delimited by a '|'
276          *        and column data delimited by " ". Example: 1.26 3.47 | a b | d e | a b
277      */
278     public static void setData(UiTable uiTable, String text) {
279         // TODO remove
280         //uiTable.getAsSimpleUiTable().setData(text);
281     }
282 }