From 48d00430e2b1ceb16a0c377c4aa6c40b733eb529 Mon Sep 17 00:00:00 2001 From: Krisztian Pinter Date: Mon, 2 Sep 2013 15:46:23 +0200 Subject: startcenter: Add tooltips for thumbnails with long filenames Change-Id: Id9bab881f74b40691cb3e7364af78758d769a8a6 Reviewed-on: https://gerrit.libreoffice.org/5756 Reviewed-by: Krisztian Pinter Tested-by: Krisztian Pinter --- sfx2/source/control/thumbnailview.cxx | 32 +++++++++++++++++++++++++++++++- sfx2/source/dialog/backingwindow.cxx | 2 ++ 2 files changed, 33 insertions(+), 1 deletion(-) (limited to 'sfx2') diff --git a/sfx2/source/control/thumbnailview.cxx b/sfx2/source/control/thumbnailview.cxx index b80086bf02ae..18d14a1a8f7e 100644 --- a/sfx2/source/control/thumbnailview.cxx +++ b/sfx2/source/control/thumbnailview.cxx @@ -83,6 +83,30 @@ ThumbnailView::~ThumbnailView() ImplDeleteItems(); } +void ThumbnailView::MouseMove( const MouseEvent& rMEvt ) +{ + if ( !mbShowTooltips ) + return; + + (void) rMEvt; // unused parameter + ThumbnailViewItem *pItem; + size_t nItemCount = mFilteredItemList.size(); + bool bFound = false; + Point aPoint = GetPointerState().maPos; + + for ( size_t i = 0; i < nItemCount && !bFound; i++ ) + { + pItem = mFilteredItemList[i]; + if ( pItem->mbVisible && pItem->getDrawArea().IsInside(aPoint) ) + bFound = true; + } + + if ( bFound ) + SetQuickHelpText(pItem->maTitle); + else + SetQuickHelpText(""); +} + void ThumbnailView::AppendItem(ThumbnailViewItem *pItem) { if (maFilterFunc(pItem)) @@ -110,7 +134,7 @@ void ThumbnailView::ImplInit() mnHeaderHeight = 0; mnItemWidth = 0; mnItemHeight = 0; - mnItemPadding = 0; + mnItemPadding = 0; mnVisLines = 0; mnLines = 0; mnFirstLine = 0; @@ -119,6 +143,7 @@ void ThumbnailView::ImplInit() mnSpacing = 0; mbScroll = false; mbHasVisibleItems = false; + mbShowTooltips = false; maFilterFunc = ViewFilterAll(); maColor = GetSettings().GetStyleSettings().GetFieldColor(); mpStartSelRange = mFilteredItemList.end(); @@ -1210,6 +1235,11 @@ OUString ThumbnailView::GetItemText( sal_uInt16 nItemId ) const return OUString(); } +void ThumbnailView::ShowTooltips( bool bShowTooltips ) +{ + mbShowTooltips = bShowTooltips; +} + void ThumbnailView::SetColor( const Color& rColor ) { maColor = rColor; diff --git a/sfx2/source/dialog/backingwindow.cxx b/sfx2/source/dialog/backingwindow.cxx index 40d04d74c6a9..e9512912dbc7 100644 --- a/sfx2/source/dialog/backingwindow.cxx +++ b/sfx2/source/dialog/backingwindow.cxx @@ -255,6 +255,7 @@ void BackingWindow::initControls() // of setupModuleTab. TYPE_OTHER is always added. mpAllRecentThumbnails->mnFileTypes |= TYPE_OTHER; mpAllRecentThumbnails->loadRecentDocs(); + mpAllRecentThumbnails->ShowTooltips( true ); setupButton( mpWriterButton ); setupButton( mpDrawButton ); @@ -304,6 +305,7 @@ void BackingWindow::setupModuleTab(const OString& rTabName, RecentDocsView* pRec mpAllRecentThumbnails-> mnFileTypes |= nFileTypes; pRecView->mnFileTypes |= nFileTypes; pRecView->loadRecentDocs(); + pRecView->ShowTooltips( true ); } } -- cgit