[Libreoffice-commits] core.git: include/sfx2 sd/source sfx2/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Thu Oct 22 18:36:47 UTC 2020


 include/sfx2/thumbnailview.hxx                        |  137 --
 sd/source/ui/sidebar/MasterPageContainerProviders.cxx |    2 
 sfx2/source/control/recentdocsviewitem.cxx            |    2 
 sfx2/source/control/recentdocsviewitem.hxx            |    2 
 sfx2/source/control/templatelocalview.cxx             |    2 
 sfx2/source/control/thumbnailview.cxx                 | 1073 ------------------
 sfx2/source/control/thumbnailviewacc.cxx              |  563 ---------
 sfx2/source/control/thumbnailviewacc.hxx              |  101 -
 8 files changed, 71 insertions(+), 1811 deletions(-)

New commits:
commit 7476e6d987ce54c3a1058bafac8152e5b1abc52a
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Sat Oct 17 19:35:07 2020 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Thu Oct 22 20:35:58 2020 +0200

    drop newly unused ThumbnailView
    
    Change-Id: I6c025120abf7f7dfbc1c06ad47e80e1d23ba731d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104536
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/include/sfx2/thumbnailview.hxx b/include/sfx2/thumbnailview.hxx
index 767f4d6375aa..93d67e8928bb 100644
--- a/include/sfx2/thumbnailview.hxx
+++ b/include/sfx2/thumbnailview.hxx
@@ -181,141 +181,6 @@ public:
     virtual ~ThumbnailViewBase();
 };
 
