diff options
author | Steve Yin <steve_y@apache.org> | 2013-11-27 13:03:45 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-11-27 15:38:59 +0000 |
commit | 60f11adb950e4f9645cc9ecb0f5af8235cc97366 (patch) | |
tree | a4a758c31820e909d266f8b5cd49c651011acae9 /include/svx | |
parent | e022c608fd927bfec20bdec5bee5b600668eeaac (diff) |
Integrate branch of IAccessible2
Change-Id: I8327fb4ba2a86d4caa52b875221175b80464842a
Diffstat (limited to 'include/svx')
-rw-r--r-- | include/svx/AccessibleControlShape.hxx | 2 | ||||
-rw-r--r-- | include/svx/AccessibleGraphicShape.hxx | 3 | ||||
-rw-r--r-- | include/svx/AccessibleOLEShape.hxx | 3 | ||||
-rw-r--r-- | include/svx/AccessibleShape.hxx | 94 | ||||
-rw-r--r-- | include/svx/AccessibleSvxFindReplaceDialog.hxx | 55 | ||||
-rw-r--r-- | include/svx/AccessibleTableShape.hxx | 120 | ||||
-rw-r--r-- | include/svx/ChildrenManager.hxx | 3 | ||||
-rw-r--r-- | include/svx/EnhancedCustomShapeTypeNames.hxx | 1 | ||||
-rw-r--r-- | include/svx/IAccessibleParent.hxx | 12 | ||||
-rw-r--r-- | include/svx/dlgctrl.hxx | 22 | ||||
-rw-r--r-- | include/svx/nbdtmg.hxx | 4 | ||||
-rw-r--r-- | include/svx/sdr/table/tablecontroller.hxx | 12 | ||||
-rw-r--r-- | include/svx/srchdlg.hxx | 10 | ||||
-rw-r--r-- | include/svx/svdmodel.hxx | 4 | ||||
-rw-r--r-- | include/svx/svdmrkv.hxx | 1 | ||||
-rw-r--r-- | include/svx/svdoashp.hxx | 2 | ||||
-rw-r--r-- | include/svx/svdobj.hxx | 2 | ||||
-rw-r--r-- | include/svx/svdoole2.hxx | 1 |
18 files changed, 337 insertions, 14 deletions
diff --git a/include/svx/AccessibleControlShape.hxx b/include/svx/AccessibleControlShape.hxx index c84391b194aa..3f901e14cb50 100644 --- a/include/svx/AccessibleControlShape.hxx +++ b/include/svx/AccessibleControlShape.hxx @@ -59,6 +59,8 @@ public: const AccessibleShapeTreeInfo& rShapeTreeInfo); virtual ~AccessibleControlShape( ); + ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL GetControlModel( ) { return m_xControlModel;} ; + AccessibleControlShape* SAL_CALL GetLabeledByControlShape(); protected: //--- XAccessible ---------------------------------------- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL getAccessibleContext( ) throw(::com::sun::star::uno::RuntimeException); diff --git a/include/svx/AccessibleGraphicShape.hxx b/include/svx/AccessibleGraphicShape.hxx index b558baa63ae6..6347c75fbf97 100644 --- a/include/svx/AccessibleGraphicShape.hxx +++ b/include/svx/AccessibleGraphicShape.hxx @@ -85,7 +85,8 @@ public: virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type> SAL_CALL getTypes (void) throw (::com::sun::star::uno::RuntimeException); - +/// Return this object's role. + virtual sal_Int16 SAL_CALL getAccessibleRole (void) throw (::com::sun::star::uno::RuntimeException); protected: /// Create a name string that contains the accessible name. virtual OUString diff --git a/include/svx/AccessibleOLEShape.hxx b/include/svx/AccessibleOLEShape.hxx index 18b6ed23f96f..ce213bb315f4 100644 --- a/include/svx/AccessibleOLEShape.hxx +++ b/include/svx/AccessibleOLEShape.hxx @@ -91,7 +91,8 @@ public: virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type> SAL_CALL getTypes (void) throw (::com::sun::star::uno::RuntimeException); - +// ====== XAccessibleExtendedAttributes ===================================== + virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; protected: /// Create a name string that contains the accessible name. virtual OUString diff --git a/include/svx/AccessibleShape.hxx b/include/svx/AccessibleShape.hxx index 56a36d5dc26d..a6848878e7ae 100644 --- a/include/svx/AccessibleShape.hxx +++ b/include/svx/AccessibleShape.hxx @@ -28,6 +28,12 @@ #include <com/sun/star/accessibility/XAccessible.hpp> #include <com/sun/star/accessibility/XAccessibleExtendedComponent.hpp> #include <com/sun/star/accessibility/AccessibleRole.hpp> +#include <com/sun/star/accessibility/XAccessibleSelection.hpp> +#include <com/sun/star/accessibility/XAccessibleText.hpp> +#include <com/sun/star/accessibility/XAccessibleExtendedAttributes.hpp> +#include <com/sun/star/accessibility/XAccessibleGroupPosition.hpp> +#include <com/sun/star/accessibility/XAccessibleHyperlink.hpp> +#include <com/sun/star/accessibility/XAccessibleHypertext.hpp> #include <com/sun/star/drawing/XShape.hpp> #include <com/sun/star/lang/XEventListener.hpp> #include <com/sun/star/lang/XUnoTunnel.hpp> @@ -70,6 +76,10 @@ class IAccessibleParent; class SVX_DLLPUBLIC AccessibleShape : public AccessibleContextBase, public AccessibleComponentBase, + public ::com::sun::star::accessibility::XAccessibleSelection, + public ::com::sun::star::accessibility::XAccessibleExtendedAttributes, + public ::com::sun::star::accessibility::XAccessibleGroupPosition, + public com::sun::star::accessibility::XAccessibleHypertext, public IAccessibleViewForwarderListener, public ::com::sun::star::document::XEventListener, public ::com::sun::star::lang::XUnoTunnel @@ -95,7 +105,54 @@ public: AccessibleShape ( const AccessibleShapeInfo& rShapeInfo, const AccessibleShapeTreeInfo& rShapeTreeInfo); - + AccessibleShape ( + const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& rxShape, const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>& rxParent, const AccessibleShapeTreeInfo& rShapeTreeInfo, sal_Int32 nIndex = -1); + //Solution: Overwrite the object's current name. + virtual OUString SAL_CALL getAccessibleName (void) throw (::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getAccessibleDescription() throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet> SAL_CALL getAccessibleRelationSet (void) 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); + + virtual void SAL_CALL deselectAccessibleChild( + sal_Int32 nSelectedChildIndex ) + throw ( ::com::sun::star::lang::IndexOutOfBoundsException, + ::com::sun::star::uno::RuntimeException ); + + // ====== XAccessibleExtendedAttributes ===================================== + virtual ::com::sun::star::uno::Any SAL_CALL getExtendedAttributes() + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + /// Return this object's role. + virtual sal_Int16 SAL_CALL getAccessibleRole (void) throw (::com::sun::star::uno::RuntimeException); + //===== XAccessibleGroupPosition ========================================= + virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL + getGroupPosition( const ::com::sun::star::uno::Any& rAny ) + throw (::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getObjectLink( const ::com::sun::star::uno::Any& accoject ) + throw (::com::sun::star::uno::RuntimeException); /** The destructor releases its children manager and text engine if still existent. These are responsible to send appropriate events. */ @@ -301,6 +358,32 @@ public: static AccessibleShape* getImplementation( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxIFace ) throw(); sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& _rIdentifier ) throw(::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); + //===== XAccesibleText ================================================== + virtual sal_Int32 SAL_CALL getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException); + 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);//Shen Zhen Jie changed sal_Unicode to sal_uInt32; change back to sal_Unicode + 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); + //===== Misc ======================================================== ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > @@ -367,7 +450,12 @@ protected: virtual OUString CreateAccessibleDescription (void) throw (::com::sun::star::uno::RuntimeException); - + virtual OUString + GetFullAccessibleName(AccessibleShape *shape) + throw (::com::sun::star::uno::RuntimeException); + virtual OUString GetStyle(); + void UpdateDocumentAllSelState(::com::sun::star::uno::Reference< + ::com::sun::star::accessibility::XAccessibleStateSet > &xStateSet); /** Update the <const>OPAQUE</const> and <const>SELECTED</const> state. */ virtual void UpdateStates (void); @@ -381,6 +469,8 @@ private: SVX_DLLPRIVATE explicit AccessibleShape (const AccessibleShape&); /// Don't use the assignment operator. Do we need this? SVX_DLLPRIVATE AccessibleShape& operator= (const AccessibleShape&); + //Old accessible name + OUString aAccName; /** Call this method when the title, name, or description of the mxShape member (may) have been changed. diff --git a/include/svx/AccessibleSvxFindReplaceDialog.hxx b/include/svx/AccessibleSvxFindReplaceDialog.hxx new file mode 100644 index 000000000000..5c82f579d6c3 --- /dev/null +++ b/include/svx/AccessibleSvxFindReplaceDialog.hxx @@ -0,0 +1,55 @@ +/* + * 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 . + */ +#ifndef _ACCESSIBLESVXFINDREPLACEDIALOG_HXX_ +#define _ACCESSIBLESVXFINDREPLACEDIALOG_HXX_ + +#include <toolkit/awt/vclxwindow.hxx> +#include <toolkit/awt/vclxaccessiblecomponent.hxx> +#include <toolkit/awt/vclxwindows.hxx> + + +class VCLXAccessibleSvxFindReplaceDialog : public VCLXAccessibleComponent +{ +public: + VCLXAccessibleSvxFindReplaceDialog(VCLXWindow* pVCLXindow); + virtual ~VCLXAccessibleSvxFindReplaceDialog(); + virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet ); + // XServiceInfo + virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException); + +}; + + +class VCLXSvxFindReplaceDialog : public VCLXDialog +{ +public: + VCLXSvxFindReplaceDialog(Window* pSplDlg) + { + SetWindow(pSplDlg); + } + virtual ~VCLXSvxFindReplaceDialog() + {}; +private: + virtual ::com::sun::star::uno::Reference< + ::com::sun::star::accessibility::XAccessibleContext > CreateAccessibleContext() + { + return new VCLXAccessibleSvxFindReplaceDialog(this); + } +}; +#endif // _ACCESSIBLESVXFINDREPLACEDIALOG_HXX_ diff --git a/include/svx/AccessibleTableShape.hxx b/include/svx/AccessibleTableShape.hxx index e3d3484fc035..a9309efcf636 100644 --- a/include/svx/AccessibleTableShape.hxx +++ b/include/svx/AccessibleTableShape.hxx @@ -30,6 +30,9 @@ #include <cppuhelper/implbase2.hxx> #include <svx/AccessibleShape.hxx> +#include <com/sun/star/view/XSelectionChangeListener.hpp> +#include <com/sun/star/accessibility/XAccessibleTableSelection.hpp> +#include <cppuhelper/compbase5.hxx> #include <boost/noncopyable.hpp> @@ -40,14 +43,15 @@ namespace sdr { namespace table { namespace accessibility { class AccessibleTableShapeImpl; + class AccessibleCell; typedef ::cppu::ImplInheritanceHelper2< AccessibleShape, - ::com::sun::star::accessibility::XAccessibleSelection, - ::com::sun::star::accessibility::XAccessibleTable + ::com::sun::star::accessibility::XAccessibleTable, + ::com::sun::star::view::XSelectionChangeListener > AccessibleTableShape_Base; /** @descr */ -class AccessibleTableShape : boost::noncopyable, public AccessibleTableShape_Base +class AccessibleTableShape : boost::noncopyable, public AccessibleTableShape_Base, public ::com::sun::star::accessibility::XAccessibleTableSelection { public: AccessibleTableShape( const AccessibleShapeInfo& rShapeInfo, const AccessibleShapeTreeInfo& rShapeTreeInfo ); @@ -98,6 +102,15 @@ public: 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); virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException ); + //===== XAccessibleTableSelection ============================================ + virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL selectColumn( sal_Int32 column ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL unselectRow( sal_Int32 row ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; // XServiceInfo virtual OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException); @@ -105,7 +118,26 @@ public: // XComponent virtual void SAL_CALL disposing( ); + // XSelectionChangeListener + virtual void SAL_CALL + disposing (const ::com::sun::star::lang::EventObject& Source) + throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL + selectionChanged (const ::com::sun::star::lang::EventObject& rEvent) + throw (::com::sun::star::uno::RuntimeException); + sal_Int32 mnPreviousSelectionCount; using AccessibleShape::disposing; + friend class AccessibleTableHeaderShape; + + void getColumnAndRow( sal_Int32 nChildIndex, sal_Int32& rnColumn, sal_Int32& rnRow ) throw (::com::sun::star::lang::IndexOutOfBoundsException ); + // overwrite the SetState & ResetState to do special operation for table cell's internal text + virtual sal_Bool SetState (sal_Int16 aState); + virtual sal_Bool ResetState (sal_Int16 aState); + // The following two methods are used to set state directly on table object, instread of the internal cell or paragraph. + sal_Bool SetStateDirectly (sal_Int16 aState); + sal_Bool ResetStateDirectly (sal_Int16 aState); + // Get the currently active cell which is text editing + AccessibleCell* GetActiveAccessibleCell(); protected: virtual OUString CreateAccessibleBaseName(void) throw (::com::sun::star::uno::RuntimeException); @@ -113,10 +145,90 @@ protected: sdr::table::SvxTableController* getTableController(); void checkCellPosition( sal_Int32 nCol, sal_Int32 nRow ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException ); - void getColumnAndRow( sal_Int32 nChildIndex, sal_Int32& rnColumn, sal_Int32& rnRow ) throw (::com::sun::star::lang::IndexOutOfBoundsException ); private: rtl::Reference< AccessibleTableShapeImpl > mxImpl; + sal_Int32 GetIndexOfSelectedChild( sal_Int32 nSelectedChildIndex ) const; +}; + +typedef ::cppu::WeakImplHelper5< + ::com::sun::star::accessibility::XAccessible, + ::com::sun::star::accessibility::XAccessibleComponent, + ::com::sun::star::accessibility::XAccessibleContext, + ::com::sun::star::accessibility::XAccessibleTable, + ::com::sun::star::accessibility::XAccessibleTableSelection > + AccessibleTableHeaderShape_BASE; + +class AccessibleTableHeaderShape : boost::noncopyable, + public MutexOwner, + public AccessibleTableHeaderShape_BASE +{ +public: + // bRow, sal_True means rowheader, sal_False means columnheader + AccessibleTableHeaderShape( AccessibleTableShape* pTable, sal_Bool bRow ); + virtual ~AccessibleTableHeaderShape(); + + // XAccessible + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL getAccessibleContext( ) throw(::com::sun::star::uno::RuntimeException); + + // XAccessibleContext + virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException); + + //XAccessibleComponent + virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException); + + // XAccessibleTable + virtual sal_Int32 SAL_CALL getAccessibleRowCount() throw (::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleColumnCount( ) throw (::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleRowExtentAt( sal_Int32 nRow, sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleColumnExtentAt( sal_Int32 nRow, sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL getAccessibleRowHeaders( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL getAccessibleColumnHeaders( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleRows( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleColumns( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleCaption( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleSummary( ) throw (::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleRow( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); + + //===== XAccessibleTableSelection ============================================ + virtual sal_Bool SAL_CALL selectRow( sal_Int32 row ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL selectColumn( sal_Int32 column ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL unselectRow( sal_Int32 row ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; + virtual sal_Bool SAL_CALL unselectColumn( sal_Int32 column ) + throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException) ; +private: + SVX_DLLPRIVATE explicit AccessibleTableHeaderShape( const ::com::sun::star::uno::Reference< + ::com::sun::star::accessibility::XAccessible>& rxParent ); + sal_Bool mbRow; + rtl::Reference< AccessibleTableShape > mpTable; }; } // end of namespace accessibility diff --git a/include/svx/ChildrenManager.hxx b/include/svx/ChildrenManager.hxx index 8de19aacf160..c2e6df8749cc 100644 --- a/include/svx/ChildrenManager.hxx +++ b/include/svx/ChildrenManager.hxx @@ -126,6 +126,8 @@ public: GetChild (long nIndex) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IndexOutOfBoundsException); + ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> GetChild (const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape>& xShape) throw (::com::sun::star::uno::RuntimeException); + ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape> GetChildShape (long nIndex) throw (::com::sun::star::uno::RuntimeException); /** Update the child manager. Take care of a modified set of children and modified visible area. This method can optimize the update @@ -189,7 +191,6 @@ public: */ void RemoveFocus (void); - //===== IAccessibleViewForwarderListener ================================ virtual void ViewForwarderChanged (ChangeType aChangeType, const IAccessibleViewForwarder* pViewForwarder); diff --git a/include/svx/EnhancedCustomShapeTypeNames.hxx b/include/svx/EnhancedCustomShapeTypeNames.hxx index 82ebe965e8da..b91e1ebcd248 100644 --- a/include/svx/EnhancedCustomShapeTypeNames.hxx +++ b/include/svx/EnhancedCustomShapeTypeNames.hxx @@ -26,6 +26,7 @@ namespace EnhancedCustomShapeTypeNames { SVX_DLLPUBLIC MSO_SPT Get( const OUString& ); SVX_DLLPUBLIC OUString Get( const MSO_SPT ); + SVX_DLLPUBLIC OUString GetAccName( const OUString& ); } #endif diff --git a/include/svx/IAccessibleParent.hxx b/include/svx/IAccessibleParent.hxx index f50d024c616c..23e2aa582445 100644 --- a/include/svx/IAccessibleParent.hxx +++ b/include/svx/IAccessibleParent.hxx @@ -23,7 +23,7 @@ #include <com/sun/star/uno/RuntimeException.hpp> #include <com/sun/star/drawing/XShape.hpp> #include <sal/types.h> - +#include "AccessibleControlShape.hxx" namespace accessibility { class AccessibleShape; @@ -80,6 +80,16 @@ public: const long _nIndex, const AccessibleShapeTreeInfo& _rShapeTreeInfo ) throw (::com::sun::star::uno::RuntimeException) = 0; + //Add this method to support Form Controls + virtual AccessibleControlShape* GetAccControlShapeFromModel + (::com::sun::star::beans::XPropertySet*) + throw (::com::sun::star::uno::RuntimeException){return NULL;}; + virtual ::com::sun::star::uno::Reference< + ::com::sun::star::accessibility::XAccessible> + GetAccessibleCaption (const ::com::sun::star::uno::Reference< + ::com::sun::star::drawing::XShape>&) + throw (::com::sun::star::uno::RuntimeException){return NULL;}; + virtual sal_Bool IsDocumentSelAll(){ return sal_False; } }; } // end of namespace accessibility diff --git a/include/svx/dlgctrl.hxx b/include/svx/dlgctrl.hxx index 829400f5d30d..882da385e5d0 100644 --- a/include/svx/dlgctrl.hxx +++ b/include/svx/dlgctrl.hxx @@ -63,6 +63,7 @@ typedef sal_uInt16 CTL_STATE; #define CS_NOVERT 2 // no vertikal input information is used class SvxRectCtlAccessibleContext; +class SvxPixelCtlAccessible; class SVX_DLLPUBLIC SvxRectCtl : public Control { @@ -175,7 +176,9 @@ protected: Size aRectSize; sal_uInt16* pPixel; sal_Bool bPaintable; - + //Add member identifying position + Point aFocusPosition; + Rectangle implCalFocusRect( const Point& aPosition ); void ChangePixel( sal_uInt16 nPixel ); public: @@ -203,6 +206,23 @@ public: void SetPaintable( sal_Bool bTmp ) { bPaintable = bTmp; } void Reset(); + SvxPixelCtlAccessible* m_pAccess; + ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xAccess; + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible(); + long GetSquares() const { return nSquares ; } + long GetWidth() const { return aRectSize.getWidth() ; } + long GetHeight() const { return aRectSize.getHeight() ; } + + //Device Pixel . + long ShowPosition( const Point &pt); + + long PointToIndex(const Point &pt) const; + Point IndexToPoint(long nIndex) const ; + long GetFoucsPosIndex() const ; + //Keyboard function for key input and focus handling function + virtual void KeyInput( const KeyEvent& rKEvt ); + virtual void GetFocus(); + virtual void LoseFocus(); }; /************************************************************************/ diff --git a/include/svx/nbdtmg.hxx b/include/svx/nbdtmg.hxx index b78049592ccf..bad5c14e9d7d 100644 --- a/include/svx/nbdtmg.hxx +++ b/include/svx/nbdtmg.hxx @@ -185,7 +185,7 @@ class SVX_DLLPUBLIC NBOTypeMgrBase private: const SfxItemSet* pSet; SfxMapUnit eCoreUnit; - //Sym3_2508 store the attributes passed from pSet + // store the attributes passed from pSet OUString aNumCharFmtName; void StoreBulCharFmtName_impl(); void StoreMapUnit_impl(); @@ -222,7 +222,7 @@ class SVX_DLLPUBLIC NBOTypeMgrBase virtual sal_Bool IsCustomized(sal_uInt16 nIndex)=0; sal_uInt16 IsSingleLevel(sal_uInt16 nCurLevel); const SfxItemSet* GetItems() { return pSet;} - //Sym3_2508 store the attributes passed from pSet + // store the attributes passed from pSet void SetItems(const SfxItemSet* pArg) { pSet = pArg;StoreBulCharFmtName_impl();StoreMapUnit_impl();} protected: OUString GetBulCharFmtName(); diff --git a/include/svx/sdr/table/tablecontroller.hxx b/include/svx/sdr/table/tablecontroller.hxx index af613d882261..908c5318fcd6 100644 --- a/include/svx/sdr/table/tablecontroller.hxx +++ b/include/svx/sdr/table/tablecontroller.hxx @@ -28,7 +28,6 @@ #include <svx/selectioncontroller.hxx> #include <svx/svdotable.hxx> #include <svx/svdview.hxx> -//#include <tablemodel.hxx> class SdrObjEditView; class SdrObject; @@ -102,6 +101,17 @@ public: SVX_DLLPRIVATE void onTableModified(); + sal_Bool selectRow( sal_Int32 row ); + sal_Bool selectColumn( sal_Int32 column ); + sal_Bool deselectRow( sal_Int32 row ); + sal_Bool deselectColumn( sal_Int32 column ); + sal_Bool isRowSelected( sal_Int32 nRow ); + sal_Bool isColumnSelected( sal_Int32 nColumn ); + sal_Bool isRowHeader(); + sal_Bool isColumnHeader(); + ::sdr::table::SdrTableObj* GetTableObj() { return dynamic_cast< ::sdr::table::SdrTableObj* >( mxTableObj.get() ); } + //declare event notification method + void NotifySelection( const CellPos& firstPos, const CellPos& lastPos, const CellPos& newPos ); private: SvxTableController(SvxTableController &); // not defined void operator =(SvxTableController &); // not defined diff --git a/include/svx/srchdlg.hxx b/include/svx/srchdlg.hxx index 8797115fafbd..316a977f27d8 100644 --- a/include/svx/srchdlg.hxx +++ b/include/svx/srchdlg.hxx @@ -130,9 +130,19 @@ public: sal_Int32 GetTransliterationFlags() const; + void SetDocWin( Window* pDocWin ) { mpDocWin = pDocWin; } + Window* GetDocWin() { return mpDocWin; } + void SetSrchFlag( sal_Bool bSuccess = sal_False ) { mbSuccess = bSuccess; } + sal_Bool GetSrchFlag() { return mbSuccess; } + virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > + GetComponentInterface( sal_Bool bCreate ); + void SetSaveToModule(bool b); private: + Window* mpDocWin; + sal_Bool mbSuccess; + VclFrame* m_pSearchFrame; ComboBox* m_pSearchLB; ListBox* m_pSearchTmplLB; diff --git a/include/svx/svdmodel.hxx b/include/svx/svdmodel.hxx index c2fbacf1df24..81df0c4a9dcb 100644 --- a/include/svx/svdmodel.hxx +++ b/include/svx/svdmodel.hxx @@ -75,6 +75,7 @@ class SotStorage; class SdrOutlinerCache; class SotStorageRef; class SdrUndoFactory; +class ImageMap; namespace comphelper { class IEmbeddedHelper; @@ -665,6 +666,9 @@ public: static const ::com::sun::star::uno::Sequence< sal_Int8 >& getUnoTunnelImplementationId(); + virtual ImageMap* GetImageMapForObject(SdrObject*){return NULL;}; + virtual sal_Int32 GetHyperlinkCount(SdrObject*){return 0;} + /** enables (true) or disables (false) recording of undo actions If undo actions are added while undo is disabled, they are deleted. Disabling undo does not clear the current undo buffer! */ diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index 55eb5791b73b..d3efe66baa76 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -456,6 +456,7 @@ public: // End point of the axis of reflextion const Point& GetRef2() const { return aRef1; } void SetRef2(const Point& rPt); + void UnmarkObj(SdrObject* pObj); }; //////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/include/svx/svdoashp.hxx b/include/svx/svdoashp.hxx index 414ce1540b22..ac78bc5b940a 100644 --- a/include/svx/svdoashp.hxx +++ b/include/svx/svdoashp.hxx @@ -256,6 +256,8 @@ public: static bool doConstructOrthogonal(const OUString& rName); using SdrTextObj::NbcSetOutlinerParaObject; + + OUString GetCustomShapeName(); }; #endif // INCLUDED_SVX_SVDOASHP_HXX diff --git a/include/svx/svdobj.hxx b/include/svx/svdobj.hxx index f1b3dbbad506..ee08d6b088a8 100644 --- a/include/svx/svdobj.hxx +++ b/include/svx/svdobj.hxx @@ -357,6 +357,7 @@ protected: SdrObjUserCall* pUserCall; SdrObjPlusData* pPlusData; // Broadcaster, UserData, Konnektoren, ... (Das ist der Bitsack) + SdrObject* pCaptionObj; sal_uInt32 nOrdNum; // Rangnummer des Obj in der Liste SfxGrabBagItem* pGrabBagItem; // Holds the GrabBagItem property @@ -1035,6 +1036,7 @@ public: // #i121917# virtual bool HasText() const; + const SdrObject* GetCaptionObj() const; protected: /** Sets a new UNO shape * diff --git a/include/svx/svdoole2.hxx b/include/svx/svdoole2.hxx index 7a93f4bd3bc0..e909990aff33 100644 --- a/include/svx/svdoole2.hxx +++ b/include/svx/svdoole2.hxx @@ -80,6 +80,7 @@ protected: void Init(); public: + OUString GetStyleString(); TYPEINFO(); SdrOle2Obj(bool bFrame_ = false); |