Kaydet (Commit) db8c859a authored tarafından Ocke Janssen's avatar Ocke Janssen

#105539# correct accessibility

üst 0fb76bc5
......@@ -2,9 +2,9 @@
*
* $RCSfile: JoinTableView.hxx,v $
*
* $Revision: 1.18 $
* $Revision: 1.19 $
*
* last change: $Author: oj $ $Date: 2002-11-08 09:27:36 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:13 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -145,7 +145,7 @@ namespace dbaui
OTableWindow* m_pDragWin;
OTableWindow* m_pSizingWin;
OTableConnection* m_pSelectedConn;
IAccessibleHelper* m_pAccessible;
BOOL m_bTrackingInitiallyMoved;
......@@ -154,6 +154,7 @@ namespace dbaui
protected:
OTableWindow* m_pLastFocusTabWin;
OJoinDesignView* m_pView;
IAccessibleHelper* m_pAccessible;
public:
TYPEINFO();
......@@ -283,11 +284,7 @@ namespace dbaui
// negativ ist.
virtual void TabWinSized(OTableWindow* ptWhich, const Point& ptOldPosition, const Size& szOldSize);
/** should be called when the table or connection count changed
@param _nOldCount
the old child count
*/
void childCountChanged(sal_Int32 _nOldCount);
void modified();
/** returns if teh given window is visible.
@param _rPoint
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: TableWindowAccess.hxx,v $
*
* $Revision: 1.2 $
* $Revision: 1.3 $
*
* last change: $Author: oj $ $Date: 2002-02-08 08:56:33 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:13 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -120,7 +120,7 @@ namespace dbaui
// XAccessibleContext
virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException,::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: JAccess.cxx,v $
*
* $Revision: 1.4 $
* $Revision: 1.5 $
*
* last change: $Author: fs $ $Date: 2002-09-13 08:54:31 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:12 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -137,6 +137,8 @@ namespace dbaui
else if( size_t(i - nTableWindowCount) < m_pTableView->getTableConnections()->size() )
aRet = (*m_pTableView->getTableConnections())[i - nTableWindowCount]->getAccessible();
}
else
throw IndexOutOfBoundsException();
return aRet;
}
// -----------------------------------------------------------------------------
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: JoinTableView.cxx,v $
*
* $Revision: 1.42 $
* $Revision: 1.43 $
*
* last change: $Author: oj $ $Date: 2002-11-08 09:26:56 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:12 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -127,6 +127,7 @@
#ifndef _DRAFTS_COM_SUN_STAR_ACCESSIBILITY_ACCESSIBLEROLE_HPP_
#include <drafts/com/sun/star/accessibility/AccessibleRole.hpp>
#endif
#include <drafts/com/sun/star/accessibility/AccessibleEventId.hpp>
#ifndef DBAUI_TOOLS_HXX
#include "UITools.hxx"
#endif
......@@ -344,7 +345,11 @@ void OJoinTableView::AddConnection(const OJoinExchangeData& jxdSource, const OJo
::std::vector<OTableConnection*>::const_iterator aNextPos = m_vTableConnection.erase(
::std::find(m_vTableConnection.begin(),m_vTableConnection.end(),_pConn) );
childCountChanged(m_vTableConnection.size() + 1);
modified();
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent( AccessibleEventId::ACCESSIBLE_CHILD_EVENT,
makeAny(_pConn->getAccessible()),
Any());
if ( _bDelete )
{
delete _pConn->GetData();
......@@ -394,7 +399,11 @@ void OJoinTableView::AddTabWin(const ::rtl::OUString& _rComposedName, const ::rt
SetDefaultTabWinPosSize( pNewTabWin );
pNewTabWin->Show();
childCountChanged(m_aTableMap.size() - 1);
modified();
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent( AccessibleEventId::ACCESSIBLE_CHILD_EVENT,
Any(),
makeAny(pNewTabWin->GetAccessible()));
}
else
{
......@@ -430,8 +439,13 @@ void OJoinTableView::RemoveTabWin( OTableWindow* pTabWin )
//////////////////////////////////////////////////////////////////////
// then delete the window itself
if(bRemove)
if ( bRemove )
{
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent( AccessibleEventId::ACCESSIBLE_CHILD_EVENT,
makeAny(pTabWin->GetAccessible()),Any()
);
pTabWin->Hide();
::std::vector< OTableWindowData*>::iterator aFind = ::std::find(m_pView->getController()->getTableWindowData()->begin(),m_pView->getController()->getTableWindowData()->end(),pTabWin->GetData());
if(aFind != m_pView->getController()->getTableWindowData()->end())
......@@ -453,8 +467,8 @@ void OJoinTableView::RemoveTabWin( OTableWindow* pTabWin )
delete pTabWin;
}
if(bRemove && (sal_Int32)m_aTableMap.size() < (nCount-1)) // if some connections could be removed
childCountChanged(m_aTableMap.size() + 1);
if ( bRemove && (sal_Int32)m_aTableMap.size() < (nCount-1) ) // if some connections could be removed
modified();
}
namespace
{
......@@ -1705,14 +1719,12 @@ Reference< XAccessible > OJoinTableView::CreateAccessible()
return aRet;
}
// -----------------------------------------------------------------------------
void OJoinTableView::childCountChanged(sal_Int32 _nOldCount)
void OJoinTableView::modified()
{
OJoinController* pController = m_pView->getController();
pController->setModified( sal_True );
pController->InvalidateFeature(ID_BROWSER_ADDTABLE);
pController->InvalidateFeature(ID_RELATION_ADD_RELATION);
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent(3/* AccessibleEventId::ACCESSIBLE_CHILD_EVENT */,makeAny(_nOldCount),makeAny(GetTabWinCount() + getTableConnections()->size()));
}
// -----------------------------------------------------------------------------
void OJoinTableView::addConnection(OTableConnection* _pConnection,sal_Bool _bAddData)
......@@ -1728,7 +1740,12 @@ void OJoinTableView::addConnection(OTableConnection* _pConnection,sal_Bool _bAdd
m_vTableConnection.push_back(_pConnection);
_pConnection->RecalcLines();
_pConnection->Invalidate();
childCountChanged(m_vTableConnection.size() - 1);
modified();
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent( AccessibleEventId::ACCESSIBLE_CHILD_EVENT,
Any(),
makeAny(_pConnection->getAccessible()));
}
// -----------------------------------------------------------------------------
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: TableWindow.cxx,v $
*
* $Revision: 1.23 $
* $Revision: 1.24 $
*
* last change: $Author: oj $ $Date: 2002-08-19 08:01:30 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:12 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -100,6 +100,7 @@
#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_
#include <com/sun/star/beans/XPropertySet.hpp>
#endif
#include <drafts/com/sun/star/accessibility/AccessibleEventId.hpp>
#ifndef DBAUI_QUERYCONTROLLER_HXX
#include "querycontroller.hxx"
#endif
......@@ -442,7 +443,7 @@ void OTableWindow::SetTitle( const ::rtl::OUString& rTit )
::rtl::OUString sOldTitle = m_aTitle.GetText();
m_aTitle.SetText( rTit );
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent(6/* AccessibleEventId::ACCESSIBLE_NAME_EVENT */,makeAny(sOldTitle),makeAny(rTit));
m_pAccessible->notifyAccessibleEvent(AccessibleEventId::ACCESSIBLE_NAME_EVENT ,makeAny(sOldTitle),makeAny(rTit));
}
//------------------------------------------------------------------------------
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: TableWindowAccess.cxx,v $
*
* $Revision: 1.4 $
* $Revision: 1.5 $
*
* last change: $Author: fs $ $Date: 2002-09-13 08:54:33 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:11 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -88,6 +88,9 @@
#ifndef _COMPHELPER_SEQUENCE_HXX_
#include <comphelper/sequence.hxx>
#endif
#ifndef _DBU_QRY_HRC_
#include "dbu_qry.hrc"
#endif
namespace dbaui
......@@ -154,12 +157,22 @@ namespace dbaui
return 1;
}
// -----------------------------------------------------------------------------
Reference< XAccessible > SAL_CALL OTableWindowAccess::getAccessibleChild( sal_Int32 i ) throw (RuntimeException)
Reference< XAccessible > SAL_CALL OTableWindowAccess::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException,RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
Reference< XAccessible > aRet;
if(i == 0 && m_pTable)
{
if ( !m_pTable->GetListBox()->GetAccessibleDescription().Len() )
{
String sTitle = String(ModuleRes(STR_TBL_TITLE));
sTitle.SearchAndReplace('#',getAccessibleName().getStr());
m_pTable->GetListBox()->SetAccessibleDescription(sTitle);
}
aRet = m_pTable->GetListBox()->GetAccessible();
}
else
throw IndexOutOfBoundsException();
return aRet;
}
// -----------------------------------------------------------------------------
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: RelationTableView.cxx,v $
*
* $Revision: 1.15 $
* $Revision: 1.16 $
*
* last change: $Author: oj $ $Date: 2002-11-21 13:56:07 $
* last change: $Author: oj $ $Date: 2002-11-26 07:46:11 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -145,7 +145,10 @@
#ifndef DBAUI_RELTABLEWINDOW_HXX
#include "RTableWindow.hxx"
#endif
#ifndef DBACCESS_JACCESS_HXX
#include "JAccess.hxx"
#endif
#include <drafts/com/sun/star/accessibility/AccessibleEventId.hpp>
using namespace dbaui;
using namespace ::dbtools;
......@@ -154,6 +157,7 @@ using namespace ::com::sun::star::sdbc;
using namespace ::com::sun::star::sdbcx;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::container;
using namespace ::drafts::com::sun::star::accessibility;
TYPEINIT1(ORelationTableWindow, OTableWindow);
......@@ -252,7 +256,7 @@ BOOL ORelationTableView::IsAddAllowed()
DBG_CHKTHIS(ORelationTableView,NULL);
BOOL bAllowed = !m_pView->getController()->isReadOnly();
if(bAllowed)
if ( bAllowed )
{
Reference<XConnection> xConnection = m_pView->getController()->getConnection();
if(!xConnection.is())
......@@ -266,7 +270,7 @@ BOOL ORelationTableView::IsAddAllowed()
bAllowed = xMetaData.is() && xMetaData->supportsIntegrityEnhancementFacility();
}
catch(SQLException&)
catch(const SQLException&)
{
}
}
......@@ -463,7 +467,6 @@ void ORelationTableView::AddTabWin(const ::rtl::OUString& _rComposedName, const
OTableWindowData* pNewTabWinData = CreateImpl( _rComposedName, rWinName );
pNewTabWinData->ShowAll(FALSE);
//////////////////////////////////////////////////////////////////
// Neues Fenster in Fensterliste eintragen
OTableWindow* pNewTabWin = createWindow( pNewTabWinData );
......@@ -476,9 +479,12 @@ void ORelationTableView::AddTabWin(const ::rtl::OUString& _rComposedName, const
SetDefaultTabWinPosSize( pNewTabWin );
pNewTabWin->Show();
m_pView->getController()->setModified( sal_True );
m_pView->getController()->InvalidateFeature(ID_BROWSER_ADDTABLE);
m_pView->getController()->InvalidateFeature(ID_RELATION_ADD_RELATION);
modified();
if ( m_pAccessible )
m_pAccessible->notifyAccessibleEvent( AccessibleEventId::ACCESSIBLE_CHILD_EVENT,
Any(),
makeAny(pNewTabWin->GetAccessible()));
}
else
{
......
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