toolkit/inc/controls/table/tablecontrol.hxx      |    6 -
 toolkit/source/controls/svtxgridcontrol.cxx      |    8 -
 toolkit/source/controls/table/tablecontrol.cxx   |   17 +--
 toolkit/source/controls/unocontroltablemodel.cxx |  121 +++++++++++------------
 4 files changed, 76 insertions(+), 76 deletions(-)

New commits:
commit ba0d9c0f3f6ddcd4a783f886702c825c3728be59
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Jan 23 13:34:30 2025 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Fri Jan 24 07:37:14 2025 +0100

    toolkit: No longer provide getter for TableControl::m_pImpl
    
    Drop TableControl::getTableControlInterface that was
    providing direct access to TableControl::m_pImpl
    via the ITableControl interface.
    
    This was only used in SVTXGridControl to call
    ITableControl::hitTest and ITableControl::invalidate.
    
    Add new methods TableControl::hitTest and
    TableControl::invalidate which allow doing exactly
    that via the TableControl without requiring direct
    access to the `m_pImpl` from outside.
    
    Change-Id: I098739e0bb64efcbaafdb8762e082d6f7b7325bc
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180633
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/toolkit/inc/controls/table/tablecontrol.hxx 
b/toolkit/inc/controls/table/tablecontrol.hxx
index 9d9f98ff11e3..075e3b83ebe5 100644
--- a/toolkit/inc/controls/table/tablecontrol.hxx
+++ b/toolkit/inc/controls/table/tablecontrol.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <controls/table/tablecontrolinterface.hxx>
 #include <controls/table/tablemodel.hxx>
 #include <vcl/accessibletable.hxx>
 
@@ -77,9 +78,6 @@ namespace svt::table
         */
         sal_Int32 GetCurrentRow() const override;
 