-class SFX2_DLLPUBLIC ThumbnailView : public Control, public ThumbnailViewBase
-{
-public:
-
-    ThumbnailView(vcl::Window* pParent);
-
-    virtual ~ThumbnailView() override;
-    virtual void dispose() override;
-
-    virtual void MouseMove(const MouseEvent& rMEvt) override;
-
-    void AppendItem(std::unique_ptr<ThumbnailViewItem> pItem);
-
-    virtual void Clear();
-
-    // Change current thumbnail item list with new one (invalidates all pointers to a thumbnail item)
-    void updateItems(std::vector<std::unique_ptr<ThumbnailViewItem>> items);
-
-    size_t GetItemPos( sal_uInt16 nItemId ) const;
-
-    sal_uInt16 GetItemId( size_t nPos ) const;
-
-    sal_uInt16 GetItemId( const Point& rPos ) const;
-
-    virtual bool isDrawMnemonic() const override { return false; }
-
-    void setItemMaxTextLength (sal_uInt32 nLength);
-
-    void setItemDimensions (tools::Long ItemWidth, tools::Long ThumbnailHeight,
-                            tools::Long DisplayHeight, int itemPadding);
-
-    void SelectItem( sal_uInt16 nItemId );
-
-    bool IsItemSelected( sal_uInt16 nItemId ) const;
-
-    /**
-     *
-     * @brief deselect all current selected items.
-     *
-     **/
-
-    void deselectItems ();
-
-    void ShowTooltips( bool bShowTooltips );
-
-    void filterItems (const std::function<bool (const ThumbnailViewItem*) > &func);
-
-    virtual void Resize() override;
-
-    static BitmapEx readThumbnail(const OUString &msURL);
-
-protected:
-
-    virtual void KeyInput( const KeyEvent& rKEvt ) override;
-
-    virtual void MouseButtonDown( const MouseEvent& rMEvt ) override;
-
-    virtual void Command( const CommandEvent& rCEvt ) override;
-
-    virtual void Paint(vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect) override;
-
-    virtual void GetFocus() override;
-
-    virtual void LoseFocus() override;
-
-    virtual void StateChanged( StateChangedType nStateChange ) override;
-
-    virtual void DataChanged( const DataChangedEvent& rDCEvt ) override;
-
-    virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override;
-
-    virtual css::uno::Reference<css::accessibility::XAccessible> getAccessible() override;
-
-protected:
-
-    // Drawing item related functions, override them to make your own custom ones.
-
-    void DrawItem (ThumbnailViewItem const *pItem);
-
-    virtual void OnItemDblClicked (ThumbnailViewItem *pItem);
-
-protected:
-
-    friend class ThumbnailViewAcc;
-    friend class ThumbnailViewItemAcc;
-    using Window::ImplInit;
-
-    void CalculateItemPositions (bool bScrollBarUsed = false);
-    void MakeItemVisible( sal_uInt16 nId );
-
-    SFX2_DLLPRIVATE void         ImplInit();
-
-    virtual void ApplySettings(vcl::RenderContext& rRenderContext) override;
-
-    SFX2_DLLPRIVATE void         ImplDeleteItems();
-    SFX2_DLLPRIVATE size_t       ImplGetItem( const Point& rPoint ) const;
-    SFX2_DLLPRIVATE ThumbnailViewItem*    ImplGetItem( size_t nPos );
-    SFX2_DLLPRIVATE virtual sal_uInt16 ImplGetVisibleItemCount() const override;
-    SFX2_DLLPRIVATE virtual ThumbnailViewItem* ImplGetVisibleItem(sal_uInt16 nVisiblePos) override;
-    SFX2_DLLPRIVATE void         ImplFireAccessibleEvent( short nEventId, const css::uno::Any& rOldValue, const css::uno::Any& rNewValue );
-    SFX2_DLLPRIVATE bool         ImplHasAccessibleListeners();
-    DECL_DLLPRIVATE_LINK( ImplScrollHdl, ScrollBar*, void );
-
-protected:
-
-    std::vector< std::unique_ptr<ThumbnailViewItem> > mItemList;
-    ThumbnailValueItemList mFilteredItemList; ///< Cache to store the filtered items
-    ThumbnailValueItemList::iterator mpStartSelRange;
-    VclPtr<ScrollBar> mpScrBar;
-    tools::Long mnItemWidth;
-    tools::Long mnItemHeight;
-    tools::Long mnItemPadding;
-    tools::Long mnThumbnailHeight;     // Maximum height of the thumbnail
-    tools::Long mnDisplayHeight;       // Height of the data display box (name, etc)
-    tools::Long mnVisLines;
-    tools::Long mnLines;
-
-    sal_uInt16 mnCols;
-    sal_uInt16 mnFirstLine;
-    bool mbScroll : 1;
-    bool mbHasVisibleItems : 1;
-    bool mbShowTooltips : 1;
-    Color maFillColor;              ///< Background color of the thumbnail view widget.
-    Color maTextColor;              ///< Text color.
-    Color maHighlightColor;         ///< Color of the highlight (background) of the hovered item.
-    Color maHighlightTextColor;     ///< Color of the text for the highlighted item.
-    Color maSelectHighlightColor;   ///< Color of the highlight (background) of the selected and hovered item.
-    Color maSelectHighlightTextColor;   ///< Color of the text of the selected and hovered item.
-    double mfHighlightTransparence; ///< Transparence of the highlight.
-
-    std::unique_ptr<ThumbnailItemAttributes> mpItemAttrs;
-
-    std::function<bool (const ThumbnailViewItem*)> maFilterFunc;
-};
-
 class SFX2_DLLPUBLIC SfxThumbnailView : public weld::CustomWidgetController, public ThumbnailViewBase
 {
 public:
@@ -387,6 +252,8 @@ public:
 
     virtual void SetDrawingArea(weld::DrawingArea* pDrawingArea) override;
 
+    static BitmapEx readThumbnail(const OUString &msURL);
+
 protected:
 
     virtual bool KeyInput( const KeyEvent& rKEvt ) override;
diff --git a/sd/source/ui/sidebar/MasterPageContainerProviders.cxx b/sd/source/ui/sidebar/MasterPageContainerProviders.cxx
index b935673695c0..5197805b7f37 100644
--- a/sd/source/ui/sidebar/MasterPageContainerProviders.cxx
+++ b/sd/source/ui/sidebar/MasterPageContainerProviders.cxx
@@ -83,7 +83,7 @@ Image TemplatePreviewProvider::operator() (
     SdPage*,
     ::sd::PreviewRenderer&)
 {
-    return Image(ThumbnailView::readThumbnail(msURL));
+    return Image(SfxThumbnailView::readThumbnail(msURL));
 }
 
 int TemplatePreviewProvider::GetCostIndex()
diff --git a/sfx2/source/control/recentdocsviewitem.cxx b/sfx2/source/control/recentdocsviewitem.cxx
index 9b73ef2c88ef..090e2881e000 100644
--- a/sfx2/source/control/recentdocsviewitem.cxx
+++ b/sfx2/source/control/recentdocsviewitem.cxx
@@ -54,7 +54,7 @@ RecentDocsViewItem::RecentDocsViewItem(sfx2::RecentDocsView &rView, const OUStri
     //fdo#74834: only load thumbnail if the corresponding option is not disabled in the configuration
     if (aThumbnail.IsEmpty() && aURLObj.GetProtocol() == INetProtocol::File &&
             officecfg::Office::Common::History::RecentDocsThumbnail::get())
-        aThumbnail = ThumbnailView::readThumbnail(rURL);
+        aThumbnail = SfxThumbnailView::readThumbnail(rURL);
 
     if (aThumbnail.IsEmpty())
     {
diff --git a/sfx2/source/control/recentdocsviewitem.hxx b/sfx2/source/control/recentdocsviewitem.hxx
index cb6320e9ee74..4d06d91b0f28 100644
--- a/sfx2/source/control/recentdocsviewitem.hxx
+++ b/sfx2/source/control/recentdocsviewitem.hxx
@@ -12,8 +12,6 @@
 
 #include <sfx2/thumbnailviewitem.hxx>
 
-class ThumbnailView;
-
 namespace sfx2
 {
     class RecentDocsView;
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index 40f0418b9206..157df66e7bcd 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -942,7 +942,7 @@ BitmapEx SfxTemplateLocalView::getDefaultThumbnail( const OUString& rPath )
 
 BitmapEx SfxTemplateLocalView::fetchThumbnail (const OUString &msURL, tools::Long width, tools::Long height)
 {
-    return SfxTemplateLocalView::scaleImg(ThumbnailView::readThumbnail(msURL), width, height);
+    return SfxTemplateLocalView::scaleImg(SfxThumbnailView::readThumbnail(msURL), width, height);
 }
 
 void SfxTemplateLocalView::OnItemDblClicked (ThumbnailViewItem *pItem)
diff --git a/sfx2/source/control/thumbnailview.cxx b/sfx2/source/control/thumbnailview.cxx
index de2415c8640e..6ba29958a35b 100644
--- a/sfx2/source/control/thumbnailview.cxx
+++ b/sfx2/source/control/thumbnailview.cxx
@@ -48,1069 +48,6 @@ using namespace drawinglayer::primitive2d;
 
 constexpr int gnFineness = 5;
 
-ThumbnailView::ThumbnailView (vcl::Window *pParent)
-    : Control( pParent, WB_TABSTOP )
-    , mpItemAttrs(new ThumbnailItemAttributes)
-{
-    ImplInit();
-}
-
-ThumbnailView::~ThumbnailView()
-{
-    disposeOnce();
-}
-
-void ThumbnailView::dispose()
-{
-    css::uno::Reference< css::lang::XComponent> xComponent(GetAccessible(false), css::uno::UNO_QUERY);
-
-    if (xComponent.is())
-        xComponent->dispose ();
-
-    mpScrBar.disposeAndClear();
-    mpItemAttrs.reset();
-
-    ImplDeleteItems();
-    Control::dispose();
-}
-
-void ThumbnailView::MouseMove(const MouseEvent& rMEvt)
-{
-    size_t nItemCount = mFilteredItemList.size();
-    Point aPoint = rMEvt.GetPosPixel();
-    OUString aHelp;
-
-    for (size_t i = 0; i < nItemCount; i++)
-    {
-        ThumbnailViewItem *pItem = mFilteredItemList[i];
-
-        if (pItem->mbVisible && !rMEvt.IsLeaveWindow() && pItem->getDrawArea().IsInside(aPoint))
-        {
-            aHelp = pItem->getHelpText();
-        }
-
-        ::tools::Rectangle aToInvalidate(pItem->updateHighlight(pItem->mbVisible && !rMEvt.IsLeaveWindow(), aPoint));
-
-        if (!aToInvalidate.IsEmpty() && IsReallyVisible() && IsUpdateMode())
-            Invalidate(aToInvalidate);
-    }
-
-    if (mbShowTooltips)
-        SetQuickHelpText(aHelp);
-}
-
-void ThumbnailView::AppendItem(std::unique_ptr<ThumbnailViewItem> pItem)
-{
-    if (maFilterFunc(pItem.get()))
-    {
-        // Save current start,end range, iterator might get invalidated
-        size_t nSelStartPos = 0;
-        ThumbnailViewItem *pSelStartItem = nullptr;
-
-        if (mpStartSelRange != mFilteredItemList.end())
-        {
-            pSelStartItem = *mpStartSelRange;
-            nSelStartPos = mpStartSelRange - mFilteredItemList.begin();
-        }
-
-        mFilteredItemList.push_back(pItem.get());
-        mpStartSelRange = pSelStartItem != nullptr ? mFilteredItemList.begin() + nSelStartPos : mFilteredItemList.end();
-    }
-
-    mItemList.push_back(std::move(pItem));
-}
-
-void ThumbnailView::ImplInit()
-{
-    mpScrBar = nullptr;
-    mnItemWidth = 0;
-    mnItemHeight = 0;
-    mnItemPadding = 0;
-    mnVisLines = 0;
-    mnLines = 0;
-    mnFirstLine = 0;
-    mnCols = 0;
-    mbScroll = false;
-    mbHasVisibleItems = false;
-    mbShowTooltips = false;
-    maFilterFunc = ViewFilterAll();
-    maFillColor = GetSettings().GetStyleSettings().GetFieldColor();
-    maTextColor = GetSettings().GetStyleSettings().GetWindowTextColor();
-    maHighlightColor = GetSettings().GetStyleSettings().GetHighlightColor();
-    maHighlightTextColor = GetSettings().GetStyleSettings().GetHighlightTextColor();
-    maSelectHighlightColor = GetSettings().GetStyleSettings().GetActiveColor();
-    maSelectHighlightTextColor = GetSettings().GetStyleSettings().GetActiveTextColor();
-
-    const SvtOptionsDrawinglayer aSvtOptionsDrawinglayer;
-    mfHighlightTransparence = aSvtOptionsDrawinglayer.GetTransparentSelectionPercent() * 0.01;
-
-    mpStartSelRange = mFilteredItemList.end();
-
-    ApplySettings(*this);
-}
-
-void ThumbnailView::ImplDeleteItems()
-{
-    const size_t n = mItemList.size();
-
-    for ( size_t i = 0; i < n; ++i )
-    {
-        ThumbnailViewItem *const pItem = mItemList[i].get();
-
-        // deselect all current selected items and fire events
-        if (pItem->isSelected())
-        {
-            pItem->setSelection(false);
-            // fire accessible event???
-        }
-
-        if ( pItem->isVisible() && ImplHasAccessibleListeners() )
-        {
-            css::uno::Any aOldAny, aNewAny;
-
-            aOldAny <<= pItem->GetAccessible( false );
-            ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::CHILD, aOldAny, aNewAny );
-        }
-
-        mItemList[i].reset();
-    }
-
-    mItemList.clear();
-    mFilteredItemList.clear();
-
-    mpStartSelRange = mFilteredItemList.end();
-}
-
-void ThumbnailView::ApplySettings(vcl::RenderContext& rRenderContext)
-{
-    const StyleSettings& rStyleSettings = rRenderContext.GetSettings().GetStyleSettings();
-
-    ApplyControlFont(*this, rStyleSettings.GetAppFont());
-    ApplyControlForeground(*this, rStyleSettings.GetButtonTextColor());
-    rRenderContext.SetTextFillColor();
-    rRenderContext.SetBackground(maFillColor);
-
-    mpItemAttrs->aFillColor = maFillColor.getBColor();
-    mpItemAttrs->aTextColor = maTextColor.getBColor();
-    mpItemAttrs->aHighlightColor = maHighlightColor.getBColor();
-    mpItemAttrs->aHighlightTextColor = maHighlightTextColor.getBColor();
-    mpItemAttrs->aSelectHighlightColor = maSelectHighlightColor.getBColor();
-    mpItemAttrs->aSelectHighlightTextColor = maSelectHighlightTextColor.getBColor();
-    mpItemAttrs->fHighlightTransparence = mfHighlightTransparence;
-    mpItemAttrs->aFontAttr = getFontAttributeFromVclFont(mpItemAttrs->aFontSize,GetFont(),false,true);
-    mpItemAttrs->nMaxTextLength = 0;
-}
-
-void ThumbnailView::DrawItem(ThumbnailViewItem const *pItem)
-{
-    if (pItem->isVisible())
-    {
-        ::tools::Rectangle aRect = pItem->getDrawArea();
-
-        if (!aRect.IsEmpty())
-            Invalidate(aRect);
-    }
-}
-
-void ThumbnailView::OnItemDblClicked (ThumbnailViewItem*)
-{
-}
-
-css::uno::Reference< css::accessibility::XAccessible > ThumbnailView::CreateAccessible()
-{
-    return new ThumbnailViewAcc( this );
-}
-
-css::uno::Reference< css::accessibility::XAccessible > ThumbnailView::getAccessible()
-{
-    return GetAccessible();
-}
-
-void ThumbnailView::CalculateItemPositions (bool bScrollBarUsed)
-{
-    if (!mnItemHeight || !mnItemWidth)
-        return;
-
-    Size        aWinSize = GetOutputSizePixel();
-    size_t      nItemCount = mFilteredItemList.size();
-    WinBits     nStyle = GetStyle();
-    VclPtr<ScrollBar>  pDelScrBar;
-    tools::Long        nScrBarWidth = 0;
-
-    // consider the scrolling
-    if ( nStyle & WB_VSCROLL )
-    {
-        if ( !mpScrBar )
-        {
-            mpScrBar = VclPtr<ScrollBar>::Create( this, WB_VSCROLL | WB_DRAG );
-            mpScrBar->SetScrollHdl( LINK( this, ThumbnailView, ImplScrollHdl ) );
-        }
-
-        // adapt the width because of the changed settings
-        nScrBarWidth = GetSettings().GetStyleSettings().GetScrollBarSize();
-    }
-    else
-    {
-        if ( mpScrBar )
-        {
-            // delete ScrollBar not until later, to prevent recursive calls
-            pDelScrBar = mpScrBar;
-            mpScrBar = nullptr;
-        }
-    }
-
-    // calculate window scroll ratio
-    float nScrollRatio;
-    if( bScrollBarUsed && mpScrBar )
-        nScrollRatio = static_cast<float>(mpScrBar->GetThumbPos()) /
-                        static_cast<float>(mpScrBar->GetRangeMax() - mpScrBar->GetVisibleSize());
-    else
-        nScrollRatio = 0;
-
-    // calculate maximum number of visible columns
-    mnCols = static_cast<sal_uInt16>((aWinSize.Width()-nScrBarWidth) / mnItemWidth);
-
-    if (!mnCols)
-        mnCols = 1;
-
-    // calculate maximum number of visible rows
-    mnVisLines = static_cast<sal_uInt16>(aWinSize.Height() / mnItemHeight);
-
-    // calculate empty space
-    tools::Long nHSpace = aWinSize.Width()-nScrBarWidth - mnCols*mnItemWidth;
-    tools::Long nVSpace = aWinSize.Height() - mnVisLines*mnItemHeight;
-    tools::Long nHItemSpace = nHSpace / (mnCols+1);
-    tools::Long nVItemSpace = nVSpace / (mnVisLines+1);
-
-    // calculate maximum number of rows
-    // Floor( (M+N-1)/N )==Ceiling( M/N )
-    mnLines = (static_cast<tools::Long>(nItemCount)+mnCols-1) / mnCols;
-
-    if ( !mnLines )
-        mnLines = 1;
-
-    if ( mnLines <= mnVisLines )
-        mnFirstLine = 0;
-    else if ( mnFirstLine > o3tl::make_unsigned(mnLines-mnVisLines) )
-        mnFirstLine = static_cast<sal_uInt16>(mnLines-mnVisLines);
-
-    mbHasVisibleItems = true;
-
-    tools::Long nFullSteps = (mnLines > mnVisLines) ? mnLines - mnVisLines + 1 : 1;
-
-    tools::Long nItemHeightOffset = mnItemHeight + nVItemSpace;
-    tools::Long nHiddenLines = static_cast<tools::Long>((nFullSteps - 1) * nScrollRatio);
-
-    // calculate offsets
-    tools::Long nStartX = nHItemSpace;
-    tools::Long nStartY = nVItemSpace;
-
-    // calculate and draw items
-    tools::Long x = nStartX;
-    tools::Long y = nStartY - ((nFullSteps - 1) * nScrollRatio - nHiddenLines) * nItemHeightOffset;
-
-    // draw items
-    // Unless we are scrolling (via scrollbar) we just use the precalculated
-    // mnFirstLine -- our nHiddenLines calculation takes into account only
-    // what the user has done with the scrollbar but not any changes of selection
-    // using the keyboard, meaning we could accidentally hide the selected item
-    // if we believe the scrollbar (fdo#72287).
-    size_t nFirstItem = (bScrollBarUsed ? nHiddenLines : mnFirstLine) * mnCols;
-    size_t nLastItem = nFirstItem + (mnVisLines + 1) * mnCols;
-
-    // If want also draw parts of items in the last line,
-    // then we add one more line if parts of this line are visible
-
-    size_t nCurCount = 0;
-    for ( size_t i = 0; i < nItemCount; i++ )
-    {
-        ThumbnailViewItem *const pItem = mFilteredItemList[i];
-
-        if ((nCurCount >= nFirstItem) && (nCurCount < nLastItem))
-        {
-            if( !pItem->isVisible())
-            {
-                if ( ImplHasAccessibleListeners() )
-                {
-                    css::uno::Any aOldAny, aNewAny;
-
-                    aNewAny <<= pItem->GetAccessible( false );
-                    ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::CHILD, aOldAny, aNewAny );
-                }
-
-                pItem->show(true);
-            }
-
-            pItem->setDrawArea(::tools::Rectangle( Point(x,y), Size(mnItemWidth, mnItemHeight) ));
-            pItem->calculateItemsPosition(mnThumbnailHeight,mnItemPadding,mpItemAttrs->nMaxTextLength,mpItemAttrs.get());
-
-            if ( !((nCurCount+1) % mnCols) )
-            {
-                x = nStartX;
-                y += mnItemHeight+nVItemSpace;
-            }
-            else
-                x += mnItemWidth+nHItemSpace;
-        }
-        else
-        {
-            if( pItem->isVisible())
-            {
-                if ( ImplHasAccessibleListeners() )
-                {
-                    css::uno::Any aOldAny, aNewAny;
-
-                    aOldAny <<= pItem->GetAccessible( false );
-                    ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::CHILD, aOldAny, aNewAny );
-                }
-
-                pItem->show(false);
-            }
-
-        }
-
-        ++nCurCount;
-    }
-
-    // arrange ScrollBar, set values and show it
-    if ( mpScrBar )
-    {
-        mnLines = (nCurCount+mnCols-1)/mnCols;
-
-        // check if scroll is needed
-        mbScroll = mnLines > mnVisLines;
-
-
-        Point aPos( aWinSize.Width() - nScrBarWidth, 0 );
-        Size aSize( nScrBarWidth, aWinSize.Height() );
-
-        mpScrBar->SetPosSizePixel( aPos, aSize );
-        mpScrBar->SetRangeMax(mnLines * gnFineness);
-        mpScrBar->SetVisibleSize(mnVisLines * gnFineness);
-        if (!bScrollBarUsed)
-            mpScrBar->SetThumbPos( static_cast<tools::Long>(mnFirstLine)*gnFineness );
-        tools::Long nPageSize = mnVisLines;
-        if ( nPageSize < 1 )
-            nPageSize = 1;
-        mpScrBar->SetPageSize( nPageSize );
-        mpScrBar->Show( mbScroll );
-        mpScrBar->Enable( mbScroll );
-    }
-
-    // delete ScrollBar
-    pDelScrBar.disposeAndClear();
-}
-
-size_t ThumbnailView::ImplGetItem( const Point& rPos ) const
-{
-    if ( !mbHasVisibleItems )
-    {
-        return THUMBNAILVIEW_ITEM_NOTFOUND;
-    }
-
-    for (size_t i = 0; i < mFilteredItemList.size(); ++i)
-    {
-        if (mFilteredItemList[i]->isVisible() && mFilteredItemList[i]->getDrawArea().IsInside(rPos))
-            return i;
-    }
-
-    return THUMBNAILVIEW_ITEM_NOTFOUND;
-}
-
-ThumbnailViewItem* ThumbnailView::ImplGetItem( size_t nPos )
-{
-    return ( nPos < mFilteredItemList.size() ) ? mFilteredItemList[nPos] : nullptr;
-}
-
-sal_uInt16 ThumbnailView::ImplGetVisibleItemCount() const
-{
-    sal_uInt16 nRet = 0;
-    const size_t nItemCount = mItemList.size();
-
-    for ( size_t n = 0; n < nItemCount; ++n )
-    {
-        if ( mItemList[n]->isVisible() )
-            ++nRet;
-    }
-
-    return nRet;
-}
-
-ThumbnailViewItem* ThumbnailView::ImplGetVisibleItem( sal_uInt16 nVisiblePos )
-{
-    const size_t nItemCount = mItemList.size();
-
-    for ( size_t n = 0; n < nItemCount; ++n )
-    {
-        ThumbnailViewItem *const pItem = mItemList[n].get();
-
-        if ( pItem->isVisible() && !nVisiblePos-- )
-            return pItem;
-    }
-
-    return nullptr;
-}
-
-void ThumbnailView::ImplFireAccessibleEvent( short nEventId, const css::uno::Any& rOldValue, const css::uno::Any& rNewValue )
-{
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation( GetAccessible( false ) );
-
-    if( pAcc )
-        pAcc->FireAccessibleEvent( nEventId, rOldValue, rNewValue );
-}
-
-bool ThumbnailView::ImplHasAccessibleListeners()
-{
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation( GetAccessible( false ) );
-    return( pAcc && pAcc->HasAccessibleListeners() );
-}
-
-IMPL_LINK( ThumbnailView,ImplScrollHdl, ScrollBar*, pScrollBar, void )
-{
-    if ( pScrollBar->GetDelta() )
-    {
-        CalculateItemPositions(true);
-
-        if ( IsReallyVisible() && IsUpdateMode() )
-            Invalidate();
-    }
-}
-
-void ThumbnailView::KeyInput( const KeyEvent& rKEvt )
-{
-    // Get the last selected item in the list
-    size_t nLastPos = 0;
-    bool bFoundLast = false;
-    for ( tools::Long i = mFilteredItemList.size() - 1; !bFoundLast && i >= 0; --i )
-    {
-        ThumbnailViewItem* pItem = mFilteredItemList[i];
-        if ( pItem->isSelected() )
-        {
-            nLastPos = i;
-            bFoundLast = true;
-        }
-    }
-
-    bool bValidRange = false;
-    bool bHasSelRange = mpStartSelRange != mFilteredItemList.end();
-    size_t nNextPos = nLastPos;
-    vcl::KeyCode aKeyCode = rKEvt.GetKeyCode();
-    ThumbnailViewItem* pNext = nullptr;
-
-    if (aKeyCode.IsShift() && bHasSelRange)
-    {
-        //If the last element selected is the start range position
-        //search for the first selected item
-        size_t nSelPos = mpStartSelRange - mFilteredItemList.begin();
-
-        if (nLastPos == nSelPos)
-        {
-            while (nLastPos && mFilteredItemList[nLastPos-1]->isSelected())
-                --nLastPos;
-        }
-    }
-
-    switch ( aKeyCode.GetCode() )
-    {
-        case KEY_RIGHT:
-            if (!mFilteredItemList.empty())
-            {
-                if ( bFoundLast && nLastPos + 1 < mFilteredItemList.size() )
-                {
-                    bValidRange = true;
-                    nNextPos = nLastPos + 1;
-                }
-
-                pNext = mFilteredItemList[nNextPos];
-            }
-            break;
-        case KEY_LEFT:
-            if (!mFilteredItemList.empty())
-            {
-                if ( nLastPos > 0 )
-                {
-                    bValidRange = true;
-                    nNextPos = nLastPos - 1;
-                }
-
-                pNext = mFilteredItemList[nNextPos];
-            }
-            break;
-        case KEY_DOWN:
-            if (!mFilteredItemList.empty())
-            {
-                if ( bFoundLast )
-                {
-                    //If we are in the second last row just go the one in
-                    //the row below, if there's not row below just go to the
-                    //last item but for the last row don't do anything.
-                    if ( nLastPos + mnCols < mFilteredItemList.size( ) )
-                    {
-                        bValidRange = true;
-                        nNextPos = nLastPos + mnCols;
-                    }
-                    else
-                    {
-                        int curRow = nLastPos/mnCols;
-
-                        if (curRow < mnLines-1)
-                            nNextPos = mFilteredItemList.size()-1;
-                    }
-                }
-
-                pNext = mFilteredItemList[nNextPos];
-            }
-            break;
-        case KEY_UP:
-            if (!mFilteredItemList.empty())
-            {
-                if ( nLastPos >= mnCols )
-                {
-                    bValidRange = true;
-                    nNextPos = nLastPos - mnCols;
-                }
-
-                pNext = mFilteredItemList[nNextPos];
-            }
-            break;
-        case KEY_RETURN:
-            {
-                if ( bFoundLast )
-                    OnItemDblClicked( mFilteredItemList[nLastPos] );
-            }
-            [[fallthrough]];
-        default:
-            Control::KeyInput( rKEvt );
-    }
-
-    if ( !pNext )
-        return;
-
-    if (aKeyCode.IsShift() && bValidRange)
-    {
-        std::pair<size_t,size_t> aRange;
-        size_t nSelPos = mpStartSelRange - mFilteredItemList.begin();
-
-        if (nLastPos < nSelPos)
-        {
-            if (nNextPos > nLastPos)
-            {
-                if ( nNextPos > nSelPos)
-                    aRange = std::make_pair(nLastPos,nNextPos);
-                else
-                    aRange = std::make_pair(nLastPos,nNextPos-1);
-            }
-            else
-                aRange = std::make_pair(nNextPos,nLastPos-1);
-        }
-        else if (nLastPos == nSelPos)
-        {
-            if (nNextPos > nLastPos)
-                aRange = std::make_pair(nLastPos+1,nNextPos);
-            else
-                aRange = std::make_pair(nNextPos,nLastPos-1);
-        }
-        else
-        {
-            if (nNextPos > nLastPos)
-                aRange = std::make_pair(nLastPos+1,nNextPos);
-            else
-            {
-                if ( nNextPos < nSelPos)
-                    aRange = std::make_pair(nNextPos,nLastPos);
-                else
-                    aRange = std::make_pair(nNextPos+1,nLastPos);
-            }
-        }
-
-        for (size_t i = aRange.first; i <= aRange.second; ++i)
-        {
-            if (i != nSelPos)
-            {
-                ThumbnailViewItem *pCurItem = mFilteredItemList[i];
-
-                pCurItem->setSelection(!pCurItem->isSelected());
-
-                if (pCurItem->isVisible())
-                    DrawItem(pCurItem);
-            }
-        }
-    }
-    else if (!aKeyCode.IsShift())
-    {
-        deselectItems();
-        SelectItem(pNext->mnId);
-
-        //Mark it as the selection range start position
-        mpStartSelRange = mFilteredItemList.begin() + nNextPos;
-    }
-
-    MakeItemVisible(pNext->mnId);
-}
-
-void ThumbnailView::MakeItemVisible( sal_uInt16 nItemId )
-{
-    // Get the item row
-    size_t nPos = 0;
-    bool bFound = false;
-    for ( size_t i = 0; !bFound && i < mFilteredItemList.size(); ++i )
-    {
-        ThumbnailViewItem* pItem = mFilteredItemList[i];
-        if ( pItem->mnId == nItemId )
-        {
-            nPos = i;
-            bFound = true;
-        }
-    }
-    sal_uInt16 nRow = mnCols ? nPos / mnCols : 0;
-
-    // Move the visible rows as little as possible to include that one
-    if ( nRow < mnFirstLine )
-        mnFirstLine = nRow;
-    else if ( nRow > mnFirstLine + mnVisLines )
-        mnFirstLine = nRow - mnVisLines;
-
-    CalculateItemPositions();
-    Invalidate();
-}
-
-void ThumbnailView::MouseButtonDown( const MouseEvent& rMEvt )
-{
-    if ( !rMEvt.IsLeft() )
-    {
-        Control::MouseButtonDown( rMEvt );
-        return;
-    }
-
-    size_t nPos = ImplGetItem(rMEvt.GetPosPixel());
-    ThumbnailViewItem* pItem = ImplGetItem(nPos);
-
-    if ( !pItem )
-    {
-        deselectItems();
-        Control::MouseButtonDown( rMEvt );
-        return;
-    }
-
-    if ( rMEvt.GetClicks() == 2 )
-    {
-        OnItemDblClicked(pItem);
-        return;
-    }
-
-    if(rMEvt.GetClicks() != 1)
-        return;
-
-    if (rMEvt.IsMod1())
-    {
-        //Keep selected item group state and just invert current desired one state
-        pItem->setSelection(!pItem->isSelected());
-
-        //This one becomes the selection range start position if it changes its state to selected otherwise resets it
-        mpStartSelRange = pItem->isSelected() ? mFilteredItemList.begin() + nPos : mFilteredItemList.end();
-    }
-    else if (rMEvt.IsShift() && mpStartSelRange != mFilteredItemList.end())
-    {
-        std::pair<size_t,size_t> aNewRange;
-        aNewRange.first = mpStartSelRange - mFilteredItemList.begin();
-        aNewRange.second = nPos;
-
-        if (aNewRange.first > aNewRange.second)
-            std::swap(aNewRange.first,aNewRange.second);
-
-        //Deselect the ones outside of it
-        for (size_t i = 0, n = mFilteredItemList.size(); i < n; ++i)
-        {
-            ThumbnailViewItem *pCurItem  = mFilteredItemList[i];
-
-            if (pCurItem->isSelected() && (i < aNewRange.first || i > aNewRange.second))
-            {
-                pCurItem->setSelection(false);
-
-                if (pCurItem->isVisible())
-                    DrawItem(pCurItem);
-            }
-        }
-
-        size_t nSelPos = mpStartSelRange - mFilteredItemList.begin();
-
-        //Select the items between start range and the selected item
-        if (nSelPos != nPos)
-        {
-            int dir = nSelPos < nPos ? 1 : -1;
-            size_t nCurPos = nSelPos + dir;
-
-            while (nCurPos != nPos)
-            {
-                ThumbnailViewItem *pCurItem  = mFilteredItemList[nCurPos];
-
-                if (!pCurItem->isSelected())
-                {
-                    pCurItem->setSelection(true);
-
-                    if (pCurItem->isVisible())
-                        DrawItem(pCurItem);
-                }
-
-                nCurPos += dir;
-            }
-        }
-
-        pItem->setSelection(true);
-    }
-    else
-    {
-        //If we got a group of selected items deselect the rest and only keep the desired one
-        //mark items as not selected to not fire unnecessary change state events.
-        pItem->setSelection(false);
-        deselectItems();
-        pItem->setSelection(true);
-
-        //Mark as initial selection range position and reset end one
-        mpStartSelRange = mFilteredItemList.begin() + nPos;
-    }
-
-    if (!pItem->isHighlighted())
-        DrawItem(pItem);
-
-    //fire accessible event??
-}
-
-void ThumbnailView::Command( const CommandEvent& rCEvt )
-{
-    if ( (rCEvt.GetCommand() == CommandEventId::Wheel) ||
-         (rCEvt.GetCommand() == CommandEventId::StartAutoScroll) ||
-         (rCEvt.GetCommand() == CommandEventId::AutoScroll) )
-    {
-        if ( HandleScrollCommand( rCEvt, nullptr, mpScrBar ) )
-            return;
-    }
-
-    Control::Command( rCEvt );
-}
-
-void ThumbnailView::Paint(vcl::RenderContext& rRenderContext, const ::tools::Rectangle& rRect)
-{
-    size_t nItemCount = mItemList.size();
-
-    // Draw background
-    drawinglayer::primitive2d::Primitive2DContainer aSeq(1);
-    aSeq[0] = drawinglayer::primitive2d::Primitive2DReference(
-            new PolyPolygonColorPrimitive2D(
-                    B2DPolyPolygon( ::tools::Polygon(::tools::Rectangle(Point(), GetOutputSizePixel()), 0, 0).getB2DPolygon()),
-                    maFillColor.getBColor()));
-
-    // Create the processor and process the primitives
-    const drawinglayer::geometry::ViewInformation2D aNewViewInfos;
-
-    std::unique_ptr<drawinglayer::processor2d::BaseProcessor2D> pProcessor(
-        drawinglayer::processor2d::createBaseProcessor2DFromOutputDevice(rRenderContext, aNewViewInfos));
-    pProcessor->process(aSeq);
-
-    // draw items
-    for (size_t i = 0; i < nItemCount; i++)
-    {
-        ThumbnailViewItem *const pItem = mItemList[i].get();
-
-        if (pItem->isVisible())
-        {
-            pItem->Paint(pProcessor.get(), mpItemAttrs.get());
-        }
-    }
-
-    if (mpScrBar && mpScrBar->IsVisible())
-        mpScrBar->Invalidate(rRect);
-}
-
-void ThumbnailView::GetFocus()
-{
-    // Select the first item if nothing selected
-    int nSelected = -1;
-    for (size_t i = 0, n = mItemList.size(); i < n && nSelected == -1; ++i)
-    {
-        if (mItemList[i]->isSelected())
-            nSelected = i;
-    }
-
-    if (nSelected == -1 && !mItemList.empty())
-    {
-        SelectItem(1);
-    }
-
-    // Tell the accessible object that we got the focus.
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation( GetAccessible( false ) );
-    if( pAcc )
-        pAcc->GetFocus();
-
-    Control::GetFocus();
-}
-
-void ThumbnailView::LoseFocus()
-{
-    Control::LoseFocus();
-
-    // Tell the accessible object that we lost the focus.
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation( GetAccessible( false ) );
-    if( pAcc )
-        pAcc->LoseFocus();
-}
-
-void ThumbnailView::Resize()
-{
-    Control::Resize();
-    CalculateItemPositions();
-
-    if ( IsReallyVisible() && IsUpdateMode() )
-        Invalidate();
-}
-
-void ThumbnailView::StateChanged( StateChangedType nType )
-{
-    Control::StateChanged( nType );
-
-    if ( nType == StateChangedType::InitShow )
-    {
-        if ( IsReallyVisible() && IsUpdateMode() )
-            Invalidate();
-    }
-    else if ( nType == StateChangedType::UpdateMode )
-    {
-        if ( IsReallyVisible() && IsUpdateMode() )
-            Invalidate();
-    }
-    else if ( nType == StateChangedType::Text )
-    {
-    }
-    else if ( (nType == StateChangedType::Zoom) ||
-              (nType == StateChangedType::ControlFont) )
-    {
-        Invalidate();
-    }
-    else if ( nType == StateChangedType::ControlForeground )
-    {
-        Invalidate();
-    }
-    else if ( nType == StateChangedType::ControlBackground )
-    {
-        Invalidate();
-    }
-    else if ( (nType == StateChangedType::Style) || (nType == StateChangedType::Enable) )
-    {
-        Invalidate();
-    }
-}
-
-void ThumbnailView::DataChanged( const DataChangedEvent& rDCEvt )
-{
-    Control::DataChanged( rDCEvt );
-
-    if ( (rDCEvt.GetType() == DataChangedEventType::FONTS) ||
-         (rDCEvt.GetType() == DataChangedEventType::DISPLAY) ||
-         (rDCEvt.GetType() == DataChangedEventType::FONTSUBSTITUTION) ||
-         ((rDCEvt.GetType() == DataChangedEventType::SETTINGS) &&
-          (rDCEvt.GetFlags() & AllSettingsFlags::STYLE)) )
-    {
-        Invalidate();
-    }
-}
-
-void ThumbnailView::Clear()
-{
-    ImplDeleteItems();
-
-    // reset variables
-    mnFirstLine     = 0;
-
-    CalculateItemPositions();
-
-    if ( IsReallyVisible() && IsUpdateMode() )
-        Invalidate();
-}
-
-void ThumbnailView::updateItems (std::vector<std::unique_ptr<ThumbnailViewItem>> items)
-{
-    ImplDeleteItems();
-
-    // reset variables
-    mnFirstLine     = 0;
-
-    mItemList = std::move(items);
-
-    filterItems(maFilterFunc);
-}
-
-size_t ThumbnailView::GetItemPos( sal_uInt16 nItemId ) const
-{
-    for ( size_t i = 0, n = mFilteredItemList.size(); i < n; ++i ) {
-        if ( mFilteredItemList[i]->mnId == nItemId ) {
-            return i;
-        }
-    }
-    return THUMBNAILVIEW_ITEM_NOTFOUND;
-}
-
-sal_uInt16 ThumbnailView::GetItemId( size_t nPos ) const
-{
-    return ( nPos < mFilteredItemList.size() ) ? mFilteredItemList[nPos]->mnId : 0 ;
-}
-
-sal_uInt16 ThumbnailView::GetItemId( const Point& rPos ) const
-{
-    size_t nItemPos = ImplGetItem( rPos );
-    if ( nItemPos != THUMBNAILVIEW_ITEM_NOTFOUND )
-        return GetItemId( nItemPos );
-
-    return 0;
-}
-
-void ThumbnailView::setItemMaxTextLength(sal_uInt32 nLength)
-{
-    mpItemAttrs->nMaxTextLength = nLength;
-}
-
-void ThumbnailView::setItemDimensions(tools::Long itemWidth, tools::Long thumbnailHeight, tools::Long displayHeight, int itemPadding)
-{
-    mnItemWidth = itemWidth + 2*itemPadding;
-    mnThumbnailHeight = thumbnailHeight;
-    mnDisplayHeight = displayHeight;
-    mnItemPadding = itemPadding;
-    mnItemHeight = mnDisplayHeight + mnThumbnailHeight + 2*itemPadding;
-}
-
-void ThumbnailView::SelectItem( sal_uInt16 nItemId )
-{
-    size_t nItemPos = GetItemPos( nItemId );
-    if ( nItemPos == THUMBNAILVIEW_ITEM_NOTFOUND )
-        return;
-
-    ThumbnailViewItem* pItem = mFilteredItemList[nItemPos];
-    if (pItem->isSelected())
-        return;
-
-    pItem->setSelection(true);
-
-    if (IsReallyVisible() && IsUpdateMode())
-        Invalidate();
-
-    bool bNewOut = IsReallyVisible() && IsUpdateMode();
-
-    // if necessary scroll to the visible area
-    if (mbScroll && nItemId && mnCols)
-    {
-        sal_uInt16 nNewLine = static_cast<sal_uInt16>(nItemPos / mnCols);
-        if ( nNewLine < mnFirstLine )
-        {
-            mnFirstLine = nNewLine;
-        }
-        else if ( mnVisLines != 0 && nNewLine > o3tl::make_unsigned(mnFirstLine+mnVisLines-1) )
-        {
-            mnFirstLine = static_cast<sal_uInt16>(nNewLine-mnVisLines+1);
-        }
-    }
-
-    if ( bNewOut )
-    {
-        if ( IsReallyVisible() && IsUpdateMode() )
-            Invalidate();
-    }
-
-    if( !ImplHasAccessibleListeners() )
-        return;
-
-    // focus event (select)
-    ThumbnailViewItemAcc* pItemAcc = ThumbnailViewItemAcc::getImplementation( pItem->GetAccessible( false ) );
-
-    if( pItemAcc )
-    {
-        css::uno::Any aOldAny, aNewAny;
-        aNewAny <<= css::uno::Reference< css::uno::XInterface >(
-            static_cast< ::cppu::OWeakObject* >( pItemAcc ));
-        ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldAny, aNewAny );
-    }
-
-    // selection event
-    css::uno::Any aOldAny, aNewAny;
-    ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::SELECTION_CHANGED, aOldAny, aNewAny );
-}
-
-bool ThumbnailView::IsItemSelected( sal_uInt16 nItemId ) const
-{
-    size_t nItemPos = GetItemPos( nItemId );
-    if ( nItemPos == THUMBNAILVIEW_ITEM_NOTFOUND )
-        return false;
-
-    ThumbnailViewItem* pItem = mFilteredItemList[nItemPos];
-    return pItem->isSelected();
-}
-
-void ThumbnailView::deselectItems()
-{
-    for (std::unique_ptr<ThumbnailViewItem>& p : mItemList)
-    {
-        if (p->isSelected())
-        {
-            p->setSelection(false);
-        }
-    }
-
-    if (IsReallyVisible() && IsUpdateMode())
-        Invalidate();
-}
-
-void ThumbnailView::ShowTooltips( bool bShowTooltips )
-{
-    mbShowTooltips = bShowTooltips;
-}
-
-void ThumbnailView::filterItems(const std::function<bool (const ThumbnailViewItem*)> &func)
-{
-    mnFirstLine = 0;        // start at the top of the list instead of the current position
-    maFilterFunc = func;
-
-    size_t nSelPos = 0;
-    bool bHasSelRange = false;
-    ThumbnailViewItem *curSel = mpStartSelRange != mFilteredItemList.end() ? *mpStartSelRange : nullptr;
-
-    mFilteredItemList.clear();
-
-    for (size_t i = 0, n = mItemList.size(); i < n; ++i)
-    {
-        ThumbnailViewItem *const pItem = mItemList[i].get();
-
-        if (maFilterFunc(pItem))
-        {
-            if (curSel == pItem)
-            {
-                nSelPos = i;
-                bHasSelRange = true;
-            }
-
-            mFilteredItemList.push_back(pItem);
-        }
-        else
-        {
-            if( pItem->isVisible())
-            {
-                if ( ImplHasAccessibleListeners() )
-                {
-                    css::uno::Any aOldAny, aNewAny;
-
-                    aOldAny <<= pItem->GetAccessible( false );
-                    ImplFireAccessibleEvent( css::accessibility::AccessibleEventId::CHILD, aOldAny, aNewAny );
-                }
-
-                pItem->show(false);
-                pItem->setSelection(false);
-            }
-        }
-    }
-
-    mpStartSelRange = bHasSelRange ? mFilteredItemList.begin()  + nSelPos : mFilteredItemList.end();
-    CalculateItemPositions();
-
-    Invalidate();
-}
-
 bool ThumbnailViewBase::renameItem(ThumbnailViewItem*, const OUString&)
 {
     // Do nothing by default
@@ -1121,7 +58,7 @@ ThumbnailViewBase::~ThumbnailViewBase()
 {
 }
 
-BitmapEx ThumbnailView::readThumbnail(const OUString &msURL)
+BitmapEx SfxThumbnailView::readThumbnail(const OUString &msURL)
 {
     using namespace ::com::sun::star;
     using namespace ::com::sun::star::uno;
@@ -1606,7 +543,7 @@ ThumbnailViewItem* SfxThumbnailView::ImplGetVisibleItem( sal_uInt16 nVisiblePos
 
 void SfxThumbnailView::ImplFireAccessibleEvent( short nEventId, const css::uno::Any& rOldValue, const css::uno::Any& rNewValue )
 {
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation(mxAccessible);
+    SfxThumbnailViewAcc* pAcc = SfxThumbnailViewAcc::getImplementation(mxAccessible);
 
     if( pAcc )
         pAcc->FireAccessibleEvent( nEventId, rOldValue, rNewValue );
@@ -1614,7 +551,7 @@ void SfxThumbnailView::ImplFireAccessibleEvent( short nEventId, const css::uno::
 
 bool SfxThumbnailView::ImplHasAccessibleListeners()
 {
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation(mxAccessible);
+    SfxThumbnailViewAcc* pAcc = SfxThumbnailViewAcc::getImplementation(mxAccessible);
     return( pAcc && pAcc->HasAccessibleListeners() );
 }
 
@@ -2018,7 +955,7 @@ void SfxThumbnailView::GetFocus()
     }
 
     // Tell the accessible object that we got the focus.
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation(mxAccessible);
+    SfxThumbnailViewAcc* pAcc = SfxThumbnailViewAcc::getImplementation(mxAccessible);
     if( pAcc )
         pAcc->GetFocus();
 
@@ -2030,7 +967,7 @@ void SfxThumbnailView::LoseFocus()
     CustomWidgetController::LoseFocus();
 
     // Tell the accessible object that we lost the focus.
-    ThumbnailViewAcc* pAcc = ThumbnailViewAcc::getImplementation(mxAccessible);
+    SfxThumbnailViewAcc* pAcc = SfxThumbnailViewAcc::getImplementation(mxAccessible);
     if( pAcc )
         pAcc->LoseFocus();
 }
diff --git a/sfx2/source/control/thumbnailviewacc.cxx b/sfx2/source/control/thumbnailviewacc.cxx
index 53423bd567ae..d439cf43d4cf 100644
--- a/sfx2/source/control/thumbnailviewacc.cxx
+++ b/sfx2/source/control/thumbnailviewacc.cxx
@@ -36,58 +36,33 @@
 
 using namespace ::com::sun::star;
 
-ThumbnailViewAcc::ThumbnailViewAcc( ThumbnailView* pParent ) :
+SfxThumbnailViewAcc::SfxThumbnailViewAcc( SfxThumbnailView* pParent ) :
     ValueSetAccComponentBase (m_aMutex),
     mpParent( pParent ),
     mbIsFocused(false)
 {
 }
 
-ThumbnailViewAcc::~ThumbnailViewAcc()
+SfxThumbnailViewAcc::~SfxThumbnailViewAcc()
 {
 }
 
-void ThumbnailViewAcc::FireAccessibleEvent( short nEventId, const uno::Any& rOldValue, const uno::Any& rNewValue )
-{
-    if( !nEventId )
-        return;
-
-    ::std::vector< uno::Reference< accessibility::XAccessibleEventListener > > aTmpListeners( mxEventListeners );
-    accessibility::AccessibleEventObject aEvtObject;
-
-    aEvtObject.EventId = nEventId;
-    aEvtObject.Source = static_cast<uno::XWeak*>(this);
-    aEvtObject.NewValue = rNewValue;
-    aEvtObject.OldValue = rOldValue;
-
-    for (auto const& tmpListener : aTmpListeners)
-    {
-        try
-        {
-            tmpListener->notifyEvent( aEvtObject );
-        }
-        catch(const uno::Exception&)
-        {
-        }
-    }
-}
-
 namespace
 {
-    class theValueSetAccUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theValueSetAccUnoTunnelId > {};
+    class theSfxValueSetAccUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theSfxValueSetAccUnoTunnelId > {};
 }
 
-const uno::Sequence< sal_Int8 >& ThumbnailViewAcc::getUnoTunnelId()
+const uno::Sequence< sal_Int8 >& SfxThumbnailViewAcc::getUnoTunnelId()
 {
-    return theValueSetAccUnoTunnelId::get().getSeq();
+    return theSfxValueSetAccUnoTunnelId::get().getSeq();
 }
 
-ThumbnailViewAcc* ThumbnailViewAcc::getImplementation( const uno::Reference< uno::XInterface >& rxData )
+SfxThumbnailViewAcc* SfxThumbnailViewAcc::getImplementation( const uno::Reference< uno::XInterface >& rxData )
     throw()
 {
     try
     {
-        return comphelper::getUnoTunnelImplementation<ThumbnailViewAcc>(rxData);
+        return comphelper::getUnoTunnelImplementation<SfxThumbnailViewAcc>(rxData);
     }
     catch(const css::uno::Exception&)
     {
@@ -95,481 +70,6 @@ ThumbnailViewAcc* ThumbnailViewAcc::getImplementation( const uno::Reference< uno
     }
 }
 
-void ThumbnailViewAcc::GetFocus()
-{
-    mbIsFocused = true;
-
-    // Broadcast the state change.
-    css::uno::Any aOldState, aNewState;
-    aNewState <<= css::accessibility::AccessibleStateType::FOCUSED;
-    FireAccessibleEvent(
-        css::accessibility::AccessibleEventId::STATE_CHANGED,
-        aOldState, aNewState);
-}
-
-void ThumbnailViewAcc::LoseFocus()
-{
-    mbIsFocused = false;
-
-    // Broadcast the state change.
-    css::uno::Any aOldState, aNewState;
-    aOldState <<= css::accessibility::AccessibleStateType::FOCUSED;
-    FireAccessibleEvent(
-        css::accessibility::AccessibleEventId::STATE_CHANGED,
-        aOldState, aNewState);
-}
-
-uno::Reference< accessibility::XAccessibleContext > SAL_CALL ThumbnailViewAcc::getAccessibleContext()
-{
-    ThrowIfDisposed();
-    return this;
-}
-
-sal_Int32 SAL_CALL ThumbnailViewAcc::getAccessibleChildCount()
-{
-    const SolarMutexGuard aSolarGuard;
-    ThrowIfDisposed();
-
-    sal_Int32 nCount = mpParent->ImplGetVisibleItemCount();
-    return nCount;
-}
-
-uno::Reference< accessibility::XAccessible > SAL_CALL ThumbnailViewAcc::getAccessibleChild( sal_Int32 i )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    ThumbnailViewItem* pItem = getItem (sal::static_int_cast< sal_uInt16 >(i));
-
-    if( !pItem )
-        throw lang::IndexOutOfBoundsException();
-
-    uno::Reference< accessibility::XAccessible >  xRet = pItem->GetAccessible( /*bIsTransientChildrenDisabled*/false );
-    return xRet;
-}
-
-uno::Reference< accessibility::XAccessible > SAL_CALL ThumbnailViewAcc::getAccessibleParent()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    vcl::Window*                                         pParent = mpParent->GetParent();
-    uno::Reference< accessibility::XAccessible >    xRet;
-
-    if( pParent )
-        xRet = pParent->GetAccessible();
-
-    return xRet;
-}
-
-sal_Int32 SAL_CALL ThumbnailViewAcc::getAccessibleIndexInParent()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    vcl::Window*                 pParent = mpParent->GetParent();
-    sal_Int32               nRet = 0;
-
-    if( pParent )
-    {
-        bool bFound = false;
-
-        for( sal_uInt16 i = 0, nCount = pParent->GetChildCount(); ( i < nCount ) && !bFound; i++ )
-        {
-            if( pParent->GetChild( i ) == mpParent )
-            {
-                nRet = i;
-                bFound = true;
-            }
-        }
-    }
-
-    return nRet;
-}
-
-sal_Int16 SAL_CALL ThumbnailViewAcc::getAccessibleRole()
-{
-    ThrowIfDisposed();
-    // #i73746# As the Java Access Bridge (v 2.0.1) uses "managesDescendants"
-    // always if the role is LIST, we need a different role in this case
-    return accessibility::AccessibleRole::LIST;
-}
-
-OUString SAL_CALL ThumbnailViewAcc::getAccessibleDescription()
-{
-    ThrowIfDisposed();
-    return "ThumbnailView";
-}
-
-OUString SAL_CALL ThumbnailViewAcc::getAccessibleName()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    OUString aRet;
-
-    if ( mpParent )
-    {
-        aRet = mpParent->GetAccessibleName();
-        if (aRet.isEmpty())
-        {
-            vcl::Window* pLabel = mpParent->GetAccessibleRelationLabeledBy();
-            if (pLabel && pLabel != mpParent)
-                aRet = OutputDevice::GetNonMnemonicString( pLabel->GetText() );
-        }
-    }
-
-    return aRet;
-}
-
-uno::Reference< accessibility::XAccessibleRelationSet > SAL_CALL ThumbnailViewAcc::getAccessibleRelationSet()
-{
-    ThrowIfDisposed();
-    return uno::Reference< accessibility::XAccessibleRelationSet >();
-}
-
-uno::Reference< accessibility::XAccessibleStateSet > SAL_CALL ThumbnailViewAcc::getAccessibleStateSet()
-{
-    ThrowIfDisposed();
-    ::utl::AccessibleStateSetHelper* pStateSet = new ::utl::AccessibleStateSetHelper();
-
-    // Set some states.
-    pStateSet->AddState (accessibility::AccessibleStateType::ENABLED);
-    pStateSet->AddState (accessibility::AccessibleStateType::SENSITIVE);
-    pStateSet->AddState (accessibility::AccessibleStateType::SHOWING);
-    pStateSet->AddState (accessibility::AccessibleStateType::VISIBLE);
-    pStateSet->AddState (accessibility::AccessibleStateType::MANAGES_DESCENDANTS);
-    pStateSet->AddState (accessibility::AccessibleStateType::FOCUSABLE);
-    if (mbIsFocused)
-        pStateSet->AddState (accessibility::AccessibleStateType::FOCUSED);
-
-    return pStateSet;
-}
-
-lang::Locale SAL_CALL ThumbnailViewAcc::getLocale()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    uno::Reference< accessibility::XAccessible >    xParent( getAccessibleParent() );
-    lang::Locale                                    aRet( "", "", "" );
-
-    if( xParent.is() )
-    {
-        uno::Reference< accessibility::XAccessibleContext > xParentContext( xParent->getAccessibleContext() );
-
-        if( xParentContext.is() )
-            aRet = xParentContext->getLocale ();
-    }
-
-    return aRet;
-}
-
-void SAL_CALL ThumbnailViewAcc::addAccessibleEventListener( const uno::Reference< accessibility::XAccessibleEventListener >& rxListener )
-{
-    ThrowIfDisposed();
-    ::osl::MutexGuard aGuard (m_aMutex);
-
-    if( !rxListener.is() )
-        return;
-
-    bool bFound = false;
-
-    for (auto const& eventListener : mxEventListeners)
-    {
-        if( eventListener == rxListener )
-        {
-            bFound = true;
-            break;
-        }
-    }
-
-    if (!bFound)
-        mxEventListeners.push_back( rxListener );
-}
-
-void SAL_CALL ThumbnailViewAcc::removeAccessibleEventListener( const uno::Reference< accessibility::XAccessibleEventListener >& rxListener )
-{
-    ThrowIfDisposed();
-    ::osl::MutexGuard aGuard (m_aMutex);
-
-    if( rxListener.is() )
-    {
-        std::vector< uno::Reference< accessibility::XAccessibleEventListener > >::iterator aIter =
-            std::find(mxEventListeners.begin(), mxEventListeners.end(), rxListener);
-
-        if (aIter != mxEventListeners.end())
-            mxEventListeners.erase( aIter );
-    }
-}
-
-sal_Bool SAL_CALL ThumbnailViewAcc::containsPoint( const awt::Point& aPoint )
-{
-    ThrowIfDisposed();
-    const awt::Rectangle    aRect( getBounds() );
-    const Point             aSize( aRect.Width, aRect.Height );
-    const Point             aNullPoint, aTestPoint( aPoint.X, aPoint.Y );
-
-    return tools::Rectangle( aNullPoint, aSize ).IsInside( aTestPoint );
-}
-
-uno::Reference< accessibility::XAccessible > SAL_CALL ThumbnailViewAcc::getAccessibleAtPoint( const awt::Point& aPoint )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    const sal_uInt16                                    nItemId = mpParent->GetItemId( Point( aPoint.X, aPoint.Y ) );
-    uno::Reference< accessibility::XAccessible >    xRet;
-
-    if ( nItemId )
-    {
-        const size_t nItemPos = mpParent->GetItemPos( nItemId );
-
-        if( THUMBNAILVIEW_ITEM_NONEITEM != nItemPos )
-        {
-            ThumbnailViewItem *const pItem = mpParent->mFilteredItemList[nItemPos];
-            xRet = pItem->GetAccessible( /*bIsTransientChildrenDisabled*/false );
-        }
-    }
-
-    return xRet;
-}
-
-awt::Rectangle SAL_CALL ThumbnailViewAcc::getBounds()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    const Point         aOutPos( mpParent->GetPosPixel() );
-    const Size          aOutSize( mpParent->GetOutputSizePixel() );
-    awt::Rectangle      aRet;
-
-    aRet.X = aOutPos.X();
-    aRet.Y = aOutPos.Y();
-    aRet.Width = aOutSize.Width();
-    aRet.Height = aOutSize.Height();
-
-    return aRet;
-}
-
-awt::Point SAL_CALL ThumbnailViewAcc::getLocation()
-{
-    ThrowIfDisposed();
-    const awt::Rectangle    aRect( getBounds() );
-    awt::Point              aRet;
-
-    aRet.X = aRect.X;
-    aRet.Y = aRect.Y;
-
-    return aRet;
-}
-
-awt::Point SAL_CALL ThumbnailViewAcc::getLocationOnScreen()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    const Point         aScreenPos( mpParent->OutputToAbsoluteScreenPixel( Point() ) );
-    awt::Point          aRet;
-
-    aRet.X = aScreenPos.X();
-    aRet.Y = aScreenPos.Y();
-
-    return aRet;
-}
-
-awt::Size SAL_CALL ThumbnailViewAcc::getSize()
-{
-    ThrowIfDisposed();
-    const awt::Rectangle    aRect( getBounds() );
-    awt::Size               aRet;
-
-    aRet.Width = aRect.Width;
-    aRet.Height = aRect.Height;
-
-    return aRet;
-}
-
-void SAL_CALL ThumbnailViewAcc::grabFocus()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    mpParent->GrabFocus();
-}
-
-sal_Int32 SAL_CALL ThumbnailViewAcc::getForeground(  )
-{
-    ThrowIfDisposed();
-    Color nColor = Application::GetSettings().GetStyleSettings().GetWindowTextColor();
-    return static_cast<sal_Int32>(nColor);
-}
-
-sal_Int32 SAL_CALL ThumbnailViewAcc::getBackground(  )
-{
-    ThrowIfDisposed();
-    Color nColor = Application::GetSettings().GetStyleSettings().GetWindowColor();
-    return static_cast<sal_Int32>(nColor);
-}
-
-void SAL_CALL ThumbnailViewAcc::selectAccessibleChild( sal_Int32 nChildIndex )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    ThumbnailViewItem* pItem = getItem (sal::static_int_cast< sal_uInt16 >(nChildIndex));
-
-    if(pItem == nullptr)
-        throw lang::IndexOutOfBoundsException();
-
-    mpParent->SelectItem( pItem->mnId );
-}
-
-sal_Bool SAL_CALL ThumbnailViewAcc::isAccessibleChildSelected( sal_Int32 nChildIndex )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    ThumbnailViewItem* pItem = getItem (sal::static_int_cast< sal_uInt16 >(nChildIndex));
-
-    if (pItem == nullptr)
-        throw lang::IndexOutOfBoundsException();
-
-    return mpParent->IsItemSelected( pItem->mnId );
-}
-
-void SAL_CALL ThumbnailViewAcc::clearAccessibleSelection()
-{
-    ThrowIfDisposed();
-}
-
-void SAL_CALL ThumbnailViewAcc::selectAllAccessibleChildren()
-{
-    ThrowIfDisposed();
-    // unsupported due to single selection only
-}
-
-sal_Int32 SAL_CALL ThumbnailViewAcc::getSelectedAccessibleChildCount()
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    sal_Int32           nRet = 0;
-
-    for( sal_uInt16 i = 0, nCount = getItemCount(); i < nCount; i++ )
-    {
-        ThumbnailViewItem* pItem = getItem (i);
-
-        if( pItem && mpParent->IsItemSelected( pItem->mnId ) )
-            ++nRet;
-    }
-
-    return nRet;
-}
-
-uno::Reference< accessibility::XAccessible > SAL_CALL ThumbnailViewAcc::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    uno::Reference< accessibility::XAccessible >    xRet;
-
-    for( sal_uInt16 i = 0, nCount = getItemCount(), nSel = 0; ( i < nCount ) && !xRet.is(); i++ )
-    {
-        ThumbnailViewItem* pItem = getItem(i);
-
-        if( pItem && mpParent->IsItemSelected( pItem->mnId ) && ( nSelectedChildIndex == static_cast< sal_Int32 >( nSel++ ) ) )
-            xRet = pItem->GetAccessible( /*bIsTransientChildrenDisabled*/false );
-    }
-
-    return xRet;
-}
-
-void SAL_CALL ThumbnailViewAcc::deselectAccessibleChild( sal_Int32 )
-{
-    ThrowIfDisposed();
-    const SolarMutexGuard aSolarGuard;
-    // Because of the single selection we can reset the whole selection when
-    // the specified child is currently selected.
-//FIXME TODO    if (isAccessibleChildSelected(nChildIndex))
-//FIXME TODO        ;
-}
-
-sal_Int64 SAL_CALL ThumbnailViewAcc::getSomething( const uno::Sequence< sal_Int8 >& rId )
-{
-    sal_Int64 nRet;
-
-    if( isUnoTunnelId<ThumbnailViewAcc>(rId) )
-        nRet = reinterpret_cast< sal_Int64 >( this );
-    else
-        nRet = 0;
-
-    return nRet;
-}
-
-void SAL_CALL ThumbnailViewAcc::disposing()
-{
-    ::std::vector<uno::Reference<accessibility::XAccessibleEventListener> > aListenerListCopy;
-
-    {
-        // Make a copy of the list and clear the original.
-        const SolarMutexGuard aSolarGuard;
-        ::osl::MutexGuard aGuard (m_aMutex);
-        aListenerListCopy = mxEventListeners;
-        mxEventListeners.clear();
-
-        // Reset the pointer to the parent.  It has to be the one who has
-        // disposed us because he is dying.
-        mpParent = nullptr;
-    }
-
-    // Inform all listeners that this objects is disposing.
-    lang::EventObject aEvent (static_cast<accessibility::XAccessible*>(this));
-    for (auto const& listener : aListenerListCopy)
-    {
-        try
-        {
-            listener->disposing (aEvent);
-        }
-        catch(const uno::Exception&)
-        {
-            // Ignore exceptions.
-        }
-    }
-}
-
-sal_uInt16 ThumbnailViewAcc::getItemCount() const
-{
-    return mpParent->ImplGetVisibleItemCount();
-}
-
-ThumbnailViewItem* ThumbnailViewAcc::getItem (sal_uInt16 nIndex) const
-{
-    return mpParent->ImplGetVisibleItem (nIndex);
-}
-
-void ThumbnailViewAcc::ThrowIfDisposed()
-{
-    if (rBHelper.bDisposed || rBHelper.bInDispose)
-    {
-        SAL_WARN("sfx", "Calling disposed object. Throwing exception:");
-        throw lang::DisposedException (
-            "object has been already disposed",
-            static_cast<uno::XWeak*>(this));
-    }
-    else
-    {
-        DBG_ASSERT (mpParent!=nullptr, "ValueSetAcc not disposed but mpParent == NULL");
-    }
-}
-
-SfxThumbnailViewAcc::SfxThumbnailViewAcc( SfxThumbnailView* pParent ) :
-    ValueSetAccComponentBase (m_aMutex),
-    mpParent( pParent )
-{
-}
-
-SfxThumbnailViewAcc::~SfxThumbnailViewAcc()
-{
-}
-
-namespace
-{
-    class theSfxValueSetAccUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theSfxValueSetAccUnoTunnelId > {};
-}
-
-const uno::Sequence< sal_Int8 >& SfxThumbnailViewAcc::getUnoTunnelId()
-{
-    return theSfxValueSetAccUnoTunnelId::get().getSeq();
-}
-
 uno::Reference< accessibility::XAccessibleContext > SAL_CALL SfxThumbnailViewAcc::getAccessibleContext()
 {
     ThrowIfDisposed();
@@ -1026,6 +526,31 @@ void ThumbnailViewItemAcc::ParentDestroyed()
     mpParent = nullptr;
 }
 
