xref: /AOO41X/main/winaccessibility/source/UAccCOM/AccText.cpp (revision 5fdc4257b5e43545f8f7841d9e8303d3a99b1714)
1*5fdc4257SSteve Yin /*************************************************************************
2*5fdc4257SSteve Yin  *
3*5fdc4257SSteve Yin  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*5fdc4257SSteve Yin  *
5*5fdc4257SSteve Yin  * Copyright IBM Corporation 2010.
6*5fdc4257SSteve Yin  * Copyright 2000, 2010 Oracle and/or its affiliates.
7*5fdc4257SSteve Yin  *
8*5fdc4257SSteve Yin  * OpenOffice.org - a multi-platform office productivity suite
9*5fdc4257SSteve Yin  *
10*5fdc4257SSteve Yin  * This file is part of OpenOffice.org.
11*5fdc4257SSteve Yin  *
12*5fdc4257SSteve Yin  * OpenOffice.org is free software: you can redistribute it and/or modify
13*5fdc4257SSteve Yin  * it under the terms of the GNU Lesser General Public License version 3
14*5fdc4257SSteve Yin  * only, as published by the Free Software Foundation.
15*5fdc4257SSteve Yin  *
16*5fdc4257SSteve Yin  * OpenOffice.org is distributed in the hope that it will be useful,
17*5fdc4257SSteve Yin  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18*5fdc4257SSteve Yin  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19*5fdc4257SSteve Yin  * GNU Lesser General Public License version 3 for more details
20*5fdc4257SSteve Yin  * (a copy is included in the LICENSE file that accompanied this code).
21*5fdc4257SSteve Yin  *
22*5fdc4257SSteve Yin  * You should have received a copy of the GNU Lesser General Public License
23*5fdc4257SSteve Yin  * version 3 along with OpenOffice.org.  If not, see
24*5fdc4257SSteve Yin  * <http://www.openoffice.org/license.html>
25*5fdc4257SSteve Yin  * for a copy of the LGPLv3 License.
26*5fdc4257SSteve Yin  *
27*5fdc4257SSteve Yin  ************************************************************************/
28*5fdc4257SSteve Yin 
29*5fdc4257SSteve Yin #include "stdafx.h"
30*5fdc4257SSteve Yin #include "UAccCOM2.h"
31*5fdc4257SSteve Yin #include "AccText.h"
32*5fdc4257SSteve Yin 
33*5fdc4257SSteve Yin using namespace com::sun::star::accessibility;
34*5fdc4257SSteve Yin using namespace com::sun::star::uno;
35*5fdc4257SSteve Yin 
36*5fdc4257SSteve Yin /**
37*5fdc4257SSteve Yin    * Get special selection.
38*5fdc4257SSteve Yin    * @param startOffset Start selection offset.
39*5fdc4257SSteve Yin    * @param endOffset   End selection offset.
40*5fdc4257SSteve Yin    * @param success     Variant to accept the result of if the method call is successful.
41*5fdc4257SSteve Yin    * @return Result.
42*5fdc4257SSteve Yin */
43*5fdc4257SSteve Yin STDMETHODIMP CAccText::addSelection(long startOffset, long endOffset)//, unsigned char * success)
44*5fdc4257SSteve Yin {
45*5fdc4257SSteve Yin 
46*5fdc4257SSteve Yin     return CAccTextBase::get_addSelection(startOffset, endOffset);//, success);
47*5fdc4257SSteve Yin }
48*5fdc4257SSteve Yin 
49*5fdc4257SSteve Yin /**
50*5fdc4257SSteve Yin    * Get special attributes.
51*5fdc4257SSteve Yin    * @param offset Offset.
52*5fdc4257SSteve Yin    * @param startOffset Variant to accept start offset.
53*5fdc4257SSteve Yin    * @param endOffset   Variant to accept end offset.
54*5fdc4257SSteve Yin    * @param textAttributes     Variant to accept attributes.
55*5fdc4257SSteve Yin    * @return Result.
56*5fdc4257SSteve Yin */
57*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_attributes(long offset, long * startOffset, long * endOffset, BSTR * textAttributes)
58*5fdc4257SSteve Yin {
59*5fdc4257SSteve Yin 
60*5fdc4257SSteve Yin     return CAccTextBase::get_attributes(offset, startOffset, endOffset, textAttributes);
61*5fdc4257SSteve Yin }
62*5fdc4257SSteve Yin 
63*5fdc4257SSteve Yin /**
64*5fdc4257SSteve Yin    * Get caret position.
65*5fdc4257SSteve Yin    * @param offset     Variant to accept caret offset.
66*5fdc4257SSteve Yin    * @return Result.
67*5fdc4257SSteve Yin */
68*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_caretOffset(long * offset)
69*5fdc4257SSteve Yin {
70*5fdc4257SSteve Yin 
71*5fdc4257SSteve Yin     return CAccTextBase::get_caretOffset(offset);
72*5fdc4257SSteve Yin }
73*5fdc4257SSteve Yin 
74*5fdc4257SSteve Yin /**
75*5fdc4257SSteve Yin    * Get character count.
76*5fdc4257SSteve Yin    * @param nCharacters  Variant to accept character count.
77*5fdc4257SSteve Yin    * @return Result.
78*5fdc4257SSteve Yin */
79*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_characterCount(long * nCharacters)
80*5fdc4257SSteve Yin {
81*5fdc4257SSteve Yin 
82*5fdc4257SSteve Yin     return CAccTextBase::get_characterCount(nCharacters);
83*5fdc4257SSteve Yin }
84*5fdc4257SSteve Yin 
85*5fdc4257SSteve Yin /**
86*5fdc4257SSteve Yin    * Get character extents.
87*5fdc4257SSteve Yin    * @param offset  Offset.
88*5fdc4257SSteve Yin    * @param x Variant to accpet x position.
89*5fdc4257SSteve Yin    * @param y Variant to accpet y position.
90*5fdc4257SSteve Yin    * @param width Variant to accpet width.
91*5fdc4257SSteve Yin    * @param Height Variant to accpet height.
92*5fdc4257SSteve Yin    * @return Result.
93*5fdc4257SSteve Yin */
94*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_characterExtents(long offset, IA2CoordinateType coordType, long * x, long * y, long * width, long * height)
95*5fdc4257SSteve Yin {
96*5fdc4257SSteve Yin 
97*5fdc4257SSteve Yin     return CAccTextBase::get_characterExtents(offset, coordType, x, y, width, height);
98*5fdc4257SSteve Yin }
99*5fdc4257SSteve Yin 
100*5fdc4257SSteve Yin /**
101*5fdc4257SSteve Yin    * Get slections count.
102*5fdc4257SSteve Yin    * @param nSelections Variant to accpet slections count.
103*5fdc4257SSteve Yin    * @return Result.
104*5fdc4257SSteve Yin */
105*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_nSelections(long * nSelections)
106*5fdc4257SSteve Yin {
107*5fdc4257SSteve Yin 
108*5fdc4257SSteve Yin     return CAccTextBase::get_nSelections(nSelections);
109*5fdc4257SSteve Yin }
110*5fdc4257SSteve Yin 
111*5fdc4257SSteve Yin /**
112*5fdc4257SSteve Yin    * Get offset of some special point.
113*5fdc4257SSteve Yin    * @param x X position of one point.
114*5fdc4257SSteve Yin    * @param x Y position of one point.
115*5fdc4257SSteve Yin    * @param coordType Type.
116*5fdc4257SSteve Yin    * @param offset Variant to accept offset.
117*5fdc4257SSteve Yin    * @return Result.
118*5fdc4257SSteve Yin */
119*5fdc4257SSteve Yin 
120*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_offsetAtPoint(long x, long y, IA2CoordinateType coordType, long * offset)
121*5fdc4257SSteve Yin {
122*5fdc4257SSteve Yin 
123*5fdc4257SSteve Yin     return CAccTextBase::get_offsetAtPoint(x, y, coordType, offset);
124*5fdc4257SSteve Yin }
125*5fdc4257SSteve Yin 
126*5fdc4257SSteve Yin /**
127*5fdc4257SSteve Yin    * Get selection range.
128*5fdc4257SSteve Yin    * @param selection selection count.
129*5fdc4257SSteve Yin    * @param startOffset Variant to accept the start offset of special selection.
130*5fdc4257SSteve Yin    * @param endOffset Variant to accept the end offset of special selection.
131*5fdc4257SSteve Yin    * @return Result.
132*5fdc4257SSteve Yin */
133*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_selection(long selection, long * startOffset, long * endOffset)
134*5fdc4257SSteve Yin {
135*5fdc4257SSteve Yin 
136*5fdc4257SSteve Yin     return CAccTextBase::get_selection(selection, startOffset, endOffset);
137*5fdc4257SSteve Yin }
138*5fdc4257SSteve Yin 
139*5fdc4257SSteve Yin /**
140*5fdc4257SSteve Yin    * Get special text.
141*5fdc4257SSteve Yin    * @param startOffset Start position of special range.
142*5fdc4257SSteve Yin    * @param endOffset   End position of special range.
143*5fdc4257SSteve Yin    * @param text        Variant to accept the text of special range.
144*5fdc4257SSteve Yin    * @return Result.
145*5fdc4257SSteve Yin */
146*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_text(long startOffset, long endOffset, BSTR * text)
147*5fdc4257SSteve Yin {
148*5fdc4257SSteve Yin 
149*5fdc4257SSteve Yin     return CAccTextBase::get_text(startOffset, endOffset, text);
150*5fdc4257SSteve Yin }
151*5fdc4257SSteve Yin 
152*5fdc4257SSteve Yin /**
153*5fdc4257SSteve Yin    * Get special text before some position.
154*5fdc4257SSteve Yin    * @param offset Special position.
155*5fdc4257SSteve Yin    * @param boundaryType Boundary type.
156*5fdc4257SSteve Yin    * @param startOffset Variant to accept the start offset.
157*5fdc4257SSteve Yin    * @param endOffset   Variant to accept the end offset.
158*5fdc4257SSteve Yin    * @param text        Variant to accept the special text.
159*5fdc4257SSteve Yin    * @return Result.
160*5fdc4257SSteve Yin */
161*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_textBeforeOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
162*5fdc4257SSteve Yin {
163*5fdc4257SSteve Yin 
164*5fdc4257SSteve Yin     return CAccTextBase::get_textBeforeOffset(offset, boundaryType,
165*5fdc4257SSteve Yin             startOffset, endOffset, text);
166*5fdc4257SSteve Yin }
167*5fdc4257SSteve Yin 
168*5fdc4257SSteve Yin /**
169*5fdc4257SSteve Yin    * Get special text after some position.
170*5fdc4257SSteve Yin    * @param offset Special position.
171*5fdc4257SSteve Yin    * @param boundaryType Boundary type.
172*5fdc4257SSteve Yin    * @param startOffset Variant to accept the start offset.
173*5fdc4257SSteve Yin    * @param endOffset   Variant to accept the end offset.
174*5fdc4257SSteve Yin    * @param text        Variant to accept the special text.
175*5fdc4257SSteve Yin    * @return Result.
176*5fdc4257SSteve Yin */
177*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_textAfterOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
178*5fdc4257SSteve Yin {
179*5fdc4257SSteve Yin 
180*5fdc4257SSteve Yin     return CAccTextBase::get_textAfterOffset(offset, boundaryType,
181*5fdc4257SSteve Yin             startOffset, endOffset, text);
182*5fdc4257SSteve Yin }
183*5fdc4257SSteve Yin 
184*5fdc4257SSteve Yin /**
185*5fdc4257SSteve Yin    * Get special text at some position.
186*5fdc4257SSteve Yin    * @param offset Special position.
187*5fdc4257SSteve Yin    * @param boundaryType Boundary type.
188*5fdc4257SSteve Yin    * @param startOffset Variant to accept the start offset.
189*5fdc4257SSteve Yin    * @param endOffset   Variant to accept the end offset.
190*5fdc4257SSteve Yin    * @param text        Variant to accept the special text.
191*5fdc4257SSteve Yin    * @return Result.
192*5fdc4257SSteve Yin */
193*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_textAtOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
194*5fdc4257SSteve Yin {
195*5fdc4257SSteve Yin 
196*5fdc4257SSteve Yin     return CAccTextBase::get_textAtOffset(offset, boundaryType,
197*5fdc4257SSteve Yin                                           startOffset, endOffset, text);
198*5fdc4257SSteve Yin }
199*5fdc4257SSteve Yin 
200*5fdc4257SSteve Yin /**
201*5fdc4257SSteve Yin    * Remove selection.
202*5fdc4257SSteve Yin    * @param selectionIndex Special selection index
203*5fdc4257SSteve Yin    * @param success Variant to accept the memthod called result.
204*5fdc4257SSteve Yin    * @return Result.
205*5fdc4257SSteve Yin */
206*5fdc4257SSteve Yin STDMETHODIMP CAccText::removeSelection(long selectionIndex)//, unsigned char * success)
207*5fdc4257SSteve Yin {
208*5fdc4257SSteve Yin 
209*5fdc4257SSteve Yin     return CAccTextBase::removeSelection(selectionIndex);//, success);
210*5fdc4257SSteve Yin }
211*5fdc4257SSteve Yin 
212*5fdc4257SSteve Yin /**
213*5fdc4257SSteve Yin    * Set caret position.
214*5fdc4257SSteve Yin    * @param offset Special position.
215*5fdc4257SSteve Yin    * @param success Variant to accept the memthod called result.
216*5fdc4257SSteve Yin    * @return Result.
217*5fdc4257SSteve Yin */
218*5fdc4257SSteve Yin STDMETHODIMP CAccText::setCaretOffset(long offset)
219*5fdc4257SSteve Yin {
220*5fdc4257SSteve Yin 
221*5fdc4257SSteve Yin     return CAccTextBase::setCaretOffset(offset);
222*5fdc4257SSteve Yin }
223*5fdc4257SSteve Yin 
224*5fdc4257SSteve Yin /**
225*5fdc4257SSteve Yin    * Set special selection.
226*5fdc4257SSteve Yin    * @param selectionIndex Special selection index.
227*5fdc4257SSteve Yin    * @param startOffset start position.
228*5fdc4257SSteve Yin    * @param endOffset end position.
229*5fdc4257SSteve Yin    * @param success Variant to accept the memthod called result.
230*5fdc4257SSteve Yin    * @return Result.
231*5fdc4257SSteve Yin */
232*5fdc4257SSteve Yin 
233*5fdc4257SSteve Yin STDMETHODIMP CAccText::setSelection(long selectionIndex, long startOffset, long endOffset)
234*5fdc4257SSteve Yin {
235*5fdc4257SSteve Yin 
236*5fdc4257SSteve Yin     return CAccTextBase::setSelection(selectionIndex, startOffset,
237*5fdc4257SSteve Yin                                       endOffset);
238*5fdc4257SSteve Yin }
239*5fdc4257SSteve Yin 
240*5fdc4257SSteve Yin /**
241*5fdc4257SSteve Yin    * Get characters count.
242*5fdc4257SSteve Yin    * @param nCharacters Variant to accept the characters count.
243*5fdc4257SSteve Yin    * @return Result.
244*5fdc4257SSteve Yin */
245*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_nCharacters(long * nCharacters)
246*5fdc4257SSteve Yin {
247*5fdc4257SSteve Yin 
248*5fdc4257SSteve Yin     return CAccTextBase::get_nCharacters(nCharacters);
249*5fdc4257SSteve Yin }
250*5fdc4257SSteve Yin 
251*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_newText( IA2TextSegment *newText)
252*5fdc4257SSteve Yin {
253*5fdc4257SSteve Yin     return CAccTextBase::get_newText(newText);
254*5fdc4257SSteve Yin }
255*5fdc4257SSteve Yin 
256*5fdc4257SSteve Yin STDMETHODIMP CAccText::get_oldText( IA2TextSegment *oldText)
257*5fdc4257SSteve Yin {
258*5fdc4257SSteve Yin     return CAccTextBase::get_oldText(oldText);
259*5fdc4257SSteve Yin }
260*5fdc4257SSteve Yin 
261*5fdc4257SSteve Yin /**
262*5fdc4257SSteve Yin    * Scroll to special sub-string .
263*5fdc4257SSteve Yin    * @param startIndex Start index of sub string.
264*5fdc4257SSteve Yin    * @param endIndex   End index of sub string.
265*5fdc4257SSteve Yin    * @return Result.
266*5fdc4257SSteve Yin */
267*5fdc4257SSteve Yin STDMETHODIMP CAccText::scrollSubstringToPoint(long startIndex, long endIndex,enum IA2CoordinateType coordinateType, long x, long y )
268*5fdc4257SSteve Yin {
269*5fdc4257SSteve Yin 
270*5fdc4257SSteve Yin     return CAccTextBase::scrollSubstringToPoint(startIndex, endIndex, coordinateType, x, y);
271*5fdc4257SSteve Yin }
272*5fdc4257SSteve Yin 
273*5fdc4257SSteve Yin STDMETHODIMP CAccText::scrollSubstringTo(long startIndex, long endIndex,enum IA2ScrollType scrollType)
274*5fdc4257SSteve Yin {
275*5fdc4257SSteve Yin 
276*5fdc4257SSteve Yin     return CAccTextBase::scrollSubstringTo(startIndex, endIndex,scrollType);
277*5fdc4257SSteve Yin }
278*5fdc4257SSteve Yin 
279*5fdc4257SSteve Yin /**
280*5fdc4257SSteve Yin    * Put UNO interface.
281*5fdc4257SSteve Yin    * @param pXInterface UNO interface.
282*5fdc4257SSteve Yin    * @return Result.
283*5fdc4257SSteve Yin */
284*5fdc4257SSteve Yin STDMETHODIMP CAccText::put_XInterface(long pXInterface)
285*5fdc4257SSteve Yin {
286*5fdc4257SSteve Yin 
287*5fdc4257SSteve Yin     return CAccTextBase::put_XInterface(pXInterface);
288*5fdc4257SSteve Yin }
289*5fdc4257SSteve Yin 
290