Kaydet (Commit) 6d7c82a5 authored tarafından Arnaud Versini's avatar Arnaud Versini Kaydeden (comit) Noel Grandin

accessibility : remove useless Impl pattern

Change-Id: I6a3744b742db12ded79d273d49b041c578eccab6
Reviewed-on: https://gerrit.libreoffice.org/50302Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
Tested-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst 5fb3a3ef
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
namespace accessibility { namespace accessibility {
class AccessibleBrowseBoxImpl; class AccessibleBrowseBoxHeaderBar;
class AccessibleBrowseBoxTable; class AccessibleBrowseBoxTable;
...@@ -174,8 +174,17 @@ protected: ...@@ -174,8 +174,17 @@ protected:
virtual AccessibleBrowseBoxTable* createAccessibleTable(); virtual AccessibleBrowseBoxTable* createAccessibleTable();
private: private:
// members /// the css::accessibility::XAccessible which created the AccessibleBrowseBox
std::unique_ptr< AccessibleBrowseBoxImpl > m_xImpl; css::uno::WeakReference< css::accessibility::XAccessible > m_aCreator;
/** The data table child. */
rtl::Reference<AccessibleBrowseBoxTable> mxTable;
/** The header bar for rows ("handle column"). */
rtl::Reference<AccessibleBrowseBoxHeaderBar> mxRowHeaderBar;
/** The header bar for columns (first row of the table). */
rtl::Reference<AccessibleBrowseBoxHeaderBar> mxColumnHeaderBar;
}; };
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
namespace accessibility { namespace accessibility {
class AccessibleGridControl_Impl; class AccessibleGridControlHeader;
/** This class represents the complete accessible Grid Control object. */ /** This class represents the complete accessible Grid Control object. */
...@@ -138,8 +138,20 @@ private: ...@@ -138,8 +138,20 @@ private:
@return An AccessibleGridControlTable. */ @return An AccessibleGridControlTable. */
AccessibleGridControlTable* createAccessibleTable(); AccessibleGridControlTable* createAccessibleTable();
// members ---------------------------------------------------------------- /// the css::accessibility::XAccessible which created the AccessibleGridControl
std::unique_ptr< AccessibleGridControl_Impl > m_xImpl; css::uno::WeakReference< css::accessibility::XAccessible > m_aCreator;
/** The data table child. */
rtl::Reference<AccessibleGridControlTable> m_xTable;
/** The header bar for rows. */
rtl::Reference<AccessibleGridControlHeader> m_xRowHeaderBar;
/** The header bar for columns (first row of the table). */
rtl::Reference<AccessibleGridControlHeader> m_xColumnHeaderBar;
/** The table cell child. */
rtl::Reference<AccessibleGridControlTableCell> m_xCell;
}; };
......
...@@ -34,43 +34,24 @@ using namespace ::com::sun::star::lang; ...@@ -34,43 +34,24 @@ using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::accessibility; using namespace ::com::sun::star::accessibility;
using namespace ::svt; using namespace ::svt;
class AccessibleBrowseBoxImpl
{
public:
/// the css::accessibility::XAccessible which created the AccessibleBrowseBox
css::uno::WeakReference< css::accessibility::XAccessible > m_aCreator;
/** The data table child. */
rtl::Reference<AccessibleBrowseBoxTable> mxTable;
/** The header bar for rows ("handle column"). */
rtl::Reference<AccessibleBrowseBoxHeaderBar> mxRowHeaderBar;
/** The header bar for columns (first row of the table). */
rtl::Reference<AccessibleBrowseBoxHeaderBar> mxColumnHeaderBar;
};
// Ctor/Dtor/disposing // Ctor/Dtor/disposing
AccessibleBrowseBox::AccessibleBrowseBox( AccessibleBrowseBox::AccessibleBrowseBox(
const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, const css::uno::Reference< css::accessibility::XAccessible >& _rxCreator, const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, const css::uno::Reference< css::accessibility::XAccessible >& _rxCreator,
::svt::IAccessibleTableProvider& _rBrowseBox ) ::svt::IAccessibleTableProvider& _rBrowseBox )
: AccessibleBrowseBoxBase( _rxParent, _rBrowseBox,nullptr, BBTYPE_BROWSEBOX ) : AccessibleBrowseBoxBase( _rxParent, _rBrowseBox,nullptr, BBTYPE_BROWSEBOX ),
m_aCreator(_rxCreator)
{ {
m_xImpl.reset( new AccessibleBrowseBoxImpl );
m_xImpl->m_aCreator = _rxCreator;
m_xFocusWindow = VCLUnoHelper::GetInterface(mpBrowseBox->GetWindowInstance()); m_xFocusWindow = VCLUnoHelper::GetInterface(mpBrowseBox->GetWindowInstance());
} }
void AccessibleBrowseBox::setCreator( const css::uno::Reference< css::accessibility::XAccessible >& _rxCreator ) void AccessibleBrowseBox::setCreator( const css::uno::Reference< css::accessibility::XAccessible >& _rxCreator )
{ {
#if OSL_DEBUG_LEVEL > 0 #if OSL_DEBUG_LEVEL > 0
css::uno::Reference< css::accessibility::XAccessible > xCreator(m_xImpl->m_aCreator); css::uno::Reference< css::accessibility::XAccessible > xCreator(m_aCreator);
OSL_ENSURE( !xCreator.is(), "extended/AccessibleBrowseBox::setCreator: creator already set!" ); OSL_ENSURE( !xCreator.is(), "extended/AccessibleBrowseBox::setCreator: creator already set!" );
#endif #endif
m_xImpl->m_aCreator = _rxCreator; m_aCreator = _rxCreator;
} }
...@@ -83,22 +64,22 @@ void SAL_CALL AccessibleBrowseBox::disposing() ...@@ -83,22 +64,22 @@ void SAL_CALL AccessibleBrowseBox::disposing()
{ {
::osl::MutexGuard aGuard( getMutex() ); ::osl::MutexGuard aGuard( getMutex() );
m_xImpl->m_aCreator.clear(); m_aCreator.clear();
if ( m_xImpl->mxTable.is() ) if ( mxTable.is() )
{ {
m_xImpl->mxTable->dispose(); mxTable->dispose();
m_xImpl->mxTable.clear(); mxTable.clear();
} }
if ( m_xImpl->mxRowHeaderBar.is() ) if ( mxRowHeaderBar.is() )
{ {
m_xImpl->mxRowHeaderBar->dispose(); mxRowHeaderBar->dispose();
m_xImpl->mxRowHeaderBar.clear(); mxRowHeaderBar.clear();
} }
if ( m_xImpl->mxColumnHeaderBar.is() ) if ( mxColumnHeaderBar.is() )
{ {
m_xImpl->mxColumnHeaderBar->dispose(); mxColumnHeaderBar->dispose();
m_xImpl->mxColumnHeaderBar.clear(); mxColumnHeaderBar.clear();
} }
AccessibleBrowseBoxBase::disposing(); AccessibleBrowseBoxBase::disposing();
...@@ -209,12 +190,12 @@ tools::Rectangle AccessibleBrowseBox::implGetBoundingBoxOnScreen() ...@@ -209,12 +190,12 @@ tools::Rectangle AccessibleBrowseBox::implGetBoundingBoxOnScreen()
css::uno::Reference< css::accessibility::XAccessible > AccessibleBrowseBox::implGetTable() css::uno::Reference< css::accessibility::XAccessible > AccessibleBrowseBox::implGetTable()
{ {
if( !m_xImpl->mxTable.is() ) if( !mxTable.is() )
{ {
m_xImpl->mxTable = createAccessibleTable(); mxTable = createAccessibleTable();
} }
return m_xImpl->mxTable.get(); return mxTable.get();
} }
...@@ -225,16 +206,16 @@ AccessibleBrowseBox::implGetHeaderBar( AccessibleBrowseBoxObjType eObjType ) ...@@ -225,16 +206,16 @@ AccessibleBrowseBox::implGetHeaderBar( AccessibleBrowseBoxObjType eObjType )
rtl::Reference< AccessibleBrowseBoxHeaderBar >* pxMember = nullptr; rtl::Reference< AccessibleBrowseBoxHeaderBar >* pxMember = nullptr;
if( eObjType == BBTYPE_ROWHEADERBAR ) if( eObjType == BBTYPE_ROWHEADERBAR )
pxMember = &m_xImpl->mxRowHeaderBar; pxMember = &mxRowHeaderBar;
else if( eObjType == BBTYPE_COLUMNHEADERBAR ) else if( eObjType == BBTYPE_COLUMNHEADERBAR )
pxMember = &m_xImpl->mxColumnHeaderBar; pxMember = &mxColumnHeaderBar;
if( pxMember ) if( pxMember )
{ {
if( !pxMember->is() ) if( !pxMember->is() )
{ {
AccessibleBrowseBoxHeaderBar* pHeaderBar = new AccessibleBrowseBoxHeaderBar( AccessibleBrowseBoxHeaderBar* pHeaderBar = new AccessibleBrowseBoxHeaderBar(
m_xImpl->m_aCreator, *mpBrowseBox, eObjType ); m_aCreator, *mpBrowseBox, eObjType );
*pxMember = pHeaderBar; *pxMember = pHeaderBar;
} }
xRet = pxMember->get(); xRet = pxMember->get();
...@@ -264,16 +245,16 @@ AccessibleBrowseBox::implGetFixedChild( sal_Int32 nChildIndex ) ...@@ -264,16 +245,16 @@ AccessibleBrowseBox::implGetFixedChild( sal_Int32 nChildIndex )
AccessibleBrowseBoxTable* AccessibleBrowseBox::createAccessibleTable() AccessibleBrowseBoxTable* AccessibleBrowseBox::createAccessibleTable()
{ {
css::uno::Reference< css::accessibility::XAccessible > xCreator(m_xImpl->m_aCreator); css::uno::Reference< css::accessibility::XAccessible > xCreator(m_aCreator);
OSL_ENSURE( xCreator.is(), "extended/AccessibleBrowseBox::createAccessibleTable: my creator died - how this?" ); OSL_ENSURE( xCreator.is(), "extended/AccessibleBrowseBox::createAccessibleTable: my creator died - how this?" );
return new AccessibleBrowseBoxTable( xCreator, *mpBrowseBox ); return new AccessibleBrowseBoxTable( xCreator, *mpBrowseBox );
} }
void AccessibleBrowseBox::commitTableEvent(sal_Int16 _nEventId,const Any& _rNewValue,const Any& _rOldValue) void AccessibleBrowseBox::commitTableEvent(sal_Int16 _nEventId,const Any& _rNewValue,const Any& _rOldValue)
{ {
if ( m_xImpl->mxTable.is() ) if ( mxTable.is() )
{ {
m_xImpl->mxTable->commitEvent(_nEventId,_rNewValue,_rOldValue); mxTable->commitEvent(_nEventId,_rNewValue,_rOldValue);
} }
} }
...@@ -281,7 +262,7 @@ void AccessibleBrowseBox::commitHeaderBarEvent( sal_Int16 _nEventId, ...@@ -281,7 +262,7 @@ void AccessibleBrowseBox::commitHeaderBarEvent( sal_Int16 _nEventId,
const Any& _rNewValue, const Any& _rNewValue,
const Any& _rOldValue,bool _bColumnHeaderBar) const Any& _rOldValue,bool _bColumnHeaderBar)
{ {
rtl::Reference< AccessibleBrowseBoxHeaderBar >& xHeaderBar = _bColumnHeaderBar ? m_xImpl->mxColumnHeaderBar : m_xImpl->mxRowHeaderBar; rtl::Reference< AccessibleBrowseBoxHeaderBar >& xHeaderBar = _bColumnHeaderBar ? mxColumnHeaderBar : mxRowHeaderBar;
if ( xHeaderBar.is() ) if ( xHeaderBar.is() )
xHeaderBar->commitEvent(_nEventId,_rNewValue,_rOldValue); xHeaderBar->commitEvent(_nEventId,_rNewValue,_rOldValue);
} }
......
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