LCOV - code coverage report
Current view: top level - vcl/unx/gtk/a11y - atktable.cxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 0 218 0.0 %
Date: 2015-06-13 12:38:46 Functions: 0 35 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : #include "atkwrapper.hxx"
      21             : 
      22             : #include <com/sun/star/accessibility/XAccessibleTable.hpp>
      23             : 
      24             : using namespace ::com::sun::star;
      25             : 
      26             : static inline AtkObject *
      27           0 : atk_object_wrapper_conditional_ref( const uno::Reference< accessibility::XAccessible >& rxAccessible )
      28             : {
      29             : #ifdef ENABLE_TRACING
      30             :     SAL_INFO( "vcl.a11y", ": " << rxAccessible.get() << "\n");
      31             : #endif
      32             : 
      33           0 :     if( rxAccessible.is() )
      34           0 :         return atk_object_wrapper_ref( rxAccessible );
      35             : 
      36           0 :     return NULL;
      37             : }
      38             : 
      39             : /*****************************************************************************/
      40             : 
      41             : // FIXME
      42             : static G_CONST_RETURN gchar *
      43           0 : getAsConst( const OUString& rString )
      44             : {
      45             :     static const int nMax = 10;
      46           0 :     static OString aUgly[nMax];
      47             :     static int nIdx = 0;
      48           0 :     nIdx = (nIdx + 1) % nMax;
      49           0 :     aUgly[nIdx] = OUStringToOString( rString, RTL_TEXTENCODING_UTF8 );
      50           0 :     return aUgly[ nIdx ].getStr();
      51             : }
      52             : 
      53             : /*****************************************************************************/
      54             : 
      55             : static accessibility::XAccessibleTable*
      56           0 :     getTable( AtkTable *pTable ) throw (uno::RuntimeException)
      57             : {
      58           0 :     AtkObjectWrapper *pWrap = ATK_OBJECT_WRAPPER( pTable );
      59           0 :     if( pWrap )
      60             :     {
      61           0 :         if( !pWrap->mpTable && pWrap->mpContext )
      62             :         {
      63           0 :             uno::Any any = pWrap->mpContext->queryInterface( cppu::UnoType<accessibility::XAccessibleTable>::get() );
      64           0 :             pWrap->mpTable = static_cast< accessibility::XAccessibleTable * > (any.pReserved);
      65           0 :             pWrap->mpTable->acquire();
      66             :         }
      67             : 
      68           0 :         return pWrap->mpTable;
      69             :     }
      70             : 
      71           0 :     return NULL;
      72             : }
      73             : 
      74             : /*****************************************************************************/
      75             : 
      76             : extern "C" {
      77             : 
      78             : static AtkObject*
      79           0 : table_wrapper_ref_at (AtkTable *table,
      80             :                       gint      row,
      81             :                       gint      column)
      82             : {
      83             :     try {
      84           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
      85             : 
      86             : #ifdef ENABLE_TRACING
      87             :         if( pTable )
      88             :             SAL_INFO( "vcl.a11y", "getAccessibleCellAt( " << row << ", " << column << " ) returns\n");
      89             : 
      90             :         if( column >= 255 )
      91             :             SAL_INFO( "vcl.a11y", "getAccessibleCellAt( " << row << ", " << column << " ) returns\n");
      92             : #endif
      93             : 
      94           0 :         if( pTable )
      95           0 :             return atk_object_wrapper_conditional_ref( pTable->getAccessibleCellAt( row, column ) );
      96             :     }
      97             : 
      98           0 :     catch(const uno::Exception&) {
      99           0 :         g_warning( "Exception in getAccessibleCellAt()" );
     100             :     }
     101             : 
     102           0 :     return NULL;
     103             : }
     104             : 
     105             : /*****************************************************************************/
     106             : 
     107             : static gint
     108           0 : table_wrapper_get_index_at (AtkTable      *table,
     109             :                             gint          row,
     110             :                             gint          column)
     111             : {
     112             :     try {
     113           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     114             : 
     115             : #ifdef ENABLE_TRACING
     116             :         if( pTable )
     117             :             SAL_INFO( "vcl.a11y", "getAccessibleIndex( " << row << ", " << column << " ) returns " << pTable->getAccessibleIndex( row, column ) << "\n");
     118             : #endif
     119             : 
     120           0 :         if( pTable )
     121           0 :             return pTable->getAccessibleIndex( row, column );
     122             :     }
     123           0 :     catch(const uno::Exception&) {
     124           0 :         g_warning( "Exception in getAccessibleIndex()" );
     125             :     }
     126             : 
     127           0 :     return -1;
     128             : }
     129             : 
     130             : /*****************************************************************************/
     131             : 
     132             : static gint
     133           0 : table_wrapper_get_column_at_index (AtkTable      *table,
     134             :                                    gint          nIndex)
     135             : {
     136             :     try {
     137           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     138             : 
     139             : #ifdef ENABLE_TRACING
     140             :         if( pTable )
     141             :             SAL_INFO( "vcl.a11y", "getAccessibleColumn( " << nIndex << " ) returns " << pTable->getAccessibleColumn( nIndex ) << "\n");
     142             : #endif
     143             : 
     144           0 :         if( pTable )
     145           0 :             return pTable->getAccessibleColumn( nIndex );
     146             :     }
     147           0 :     catch(const uno::Exception&) {
     148           0 :         g_warning( "Exception in getAccessibleColumn()" );
     149             :     }
     150             : 
     151           0 :     return -1;
     152             : }
     153             : 
     154             : /*****************************************************************************/
     155             : 
     156             : static gint
     157           0 : table_wrapper_get_row_at_index( AtkTable *table,
     158             :                                 gint      nIndex )
     159             : {
     160             :     try {
     161           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     162             : 
     163             : #ifdef ENABLE_TRACING
     164             :         if( pTable )
     165             :             SAL_INFO( "vcl.a11y", "getAccessibleRow( " << nIndex << " ) returns " << pTable->getAccessibleRow( nIndex ) << "\n");
     166             : #endif
     167             : 
     168           0 :         if( pTable )
     169           0 :             return pTable->getAccessibleRow( nIndex );
     170             :     }
     171           0 :     catch(const uno::Exception&) {
     172           0 :         g_warning( "Exception in getAccessibleRow()" );
     173             :     }
     174             : 
     175           0 :     return -1;
     176             : }
     177             : 
     178             : /*****************************************************************************/
     179             : 
     180             : static gint
     181           0 : table_wrapper_get_n_columns( AtkTable *table )
     182             : {
     183             :     try {
     184           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     185             : 
     186             : #ifdef ENABLE_TRACING
     187             :         if( pTable )
     188             :             SAL_INFO( "vcl.a11y", "XAccessibleTable::getAccessibleColumnCount returns " << pTable->getAccessibleColumnCount() << "\n");
     189             : #endif
     190             : 
     191           0 :         if( pTable )
     192           0 :             return pTable->getAccessibleColumnCount();
     193             :     }
     194           0 :     catch(const uno::Exception&) {
     195           0 :         g_warning( "Exception in getAccessibleColumnCount()" );
     196             :     }
     197             : 
     198           0 :     return -1;
     199             : }
     200             : 
     201             : /*****************************************************************************/
     202             : 
     203             : static gint
     204           0 : table_wrapper_get_n_rows( AtkTable *table )
     205             : {
     206             :     try {
     207           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     208             : 
     209             : #ifdef ENABLE_TRACING
     210             :         if( pTable )
     211             :             SAL_INFO( "vcl.a11y", "getAccessibleRowCount returns " << pTable->getAccessibleRowCount() << "\n");
     212             : #endif
     213             : 
     214           0 :         if( pTable )
     215           0 :             return pTable->getAccessibleRowCount();
     216             :     }
     217           0 :     catch(const uno::Exception&) {
     218           0 :         g_warning( "Exception in getAccessibleRowCount()" );
     219             :     }
     220             : 
     221           0 :     return -1;
     222             : }
     223             : 
     224             : /*****************************************************************************/
     225             : 
     226             : static gint
     227           0 : table_wrapper_get_column_extent_at( AtkTable *table,
     228             :                                     gint      row,
     229             :                                     gint      column )
     230             : {
     231             :     try {
     232           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     233             : 
     234             : #ifdef ENABLE_TRACING
     235             :         if( pTable )
     236             :             SAL_INFO( "vcl.a11y", "getAccessibleColumnExtentAt ( " << row << ", " << column << " ) returns "
     237             :                 << pTable->getAccessibleColumnExtentAt( row, column ) << "\n");;
     238             : #endif
     239             : 
     240           0 :         if( pTable )
     241           0 :             return pTable->getAccessibleColumnExtentAt( row, column );
     242             :     }
     243           0 :     catch(const uno::Exception&) {
     244           0 :         g_warning( "Exception in getAccessibleColumnExtentAt()" );
     245             :     }
     246             : 
     247           0 :     return -1;
     248             : }
     249             : 
     250             : /*****************************************************************************/
     251             : 
     252             : static gint
     253           0 : table_wrapper_get_row_extent_at( AtkTable *table,
     254             :                                  gint      row,
     255             :                                  gint      column )
     256             : {
     257             :     try {
     258           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     259             : 
     260             : #ifdef ENABLE_TRACING
     261             :         if( pTable )
     262             :             SAL_INFO( "vcl.a11y", "getAccessibleRowExtentAt ( " << row << ", " << column << " ) returns "
     263             :                 << pTable->getAccessibleRowExtentAt( row, column ) << "\n");;
     264             : #endif
     265             : 
     266           0 :         if( pTable )
     267           0 :             return pTable->getAccessibleRowExtentAt( row, column );
     268             :     }
     269           0 :     catch(const uno::Exception&) {
     270           0 :         g_warning( "Exception in getAccessibleRowExtentAt()" );
     271             :     }
     272             : 
     273           0 :     return -1;
     274             : }
     275             : 
     276             : /*****************************************************************************/
     277             : 
     278             : static AtkObject *
     279           0 : table_wrapper_get_caption( AtkTable *table )
     280             : {
     281             :     try {
     282           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     283             : 
     284             : #ifdef ENABLE_TRACING
     285             :         if( pTable )
     286             :             SAL_INFO( "vcl.a11y", "getAccessibleCaption() returns\n");
     287             : #endif
     288             : 
     289           0 :         if( pTable )
     290           0 :             return atk_object_wrapper_conditional_ref( pTable->getAccessibleCaption() );
     291             :     }
     292             : 
     293           0 :     catch(const uno::Exception&) {
     294           0 :         g_warning( "Exception in getAccessibleCaption()" );
     295             :     }
     296             : 
     297           0 :     return NULL;
     298             : }
     299             : 
     300             : /*****************************************************************************/
     301             : 
     302             : static G_CONST_RETURN gchar *
     303           0 : table_wrapper_get_row_description( AtkTable *table,
     304             :                                    gint      row )
     305             : {
     306             :     try {
     307           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     308             : 
     309             : #ifdef ENABLE_TRACING
     310             :         if( pTable )
     311             :             SAL_INFO( "vcl.a11y", "getAccessibleRowDescription( " << row << " ) returns " << getAsConst(pTable->getAccessibleRowDescription(row)) << "\n");
     312             : #endif
     313             : 
     314           0 :         if( pTable )
     315           0 :             return getAsConst( pTable->getAccessibleRowDescription( row ) );
     316             :     }
     317           0 :     catch(const uno::Exception&) {
     318           0 :         g_warning( "Exception in getAccessibleRowDescription()" );
     319             :     }
     320             : 
     321           0 :     return NULL;
     322             : }
     323             : 
     324             : /*****************************************************************************/
     325             : 
     326             : static G_CONST_RETURN gchar *
     327           0 : table_wrapper_get_column_description( AtkTable *table,
     328             :                                       gint      column )
     329             : {
     330             :     try {
     331           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     332             : 
     333             : #ifdef ENABLE_TRACING
     334             :         if( pTable )
     335             :             SAL_INFO( "vcl.a11y", "getAccessibleColumnDescription( " << column << " ) returns " << getAsConst(pTable->getAccessibleColumnDescription(column)) << "\n");
     336             : #endif
     337             : 
     338           0 :         if( pTable )
     339           0 :             return getAsConst( pTable->getAccessibleColumnDescription( column ) );
     340             :     }
     341           0 :     catch(const uno::Exception&) {
     342           0 :         g_warning( "Exception in getAccessibleColumnDescription()" );
     343             :     }
     344             : 
     345           0 :     return NULL;
     346             : }
     347             : 
     348             : /*****************************************************************************/
     349             : 
     350             : static AtkObject *
     351           0 : table_wrapper_get_row_header( AtkTable *table,
     352             :                               gint      row )
     353             : {
     354             :     try {
     355           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     356           0 :         if( pTable )
     357             :         {
     358           0 :             uno::Reference< accessibility::XAccessibleTable > xRowHeaders( pTable->getAccessibleRowHeaders() );
     359             : 
     360             : #ifdef ENABLE_TRACING
     361             :             if( xRowHeaders.is() )
     362             :                 SAL_INFO( "vcl.a11y", "getAccessibleRowHeader( " << row << ")->getAccessibleCellAt( 0, " << row << " ) returns\n");
     363             :             else
     364             :                 SAL_INFO( "vcl.a11y", "getAccessibleRowHeader( " << row << ") returns " << xRowHeaders.get() << "\n");
     365             : #endif
     366             : 
     367           0 :             if( xRowHeaders.is() )
     368           0 :                 return atk_object_wrapper_conditional_ref( xRowHeaders->getAccessibleCellAt( row, 0 ) );
     369             :         }
     370             :     }
     371           0 :     catch(const uno::Exception&) {
     372           0 :         g_warning( "Exception in getAccessibleRowHeaders()" );
     373             :     }
     374             : 
     375           0 :     return NULL;
     376             : }
     377             : 
     378             : /*****************************************************************************/
     379             : 
     380             : static AtkObject *
     381           0 : table_wrapper_get_column_header( AtkTable *table,
     382             :                                  gint      column )
     383             : {
     384             :     try {
     385           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     386             : 
     387           0 :         if( pTable )
     388             :         {
     389           0 :             uno::Reference< accessibility::XAccessibleTable > xColumnHeaders( pTable->getAccessibleColumnHeaders() );
     390             : 
     391             : #ifdef ENABLE_TRACING
     392             :             if( xColumnHeaders.is() )
     393             :                 SAL_INFO( "vcl.a11y", "getAccessibleColumnHeader( " << column << " )->getAccessibleCellAt( 0, " << column << " ) returns\n");
     394             :             else
     395             :                 SAL_INFO( "vcl.a11y", "getAccessibleColumnHeader( " << column << " ) returns " << xColumnHeaders.get() << "\n");
     396             : #endif
     397             : 
     398           0 :             if( xColumnHeaders.is() )
     399           0 :                 return atk_object_wrapper_conditional_ref( xColumnHeaders->getAccessibleCellAt( 0, column ) );
     400             :         }
     401             :     }
     402           0 :     catch(const uno::Exception&) {
     403           0 :         g_warning( "Exception in getAccessibleColumnHeaders()" );
     404             :     }
     405             : 
     406           0 :     return NULL;
     407             : }
     408             : 
     409             : /*****************************************************************************/
     410             : 
     411             : static AtkObject *
     412           0 : table_wrapper_get_summary( AtkTable *table )
     413             : {
     414             :     try {
     415           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     416             : 
     417             : #ifdef ENABLE_TRACING
     418             :         if( pTable )
     419             :             SAL_INFO( "vcl.a11y", "getAccessibleSummary() returns\n");
     420             : #endif
     421             : 
     422           0 :         if( pTable )
     423             :         {
     424           0 :             return atk_object_wrapper_conditional_ref( pTable->getAccessibleSummary() );
     425             :         }
     426             :     }
     427           0 :     catch(const uno::Exception&) {
     428           0 :         g_warning( "Exception in getAccessibleSummary()" );
     429             :     }
     430             : 
     431           0 :     return NULL;
     432             : }
     433             : 
     434             : /*****************************************************************************/
     435             : 
     436             : static gint
     437           0 : convertToGIntArray( const uno::Sequence< ::sal_Int32 >& aSequence, gint **pSelected )
     438             : {
     439           0 :     if( aSequence.getLength() )
     440             :     {
     441           0 :         *pSelected = g_new( gint, aSequence.getLength() );
     442             : 
     443           0 :         for( sal_Int32 i = 0; i < aSequence.getLength(); i++ )
     444           0 :             (*pSelected) [i] = aSequence[i];
     445             :     }
     446             : 
     447           0 :     return aSequence.getLength();
     448             : }
     449             : 
     450             : /*****************************************************************************/
     451             : 
     452             : static gint
     453           0 : table_wrapper_get_selected_columns( AtkTable      *table,
     454             :                                     gint          **pSelected )
     455             : {
     456           0 :     *pSelected = NULL;
     457             :     try {
     458           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     459             : 
     460             : #ifdef ENABLE_TRACING
     461             :         if( pTable )
     462             :             SAL_INFO( "vcl.a11y", "getSelectedAccessibleColumns()\n");
     463             : #endif
     464             : 
     465           0 :         if( pTable )
     466           0 :             return convertToGIntArray( pTable->getSelectedAccessibleColumns(), pSelected );
     467             :     }
     468           0 :     catch(const uno::Exception&) {
     469           0 :         g_warning( "Exception in getSelectedAccessibleColumns()" );
     470             :     }
     471             : 
     472           0 :     return 0;
     473             : }
     474             : 
     475             : /*****************************************************************************/
     476             : 
     477             : static gint
     478           0 : table_wrapper_get_selected_rows( AtkTable      *table,
     479             :                                  gint          **pSelected )
     480             : {
     481           0 :     *pSelected = NULL;
     482             :     try {
     483           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     484             : 
     485             : #ifdef ENABLE_TRACING
     486             :         if( pTable )
     487             :             SAL_INFO( "vcl.a11y", "getSelectedAccessibleRows()\n");
     488             : #endif
     489             : 
     490           0 :         if( pTable )
     491           0 :             return convertToGIntArray( pTable->getSelectedAccessibleRows(), pSelected );
     492             :     }
     493           0 :     catch(const uno::Exception&) {
     494           0 :         g_warning( "Exception in getSelectedAccessibleRows()" );
     495             :     }
     496             : 
     497           0 :     return 0;
     498             : }
     499             : 
     500             : /*****************************************************************************/
     501             : 
     502             : static gboolean
     503           0 : table_wrapper_is_column_selected( AtkTable      *table,
     504             :                                   gint          column )
     505             : {
     506             :     try {
     507           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     508             : 
     509             : #ifdef ENABLE_TRACING
     510             :         if( pTable )
     511             :             SAL_INFO( "vcl.a11y", "isAccessibleColumnSelected( " << column << " ) returns " << pTable->isAccessibleColumnSelected( column ) ? "true" : "false" << "\n");
     512             : #endif
     513             : 
     514           0 :         if( pTable )
     515           0 :             return pTable->isAccessibleColumnSelected( column );
     516             :     }
     517           0 :     catch(const uno::Exception&) {
     518           0 :         g_warning( "Exception in isAccessibleColumnSelected()" );
     519             :     }
     520             : 
     521           0 :     return 0;
     522             : }
     523             : 
     524             : /*****************************************************************************/
     525             : 
     526             : static gboolean
     527           0 : table_wrapper_is_row_selected( AtkTable      *table,
     528             :                                gint          row )
     529             : {
     530             :     try {
     531           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     532             : 
     533             : #ifdef ENABLE_TRACING
     534             :         if( pTable )
     535             :             SAL_INFO( "vcl.a11y", "isAccessibleRowSelected( " << row << " ) returns " << pTable->isAccessibleRowSelected( row ) ? "true" : "false" << "\n");
     536             : #endif
     537             : 
     538           0 :         if( pTable )
     539           0 :             return pTable->isAccessibleRowSelected( row );
     540             :     }
     541           0 :     catch(const uno::Exception&) {
     542           0 :         g_warning( "Exception in isAccessibleRowSelected()" );
     543             :     }
     544             : 
     545           0 :     return FALSE;
     546             : }
     547             : 
     548             : /*****************************************************************************/
     549             : 
     550             : static gboolean
     551           0 : table_wrapper_is_selected( AtkTable      *table,
     552             :                            gint          row,
     553             :                            gint          column )
     554             : {
     555             :     try {
     556           0 :         accessibility::XAccessibleTable* pTable = getTable( table );
     557             : 
     558             : #ifdef ENABLE_TRACING
     559             :         if( pTable )
     560             :             SAL_INFO( "vcl.a11y", "isAccessibleSelected( " << row << ", " << column
     561             :                 << " ) returns " << pTable->isAccessibleSelected( row , column ) ? "true" : "false" << "\n");
     562             : #endif
     563             : 
     564           0 :         if( pTable )
     565           0 :             return pTable->isAccessibleSelected( row, column );
     566             :     }
     567           0 :     catch(const uno::Exception&) {
     568           0 :         g_warning( "Exception in isAccessibleSelected()" );
     569             :     }
     570             : 
     571           0 :     return FALSE;
     572             : }
     573             : 
     574             : /*****************************************************************************/
     575             : 
     576             : static gboolean
     577           0 : table_wrapper_add_row_selection( AtkTable *, gint )
     578             : {
     579           0 :     g_warning( "FIXME: no simple analogue for add_row_selection" );
     580           0 :     return 0;
     581             : }
     582             : 
     583             : /*****************************************************************************/
     584             : 
     585             : static gboolean
     586           0 : table_wrapper_remove_row_selection( AtkTable *, gint )
     587             : {
     588           0 :     g_warning( "FIXME: no simple analogue for remove_row_selection" );
     589           0 :     return 0;
     590             : }
     591             : 
     592             : /*****************************************************************************/
     593             : 
     594             : static gboolean
     595           0 : table_wrapper_add_column_selection( AtkTable *, gint )
     596             : {
     597           0 :     g_warning( "FIXME: no simple analogue for add_column_selection" );
     598           0 :     return 0;
     599             : }
     600             : 
     601             : /*****************************************************************************/
     602             : 
     603             : static gboolean
     604           0 : table_wrapper_remove_column_selection( AtkTable *, gint )
     605             : {
     606           0 :     g_warning( "FIXME: no simple analogue for remove_column_selection" );
     607           0 :     return 0;
     608             : }
     609             : 
     610             : /*****************************************************************************/
     611             : 
     612             : static void
     613           0 : table_wrapper_set_caption( AtkTable *, AtkObject * )
     614             : { // meaningless helper
     615           0 : }
     616             : 
     617             : /*****************************************************************************/
     618             : 
     619             : static void
     620           0 : table_wrapper_set_column_description( AtkTable *, gint, const gchar * )
     621             : { // meaningless helper
     622           0 : }
     623             : 
     624             : /*****************************************************************************/
     625             : 
     626             : static void
     627           0 : table_wrapper_set_column_header( AtkTable *, gint, AtkObject * )
     628             : { // meaningless helper
     629           0 : }
     630             : 
     631             : /*****************************************************************************/
     632             : 
     633             : static void
     634           0 : table_wrapper_set_row_description( AtkTable *, gint, const gchar * )
     635             : { // meaningless helper
     636           0 : }
     637             : 
     638             : /*****************************************************************************/
     639             : 
     640             : static void
     641           0 : table_wrapper_set_row_header( AtkTable *, gint, AtkObject * )
     642             : { // meaningless helper
     643           0 : }
     644             : 
     645             : /*****************************************************************************/
     646             : 
     647             : static void
     648           0 : table_wrapper_set_summary( AtkTable *, AtkObject * )
     649             : { // meaningless helper
     650           0 : }
     651             : 
     652             : /*****************************************************************************/
     653             : 
     654             : } // extern "C"
     655             : 
     656             : void
     657           0 : tableIfaceInit (AtkTableIface *iface)
     658             : {
     659           0 :   g_return_if_fail (iface != NULL);
     660             : 
     661           0 :   iface->ref_at = table_wrapper_ref_at;
     662           0 :   iface->get_n_rows = table_wrapper_get_n_rows;
     663           0 :   iface->get_n_columns = table_wrapper_get_n_columns;
     664           0 :   iface->get_index_at = table_wrapper_get_index_at;
     665           0 :   iface->get_column_at_index = table_wrapper_get_column_at_index;
     666           0 :   iface->get_row_at_index = table_wrapper_get_row_at_index;
     667           0 :   iface->is_row_selected = table_wrapper_is_row_selected;
     668           0 :   iface->is_selected = table_wrapper_is_selected;
     669           0 :   iface->get_selected_rows = table_wrapper_get_selected_rows;
     670           0 :   iface->add_row_selection = table_wrapper_add_row_selection;
     671           0 :   iface->remove_row_selection = table_wrapper_remove_row_selection;
     672           0 :   iface->add_column_selection = table_wrapper_add_column_selection;
     673           0 :   iface->remove_column_selection = table_wrapper_remove_column_selection;
     674           0 :   iface->get_selected_columns = table_wrapper_get_selected_columns;
     675           0 :   iface->is_column_selected = table_wrapper_is_column_selected;
     676           0 :   iface->get_column_extent_at = table_wrapper_get_column_extent_at;
     677           0 :   iface->get_row_extent_at = table_wrapper_get_row_extent_at;
     678           0 :   iface->get_row_header = table_wrapper_get_row_header;
     679           0 :   iface->set_row_header = table_wrapper_set_row_header;
     680           0 :   iface->get_column_header = table_wrapper_get_column_header;
     681           0 :   iface->set_column_header = table_wrapper_set_column_header;
     682           0 :   iface->get_caption = table_wrapper_get_caption;
     683           0 :   iface->set_caption = table_wrapper_set_caption;
     684           0 :   iface->get_summary = table_wrapper_get_summary;
     685           0 :   iface->set_summary = table_wrapper_set_summary;
     686           0 :   iface->get_row_description = table_wrapper_get_row_description;
     687           0 :   iface->set_row_description = table_wrapper_set_row_description;
     688           0 :   iface->get_column_description = table_wrapper_get_column_description;
     689           0 :   iface->set_column_description = table_wrapper_set_column_description;
     690             : }
     691             : 
     692             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11