01: /*
02:
03: Licensed to the Apache Software Foundation (ASF) under one or more
04: contributor license agreements. See the NOTICE file distributed with
05: this work for additional information regarding copyright ownership.
06: The ASF licenses this file to You under the Apache License, Version 2.0
07: (the "License"); you may not use this file except in compliance with
08: the License. You may obtain a copy of the License at
09:
10: http://www.apache.org/licenses/LICENSE-2.0
11:
12: Unless required by applicable law or agreed to in writing, software
13: distributed under the License is distributed on an "AS IS" BASIS,
14: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15: See the License for the specific language governing permissions and
16: limitations under the License.
17:
18: */
19: package org.apache.batik.gvt.text;
20:
21: /**
22: * Class that encapsulates information returned from hit testing
23: * a <tt>TextSpanLayout</tt> instance.
24: * @see org.apache.batik.gvt.text.TextSpanLayout
25: *
26: * @author <a href="mailto:bill.haneman@ireland.sun.com">Bill Haneman</a>
27: * @version $Id: TextHit.java 475477 2006-11-15 22:44:28Z cam $
28: */
29: public class TextHit {
30:
31: private int charIndex;
32: private boolean leadingEdge;
33:
34: /**
35: * Constructs a TextHit with the specified values.
36: *
37: * @param charIndex The index of the character that has been
38: * hit. In the case of bidirectional text this will be the logical
39: * character index not the visual index. The index is relative to
40: * whole text within the selected TextNode.
41: * @param leadingEdge Indicates which side of the character has
42: * been hit.
43: */
44: public TextHit(int charIndex, boolean leadingEdge) {
45: this .charIndex = charIndex;
46: this .leadingEdge = leadingEdge;
47: }
48:
49: /**
50: * Returns the index of the character that has been hit.
51: *
52: * @return The character index.
53: */
54: public int getCharIndex() {
55: return charIndex;
56: }
57:
58: /**
59: * Returns whether on not the character has been hit on its leading edge.
60: *
61: * @return Whether on not the character has been hit on its leading edge.
62: */
63: public boolean isLeadingEdge() {
64: return leadingEdge;
65: }
66: }
|