Files
libreoffice/sw/source/core/access/accpara.hxx

416 lines
20 KiB
C++
Raw Normal View History

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
re-base on ALv2 code. Includes: Patches contributed by Oliver-Rainer Wittmann sw34bf06: #i117783# - Writer's implementation of XPagePrintable - apply print settings to new printing routines http://svn.apache.org/viewvc?view=revision&revision=1172115 sw34bf06: #o12311627# use <rtl_random> methods to create unique ids for list styles and list ids http://svn.apache.org/viewvc?view=revision&revision=1172112 sw34bf06 #i114725#,#i115828# - method <SwDoc::ClearDoc()> - clear list structures completely http://svn.apache.org/viewvc?view=revision&revision=1172122 i#118572 - remove ui string and help content regarding usage of Java Mail in Writer's Mail Merge as Java Mail is not used. http://svn.apache.org/viewvc?view=revision&revision=1197035 Patches contributed by Mathias Bauer cws mba34issues01: #i117718#: provide filter name in case storage of medium does not allow to detect one http://svn.apache.org/viewvc?view=revision&revision=1172350 cws mba34issues01: #i117721#: directly provide parameters retrieved from SfxMedium http://svn.apache.org/viewvc?view=revision&revision=1172353 gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1396797 http://svn.apache.org/viewvc?view=revision&revision=1397315 cws mba34issues01: #i117723#: convert assertion into trace http://svn.apache.org/viewvc?view=revision&revision=1172355 cws mba34issues01: #i117699#: keep layout alive until swdoc dies http://svn.apache.org/viewvc?view=revision&revision=1172362 cws mba34issues01: #i117943#: missing color attributes in RTF clipboard http://svn.apache.org/viewvc?view=revision&revision=1172363 Patch contributed by Henning Brinkmann imported patch i#103878 http://svn.apache.org/viewvc?view=revision&revision=1172109 Patches contributed by Michael Stahl sw34bf06: #i117955#: WW8 export: disable storing of section breaks in endnotes http://svn.apache.org/viewvc?view=revision&revision=1172119 Patch contributed by imacat Fixed the Asian language work count. http://svn.apache.org/viewvc?view=revision&revision=1241345 Patch contributed by Pedro Giffuni i#20878 - Add comment with BZ issue for reference. http://svn.apache.org/viewvc?view=revision&revision=1244517 Patch contributed by Andre Fischer Do not add targets for junit tests when junit is disabled. http://svn.apache.org/viewvc?view=revision&revision=1241508 add writerperfect dependency.
2011-03-31 10:05:04 +02:00
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
2002-02-04 13:10:18 +00:00
#ifndef _ACCPARA_HXX
#define _ACCPARA_HXX
#include <acccontext.hxx>
#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
#include <com/sun/star/accessibility/XAccessibleHypertext.hpp>
#include <com/sun/star/accessibility/XAccessibleTextMarkup.hpp>
#include <com/sun/star/accessibility/XAccessibleMultiLineText.hpp>
#include <com/sun/star/accessibility/XAccessibleTextAttributes.hpp>
#include <boost/unordered_map.hpp>
#include <accselectionhelper.hxx>
#include <calbck.hxx>
2002-02-04 13:10:18 +00:00
class SwTxtFrm;
class SwTxtNode;
class SwPaM;
class SwAccessiblePortionData;
class SwAccessibleHyperTextData;
class SwXTextPortion;
2011-01-30 04:19:53 +09:00
class SwParaChangeTrackingInfo; //#i108125#
namespace com { namespace sun { namespace star {
namespace i18n { struct Boundary; }
namespace accessibility { class XAccessibleHyperlink; }
} } }
typedef ::boost::unordered_map< OUString,
::com::sun::star::beans::PropertyValue,
OUStringHash,
::std::equal_to< OUString > > tAccParaPropValMap;
2002-04-17 13:07:39 +00:00
class SwAccessibleParagraph :
2011-01-30 04:19:53 +09:00
public SwClient, // #i108125#
2002-04-17 13:07:39 +00:00
public SwAccessibleContext,
public ::com::sun::star::accessibility::XAccessibleEditableText,
public com::sun::star::accessibility::XAccessibleSelection,
public com::sun::star::accessibility::XAccessibleHypertext,
public com::sun::star::accessibility::XAccessibleTextMarkup,
public com::sun::star::accessibility::XAccessibleMultiLineText,
public ::com::sun::star::accessibility::XAccessibleTextAttributes
2002-02-04 13:10:18 +00:00
{
friend class SwAccessibleHyperlink;
OUString sDesc; // protected by base classes mutex
// data for this paragraph's text portions; this contains the
// mapping from the core 'model string' to the accessible text
// string.
// pPortionData may be NULL; it should only be accessed through the
// Get/Clear/Has/UpdatePortionData() methods
SwAccessiblePortionData* pPortionData;
SwAccessibleHyperTextData *pHyperTextData;
sal_Int32 nOldCaretPos; // The 'old' caret pos. It's only valid as long
// as the cursor is inside this object (protected by
// mutex)
sal_Bool bIsHeading; // protected by base classes mutex
2002-02-05 14:52:06 +00:00
// implementation for XAccessibleSelection
SwAccessibleSelectionHelper aSelectionHelper;
2011-01-30 04:19:53 +09:00
SwParaChangeTrackingInfo* mpParaChangeTrackInfo; // #i108125#
/// get the SwTxtNode (requires frame; check before)
const SwTxtNode* GetTxtNode() const;
/// get the (accessible) text string (requires frame; check before)
OUString GetString();
OUString GetDescription();
// get the current care position
sal_Int32 GetCaretPos();
// determine the current selection. Fill the values with
// -1 if there is no selection in the this paragraph
sal_Bool GetSelection(sal_Int32& nStart, sal_Int32& nEnd);
// helper for GetSelection and getCaretPosition
2011-01-30 04:19:53 +09:00
// #i27301# - add parameter <_bForSelection>, which indicates,
// if the cursor is retrieved for selection or for caret position.
SwPaM* GetCursor( const bool _bForSelection );
// for cut/copy/paste: execute a particular slot at the view shell
void ExecuteAtViewShell( sal_uInt16 nSlot );
// helper method for get/setAttributes
// (for the special case of (nEndIndex==-1) a single character will
// be selected)
SwXTextPortion* CreateUnoPortion( sal_Int32 nStart, sal_Int32 nEnd );
// methods for checking the parameter range:
// does nPos point to a char?
sal_Bool IsValidChar(sal_Int32 nPos, sal_Int32 nLength);
// does nPos point to a position? (may be behind the last character)
sal_Bool IsValidPosition(sal_Int32 nPos, sal_Int32 nLength);
// is nBegin...nEnd a valid range? (nEnd points past the last character)
sal_Bool IsValidRange(sal_Int32 nBegin, sal_Int32 nEnd, sal_Int32 nLength);
// Ensure ordered range (i.e. nBegin is smaller then nEnd)
inline void OrderRange(sal_Int32& nBegin, sal_Int32& nEnd)
2002-04-09 08:26:03 +00:00
{
if( nBegin > nEnd )
{
sal_Int32 nTmp = nBegin; nBegin = nEnd; nEnd = nTmp;
}
}
2011-01-30 04:19:53 +09:00
// #i63870#
void _getDefaultAttributesImpl(
const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes,
tAccParaPropValMap& rDefAttrSeq,
const bool bOnlyCharAttrs = false );
void _getRunAttributesImpl(
const sal_Int32 nIndex,
const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes,
tAccParaPropValMap& rRunAttrSeq );
public:
sal_Bool IsHeading() const;
protected:
// Set states for getAccessibleStateSet.
2002-07-10 15:53:35 +00:00
// This drived class additinaly sets MULTILINE(1), MULTISELECTABLE(+),
// FOCUSABLE(+) and FOCUSED(+)
virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
virtual void _InvalidateContent( sal_Bool bVisibleDataFired );
2002-04-05 11:18:25 +00:00
virtual void _InvalidateCursorPos();
2002-05-16 07:22:32 +00:00
virtual void _InvalidateFocus();
2002-02-04 13:10:18 +00:00
virtual ~SwAccessibleParagraph();
// handling of data for the text portions
// force update of new portion data
void UpdatePortionData()
throw( com::sun::star::uno::RuntimeException );
// remove the current portion data
void ClearPortionData();
// get portion data; update if necessary
SwAccessiblePortionData& GetPortionData()
throw( com::sun::star::uno::RuntimeException )
{
if( pPortionData == NULL )
UpdatePortionData();
return *pPortionData;
}
// determine if portion data is currently available
sal_Bool HasPortionData() { return (pPortionData != NULL); }
//helpers for word boundaries
sal_Bool GetCharBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos );
sal_Bool GetWordBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos );
sal_Bool GetSentenceBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos );
sal_Bool GetLineBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos );
sal_Bool GetParagraphBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos );
2002-05-22 10:48:43 +00:00
sal_Bool GetAttributeBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
2002-05-22 10:48:43 +00:00
sal_Int32 nPos );
sal_Bool GetGlyphBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
2002-05-22 10:48:43 +00:00
sal_Int32 nPos );
// get boundaries of word/sentence/etc. for specified text type
// Does all argument checking, and then delegates to helper methods above.
sal_Bool GetTextBoundary( com::sun::star::i18n::Boundary& rBound,
const OUString& rText,
sal_Int32 nPos,
sal_Int16 aTextType )
throw (
::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::uno::RuntimeException);
virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew);
public:
SwAccessibleParagraph( SwAccessibleMap& rInitMap,
const SwTxtFrm& rTxtFrm );
inline operator ::com::sun::star::accessibility::XAccessibleText *();
2002-04-05 11:18:25 +00:00
virtual sal_Bool HasCursor(); // required by map to remember that object
2002-03-21 11:50:31 +00:00
// XAccessibleContext
2002-02-04 13:10:18 +00:00
// Return this object's description.
virtual OUString SAL_CALL
getAccessibleDescription (void)
throw (com::sun::star::uno::RuntimeException);
2002-02-04 13:10:18 +00:00
// Return the parents locale or throw exception if this object has no
// parent yet/anymore.
2002-02-04 13:10:18 +00:00
virtual ::com::sun::star::lang::Locale SAL_CALL
getLocale (void)
throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
2002-02-04 13:10:18 +00:00
// #i27138# - paragraphs are in relation CONTENT_FLOWS_FROM and/or CONTENT_FLOWS_TO
virtual ::com::sun::star::uno::Reference<
::com::sun::star::accessibility::XAccessibleRelationSet> SAL_CALL
getAccessibleRelationSet (void)
throw (::com::sun::star::uno::RuntimeException);
2002-02-04 13:10:18 +00:00
// XAccessibleComponent
2002-03-21 11:50:31 +00:00
virtual void SAL_CALL grabFocus()
throw (::com::sun::star::uno::RuntimeException);
2011-01-30 04:19:53 +09:00
// #i71385#
virtual sal_Int32 SAL_CALL getForeground()
throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getBackground()
throw (::com::sun::star::uno::RuntimeException);
2002-03-21 11:50:31 +00:00
// XServiceInfo
2002-02-04 13:10:18 +00:00
// Returns an identifier for the implementation of this object.
virtual OUString SAL_CALL
2002-02-04 13:10:18 +00:00
getImplementationName (void)
throw (::com::sun::star::uno::RuntimeException);
// Return whether the specified service is supported by this class.
2002-02-04 13:10:18 +00:00
virtual sal_Bool SAL_CALL
supportsService (const OUString& sServiceName)
2002-02-04 13:10:18 +00:00
throw (::com::sun::star::uno::RuntimeException);
// Returns a list of all supported services. In this case that is just
// the AccessibleContext service.
virtual ::com::sun::star::uno::Sequence< OUString> SAL_CALL
2002-02-04 13:10:18 +00:00
getSupportedServiceNames (void)
throw (::com::sun::star::uno::RuntimeException);
// XInterface
2002-04-24 13:36:48 +00:00
// (XInterface methods need to be implemented to disambiguate
// between those inherited through SwAcessibleContext and
// XAccessibleEditableText).
virtual ::com::sun::star::uno::Any SAL_CALL queryInterface(
const ::com::sun::star::uno::Type& aType )
throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL acquire( ) throw ()
{ SwAccessibleContext::acquire(); };
virtual void SAL_CALL release( ) throw ()
{ SwAccessibleContext::release(); };
// XTypeProvider
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException);
// XAccessibleText
virtual sal_Int32 SAL_CALL getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException);
2002-06-28 06:19:36 +00:00
virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
virtual OUString SAL_CALL getSelectedText( ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual OUString SAL_CALL getText( ) throw (::com::sun::star::uno::RuntimeException);
virtual OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
// XAccessibleEditableText
virtual sal_Bool SAL_CALL cutText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL pasteText( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL deleteText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL insertText( const OUString& sText, sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL replaceText( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const OUString& sReplacement ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL setAttributes( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aAttributeSet ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL setText( const OUString& sText ) throw (::com::sun::star::uno::RuntimeException);
// XAccessibleSelection
virtual void SAL_CALL selectAccessibleChild(
sal_Int32 nChildIndex )
throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException );
virtual sal_Bool SAL_CALL isAccessibleChildSelected(
sal_Int32 nChildIndex )
throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException );
virtual void SAL_CALL clearAccessibleSelection( )
throw ( ::com::sun::star::uno::RuntimeException );
virtual void SAL_CALL selectAllAccessibleChildren( )
throw ( ::com::sun::star::uno::RuntimeException );
virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( )
throw ( ::com::sun::star::uno::RuntimeException );
virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild(
sal_Int32 nSelectedChildIndex )
throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException);
2011-01-30 04:19:53 +09:00
// index has to be treated as global child index.
virtual void SAL_CALL deselectAccessibleChild(
sal_Int32 nChildIndex )
throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException );
// XAccessibleHypertext
virtual sal_Int32 SAL_CALL getHyperLinkCount()
throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Reference<
::com::sun::star::accessibility::XAccessibleHyperlink >
SAL_CALL getHyperLink( sal_Int32 nLinkIndex )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getHyperLinkIndex( sal_Int32 nCharIndex )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException);
2011-01-30 04:19:53 +09:00
// #i71360#
// XAccesibleTextMarkup
virtual sal_Int32 SAL_CALL getTextMarkupCount( sal_Int32 nTextMarkupType )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL
getTextMarkup( sal_Int32 nTextMarkupIndex,
sal_Int32 nTextMarkupType )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::accessibility::TextSegment > SAL_CALL
getTextMarkupAtIndex( sal_Int32 nCharIndex,
sal_Int32 nTextMarkupType )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::uno::RuntimeException);
2011-01-30 04:19:53 +09:00
// #i89175#
// XAccessibleMultiLineText
virtual sal_Int32 SAL_CALL getLineNumberAtIndex( sal_Int32 nIndex )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL
getTextAtLineNumber( sal_Int32 nLineNo )
throw (::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::accessibility::TextSegment SAL_CALL
getTextAtLineWithCaret()
throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getNumberOfLineWithCaret()
throw (::com::sun::star::uno::RuntimeException);
2011-01-30 04:19:53 +09:00
// #i63870#
// XAccesibleTextAttributes
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getDefaultAttributes( const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes ) throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getRunAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
2002-02-04 13:10:18 +00:00
};
inline SwAccessibleParagraph::operator ::com::sun::star::accessibility::XAccessibleText *()
{
return static_cast<
::com::sun::star::accessibility::XAccessibleEditableText * >( this );
}
2002-02-04 13:10:18 +00:00
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */