1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 #ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX 29 #define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX 30 31 #include <toolkit/awt/vclxaccessiblecomponent.hxx> 32 33 #ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_ 34 #include <com/sun/star/accessibility/XAccessibleAction.hpp> 35 #endif 36 #include <com/sun/star/accessibility/XAccessibleValue.hpp> 37 38 #ifndef _CPPUHELPER_IMPLBASE2_HXX 39 #include <cppuhelper/implbase2.hxx> 40 #endif 41 42 43 // ---------------------------------------------------- 44 // class VCLXAccessibleScrollBar 45 // ---------------------------------------------------- 46 47 typedef ::cppu::ImplHelper2< 48 ::com::sun::star::accessibility::XAccessibleAction, 49 ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleScrollBar_BASE; 50 51 class VCLXAccessibleScrollBar : public VCLXAccessibleComponent, 52 public VCLXAccessibleScrollBar_BASE 53 { 54 protected: 55 virtual ~VCLXAccessibleScrollBar(); 56 57 virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ); 58 virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ); 59 60 public: 61 VCLXAccessibleScrollBar( VCLXWindow* pVCLXindow ); 62 63 // XInterface 64 DECLARE_XINTERFACE() 65 66 // XTypeProvider 67 DECLARE_XTYPEPROVIDER() 68 69 // XServiceInfo 70 virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException); 71 virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException); 72 73 // XAccessibleAction 74 virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException); 75 virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); 76 virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); 77 virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException); 78 79 // XAccessibleValue 80 virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException); 81 virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException); 82 virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException); 83 virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException); 84 }; 85 86 #endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX 87 88