-        ITableControl&
-                getTableControlInterface();
-
         /** retrieves the current column
 
             The current col is the one which contains the active cell.
@@ -157,6 +155,8 @@ namespace svt::table
         virtual void SelectRow( sal_Int32 const i_rowIndex, bool const 
i_select ) override;
         virtual void SelectAllRows( bool const i_select ) override;
 
+        TableCell hitTest(const Point& rPoint) const;
+        void invalidate(const TableArea aArea);
 
     private:
         DECL_LINK( ImplSelectHdl, LinkParamNone*, void );
diff --git a/toolkit/source/controls/svtxgridcontrol.cxx 
b/toolkit/source/controls/svtxgridcontrol.cxx
index 0f2c3f6c1cb5..f63151e0d472 100644
--- a/toolkit/source/controls/svtxgridcontrol.cxx
+++ b/toolkit/source/controls/svtxgridcontrol.cxx
@@ -112,7 +112,7 @@ sal_Int32 SAL_CALL 
SVTXGridControl::getRowAtPoint(::sal_Int32 x, ::sal_Int32 y)
     VclPtr< TableControl > pTable = GetAsDynamic< TableControl >();
     ENSURE_OR_RETURN( pTable, "SVTXGridControl::getRowAtPoint: no control 
(anymore)!", -1 );
 
-    TableCell const tableCell = pTable->getTableControlInterface().hitTest( 
Point( x, y ) );
+    TableCell const tableCell = pTable->hitTest(Point(x, y));
     return ( tableCell.nRow >= 0 ) ? tableCell.nRow : -1;
 }
 
@@ -124,7 +124,7 @@ sal_Int32 SAL_CALL 
SVTXGridControl::getColumnAtPoint(::sal_Int32 x, ::sal_Int32
     VclPtr< TableControl > pTable = GetAsDynamic< TableControl >();
     ENSURE_OR_RETURN( pTable, "SVTXGridControl::getColumnAtPoint: no control 
(anymore)!", -1 );
 
-    TableCell const tableCell = pTable->getTableControlInterface().hitTest( 
Point( x, y ) );
+    TableCell const tableCell = pTable->hitTest(Point(x, y));
     return ( tableCell.nColumn >= 0 ) ? tableCell.nColumn : -1;
 }
 
@@ -620,7 +620,7 @@ void SAL_CALL SVTXGridControl::dataChanged( const 
GridDataEvent& i_event )
     // So, just in case, invalidate the column header area, too.
     VclPtr< TableControl > pTable = GetAsDynamic< TableControl >();
     ENSURE_OR_RETURN_VOID( pTable, "SVTXGridControl::dataChanged: no control 
(anymore)!" );
-    pTable->getTableControlInterface().invalidate( TableArea::ColumnHeaders );
+    pTable->invalidate(TableArea::ColumnHeaders);
 }
 
 
@@ -632,7 +632,7 @@ void SAL_CALL SVTXGridControl::rowHeadingChanged( const 
GridDataEvent& )
     ENSURE_OR_RETURN_VOID( pTable, "SVTXGridControl::rowHeadingChanged: no 
control (anymore)!" );
 
     // TODO: we could do better than this - invalidate the header area only
-    pTable->getTableControlInterface().invalidate( TableArea::RowHeaders );
+    pTable->invalidate(TableArea::RowHeaders);
 }
 
 
diff --git a/toolkit/source/controls/table/tablecontrol.cxx 
b/toolkit/source/controls/table/tablecontrol.cxx
index 2b6afc18d863..bde7d9788126 100644
--- a/toolkit/source/controls/table/tablecontrol.cxx
+++ b/toolkit/source/controls/table/tablecontrol.cxx
@@ -261,13 +261,6 @@ namespace svt::table
         Select();
     }
 
-
-    ITableControl& TableControl::getTableControlInterface()
-    {
-        return *m_pImpl;
-    }
-
-
     SelectionEngine* TableControl::getSelEngine()
     {
         return m_pImpl->getSelEngine();
@@ -639,6 +632,16 @@ namespace svt::table
         }
     }
 
+    TableCell TableControl::hitTest(const Point& rPoint) const
+    {
+        return m_pImpl->hitTest(rPoint);
+    }
+
+    void TableControl::invalidate(const TableArea aArea)
+    {
+        return m_pImpl->invalidate(aArea);
+    }
+
 } // namespace svt::table
 
 
commit 0f82767a7d2d396687d2be7f9374e64e6071bc00
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Jan 23 13:06:10 2025 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Fri Jan 24 07:37:06 2025 +0100

    toolkit: Drop DBG_CHECK_ME macro
    
    Use DBG_TESTSOLARMUTEX directly.
    
    Change-Id: If3dd942d1e3d32615a82419071f1a4b8a7e5eceb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180632
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/toolkit/source/controls/unocontroltablemodel.cxx 
b/toolkit/source/controls/unocontroltablemodel.cxx
index 50f6cac3cf80..ff83158dc757 100644
--- a/toolkit/source/controls/unocontroltablemodel.cxx
+++ b/toolkit/source/controls/unocontroltablemodel.cxx
@@ -53,9 +53,6 @@ namespace svt::table
 
 
     //= UnoControlTableModel
-#define DBG_CHECK_ME() \
-    DBG_TESTSOLARMUTEX(); \
-
     UnoControlTableModel::UnoControlTableModel()
         :aColumns                       ( )
         ,bHasColumnHeaders              ( true      )
@@ -92,14 +89,14 @@ namespace svt::table
 
     TableSize UnoControlTableModel::getColumnCount() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return static_cast<TableSize>(aColumns.size());
     }
 
 
     TableSize UnoControlTableModel::getRowCount() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         TableSize nRowCount = 0;
         try
@@ -118,21 +115,21 @@ namespace svt::table
 
     bool UnoControlTableModel::hasColumnHeaders() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return bHasColumnHeaders;
     }
 
 
     bool UnoControlTableModel::hasRowHeaders() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return bHasRowHeaders;
     }
 
 
     void UnoControlTableModel::setRowHeaders(bool _bRowHeaders)
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( bHasRowHeaders == _bRowHeaders )
             return;
 
@@ -143,7 +140,7 @@ namespace svt::table
 
     void UnoControlTableModel::setColumnHeaders(bool _bColumnHeaders)
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( bHasColumnHeaders == _bColumnHeaders )
             return;
 
@@ -154,7 +151,7 @@ namespace svt::table
 
     PColumnModel UnoControlTableModel::getColumnModel( ColPos column )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ENSURE_OR_RETURN( ( column >= 0 ) && ( column < getColumnCount() ),
             "DefaultTableModel::getColumnModel: invalid index!", 
PColumnModel() );
         return aColumns[ column ];
@@ -163,14 +160,14 @@ namespace svt::table
 
     void UnoControlTableModel::appendColumn( Reference< XGridColumn > const & 
i_column )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         insertColumn( aColumns.size(), i_column );
     }
 
 
     void UnoControlTableModel::insertColumn( ColPos const i_position, 
Reference< XGridColumn > const & i_column )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ENSURE_OR_RETURN_VOID( ( i_position >= 0 ) && ( o3tl::make_unsigned( 
i_position ) <= aColumns.size() ),
             "UnoControlTableModel::insertColumn: illegal position!" );
 
@@ -188,7 +185,7 @@ namespace svt::table
 
     void UnoControlTableModel::removeColumn( ColPos const i_position )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ENSURE_OR_RETURN_VOID( ( i_position >= 0 ) && ( o3tl::make_unsigned( 
i_position ) <= aColumns.size() ),
             "UnoControlTableModel::removeColumn: illegal position!" );
 
@@ -214,7 +211,7 @@ namespace svt::table
 
     void UnoControlTableModel::removeAllColumns()
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( aColumns.empty() )
             return;
 
@@ -253,28 +250,28 @@ namespace svt::table
 
     PTableRenderer UnoControlTableModel::getRenderer() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return pRenderer;
     }
 
 
     PTableInputHandler UnoControlTableModel::getInputHandler() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return pInputHandler;
     }
 
 
     TableMetrics UnoControlTableModel::getRowHeight() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return nRowHeight;
     }
 
 
     void UnoControlTableModel::setRowHeight(TableMetrics _nRowHeight)
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( nRowHeight == _nRowHeight )
             return;
 
@@ -285,7 +282,7 @@ namespace svt::table
 
     TableMetrics UnoControlTableModel::getColumnHeaderHeight() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         DBG_ASSERT( hasColumnHeaders(), 
"DefaultTableModel::getColumnHeaderHeight: invalid call!" );
         return nColumnHeaderHeight;
     }
@@ -293,14 +290,14 @@ namespace svt::table
 
     TableMetrics UnoControlTableModel::getRowHeaderWidth() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         DBG_ASSERT( hasRowHeaders(), "DefaultTableModel::getRowHeaderWidth: 
invalid call!" );
         return nRowHeaderWidth;
     }
 
     void UnoControlTableModel::setColumnHeaderHeight(TableMetrics _nHeight)
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( nColumnHeaderHeight == _nHeight )
             return;
 
@@ -311,7 +308,7 @@ namespace svt::table
 
     void UnoControlTableModel::setRowHeaderWidth(TableMetrics _nWidth)
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         if ( nRowHeaderWidth == _nWidth )
             return;
 
@@ -322,21 +319,21 @@ namespace svt::table
 
     ScrollbarVisibility UnoControlTableModel::getVerticalScrollbarVisibility() 
const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return eVScrollMode;
     }
 
 
     ScrollbarVisibility 
UnoControlTableModel::getHorizontalScrollbarVisibility() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return eHScrollMode;
     }
 
 
     void UnoControlTableModel::addTableModelListener( const 
PTableModelListener& i_listener )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ENSURE_OR_RETURN_VOID( !!i_listener, "illegal NULL listener" );
         m_aListeners.push_back( i_listener );
     }
@@ -344,7 +341,7 @@ namespace svt::table
 
     void UnoControlTableModel::removeTableModelListener( const 
PTableModelListener& i_listener )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         auto lookup = std::find(m_aListeners.begin(), m_aListeners.end(), 
i_listener);
         if (lookup != m_aListeners.end())
         {
@@ -357,21 +354,21 @@ namespace svt::table
 
     void UnoControlTableModel::setVerticalScrollbarVisibility( 
ScrollbarVisibility const i_visibility )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         eVScrollMode = i_visibility;
     }
 
 
     void UnoControlTableModel::setHorizontalScrollbarVisibility( 
ScrollbarVisibility const i_visibility )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         eHScrollMode = i_visibility;
     }
 
 
     void UnoControlTableModel::setDataModel( Reference< XGridDataModel > const 
& i_gridDataModel )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         m_aDataModel = i_gridDataModel;
         // TODO: register as listener, so we're notified of row/data changes, 
and can multiplex them to our
         // own listeners
@@ -393,7 +390,7 @@ namespace svt::table
 
     void UnoControlTableModel::setColumnModel( Reference< XGridColumnModel > 
const & i_gridColumnModel )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         m_aColumnModel = i_gridColumnModel;
     }
 
@@ -413,7 +410,7 @@ namespace svt::table
 
     void UnoControlTableModel::getCellContent( ColPos const i_col, RowPos 
const i_row, Any& o_cellContent )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         o_cellContent.clear();
         try
@@ -451,7 +448,7 @@ namespace svt::table
 
     void UnoControlTableModel::getCellToolTip( ColPos const i_col, RowPos 
const i_row, Any& o_cellToolTip )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         try
         {
             Reference< XGridDataModel > const xDataModel( m_aDataModel );
@@ -468,7 +465,7 @@ namespace svt::table
 
     Any UnoControlTableModel::getRowHeading( RowPos const i_rowPos ) const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         Any aRowHeading;
 
@@ -511,140 +508,140 @@ namespace svt::table
 
     ::std::optional< ::Color > UnoControlTableModel::getLineColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aGridLineColor;
     }
 
 
     void UnoControlTableModel::setLineColor( Any const & i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aGridLineColor );
     }
 
 
     ::std::optional< ::Color > 
UnoControlTableModel::getHeaderBackgroundColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aHeaderBackgroundColor;
     }
 
 
     void UnoControlTableModel::setHeaderBackgroundColor( Any const & i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aHeaderBackgroundColor );
     }
 
 
     ::std::optional< ::Color > UnoControlTableModel::getHeaderTextColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aHeaderTextColor;
     }
 
 
     ::std::optional< ::Color > 
UnoControlTableModel::getActiveSelectionBackColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aActiveSelectionBackColor;
     }
 
 
     ::std::optional< ::Color > 
UnoControlTableModel::getInactiveSelectionBackColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aInactiveSelectionBackColor;
     }
 
 
     ::std::optional< ::Color > 
UnoControlTableModel::getActiveSelectionTextColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aActiveSelectionTextColor;
     }
 
 
     ::std::optional< ::Color > 
UnoControlTableModel::getInactiveSelectionTextColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aInactiveSelectionTextColor;
     }
 
 
     void UnoControlTableModel::setHeaderTextColor( Any const & i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aHeaderTextColor );
     }
 
 
     void UnoControlTableModel::setActiveSelectionBackColor( Any const & 
i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aActiveSelectionBackColor );
     }
 
 
     void UnoControlTableModel::setInactiveSelectionBackColor( Any const & 
i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aInactiveSelectionBackColor );
     }
 
 
     void UnoControlTableModel::setActiveSelectionTextColor( Any const & 
i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aActiveSelectionTextColor );
     }
 
 
     void UnoControlTableModel::setInactiveSelectionTextColor( Any const & 
i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aInactiveSelectionTextColor );
     }
 
 
     ::std::optional< ::Color > UnoControlTableModel::getTextColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aTextColor;
     }
 
 
     void UnoControlTableModel::setTextColor( Any const & i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aTextColor );
     }
 
 
     ::std::optional< ::Color > UnoControlTableModel::getTextLineColor() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aTextColor;
     }
 
 
     void UnoControlTableModel::setTextLineColor( Any const & i_color )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         lcl_setColor( i_color, m_aTextLineColor );
     }
 
 
     ::std::optional< ::std::vector< ::Color > > 
UnoControlTableModel::getRowBackgroundColors() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return m_aRowColors;
     }
 
 
     void UnoControlTableModel::setRowBackgroundColors( css::uno::Any const & 
i_APIValue )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         Sequence< css::util::Color > aAPIColors;
         if ( !( i_APIValue >>= aAPIColors ) )
             m_aRowColors.reset();
@@ -660,21 +657,21 @@ namespace svt::table
 
     VerticalAlignment UnoControlTableModel::getVerticalAlign() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return  m_eVerticalAlign;
     }
 
 
     void UnoControlTableModel::setVerticalAlign( VerticalAlignment _xAlign )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         m_eVerticalAlign = _xAlign;
     }
 
 
     ColPos UnoControlTableModel::getColumnPos( UnoGridColumnFacade const & 
i_column ) const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ColPos nPos = 0;
         for (auto const& col : aColumns)
         {
@@ -689,7 +686,7 @@ namespace svt::table
 
     ITableDataSort* UnoControlTableModel::getSortAdapter()
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         Reference< XSortableGridData > const xSortAccess( getDataModel(), 
UNO_QUERY );
         if ( xSortAccess.is() )
@@ -700,21 +697,21 @@ namespace svt::table
 
     bool UnoControlTableModel::isEnabled() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         return bEnabled;
     }
 
 
     void UnoControlTableModel::setEnabled( bool _bEnabled )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         bEnabled = _bEnabled;
     }
 
 
     void UnoControlTableModel::sortByColumn( ColPos const i_column, 
ColumnSortDirection const i_sortDirection )
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         try
         {
@@ -730,7 +727,7 @@ namespace svt::table
 
     ColumnSort UnoControlTableModel::getCurrentSortOrder() const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
 
         ColumnSort currentSort;
         try
@@ -750,7 +747,7 @@ namespace svt::table
 
     void UnoControlTableModel::notifyColumnChange( ColPos const i_columnPos, 
ColumnAttributeGroup const i_attributeGroup ) const
     {
-        DBG_CHECK_ME();
+        DBG_TESTSOLARMUTEX();
         ENSURE_OR_RETURN_VOID( ( i_columnPos >= 0 ) && ( i_columnPos < 
getColumnCount() ),
             "UnoControlTableModel::notifyColumnChange: invalid column index!" 
);
 

Reply via email to