xref: /trunk/main/svtools/source/control/vclxaccessibleheaderbaritem.cxx (revision cf6516809c57e1bb0a940545cca99cdad54d4ce2)
1*d3553c6bSHerbert Dürr /**************************************************************
22bfcd321SSteve 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
102bfcd321SSteve Yin  *
11*d3553c6bSHerbert Dürr  *   http://www.apache.org/licenses/LICENSE-2.0
122bfcd321SSteve Yin  *
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.
192bfcd321SSteve Yin  *
20*d3553c6bSHerbert Dürr  *************************************************************/
212bfcd321SSteve Yin 
222bfcd321SSteve Yin 
232bfcd321SSteve Yin // MARKER(update_precomp.py): autogen include statement, do not remove
242bfcd321SSteve Yin #include "precompiled_svtools.hxx"
252bfcd321SSteve Yin 
262bfcd321SSteve Yin #ifndef _SVTOOLS_VCLXACCESSIBLEHEADERBAR_HXX_
272bfcd321SSteve Yin #include <svtools/vclxaccessibleheaderbaritem.hxx>
282bfcd321SSteve Yin #endif
292bfcd321SSteve Yin 
302bfcd321SSteve Yin #ifndef _HEADBAR_HXX
312bfcd321SSteve Yin #include <svtools/headbar.hxx>
322bfcd321SSteve Yin #endif
332bfcd321SSteve Yin 
342bfcd321SSteve Yin #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLEEVENTID_HPP_
352bfcd321SSteve Yin #include <com/sun/star/accessibility/AccessibleEventId.hpp>
362bfcd321SSteve Yin #endif
372bfcd321SSteve Yin #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLEROLE_HPP_
382bfcd321SSteve Yin #include <com/sun/star/accessibility/AccessibleRole.hpp>
392bfcd321SSteve Yin #endif
402bfcd321SSteve Yin #ifndef _COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLESTATETYPE_HPP_
412bfcd321SSteve Yin #include <com/sun/star/accessibility/AccessibleStateType.hpp>
422bfcd321SSteve Yin #endif
432bfcd321SSteve Yin 
442bfcd321SSteve Yin #ifndef _UTL_ACCESSIBLESTATESETHELPER_HXX_
452bfcd321SSteve Yin #include <unotools/accessiblestatesethelper.hxx>
462bfcd321SSteve Yin #endif
472bfcd321SSteve Yin #ifndef _UTL_ACCESSIBLERELATIONSETHELPER_HXX_
482bfcd321SSteve Yin #include <unotools/accessiblerelationsethelper.hxx>
492bfcd321SSteve Yin #endif
502bfcd321SSteve Yin #ifndef _SV_SVAPP_HXX
512bfcd321SSteve Yin #include <vcl/svapp.hxx>
522bfcd321SSteve Yin #endif
532bfcd321SSteve Yin #ifndef _TOOLKIT_AWT_VCLXFONT_HXX_
542bfcd321SSteve Yin #include <toolkit/awt/vclxfont.hxx>
552bfcd321SSteve Yin #endif
562bfcd321SSteve Yin #ifndef _TOOLKIT_HELPER_EXTERNALLOCK_HXX_
572bfcd321SSteve Yin #include <toolkit/helper/externallock.hxx>
582bfcd321SSteve Yin #endif
592bfcd321SSteve Yin #ifndef _TOOLKIT_HELPER_CONVERT_HXX_
602bfcd321SSteve Yin #include <toolkit/helper/convert.hxx>
612bfcd321SSteve Yin #endif
622bfcd321SSteve Yin 
632bfcd321SSteve Yin #include <vector>
642bfcd321SSteve Yin 
652bfcd321SSteve Yin 
662bfcd321SSteve Yin using namespace ::com::sun::star;
672bfcd321SSteve Yin using namespace ::com::sun::star::uno;
682bfcd321SSteve Yin using namespace ::com::sun::star::lang;
692bfcd321SSteve Yin using namespace ::com::sun::star::accessibility;
702bfcd321SSteve Yin using namespace ::comphelper;
712bfcd321SSteve Yin 
DBG_NAME(VCLXAccessibleHeaderBarItem)722bfcd321SSteve Yin DBG_NAME( VCLXAccessibleHeaderBarItem )
732bfcd321SSteve Yin 
742bfcd321SSteve Yin //  ----------------------------------------------------
752bfcd321SSteve Yin //  class AccessibleTabBar
762bfcd321SSteve Yin //  ----------------------------------------------------
772bfcd321SSteve Yin 
782bfcd321SSteve Yin VCLXAccessibleHeaderBarItem::VCLXAccessibleHeaderBarItem( HeaderBar*    pHeadBar, sal_Int32 _nIndexInParent )
792bfcd321SSteve Yin     :AccessibleExtendedComponentHelper_BASE( new VCLExternalSolarLock() )
802bfcd321SSteve Yin     ,m_pHeadBar( pHeadBar )
812bfcd321SSteve Yin     ,m_nIndexInParent(_nIndexInParent + 1)
822bfcd321SSteve Yin 
832bfcd321SSteve Yin {
842bfcd321SSteve Yin     DBG_CTOR( VCLXAccessibleHeaderBarItem, NULL );
852bfcd321SSteve Yin     m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
862bfcd321SSteve Yin }
872bfcd321SSteve Yin 
882bfcd321SSteve Yin // -----------------------------------------------------------------------------
892bfcd321SSteve Yin 
~VCLXAccessibleHeaderBarItem()902bfcd321SSteve Yin VCLXAccessibleHeaderBarItem::~VCLXAccessibleHeaderBarItem()
912bfcd321SSteve Yin {
922bfcd321SSteve Yin     delete m_pExternalLock;
932bfcd321SSteve Yin     m_pExternalLock = NULL;
942bfcd321SSteve Yin }
952bfcd321SSteve Yin 
962bfcd321SSteve Yin // -----------------------------------------------------------------------------
972bfcd321SSteve Yin 
IMPL_LINK(VCLXAccessibleHeaderBarItem,WindowEventListener,VclSimpleEvent *,pEvent)982bfcd321SSteve Yin IMPL_LINK( VCLXAccessibleHeaderBarItem, WindowEventListener, VclSimpleEvent*, pEvent )
992bfcd321SSteve Yin {
1002bfcd321SSteve Yin     DBG_CHKTHIS( VCLXAccessibleHeaderBarItem, 0 );
1012bfcd321SSteve Yin     DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "VCLXAccessibleHeaderBarItem::WindowEventListener: unknown window event!" );
1022bfcd321SSteve Yin 
1032bfcd321SSteve Yin     if ( pEvent && pEvent->ISA( VclWindowEvent ) )
1042bfcd321SSteve Yin     {
1052bfcd321SSteve Yin         DBG_ASSERT( ((VclWindowEvent*)pEvent)->GetWindow(), "VCLXAccessibleHeaderBarItem::WindowEventListener: no window!" );
1062bfcd321SSteve Yin         if ( !((VclWindowEvent*)pEvent)->GetWindow()->IsAccessibilityEventsSuppressed() || ( pEvent->GetId() == VCLEVENT_OBJECT_DYING ) )
1072bfcd321SSteve Yin         {
1082bfcd321SSteve Yin             ProcessWindowEvent( *(VclWindowEvent*)pEvent );
1092bfcd321SSteve Yin         }
1102bfcd321SSteve Yin     }
1112bfcd321SSteve Yin 
1122bfcd321SSteve Yin     return 0;
1132bfcd321SSteve Yin }
1142bfcd321SSteve Yin 
1152bfcd321SSteve Yin // -----------------------------------------------------------------------------
1162bfcd321SSteve Yin 
ProcessWindowEvent(const VclWindowEvent &)1172bfcd321SSteve Yin void VCLXAccessibleHeaderBarItem::ProcessWindowEvent( const VclWindowEvent& )
1182bfcd321SSteve Yin {
1192bfcd321SSteve Yin     Any aOldValue, aNewValue;
1202bfcd321SSteve Yin }
1212bfcd321SSteve Yin 
1222bfcd321SSteve Yin // -----------------------------------------------------------------------------
1232bfcd321SSteve Yin 
FillAccessibleStateSet(utl::AccessibleStateSetHelper & rStateSet)1242bfcd321SSteve Yin void VCLXAccessibleHeaderBarItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
1252bfcd321SSteve Yin {
1262bfcd321SSteve Yin     if ( m_pHeadBar )
1272bfcd321SSteve Yin     {
1282bfcd321SSteve Yin         if ( m_pHeadBar->IsEnabled() )
1292bfcd321SSteve Yin             rStateSet.AddState( AccessibleStateType::ENABLED );
1302bfcd321SSteve Yin 
1312bfcd321SSteve Yin         if ( m_pHeadBar->IsVisible() )
1322bfcd321SSteve Yin         {
1332bfcd321SSteve Yin             rStateSet.AddState( AccessibleStateType::VISIBLE );
1342bfcd321SSteve Yin         }
1352bfcd321SSteve Yin         rStateSet.AddState( AccessibleStateType::SELECTABLE );
1362bfcd321SSteve Yin         rStateSet.AddState( AccessibleStateType::RESIZABLE );
1372bfcd321SSteve Yin     }
1382bfcd321SSteve Yin }
1392bfcd321SSteve Yin 
1402bfcd321SSteve Yin // -----------------------------------------------------------------------------
1412bfcd321SSteve Yin // OCommonAccessibleComponent
1422bfcd321SSteve Yin // -----------------------------------------------------------------------------
1432bfcd321SSteve Yin 
implGetBounds()1442bfcd321SSteve Yin awt::Rectangle VCLXAccessibleHeaderBarItem::implGetBounds() throw (RuntimeException)
1452bfcd321SSteve Yin {
1462bfcd321SSteve Yin     awt::Rectangle aBounds;
1472bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
1482bfcd321SSteve Yin 
1492bfcd321SSteve Yin     ::com::sun::star::awt::Size aSize;
1502bfcd321SSteve Yin 
1512bfcd321SSteve Yin     if ( m_pHeadBar )
1522bfcd321SSteve Yin         aBounds = AWTRectangle( m_pHeadBar->GetItemRect( sal_uInt16( m_nIndexInParent ) ) );
1532bfcd321SSteve Yin 
1542bfcd321SSteve Yin     return aBounds;
1552bfcd321SSteve Yin }
1562bfcd321SSteve Yin 
1572bfcd321SSteve Yin // -----------------------------------------------------------------------------
1582bfcd321SSteve Yin // XInterface
1592bfcd321SSteve Yin // -----------------------------------------------------------------------------
1602bfcd321SSteve Yin 
IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleHeaderBarItem,AccessibleExtendedComponentHelper_BASE,VCLXAccessibleHeaderBarItem_BASE)1612bfcd321SSteve Yin IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleHeaderBarItem, AccessibleExtendedComponentHelper_BASE, VCLXAccessibleHeaderBarItem_BASE )
1622bfcd321SSteve Yin 
1632bfcd321SSteve Yin // -----------------------------------------------------------------------------
1642bfcd321SSteve Yin // XTypeProvider
1652bfcd321SSteve Yin // -----------------------------------------------------------------------------
1662bfcd321SSteve Yin 
1672bfcd321SSteve Yin IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleHeaderBarItem, AccessibleExtendedComponentHelper_BASE, VCLXAccessibleHeaderBarItem_BASE )
1682bfcd321SSteve Yin 
1692bfcd321SSteve Yin // -----------------------------------------------------------------------------
1702bfcd321SSteve Yin // XComponent
1712bfcd321SSteve Yin // -----------------------------------------------------------------------------
1722bfcd321SSteve Yin 
1732bfcd321SSteve Yin void VCLXAccessibleHeaderBarItem::disposing()
1742bfcd321SSteve Yin {
1752bfcd321SSteve Yin     AccessibleExtendedComponentHelper_BASE::disposing();
1762bfcd321SSteve Yin }
1772bfcd321SSteve Yin 
1782bfcd321SSteve Yin // -----------------------------------------------------------------------------
1792bfcd321SSteve Yin // XServiceInfo
1802bfcd321SSteve Yin // -----------------------------------------------------------------------------
1812bfcd321SSteve Yin 
getImplementationName()1822bfcd321SSteve Yin ::rtl::OUString VCLXAccessibleHeaderBarItem::getImplementationName() throw (RuntimeException)
1832bfcd321SSteve Yin {
1842bfcd321SSteve Yin     return ::rtl::OUString::createFromAscii( "com.sun.star.comp.svtools.AccessibleHeaderBarItem" );
1852bfcd321SSteve Yin }
1862bfcd321SSteve Yin 
1872bfcd321SSteve Yin // -----------------------------------------------------------------------------
1882bfcd321SSteve Yin 
supportsService(const::rtl::OUString & rServiceName)1892bfcd321SSteve Yin sal_Bool VCLXAccessibleHeaderBarItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
1902bfcd321SSteve Yin {
1912bfcd321SSteve Yin     Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
1922bfcd321SSteve Yin     const ::rtl::OUString* pNames = aNames.getConstArray();
1932bfcd321SSteve Yin     const ::rtl::OUString* pEnd = pNames + aNames.getLength();
1942bfcd321SSteve Yin     for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
1952bfcd321SSteve Yin         ;
1962bfcd321SSteve Yin 
1972bfcd321SSteve Yin     return pNames != pEnd;
1982bfcd321SSteve Yin }
1992bfcd321SSteve Yin 
2002bfcd321SSteve Yin // -----------------------------------------------------------------------------
2012bfcd321SSteve Yin 
getSupportedServiceNames()2022bfcd321SSteve Yin Sequence< ::rtl::OUString > VCLXAccessibleHeaderBarItem::getSupportedServiceNames() throw (RuntimeException)
2032bfcd321SSteve Yin {
2042bfcd321SSteve Yin     Sequence< ::rtl::OUString > aNames(1);
2052bfcd321SSteve Yin     aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleHeaderBarItem" );
2062bfcd321SSteve Yin     return aNames;
2072bfcd321SSteve Yin }
2082bfcd321SSteve Yin 
2092bfcd321SSteve Yin // -----------------------------------------------------------------------------
2102bfcd321SSteve Yin // XAccessible
2112bfcd321SSteve Yin // -----------------------------------------------------------------------------
2122bfcd321SSteve Yin 
getAccessibleContext()2132bfcd321SSteve Yin Reference< XAccessibleContext > VCLXAccessibleHeaderBarItem::getAccessibleContext() throw (RuntimeException)
2142bfcd321SSteve Yin {
2152bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2162bfcd321SSteve Yin 
2172bfcd321SSteve Yin     return this;
2182bfcd321SSteve Yin }
2192bfcd321SSteve Yin 
2202bfcd321SSteve Yin // -----------------------------------------------------------------------------
2212bfcd321SSteve Yin // XAccessibleContext
2222bfcd321SSteve Yin // -----------------------------------------------------------------------------
2232bfcd321SSteve Yin 
getAccessibleChildCount()2242bfcd321SSteve Yin sal_Int32 VCLXAccessibleHeaderBarItem::getAccessibleChildCount() throw (RuntimeException)
2252bfcd321SSteve Yin {
2262bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2272bfcd321SSteve Yin 
2282bfcd321SSteve Yin     return 0;
2292bfcd321SSteve Yin }
2302bfcd321SSteve Yin 
2312bfcd321SSteve Yin // -----------------------------------------------------------------------------
2322bfcd321SSteve Yin 
getAccessibleChild(sal_Int32 i)2332bfcd321SSteve Yin Reference< XAccessible > VCLXAccessibleHeaderBarItem::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
2342bfcd321SSteve Yin {
2352bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2362bfcd321SSteve Yin 
2372bfcd321SSteve Yin     if ( i < 0 || i >= getAccessibleChildCount() )
2382bfcd321SSteve Yin         throw IndexOutOfBoundsException();
2392bfcd321SSteve Yin 
2402bfcd321SSteve Yin     return Reference< XAccessible >();
2412bfcd321SSteve Yin }
2422bfcd321SSteve Yin 
2432bfcd321SSteve Yin // -----------------------------------------------------------------------------
2442bfcd321SSteve Yin 
getAccessibleParent()2452bfcd321SSteve Yin Reference< XAccessible > VCLXAccessibleHeaderBarItem::getAccessibleParent() throw (RuntimeException)
2462bfcd321SSteve Yin {
2472bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2482bfcd321SSteve Yin 
2492bfcd321SSteve Yin     Reference< XAccessible > xParent;
2502bfcd321SSteve Yin     if ( m_pHeadBar )
2512bfcd321SSteve Yin     {
2522bfcd321SSteve Yin         xParent = m_pHeadBar->GetAccessible();
2532bfcd321SSteve Yin     }
2542bfcd321SSteve Yin 
2552bfcd321SSteve Yin     return xParent;
2562bfcd321SSteve Yin }
2572bfcd321SSteve Yin 
2582bfcd321SSteve Yin // -----------------------------------------------------------------------------
2592bfcd321SSteve Yin 
getAccessibleIndexInParent()2602bfcd321SSteve Yin sal_Int32 VCLXAccessibleHeaderBarItem::getAccessibleIndexInParent() throw (RuntimeException)
2612bfcd321SSteve Yin {
2622bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2632bfcd321SSteve Yin     return m_nIndexInParent - 1;
2642bfcd321SSteve Yin }
2652bfcd321SSteve Yin 
2662bfcd321SSteve Yin // -----------------------------------------------------------------------------
2672bfcd321SSteve Yin 
getAccessibleRole()2682bfcd321SSteve Yin sal_Int16 VCLXAccessibleHeaderBarItem::getAccessibleRole() throw (RuntimeException)
2692bfcd321SSteve Yin {
2702bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2712bfcd321SSteve Yin 
2722bfcd321SSteve Yin     return AccessibleRole::COLUMN_HEADER;
2732bfcd321SSteve Yin }
2742bfcd321SSteve Yin 
2752bfcd321SSteve Yin // -----------------------------------------------------------------------------
2762bfcd321SSteve Yin 
getAccessibleDescription()2772bfcd321SSteve Yin ::rtl::OUString VCLXAccessibleHeaderBarItem::getAccessibleDescription() throw (RuntimeException)
2782bfcd321SSteve Yin {
2792bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2802bfcd321SSteve Yin     ::rtl::OUString sDescription;
2812bfcd321SSteve Yin     return sDescription;
2822bfcd321SSteve Yin }
2832bfcd321SSteve Yin 
2842bfcd321SSteve Yin // -----------------------------------------------------------------------------
2852bfcd321SSteve Yin 
getAccessibleName()2862bfcd321SSteve Yin ::rtl::OUString VCLXAccessibleHeaderBarItem::getAccessibleName() throw (RuntimeException)
2872bfcd321SSteve Yin {
2882bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
2892bfcd321SSteve Yin 
2902bfcd321SSteve Yin     ::rtl::OUString sName;
2912bfcd321SSteve Yin     if(m_pHeadBar)
2922bfcd321SSteve Yin         sName = m_pHeadBar->GetItemText( sal_uInt16( m_nIndexInParent ) );
2932bfcd321SSteve Yin     return sName;
2942bfcd321SSteve Yin }
2952bfcd321SSteve Yin 
2962bfcd321SSteve Yin // -----------------------------------------------------------------------------
2972bfcd321SSteve Yin 
getAccessibleRelationSet()2982bfcd321SSteve Yin Reference< XAccessibleRelationSet > VCLXAccessibleHeaderBarItem::getAccessibleRelationSet(  ) throw (RuntimeException)
2992bfcd321SSteve Yin {
3002bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3012bfcd321SSteve Yin 
3022bfcd321SSteve Yin     utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
3032bfcd321SSteve Yin     Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
3042bfcd321SSteve Yin     return xSet;
3052bfcd321SSteve Yin }
3062bfcd321SSteve Yin 
3072bfcd321SSteve Yin // -----------------------------------------------------------------------------
3082bfcd321SSteve Yin 
getAccessibleStateSet()3092bfcd321SSteve Yin Reference< XAccessibleStateSet > VCLXAccessibleHeaderBarItem::getAccessibleStateSet(  ) throw (RuntimeException)
3102bfcd321SSteve Yin {
3112bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3122bfcd321SSteve Yin 
3132bfcd321SSteve Yin     utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
3142bfcd321SSteve Yin     Reference< XAccessibleStateSet > xSet = pStateSetHelper;
3152bfcd321SSteve Yin 
3162bfcd321SSteve Yin     if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
3172bfcd321SSteve Yin     {
3182bfcd321SSteve Yin         FillAccessibleStateSet( *pStateSetHelper );
3192bfcd321SSteve Yin     }
3202bfcd321SSteve Yin     else
3212bfcd321SSteve Yin     {
3222bfcd321SSteve Yin         pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
3232bfcd321SSteve Yin     }
3242bfcd321SSteve Yin 
3252bfcd321SSteve Yin     return xSet;
3262bfcd321SSteve Yin }
3272bfcd321SSteve Yin 
3282bfcd321SSteve Yin // -----------------------------------------------------------------------------
3292bfcd321SSteve Yin 
getLocale()3302bfcd321SSteve Yin com::sun::star::lang::Locale VCLXAccessibleHeaderBarItem::getLocale() throw (IllegalAccessibleComponentStateException, RuntimeException)
3312bfcd321SSteve Yin {
3322bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3332bfcd321SSteve Yin 
3342bfcd321SSteve Yin     return Application::GetSettings().GetLocale();
3352bfcd321SSteve Yin }
3362bfcd321SSteve Yin 
3372bfcd321SSteve Yin // -----------------------------------------------------------------------------
3382bfcd321SSteve Yin // XAccessibleComponent
3392bfcd321SSteve Yin // -----------------------------------------------------------------------------
3402bfcd321SSteve Yin 
getAccessibleAtPoint(const awt::Point &)3412bfcd321SSteve Yin Reference< XAccessible > VCLXAccessibleHeaderBarItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
3422bfcd321SSteve Yin {
3432bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3442bfcd321SSteve Yin 
3452bfcd321SSteve Yin     return Reference< XAccessible >();
3462bfcd321SSteve Yin }
3472bfcd321SSteve Yin 
3482bfcd321SSteve Yin // -----------------------------------------------------------------------------
3492bfcd321SSteve Yin 
getForeground()3502bfcd321SSteve Yin sal_Int32 VCLXAccessibleHeaderBarItem::getForeground() throw (RuntimeException)
3512bfcd321SSteve Yin {
3522bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3532bfcd321SSteve Yin 
3542bfcd321SSteve Yin     sal_Int32 nColor = 0;
3552bfcd321SSteve Yin     return nColor;
3562bfcd321SSteve Yin }
3572bfcd321SSteve Yin 
3582bfcd321SSteve Yin // -----------------------------------------------------------------------------
3592bfcd321SSteve Yin 
getBackground()3602bfcd321SSteve Yin sal_Int32 VCLXAccessibleHeaderBarItem::getBackground() throw (RuntimeException)
3612bfcd321SSteve Yin {
3622bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3632bfcd321SSteve Yin 
3642bfcd321SSteve Yin     sal_Int32 nColor = 0;
3652bfcd321SSteve Yin     return nColor;
3662bfcd321SSteve Yin }
3672bfcd321SSteve Yin 
3682bfcd321SSteve Yin // -----------------------------------------------------------------------------
3692bfcd321SSteve Yin // XAccessibleExtendedComponent
3702bfcd321SSteve Yin // -----------------------------------------------------------------------------
3712bfcd321SSteve Yin 
getFont()3722bfcd321SSteve Yin Reference< awt::XFont > VCLXAccessibleHeaderBarItem::getFont() throw (RuntimeException)
3732bfcd321SSteve Yin {
3742bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3752bfcd321SSteve Yin 
3762bfcd321SSteve Yin     Reference< awt::XFont > xFont;
3772bfcd321SSteve Yin     return xFont;
3782bfcd321SSteve Yin }
3792bfcd321SSteve Yin 
3802bfcd321SSteve Yin // -----------------------------------------------------------------------------
3812bfcd321SSteve Yin 
getTitledBorderText()3822bfcd321SSteve Yin ::rtl::OUString VCLXAccessibleHeaderBarItem::getTitledBorderText() throw (RuntimeException)
3832bfcd321SSteve Yin {
3842bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3852bfcd321SSteve Yin 
3862bfcd321SSteve Yin     ::rtl::OUString sText;
3872bfcd321SSteve Yin     return sText;
3882bfcd321SSteve Yin }
3892bfcd321SSteve Yin 
3902bfcd321SSteve Yin // -----------------------------------------------------------------------------
3912bfcd321SSteve Yin 
getToolTipText()3922bfcd321SSteve Yin ::rtl::OUString VCLXAccessibleHeaderBarItem::getToolTipText() throw (RuntimeException)
3932bfcd321SSteve Yin {
3942bfcd321SSteve Yin     OExternalLockGuard aGuard( this );
3952bfcd321SSteve Yin 
3962bfcd321SSteve Yin     ::rtl::OUString sText;
3972bfcd321SSteve Yin     if ( m_pHeadBar )
3982bfcd321SSteve Yin         sText = m_pHeadBar->GetQuickHelpText();
3992bfcd321SSteve Yin 
4002bfcd321SSteve Yin     return sText;
4012bfcd321SSteve Yin }
402