OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libjava/] [classpath/] [javax/] [swing/] [plaf/] [TextUI.java] - Blame information for rev 772

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 772 jeremybenn
/* TextUI.java --
2
   Copyright (C) 2002, 2003, 2004  Free Software Foundation, Inc.
3
 
4
This file is part of GNU Classpath.
5
 
6
GNU Classpath is free software; you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation; either version 2, or (at your option)
9
any later version.
10
 
11
GNU Classpath is distributed in the hope that it will be useful, but
12
WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
General Public License for more details.
15
 
16
You should have received a copy of the GNU General Public License
17
along with GNU Classpath; see the file COPYING.  If not, write to the
18
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19
02110-1301 USA.
20
 
21
Linking this library statically or dynamically with other modules is
22
making a combined work based on this library.  Thus, the terms and
23
conditions of the GNU General Public License cover the whole
24
combination.
25
 
26
As a special exception, the copyright holders of this library give you
27
permission to link this library with independent modules to produce an
28
executable, regardless of the license terms of these independent
29
modules, and to copy and distribute the resulting executable under
30
terms of your choice, provided that you also meet, for each linked
31
independent module, the terms and conditions of the license of that
32
module.  An independent module is a module which is not derived from
33
or based on this library.  If you modify this library, you may extend
34
this exception to your version of the library, but you are not
35
obligated to do so.  If you do not wish to do so, delete this
36
exception statement from your version. */
37
 
38
 
39
package javax.swing.plaf;
40
 
41
import java.awt.Point;
42
import java.awt.Rectangle;
43
import java.awt.Shape;
44
 
45
import javax.swing.text.BadLocationException;
46
import javax.swing.text.EditorKit;
47
import javax.swing.text.JTextComponent;
48
import javax.swing.text.Position;
49
import javax.swing.text.View;
50
 
51
/**
52
 * An abstract base class for delegates that provide the user
53
 * interface for text editors.
54
 *
55
 * @see javax.swing.text.JTextComponent
56
 *
57
 * @author Ronald Veldema (rveldema@cs.vu.nl)
58
 * @author Sascha Brawer (brawer@dandelis.ch)
59
 */
