Kaydet (Commit) 3b40f502 authored tarafından Ivo Hinkelmann's avatar Ivo Hinkelmann

INTEGRATION: CWS fwk83_SRC680 (1.7.186); FILE MERGED

2008/01/30 12:40:39 obr 1.7.186.2: fix for fedora tinderbox (64bit)
2008/01/15 23:49:28 obr 1.7.186.1: #i70872# create wrapper for toolbox items that change state
üst dcf65731
...@@ -4,9 +4,9 @@ ...@@ -4,9 +4,9 @@
* *
* $RCSfile: atkutil.cxx,v $ * $RCSfile: atkutil.cxx,v $
* *
* $Revision: 1.7 $ * $Revision: 1.8 $
* *
* last change: $Author: hr $ $Date: 2007-06-27 20:37:59 $ * last change: $Author: ihi $ $Date: 2008-02-05 12:30:51 $
* *
* The Contents of this file are made available subject to * The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1. * the terms of GNU Lesser General Public License Version 2.1.
...@@ -458,6 +458,30 @@ static void handle_toolbox_highlightoff(Window *pWindow) ...@@ -458,6 +458,30 @@ static void handle_toolbox_highlightoff(Window *pWindow)
notify_toolbox_item_focus( pToolBoxParent ); notify_toolbox_item_focus( pToolBoxParent );
} }
static void handle_toolbox_buttonchange(VclWindowEvent const *pEvent)
{
Window* pWindow = pEvent->GetWindow();
sal_Int32 index = (sal_Int32)(sal_IntPtr) pEvent->GetData();
if( pWindow && pWindow->IsReallyVisible() )
{
uno::Reference< accessibility::XAccessible > xAccessible(pWindow->GetAccessible());
if( xAccessible.is() )
{
uno::Reference< accessibility::XAccessibleContext > xContext(xAccessible->getAccessibleContext());
if( xContext.is() )
{
uno::Reference< accessibility::XAccessible > xChild(xContext->getAccessibleChild(index));
if( xChild.is() )
{
// create the wrapper object - it will survive the unref unless it is a transient object
g_object_unref( atk_object_wrapper_ref( xChild ) );
}
}
}
}
}
/*****************************************************************************/ /*****************************************************************************/
static std::set< Window * > g_aWindowList; static std::set< Window * > g_aWindowList;
...@@ -602,6 +626,10 @@ long WindowEventHandler(void *, ::VclSimpleEvent const * pEvent) ...@@ -602,6 +626,10 @@ long WindowEventHandler(void *, ::VclSimpleEvent const * pEvent)
handle_toolbox_highlight(static_cast< ::VclWindowEvent const * >(pEvent)->GetWindow()); handle_toolbox_highlight(static_cast< ::VclWindowEvent const * >(pEvent)->GetWindow());
break; break;
case VCLEVENT_TOOLBOX_BUTTONSTATECHANGED:
handle_toolbox_buttonchange(static_cast< ::VclWindowEvent const * >(pEvent));
break;
case VCLEVENT_OBJECT_DYING: case VCLEVENT_OBJECT_DYING:
case VCLEVENT_TOOLBOX_HIGHLIGHTOFF: case VCLEVENT_TOOLBOX_HIGHLIGHTOFF:
handle_toolbox_highlightoff(static_cast< ::VclWindowEvent const * >(pEvent)->GetWindow()); handle_toolbox_highlightoff(static_cast< ::VclWindowEvent const * >(pEvent)->GetWindow());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment