13334a7e6SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 33334a7e6SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 43334a7e6SAndrew Rist * or more contributor license agreements. See the NOTICE file 53334a7e6SAndrew Rist * distributed with this work for additional information 63334a7e6SAndrew Rist * regarding copyright ownership. The ASF licenses this file 73334a7e6SAndrew Rist * to you under the Apache License, Version 2.0 (the 83334a7e6SAndrew Rist * "License"); you may not use this file except in compliance 93334a7e6SAndrew Rist * with the License. You may obtain a copy of the License at 103334a7e6SAndrew Rist * 113334a7e6SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 123334a7e6SAndrew Rist * 133334a7e6SAndrew Rist * Unless required by applicable law or agreed to in writing, 143334a7e6SAndrew Rist * software distributed under the License is distributed on an 153334a7e6SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 163334a7e6SAndrew Rist * KIND, either express or implied. See the License for the 173334a7e6SAndrew Rist * specific language governing permissions and limitations 183334a7e6SAndrew Rist * under the License. 193334a7e6SAndrew Rist * 203334a7e6SAndrew Rist *************************************************************/ 213334a7e6SAndrew Rist 223334a7e6SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir #ifndef _SVX_ACCESSIBILITY_ACCESSIBLE_GRAPHIC_SHAPE_HXX 25cdf0e10cSrcweir #define _SVX_ACCESSIBILITY_ACCESSIBLE_GRAPHIC_SHAPE_HXX 26cdf0e10cSrcweir 27cdf0e10cSrcweir #include <svx/AccessibleShape.hxx> 28cdf0e10cSrcweir #include <com/sun/star/accessibility/XAccessibleImage.hpp> 29cdf0e10cSrcweir #include "svx/svxdllapi.h" 30cdf0e10cSrcweir 31cdf0e10cSrcweir namespace accessibility { 32cdf0e10cSrcweir 33cdf0e10cSrcweir /** @descr 34cdf0e10cSrcweir This class makes graphic shapes accessible. With respect to its 35cdf0e10cSrcweir base class <type>AccessibleShape</type> it supports the additional 36cdf0e10cSrcweir <type>XAccessibleImage</type> interface. 37cdf0e10cSrcweir */ 38cdf0e10cSrcweir class SVX_DLLPUBLIC AccessibleGraphicShape 39cdf0e10cSrcweir : public AccessibleShape, 40cdf0e10cSrcweir public ::com::sun::star::accessibility::XAccessibleImage 41cdf0e10cSrcweir { 42cdf0e10cSrcweir public: 43cdf0e10cSrcweir //===== internal ======================================================== 44cdf0e10cSrcweir AccessibleGraphicShape ( 45cdf0e10cSrcweir const AccessibleShapeInfo& rShapeInfo, 46cdf0e10cSrcweir const AccessibleShapeTreeInfo& rShapeTreeInfo); 47cdf0e10cSrcweir 48cdf0e10cSrcweir virtual ~AccessibleGraphicShape (void); 49cdf0e10cSrcweir 50cdf0e10cSrcweir //===== XAccessibleImage ================================================ 51cdf0e10cSrcweir 52cdf0e10cSrcweir ::rtl::OUString SAL_CALL getAccessibleImageDescription (void) 53cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 54cdf0e10cSrcweir 55cdf0e10cSrcweir sal_Int32 SAL_CALL getAccessibleImageHeight (void) 56cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 57cdf0e10cSrcweir 58cdf0e10cSrcweir sal_Int32 SAL_CALL getAccessibleImageWidth (void) 59cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 60cdf0e10cSrcweir 61cdf0e10cSrcweir //===== XInterface ====================================================== 62cdf0e10cSrcweir 63cdf0e10cSrcweir virtual com::sun::star::uno::Any SAL_CALL 64cdf0e10cSrcweir queryInterface (const com::sun::star::uno::Type & rType) 65cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 66cdf0e10cSrcweir 67cdf0e10cSrcweir virtual void SAL_CALL 68cdf0e10cSrcweir acquire (void) 69cdf0e10cSrcweir throw (); 70cdf0e10cSrcweir 71cdf0e10cSrcweir virtual void SAL_CALL 72cdf0e10cSrcweir release (void) 73cdf0e10cSrcweir throw (); 74cdf0e10cSrcweir 75cdf0e10cSrcweir //===== XServiceInfo ==================================================== 76cdf0e10cSrcweir 77cdf0e10cSrcweir /** Returns an identifier for the implementation of this object. 78cdf0e10cSrcweir */ 79cdf0e10cSrcweir virtual ::rtl::OUString SAL_CALL 80cdf0e10cSrcweir getImplementationName (void) 81cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 82cdf0e10cSrcweir 83cdf0e10cSrcweir virtual ::com::sun::star::uno::Sequence< ::rtl::OUString> SAL_CALL 84cdf0e10cSrcweir getSupportedServiceNames (void) 85cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 86cdf0e10cSrcweir 87cdf0e10cSrcweir //===== XTypeProvider =================================================== 88cdf0e10cSrcweir 89cdf0e10cSrcweir virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type> SAL_CALL 90cdf0e10cSrcweir getTypes (void) 91cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 92*9b8096d0SSteve Yin /// Return this object's role. 93*9b8096d0SSteve Yin virtual sal_Int16 SAL_CALL getAccessibleRole (void) throw (::com::sun::star::uno::RuntimeException); 94cdf0e10cSrcweir protected: 95cdf0e10cSrcweir /// Create a name string that contains the accessible name. 96cdf0e10cSrcweir virtual ::rtl::OUString 97cdf0e10cSrcweir CreateAccessibleBaseName () 98cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 99cdf0e10cSrcweir 100cdf0e10cSrcweir /// Create a description string that contains the accessible description. 101cdf0e10cSrcweir virtual ::rtl::OUString 102cdf0e10cSrcweir CreateAccessibleDescription () 103cdf0e10cSrcweir throw (::com::sun::star::uno::RuntimeException); 104cdf0e10cSrcweir 105cdf0e10cSrcweir private: 106cdf0e10cSrcweir /** Don't use the default constructor. Use the public constructor that 107cdf0e10cSrcweir takes the original shape and the parent as arguments instead. 108cdf0e10cSrcweir */ 109cdf0e10cSrcweir SVX_DLLPRIVATE AccessibleGraphicShape (void); 110cdf0e10cSrcweir 111cdf0e10cSrcweir /// Don't use the constructor. Not yet implemented. 112cdf0e10cSrcweir SVX_DLLPRIVATE AccessibleGraphicShape (const AccessibleGraphicShape&); 113cdf0e10cSrcweir 114cdf0e10cSrcweir /// Don't use the assignment operator. Not yet implemented. 115cdf0e10cSrcweir SVX_DLLPRIVATE AccessibleGraphicShape& operator= (const AccessibleGraphicShape&); 116cdf0e10cSrcweir }; 117cdf0e10cSrcweir 118cdf0e10cSrcweir } // end of namespace accessibility 119cdf0e10cSrcweir 120cdf0e10cSrcweir #endif 121