LibreOffice Module svx (master)  1
charmapacc.cxx
Go to the documentation of this file.
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 
21 #include <vcl/settings.hxx>
22 #include <vcl/svapp.hxx>
23 #include <stdio.h>
24 #include <svx/charmap.hxx>
25 #include <charmapacc.hxx>
26 #include <com/sun/star/accessibility/AccessibleRole.hpp>
27 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
28 #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
29 #include <o3tl/temporary.hxx>
30 #include <osl/interlck.h>
31 #include <svx/dialmgr.hxx>
32 #include <svx/strings.hrc>
33 #include <comphelper/types.hxx>
34 
35 namespace svx
36 {
37  using namespace comphelper;
38  using namespace ::com::sun::star;
39  using namespace ::com::sun::star::uno;
40  using namespace ::com::sun::star::lang;
41  using namespace ::com::sun::star::accessibility;
42 
44  mrParent( rParent )
45  ,mnId( _nPos )
46  ,m_pParent(_pParent)
47 {
48 }
49 
51 {
52  if ( m_xItem.is() )
53  {
54  m_xItem->ParentDestroyed();
55  m_xItem.clear();
56  }
57 }
58 
59 uno::Reference< css::accessibility::XAccessible > SvxShowCharSetItem::GetAccessible()
60 {
61  if( !m_xItem.is() )
62  {
63  m_xItem = new SvxShowCharSetItemAcc( this );
64  }
65 
66  return m_xItem;
67 }
68 
70  : m_pParent(pParent)
71 {
72  osl_atomic_increment(&m_refCount);
73  {
74  lateInit(this);
75  }
76  osl_atomic_decrement(&m_refCount);
77 }
78 
80 {
81  ensureDisposed();
82 }
83 
85 {
86  OAccessibleSelectionHelper::disposing();
87  for (auto& rChild : m_aChildren)
88  ::comphelper::disposeComponent(rChild);
89 
90  m_aChildren.clear();
91  m_pParent = nullptr;
92 }
93 
94 
96 IMPLEMENT_FORWARD_XTYPEPROVIDER2( SvxShowCharSetAcc, OAccessibleSelectionHelper, OAccessibleHelper_Base )
97 
98 bool SvxShowCharSetAcc::implIsSelected( sal_Int32 nAccessibleChildIndex )
99 {
100  return m_pParent && m_pParent->IsSelected(
101  sal::static_int_cast<sal_uInt16>(nAccessibleChildIndex));
102 }
103 
104  // select the specified child => watch for special ChildIndexes (ACCESSIBLE_SELECTION_CHILD_xxx)
105 void SvxShowCharSetAcc::implSelect(sal_Int32 nAccessibleChildIndex, bool bSelect)
106 {
107  if ( m_pParent )
108  {
109  if ( bSelect )
110  m_pParent->SelectIndex(nAccessibleChildIndex, true);
111  else
112  m_pParent->DeSelect();
113  }
114 }
115 
116 css::awt::Rectangle SvxShowCharSetAcc::implGetBounds()
117 {
118  awt::Rectangle aRet;
119 
120  if (m_pParent)
121  {
122  const Point aOutPos;//( m_pParent->GetPosPixel() );
123  Size aOutSize( m_pParent->GetOutputSizePixel());
124 
125  aRet.X = aOutPos.X();
126  aRet.Y = aOutPos.Y();
127  aRet.Width = aOutSize.Width();
128  aRet.Height = aOutSize.Height();
129  }
130 
131  return aRet;
132 }
133 
135 {
136  OExternalLockGuard aGuard( this );
137 
138  return m_pParent->getMaxCharCount();
139 }
140 
141 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleChild( sal_Int32 i )
142 {
143  OExternalLockGuard aGuard( this );
144 
145  uno::Reference< css::accessibility::XAccessible > xRet;
146  SvxShowCharSetItem* pItem = m_pParent->ImplGetItem( static_cast< sal_uInt16 >( i ) );
147 
148  if( !pItem )
149  throw lang::IndexOutOfBoundsException();
150 
151  pItem->m_pParent = this;
152  xRet = pItem->GetAccessible();
153  m_aChildren.push_back(xRet);
154 
155  return xRet;
156 }
157 
158 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleParent()
159 {
160  OExternalLockGuard aGuard( this );
161 
162  if (m_pParent)
163  return m_pParent->getAccessibleParent();
164  return uno::Reference<css::accessibility::XAccessible>();
165 }
166 
168 {
169  return css::accessibility::AccessibleRole::TABLE;
170 }
171 
173 {
174  OExternalLockGuard aGuard( this );
175  return SvxResId( RID_SVXSTR_CHARACTER_SELECTION );
176 }
177 
178 
180 {
181  OExternalLockGuard aGuard( this );
182 
183  return SvxResId( RID_SVXSTR_CHAR_SEL_DESC );
184 }
185 
186 
187 uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL SvxShowCharSetAcc::getAccessibleRelationSet()
188 {
189  return uno::Reference< css::accessibility::XAccessibleRelationSet >();
190 }
191 
192 
193 uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL SvxShowCharSetAcc::getAccessibleStateSet()
194 {
195  OExternalLockGuard aGuard( this );
196 
197  rtl::Reference<::utl::AccessibleStateSetHelper> pStateSet = new ::utl::AccessibleStateSetHelper;
198 
199  if (m_pParent)
200  {
201  // SELECTABLE
202  pStateSet->AddState( AccessibleStateType::FOCUSABLE );
203  if (m_pParent->HasFocus())
204  {
205  pStateSet->AddState( AccessibleStateType::FOCUSED );
206  pStateSet->AddState( AccessibleStateType::ACTIVE );
207  }
208  if (m_pParent->IsEnabled())
209  {
210  pStateSet->AddState( AccessibleStateType::ENABLED );
211  pStateSet->AddState( AccessibleStateType::SENSITIVE );
212  }
213  if (m_pParent->IsVisible())
214  pStateSet->AddState( AccessibleStateType::VISIBLE );
215 
216  pStateSet->AddState( AccessibleStateType::MANAGES_DESCENDANTS );
217  }
218 
219  return pStateSet;
220 }
221 
222 
223 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleAtPoint( const awt::Point& aPoint )
224 {
225  OExternalLockGuard aGuard( this );
226 
227  uno::Reference< css::accessibility::XAccessible > xRet;
228  const sal_uInt16 nItemId = sal::static_int_cast<sal_uInt16>(
229  m_pParent->PixelToMapIndex( Point( aPoint.X, aPoint.Y ) ));
230 
231  if( sal_uInt16(-1) != nItemId )
232  {
233  SvxShowCharSetItem* pItem = m_pParent->ImplGetItem( nItemId );
234  xRet = pItem->GetAccessible();
235  }
236  return xRet;
237 }
238 
240 {
241  OExternalLockGuard aGuard( this );
242 
243  m_pParent->GrabFocus();
244 }
245 
247 {
248  return ((getAccessibleChildCount()-1) / COLUMN_COUNT) + 1;
249 }
250 
252 {
253  return COLUMN_COUNT;
254 }
255 
256 OUString SAL_CALL SvxShowCharSetAcc::getAccessibleRowDescription( sal_Int32 /*nRow*/ )
257 {
258  return OUString();
259 }
260 
261 OUString SAL_CALL SvxShowCharSetAcc::getAccessibleColumnDescription( sal_Int32 /*nColumn*/ )
262 {
263  return OUString();
264 }
265 
266 sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleRowExtentAt( sal_Int32 /*nRow*/, sal_Int32 /*nColumn*/ )
267 {
268  return 1;
269 }
270 
271 sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleColumnExtentAt( sal_Int32 /*nRow*/, sal_Int32 /*nColumn*/ )
272 {
273  return 1;
274 }
275 
276 Reference< XAccessibleTable > SAL_CALL SvxShowCharSetAcc::getAccessibleRowHeaders( )
277 {
278  return Reference< XAccessibleTable >();
279 }
280 
281 Reference< XAccessibleTable > SAL_CALL SvxShowCharSetAcc::getAccessibleColumnHeaders( )
282 {
283  return Reference< XAccessibleTable >();
284 }
285 
286 Sequence< sal_Int32 > SAL_CALL SvxShowCharSetAcc::getSelectedAccessibleRows( )
287 {
288  OExternalLockGuard aGuard( this );
289 
291 }
292 
293 Sequence< sal_Int32 > SAL_CALL SvxShowCharSetAcc::getSelectedAccessibleColumns( )
294 {
295  OExternalLockGuard aGuard( this );
296 
298 }
299 
301 {
302  OExternalLockGuard aGuard( this );
303 
305 }
306 
308 {
309  OExternalLockGuard aGuard( this );
310  ensureAlive();
312 }
313 
314 Reference< XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
315 {
316  OExternalLockGuard aGuard( this );
317 
319  sal::static_int_cast<sal_uInt16>(getAccessibleIndex(nRow,nColumn) ));
320  if ( !pItem )
321  throw IndexOutOfBoundsException();
322  return pItem->GetAccessible();
323 }
324 
325 Reference< XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleCaption( )
326 {
327  return Reference< XAccessible >();
328 }
329 
330 Reference< XAccessible > SAL_CALL SvxShowCharSetAcc::getAccessibleSummary( )
331 {
332  return Reference< XAccessible >();
333 }
334 
335 sal_Bool SAL_CALL SvxShowCharSetAcc::isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
336 {
337  OExternalLockGuard aGuard( this );
338 
339  return m_pParent->GetSelectIndexId() == getAccessibleIndex(nRow,nColumn);
340 }
341 
342 sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn )
343 {
344  return (nRow*COLUMN_COUNT) + nColumn;
345 }
346 
347 sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleRow( sal_Int32 nChildIndex )
348 {
349  OExternalLockGuard aGuard( this );
350 
351  return SvxShowCharSet::GetRowPos(sal::static_int_cast<sal_uInt16>(nChildIndex));
352 }
353 
354 sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleColumn( sal_Int32 nChildIndex )
355 {
356  OExternalLockGuard aGuard( this );
357 
358  return SvxShowCharSet::GetColumnPos(sal::static_int_cast<sal_uInt16>(nChildIndex));
359 }
360 
361 
363 {
364  OSL_ENSURE(pParent,"NO parent supplied!");
365  osl_atomic_increment(&m_refCount);
366  { // #b6211265 #
367  lateInit(this);
368  }
369  osl_atomic_decrement(&m_refCount);
370 }
371 
372 
374 {
375  ensureDisposed();
376 }
377 
380 
381 void SvxShowCharSetItemAcc::ParentDestroyed()
382 {
383  const ::osl::MutexGuard aGuard( GetMutex() );
384  mpParent = nullptr;
385 }
386 
388 {
389  return 0;
390 }
391 
392 
393 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetItemAcc::getAccessibleChild( sal_Int32 /*i*/ )
394 {
395  throw lang::IndexOutOfBoundsException();
396 }
397 
398 
399 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetItemAcc::getAccessibleParent()
400 {
401  OExternalLockGuard aGuard( this );
402 
403  return mpParent->m_pParent;
404 }
405 
406 
408 {
409  return css::accessibility::AccessibleRole::TABLE_CELL;
410 }
411 
412 
414 {
415  OExternalLockGuard aGuard( this );
416 
417  OUString sDescription;
418 
419  const OUString aCharStr( mpParent->maText);
420  const sal_UCS4 c = aCharStr.iterateCodePoints( &o3tl::temporary(sal_Int32(0)) );
421  const int tmp_len = (c < 0x10000) ? 4 : 6;
422  char buf[16] = "0x0000";
423  sal_UCS4 c_Shifted = c;
424  for( int i = 0; i < tmp_len; ++i )
425  {
426  char h = static_cast<char>(c_Shifted & 0x0F);
427  buf[tmp_len+1-i] = (h > 9) ? (h - 10 + 'A') : (h + '0');
428  c_Shifted >>= 4;
429  }
430  if( c < 256 )
431  snprintf( buf+6, 10, " (%" SAL_PRIuUINT32 ")", c );
432 
433  sDescription = SvxResId( RID_SVXSTR_CHARACTER_CODE )
434  + " "
435  + OUString(buf, strlen(buf), RTL_TEXTENCODING_ASCII_US);
436 
437  return sDescription;
438 }
439 
440 
442 {
443  OExternalLockGuard aGuard( this );
444 
445  OUString aRet;
446 
447  if( mpParent )
448  {
449  aRet = mpParent->maText;
450 
451  if (aRet.isEmpty())
452  aRet = getAccessibleDescription();
453  }
454 
455  return aRet;
456 }
457 
458 
459 uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL SvxShowCharSetItemAcc::getAccessibleRelationSet()
460 {
461  return uno::Reference< css::accessibility::XAccessibleRelationSet >();
462 }
463 
464 
465 uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL SvxShowCharSetItemAcc::getAccessibleStateSet()
466 {
467  OExternalLockGuard aGuard( this );
468 
469  rtl::Reference<::utl::AccessibleStateSetHelper> pStateSet = new ::utl::AccessibleStateSetHelper;
470 
471  if( mpParent )
472  {
473  if (mpParent->mrParent.IsEnabled())
474  {
475  pStateSet->AddState( css::accessibility::AccessibleStateType::ENABLED );
476  // SELECTABLE
477  pStateSet->AddState( css::accessibility::AccessibleStateType::SELECTABLE );
478  pStateSet->AddState( css::accessibility::AccessibleStateType::FOCUSABLE );
479  }
480 
481  // SELECTED
483  {
484  pStateSet->AddState( css::accessibility::AccessibleStateType::SELECTED );
485  pStateSet->AddState( css::accessibility::AccessibleStateType::FOCUSED );
486  }
488  {
489  pStateSet->AddState( AccessibleStateType::VISIBLE );
490  pStateSet->AddState( AccessibleStateType::SHOWING );
491  }
492  pStateSet->AddState( AccessibleStateType::TRANSIENT );
493  }
494 
495  return pStateSet;
496 }
497 
498 
500 {
501  return 1;
502 }
503 
504 
506 {
507  OExternalLockGuard aGuard( this );
508 
509  if( nIndex == 0 )
510  {
512  return true;
513  }
514  throw IndexOutOfBoundsException();
515 }
516 
517 
519 {
520  if( nIndex == 0 )
521  return "press";
522  throw IndexOutOfBoundsException();
523 }
524 
525 
526 Reference< css::accessibility::XAccessibleKeyBinding > SvxShowCharSetItemAcc::getAccessibleActionKeyBinding( sal_Int32 nIndex )
527 {
528  if( nIndex == 0 )
529  return Reference< css::accessibility::XAccessibleKeyBinding >();
530  throw IndexOutOfBoundsException();
531 }
532 
533 
535 {
536  // nothing to do
537 }
538 
540 {
541  awt::Rectangle aRet;
542 
543  if( mpParent )
544  {
545  tools::Rectangle aRect( mpParent->maRect );
547 
548  aRect.Intersection( aParentRect );
549 
550  aRet.X = aRect.Left();
551  aRet.Y = aRect.Top();
552  aRet.Width = aRect.GetWidth();
553  aRet.Height = aRect.GetHeight();
554  }
555 
556  return aRet;
557 }
558 
559 uno::Reference< css::accessibility::XAccessible > SAL_CALL SvxShowCharSetItemAcc::getAccessibleAtPoint( const awt::Point& /*aPoint*/ )
560 {
561  return uno::Reference< css::accessibility::XAccessible >();
562 }
563 
564 sal_Int32 SAL_CALL SvxShowCharSetAcc::getForeground( )
565 {
566  OExternalLockGuard aGuard( this );
567 
568  //see SvxShowCharSet::InitSettings
569  const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
570  return static_cast<sal_Int32>(rStyleSettings.GetDialogTextColor());
571 }
572 
573 sal_Int32 SAL_CALL SvxShowCharSetAcc::getBackground( )
574 {
575  OExternalLockGuard aGuard( this );
576 
577  //see SvxShowCharSet::InitSettings
578  const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
579  return static_cast<sal_Int32>(rStyleSettings.GetWindowColor());
580 }
581 
582 }
583 
584 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override
Definition: charmapacc.cxx:459
IMPLEMENT_FORWARD_XINTERFACE2(ChildWindowPane, ChildWindowPaneInterfaceBase, Pane)
virtual sal_Int32 SAL_CALL getForeground() override
Definition: charmapacc.cxx:564
The child implementation of the table.
Definition: charmapacc.hxx:160
static sal_uInt16 GetRowPos(sal_uInt16 _nPos)
Definition: charmap.cxx:190
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override
Definition: charmapacc.cxx:193
virtual svx::SvxShowCharSetItem * ImplGetItem(int _nPos)
Definition: charmap.cxx:817
virtual sal_Bool SAL_CALL isAccessibleRowSelected(sal_Int32 nRow) override
Definition: charmapacc.cxx:300
virtual OUString SAL_CALL getAccessibleRowDescription(sal_Int32 nRow) override
Definition: charmapacc.cxx:256
tools::Rectangle & Intersection(const tools::Rectangle &rRect)
sal_uInt32 sal_UCS4
virtual sal_Int32 SAL_CALL getAccessibleChildCount() override
Definition: charmapacc.cxx:134
The table implementation of the vcl control.
Definition: charmapacc.hxx:70
virtual sal_Int32 SAL_CALL getAccessibleIndex(sal_Int32 nRow, sal_Int32 nColumn) override
Definition: charmapacc.cxx:342
virtual css::awt::Rectangle implGetBounds() override
implements the calculation of the bounding rectangle - still waiting to be overwritten ...
Definition: charmapacc.cxx:116
constexpr tools::Long Left() const
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override
Definition: charmapacc.cxx:465
virtual ~SvxShowCharSetItemAcc() override
Definition: charmapacc.cxx:373
SvxShowCharSetAcc * m_pParent
Definition: charmapacc.hxx:52
virtual sal_Int32 SAL_CALL getAccessibleRowCount() override
Definition: charmapacc.cxx:246
ULONG m_refCount
SvxShowCharSetItem * mpParent
Definition: charmapacc.hxx:164
const StyleSettings & GetStyleSettings() const
static const AllSettings & GetSettings()
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleParent() override
Definition: charmapacc.cxx:158
::std::vector< css::uno::Reference< css::accessibility::XAccessible > > m_aChildren
Definition: charmapacc.hxx:73
sal_uInt16 GetSelectIndexId() const
Definition: charmap.hxx:93
virtual sal_Int16 SAL_CALL getAccessibleRole() override
Definition: charmapacc.cxx:167
SvxShowCharSetItem(SvxShowCharSet &rParent, SvxShowCharSetAcc *_pParent, sal_uInt16 _nPos)
Definition: charmapacc.cxx:43
bool lateInit
virtual sal_Int32 SAL_CALL getAccessibleRowExtentAt(sal_Int32 nRow, sal_Int32 nColumn) override
Definition: charmapacc.cxx:266
sal_uInt16 mnId
tools::Rectangle maRect
Definition: charmapacc.hxx:50
Size const & GetOutputSizePixel() const
virtual void SAL_CALL grabFocus() override
Definition: charmapacc.cxx:239
constexpr tools::Long Width() const
virtual ~SvxShowCharSetAcc() override
Definition: charmapacc.cxx:79
virtual sal_Bool SAL_CALL doAccessibleAction(sal_Int32 nIndex) override
Definition: charmapacc.cxx:505
virtual sal_Int32 getMaxCharCount() const
Definition: charmap.cxx:836
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleParent() override
Definition: charmapacc.cxx:399
OUString SvxResId(TranslateId aId)
Definition: dialmgr.cxx:24
uno::Reference< css::accessibility::XAccessible > getAccessibleParent() const
Definition: charmap.hxx:102
virtual sal_Bool SAL_CALL isAccessibleSelected(sal_Int32 nRow, sal_Int32 nColumn) override
Definition: charmapacc.cxx:335
constexpr tools::Long GetWidth() const
int PixelToMapIndex(const Point &) const
Definition: charmap.cxx:371
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleCellAt(sal_Int32 nRow, sal_Int32 nColumn) override
Definition: charmapacc.cxx:314
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleCaption() override
Definition: charmapacc.cxx:325
void lateInit(const css::uno::Reference< css::accessibility::XAccessible > &_rxAccessible)
virtual css::awt::Rectangle implGetBounds() override
implements the calculation of the bounding rectangle - still waiting to be overwritten ...
Definition: charmapacc.cxx:539
int i
virtual css::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleRows() override
Definition: charmapacc.cxx:286
virtual void SelectIndex(int index, bool bFocus=false)
Definition: charmap.cxx:682
rtl::Reference< SvxShowCharSetItemAcc > m_xItem
Definition: charmapacc.hxx:51
void DeSelect()
Definition: charmap.cxx:460
static sal_uInt16 GetColumnPos(sal_uInt16 _nPos)
Definition: charmap.cxx:342
unsigned char sal_Bool
virtual sal_Int32 SAL_CALL getAccessibleActionCount() override
Definition: charmapacc.cxx:499
constexpr tools::Long Top() const
SvxShowCharSetItemAcc(SvxShowCharSetItem *pParent)
Definition: charmapacc.cxx:362
virtual int LastInView() const
Definition: charmap.cxx:352
SvxShowCharSet * m_pParent
Definition: charmapacc.hxx:74
virtual OUString SAL_CALL getAccessibleActionDescription(sal_Int32 nIndex) override
Definition: charmapacc.cxx:518
virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL getAccessibleRowHeaders() override
Definition: charmapacc.cxx:276
constexpr T & temporary(T &&x)
int FirstInView() const
Definition: charmap.cxx:347
virtual void implSelect(sal_Int32 nAccessibleChildIndex, bool bSelect) override
Definition: charmapacc.cxx:105
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleSummary() override
Definition: charmapacc.cxx:330
RegionData_Impl * mpParent
css::uno::Reference< css::accessibility::XAccessible > GetAccessible()
Definition: charmapacc.cxx:59
virtual css::uno::Reference< css::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding(sal_Int32 nIndex) override
Definition: charmapacc.cxx:526
virtual sal_Int16 SAL_CALL getAccessibleRole() override
Definition: charmapacc.cxx:407
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint(const css::awt::Point &aPoint) override
Definition: charmapacc.cxx:223
virtual OUString SAL_CALL getAccessibleDescription() override
Definition: charmapacc.cxx:413
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint(const css::awt::Point &aPoint) override
Definition: charmapacc.cxx:559
virtual sal_Int32 SAL_CALL getAccessibleColumnExtentAt(sal_Int32 nRow, sal_Int32 nColumn) override
Definition: charmapacc.cxx:271
#define COLUMN_COUNT
Definition: charmap.hxx:46
virtual void SAL_CALL disposing() override
Definition: charmapacc.cxx:84
const Color & GetWindowColor() const
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild(sal_Int32 i) override
Definition: charmapacc.cxx:141
virtual sal_Int32 SAL_CALL getAccessibleRow(sal_Int32 nChildIndex) override
Definition: charmapacc.cxx:347
SvxShowCharSet & mrParent
Definition: charmapacc.hxx:47
virtual sal_Int32 SAL_CALL getBackground() override
Definition: charmapacc.cxx:573
SvxShowCharSetAcc(SvxShowCharSet *pParent)
Definition: charmapacc.cxx:69
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override
Definition: charmapacc.cxx:187
Simple struct to hold some information about the single items of the table.
Definition: charmapacc.hxx:45
virtual OUString SAL_CALL getAccessibleColumnDescription(sal_Int32 nColumn) override
Definition: charmapacc.cxx:261
virtual sal_Int32 SAL_CALL getAccessibleColumnCount() override
Definition: charmapacc.cxx:251
virtual css::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleColumns() override
Definition: charmapacc.cxx:293
virtual sal_Int32 SAL_CALL getAccessibleColumn(sal_Int32 nChildIndex) override
Definition: charmapacc.cxx:354
virtual OUString SAL_CALL getAccessibleName() override
Definition: charmapacc.cxx:441
virtual sal_Bool SAL_CALL isAccessibleColumnSelected(sal_Int32 nColumn) override
Definition: charmapacc.cxx:307
const Color & GetDialogTextColor() const
virtual void SAL_CALL grabFocus() override
Definition: charmapacc.cxx:534
virtual OUString SAL_CALL getAccessibleName() override
Definition: charmapacc.cxx:179
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild(sal_Int32 i) override
Definition: charmapacc.cxx:393
BaseContainerNodeSharedPtr & mrParent
sal_Int32 h
virtual OUString SAL_CALL getAccessibleDescription() override
Definition: charmapacc.cxx:172
void OutputIndex(int index)
Definition: charmap.cxx:754
virtual sal_Int32 SAL_CALL getAccessibleChildCount() override
Definition: charmapacc.cxx:387
virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL getAccessibleColumnHeaders() override
Definition: charmapacc.cxx:281
constexpr tools::Long GetHeight() const