1*d3553c6bSHerbert Dürr /************************************************************** 2ca62e2c2SSteve Yin * 3*d3553c6bSHerbert Dürr * Licensed to the Apache Software Foundation (ASF) under one 4*d3553c6bSHerbert Dürr * or more contributor license agreements. See the NOTICE file 5*d3553c6bSHerbert Dürr * distributed with this work for additional information 6*d3553c6bSHerbert Dürr * regarding copyright ownership. The ASF licenses this file 7*d3553c6bSHerbert Dürr * to you under the Apache License, Version 2.0 (the 8*d3553c6bSHerbert Dürr * "License"); you may not use this file except in compliance 9*d3553c6bSHerbert Dürr * with the License. You may obtain a copy of the License at 10*d3553c6bSHerbert Dürr * 11*d3553c6bSHerbert Dürr * http://www.apache.org/licenses/LICENSE-2.0 12*d3553c6bSHerbert Dürr * 13*d3553c6bSHerbert Dürr * Unless required by applicable law or agreed to in writing, 14*d3553c6bSHerbert Dürr * software distributed under the License is distributed on an 15*d3553c6bSHerbert Dürr * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*d3553c6bSHerbert Dürr * KIND, either express or implied. See the License for the 17*d3553c6bSHerbert Dürr * specific language governing permissions and limitations 18*d3553c6bSHerbert Dürr * under the License. 19*d3553c6bSHerbert Dürr * 20*d3553c6bSHerbert Dürr *************************************************************/ 21ca62e2c2SSteve Yin 22ca62e2c2SSteve Yin #ifndef _ACCNOTEXTHYPERLINK_HXX 23ca62e2c2SSteve Yin #define _ACCNOTEXTHYPERLINK_HXX 24ca62e2c2SSteve Yin 25ca62e2c2SSteve Yin 26ca62e2c2SSteve Yin #include <com/sun/star/accessibility/XAccessibleHyperlink.hpp> 27ca62e2c2SSteve Yin #include <com/sun/star/uno/RuntimeException.hpp> 28ca62e2c2SSteve Yin #include <vos/ref.hxx> 29ca62e2c2SSteve Yin #include <cppuhelper/implbase1.hxx> 30ca62e2c2SSteve Yin #include <fmtinfmt.hxx> 31ca62e2c2SSteve Yin #include <frame.hxx> 32ca62e2c2SSteve Yin #include <layfrm.hxx> 33ca62e2c2SSteve Yin 34ca62e2c2SSteve Yin #include "accnotextframe.hxx" 35ca62e2c2SSteve Yin /* 36ca62e2c2SSteve Yin using namespace ::com::sun::star::lang; 37ca62e2c2SSteve Yin using namespace ::com::sun::star::uno; 38ca62e2c2SSteve Yin using namespace ::com::sun::star::accessibility; 39ca62e2c2SSteve Yin using namespace ::rtl; 40ca62e2c2SSteve Yin */ 41ca62e2c2SSteve Yin class SwAccessibleNoTextHyperlink : 42ca62e2c2SSteve Yin public ::cppu::WeakImplHelper1< 43ca62e2c2SSteve Yin ::com::sun::star::accessibility::XAccessibleHyperlink > 44ca62e2c2SSteve Yin { 45ca62e2c2SSteve Yin friend class SwAccessibleNoTextFrame; 46ca62e2c2SSteve Yin 47ca62e2c2SSteve Yin ::vos::ORef< SwAccessibleNoTextFrame > xFrame; 48ca62e2c2SSteve Yin const SwFrm *mpFrm; 49ca62e2c2SSteve Yin sal_uInt16 mnIndex; 50ca62e2c2SSteve Yin GetFmt()51ca62e2c2SSteve Yin SwFrmFmt *GetFmt() 52ca62e2c2SSteve Yin { 53ca62e2c2SSteve Yin return ((SwLayoutFrm*)mpFrm)->GetFmt(); 54ca62e2c2SSteve Yin } 55ca62e2c2SSteve Yin public: 56ca62e2c2SSteve Yin 57ca62e2c2SSteve Yin SwAccessibleNoTextHyperlink( SwAccessibleNoTextFrame *p, const SwFrm* aFrm, sal_uInt16 nIndex = 0xFFFF ); 58ca62e2c2SSteve Yin 59ca62e2c2SSteve Yin // XAccessibleAction 60ca62e2c2SSteve Yin virtual sal_Int32 SAL_CALL getAccessibleActionCount() 61ca62e2c2SSteve Yin throw (::com::sun::star::uno::RuntimeException); 62ca62e2c2SSteve Yin virtual sal_Bool SAL_CALL doAccessibleAction( sal_Int32 nIndex ) 63ca62e2c2SSteve Yin throw (::com::sun::star::lang::IndexOutOfBoundsException, 64ca62e2c2SSteve Yin ::com::sun::star::uno::RuntimeException); 65ca62e2c2SSteve Yin virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription( 66ca62e2c2SSteve Yin sal_Int32 nIndex ) 67ca62e2c2SSteve Yin throw (::com::sun::star::lang::IndexOutOfBoundsException, 68ca62e2c2SSteve Yin ::com::sun::star::uno::RuntimeException); 69ca62e2c2SSteve Yin virtual ::com::sun::star::uno::Reference< 70ca62e2c2SSteve Yin ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL 71ca62e2c2SSteve Yin getAccessibleActionKeyBinding( sal_Int32 nIndex ) 72ca62e2c2SSteve Yin throw (::com::sun::star::lang::IndexOutOfBoundsException, 73ca62e2c2SSteve Yin ::com::sun::star::uno::RuntimeException); 74ca62e2c2SSteve Yin 75ca62e2c2SSteve Yin // XAccessibleHyperlink 76ca62e2c2SSteve Yin virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleActionAnchor( 77ca62e2c2SSteve Yin sal_Int32 nIndex ) 78ca62e2c2SSteve Yin throw (::com::sun::star::lang::IndexOutOfBoundsException, 79ca62e2c2SSteve Yin ::com::sun::star::uno::RuntimeException); 80ca62e2c2SSteve Yin virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleActionObject( 81ca62e2c2SSteve Yin sal_Int32 nIndex ) 82ca62e2c2SSteve Yin throw (::com::sun::star::lang::IndexOutOfBoundsException, 83ca62e2c2SSteve Yin ::com::sun::star::uno::RuntimeException); 84ca62e2c2SSteve Yin virtual sal_Int32 SAL_CALL getStartIndex() 85ca62e2c2SSteve Yin throw (::com::sun::star::uno::RuntimeException); 86ca62e2c2SSteve Yin virtual sal_Int32 SAL_CALL getEndIndex() 87ca62e2c2SSteve Yin throw (::com::sun::star::uno::RuntimeException); 88ca62e2c2SSteve Yin virtual sal_Bool SAL_CALL isValid( ) 89ca62e2c2SSteve Yin throw (::com::sun::star::uno::RuntimeException); 90ca62e2c2SSteve Yin }; 91ca62e2c2SSteve Yin 92ca62e2c2SSteve Yin #endif 93ca62e2c2SSteve Yin 94