60
public abstract class TextUI extends ComponentUI
61
{
62
  /**
63
   * Constructs a new <code>TextUI</code>.
64
   */
65
  public TextUI()
66
  {
67
    // Nothing to do here.
68
  }
69
 
70
 
71
  /**
72
   * Calculates the geometric extent of the character at the
73
   * given offset.
74
   *
75
   * @param tc the <code>JTextComponent</code> for which this
76
   *        delegate object provides the user interface.
77
   *
78
   * @param pos the zero-based index of the character into the
79
   *        document model.
80
   *
81
   * @return the bounding box of the character at index
82
   *         <code>pos</code>, in view coordinates.
83
   *
84
   * @throws BadLocationException if <code>pos</code> does not
85
   *         designate a valid position in the document model.
86
   *
87
   * @see javax.swing.text.ComponentView#modelToView(int, Shape, Position.Bias)
88
   */
89
  public abstract Rectangle modelToView(JTextComponent tc, int pos)
90
    throws BadLocationException;
91
 
92
 
93
  /**
94
   * Calculates the geometric extent of the character at the
95
   * given offset.
96
   *
97
   * @param tc the <code>JTextComponent</code> for which this
98
   *        delegate object provides the user interface.
99
   *
100
   * @param pos the zero-based index of the character into the
101
   *        document model.
102
   *
103
   * @param bias whether to take the character before or after the
104
   *        caret position indicated by <code>pos</code>.  The value
105
   *        must be either {@link
106
   *        javax.swing.text.Position.Bias#Backward} or {@link
107
   *        javax.swing.text.Position.Bias#Forward}.
108
   *
109
   * @return the bounding box of the character at index
110
   *         <code>pos</code>, in view coordinates.
111
   *
112
   * @throws BadLocationException if <code>pos</code> does not
113
   *         designate a valid position in the document model.
114
   *
115
   * @see javax.swing.text.ComponentView#modelToView(int, Shape, Position.Bias)
116
   */
117
  public abstract Rectangle modelToView(JTextComponent tc, int pos,
118
                                        Position.Bias bias)
119
    throws BadLocationException;
120
 
121
 
122
  /**
123
   * Finds the caret position which is closest to the specified visual
124
   * location.
125
   *
126
   * @param t the <code>JTextComponent</code> for which this
127
   *        delegate object provides the user interface.
128
   *
129
   * @param pt the position in view coordinates.
130
   *
131
   * @return the caret position which is closest to <code>loc</code>.
132
   *
133
   * @see #viewToModel(JTextComponent, Point, Position.Bias[])
134
   */
135
  public abstract int viewToModel(JTextComponent t, Point pt);
136
 
137
 
138
  /**
139
   * Finds the caret position which is closest to the specified visual
140
   * location.
141
   *
142
   * @param tc the <code>JTextComponent</code> for which this
143
   *        delegate object provides the user interface.
144
   *
145
   * @param loc the position in view coordinates.
146
   *
147
   * @param outBias an array whose size must be at least one.
148
   *        After the call, <code>outBias[0]</code> will indicate
149
   *        whether <code>loc</code> is in the glyph before
150
   *        (<code>Position.Bias.Backward</code>) or after
151
   *        (<code>Position.Bias.Forward</code>) the returned
152
   *        caret position.
153
   *
154
   * @return the caret position which is closest to <code>loc</code>.
155
   */
156
  public abstract int viewToModel(JTextComponent tc, Point loc,
157
                                  Position.Bias[] outBias);
158
 
159
 
160
 
161
  /**
162
   * Calculates the caret position that is visually next to the given
163
   * position. This is useful to determine where to move the caret
164
   * after the user has pressed an arrow key.
165
   *
166
   * @param tc the <code>JTextComponent</code> for which this
167
   *        delegate object provides the user interface.
168
   *
169
   * @param pos the current caret position, a zero-based index
170
   *        into the document model.
171
   *
172
   * @param bias whether to take the character before or after the
173
   *        caret position indicated by <code>pos</code>.  The value
174
   *        must be either {@link
175
   *        javax.swing.text.Position.Bias#Backward} or {@link
176
   *        javax.swing.text.Position.Bias#Forward}.
177
   *
178
   * @param direction the visual direction. Pass
179
   *        {@link javax.swing.SwingConstants#WEST} for the left
180
   *        arrow key, {@link javax.swing.SwingConstants#EAST}
181
   *        for the right arrow key, {@link
182
   *        javax.swing.SwingConstants#NORTH} for the up arrow
183
   *        key, or {@link javax.swing.SwingConstants#SOUTH}
184
   *        for the down arrow key.
185
   *
186
   * @throws BadLocationException if <code>pos</code> does not
187
   *         designate a valid position in the document model.
188
   *
189
   * @throws IllegalArgumentException if <code>direction</code>
190
   *         is not one of <code>Position.Bias.Forward</code>
191
   *         or <code>Position.Bias.Backward</code>.
192
   */
193
  public abstract int getNextVisualPositionFrom(JTextComponent tc,
194
                                                int pos,
195
                                                Position.Bias bias,
196
                                                int direction,
197
                                                Position.Bias[] outBias)
198
    throws BadLocationException;
199
 
200
 
201
  /**
202
   * Repaints a range of characters.
203
   *
204
   * @param tc the <code>JTextComponent</code> for which this
205
   *        delegate object provides the user interface.
206
   *
207
   * @param start the first character in the range that needs
208
   *        painting, indicated as an index into the document model.
209
   *
210
   * @param end the last character in the range that needs
211
   *        painting, indicated as an index into the document model.
212
   *        <code>end</code> must be greater than or equal to
213
   *        <code>start</code>.
214
   */
215
  public abstract void damageRange(JTextComponent tc, int start, int end);
216
 
217
 
218
  /**
219
   * Repaints a range of characters, also specifying the bias for the
220
   * start and end of the range.
221
   *
222
   * @param tc the <code>JTextComponent</code> for which this
223
   *        delegate object provides the user interface.
224
   *
225
   * @param start the first character in the range that needs
226
   *        painting, indicated as an index into the document model.
227
   *
228
   * @param end the last character in the range that needs
229
   *        painting, indicated as an index into the document model.
230
   *        <code>end</code> must be greater than or equal to
231
   *        <code>start</code>.
232
   */
233
  public abstract void damageRange(JTextComponent tc,
234
                                   int start, int end,
235
                                   Position.Bias startBias,
236
                                   Position.Bias endBias);
237
 
238
 
239
  /**
240
   * Retrieves the <code>EditorKit</code> managing policies and
241
   * persistent state.
242
   *
243
   * @param tc the <code>JTextComponent</code> for which this
244
   *        delegate object provides the user interface.
245
   *
246
   * @return the <code>EditorKit</code> used by <code>tc</code>.
247
   */
248
  public abstract EditorKit getEditorKit(JTextComponent tc);
249
 
250
 
251
  /**
252
   * Retrieves the root of the view tree that visually presents
253
   * the text.
254
   *
255
   * @param tc the <code>JTextComponent</code> for which this
256
   *        delegate object provides the user interface.
257
   *
258
   * @return the root <code>View</code> used by <code>tc</code>.
259
   */
260
  public abstract View getRootView(JTextComponent tc);
261
 
262
 
263
  /**
264
   * Returns a String for presenting a tool tip at the specified
265
   * location.
266
   *
267
   * @param tc the <code>JTextComponent</code> for which this
268
   *        delegate object provides the user interface.
269
   *
270
   * @param loc the location for which the tool tip is requested.
271
   *
272
   * @return the text for the tool tip, or <code>null</code> to
273
   *         display no tool tip.
274
   *
275
   * @since 1.4
276
   */
277
  public String getToolTipText(JTextComponent tc, Point loc)
278
  {
279
    return null;
280
  }
281
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.