+void SfxThumbnailViewAcc::FireAccessibleEvent( short nEventId, const uno::Any& rOldValue, const uno::Any& rNewValue )
+{
+    if( !nEventId )
+        return;
+
+    ::std::vector< uno::Reference< accessibility::XAccessibleEventListener > > aTmpListeners( mxEventListeners );
+    accessibility::AccessibleEventObject aEvtObject;
+
+    aEvtObject.EventId = nEventId;
+    aEvtObject.Source = static_cast<uno::XWeak*>(this);
+    aEvtObject.NewValue = rNewValue;
+    aEvtObject.OldValue = rOldValue;
+
+    for (auto const& tmpListener : aTmpListeners)
+    {
+        try
+        {
+            tmpListener->notifyEvent( aEvtObject );
+        }
+        catch(const uno::Exception&)
+        {
+        }
+    }
+}
+
 namespace
 {
     class theValueItemAccUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theValueItemAccUnoTunnelId > {};
@@ -1049,6 +574,30 @@ ThumbnailViewItemAcc* ThumbnailViewItemAcc::getImplementation( const uno::Refere
     }
 }
 
+void SfxThumbnailViewAcc::GetFocus()
+{
+    mbIsFocused = true;
+
+    // Broadcast the state change.
+    css::uno::Any aOldState, aNewState;
+    aNewState <<= css::accessibility::AccessibleStateType::FOCUSED;
+    FireAccessibleEvent(
+        css::accessibility::AccessibleEventId::STATE_CHANGED,
+        aOldState, aNewState);
+}
+
+void SfxThumbnailViewAcc::LoseFocus()
+{
+    mbIsFocused = false;
+
+    // Broadcast the state change.
+    css::uno::Any aOldState, aNewState;
+    aOldState <<= css::accessibility::AccessibleStateType::FOCUSED;
+    FireAccessibleEvent(
+        css::accessibility::AccessibleEventId::STATE_CHANGED,
+        aOldState, aNewState);
+}
+
 uno::Reference< accessibility::XAccessibleContext > SAL_CALL ThumbnailViewItemAcc::getAccessibleContext()
 {
     return this;
diff --git a/sfx2/source/control/thumbnailviewacc.hxx b/sfx2/source/control/thumbnailviewacc.hxx
index 1aaed600a9b0..9679eaa3b8fa 100644
--- a/sfx2/source/control/thumbnailviewacc.hxx
+++ b/sfx2/source/control/thumbnailviewacc.hxx
@@ -35,7 +35,6 @@
 #include <vcl/vclptr.hxx>
 #include <vector>
 
-class ThumbnailView;
 class SfxThumbnailView;
 class ThumbnailViewItem;
 
@@ -48,14 +47,14 @@ typedef ::cppu::WeakComponentImplHelper<
     css::lang::XUnoTunnel >
     ValueSetAccComponentBase;
 
-class ThumbnailViewAcc :
+class SfxThumbnailViewAcc :
     public ::cppu::BaseMutex,
     public ValueSetAccComponentBase
 {
 public:
 
-    ThumbnailViewAcc( ThumbnailView* pParent );
-    virtual ~ThumbnailViewAcc() override;
+    SfxThumbnailViewAcc( SfxThumbnailView* pParent );
+    virtual ~SfxThumbnailViewAcc() override;
 
     void FireAccessibleEvent( short nEventId,
                               const css::uno::Any& rOldValue,
@@ -63,10 +62,9 @@ public:
 
     bool HasAccessibleListeners() const { return( mxEventListeners.size() > 0 ); }
 
-    static ThumbnailViewAcc* getImplementation( const css::uno::Reference< css::uno::XInterface >& rxData ) throw();
+    static SfxThumbnailViewAcc* getImplementation( const css::uno::Reference< css::uno::XInterface >& rxData ) throw();
 
 public:
-
     /** Called by the corresponding ValueSet when it gets the focus.
         Stores the new focus state and broadcasts a state change event.
     */
@@ -123,7 +121,7 @@ public:
 private:
     ::std::vector< css::uno::Reference<
         css::accessibility::XAccessibleEventListener > >   mxEventListeners;
-    VclPtr<ThumbnailView>                                               mpParent;
+    SfxThumbnailView*                                               mpParent;
     /// The current FOCUSED state.
     bool mbIsFocused;
 
@@ -157,95 +155,6 @@ private:
     void ThrowIfDisposed();
 };
 
-class SfxThumbnailViewAcc :
-    public ::cppu::BaseMutex,
-    public ValueSetAccComponentBase
-{
-public:
-
-    SfxThumbnailViewAcc( SfxThumbnailView* pParent );
-    virtual ~SfxThumbnailViewAcc() override;
-
-public:
-
-    // XAccessible
-    virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext(  ) override;
-
-    // XAccessibleEventBroadcaster
-    virtual void SAL_CALL addAccessibleEventListener( const css::uno::Reference< css::accessibility::XAccessibleEventListener >& xListener ) override;
-    virtual void SAL_CALL removeAccessibleEventListener( const css::uno::Reference< css::accessibility::XAccessibleEventListener >& xListener ) override;
-
-    // XAccessibleContext
-    virtual sal_Int32 SAL_CALL getAccessibleChildCount(  ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleParent(  ) override;
-    virtual sal_Int32 SAL_CALL getAccessibleIndexInParent(  ) override;
-    virtual sal_Int16 SAL_CALL getAccessibleRole(  ) override;
-    virtual OUString SAL_CALL getAccessibleDescription(  ) override;
-    virtual OUString SAL_CALL getAccessibleName(  ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet(  ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet(  ) override;
-    virtual css::lang::Locale SAL_CALL getLocale(  ) override;
-
-    // XAccessibleComponent
-    virtual sal_Bool SAL_CALL containsPoint( const css::awt::Point& aPoint ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const css::awt::Point& aPoint ) override;
-    virtual css::awt::Rectangle SAL_CALL getBounds(  ) override;
-    virtual css::awt::Point SAL_CALL getLocation(  ) override;
-    virtual css::awt::Point SAL_CALL getLocationOnScreen(  ) override;
-    virtual css::awt::Size SAL_CALL getSize(  ) override;
-    virtual void SAL_CALL grabFocus(  ) override;
-    virtual sal_Int32 SAL_CALL getForeground(  ) override;
-    virtual sal_Int32 SAL_CALL getBackground(  ) override;
-
-    // XAccessibleSelection
-    virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) override;
-    virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) override;
-    virtual void SAL_CALL clearAccessibleSelection(  ) override;
-    virtual void SAL_CALL selectAllAccessibleChildren(  ) override;
-    virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount(  ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) override;
-    virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) override;
-
-    // XUnoTunnel
-    static const css::uno::Sequence< sal_Int8 >& getUnoTunnelId();
-    virtual sal_Int64 SAL_CALL getSomething( const css::uno::Sequence< sal_Int8 >& rId ) override;
-
-private:
-    ::std::vector< css::uno::Reference<
-        css::accessibility::XAccessibleEventListener > >   mxEventListeners;
-    SfxThumbnailView*                                               mpParent;
-
-    /** Tell all listeners that the object is dying.  This callback is
-        usually called from the WeakComponentImplHelper class.
-    */
-    virtual void SAL_CALL disposing() override;
-
-    /** Return the number of items.  This takes the None-Item into account.
-    */
-    sal_uInt16 getItemCount() const;
-
-    /** Return the item associated with the given index.  The None-Item is
-        taken into account which, when present, is taken to be the first
-        (with index 0) item.
-        @param nIndex
-            Index of the item to return.  The index 0 denotes the None-Item
-            when present.
-        @return
-            Returns NULL when the given index is out of range.
-    */
-    ThumbnailViewItem* getItem (sal_uInt16 nIndex) const;
-
-    /** Check whether or not the object has been disposed (or is in the
-        state of being disposed).  If that is the case then
-        DisposedException is thrown to inform the (indirect) caller of the
-        foul deed.
-
-        @throws css::lang::DisposedException
-    */
-    void ThrowIfDisposed();
-};
-
 
 class ThumbnailViewItemAcc : public ::cppu::WeakImplHelper< css::accessibility::XAccessible,
                                                      css::accessibility::XAccessibleEventBroadcaster,


More information about the Libreoffice-commits mailing list