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

Akshay Deep akshaydeepiitr at gmail.com
Wed May 25 08:42:27 UTC 2016


 include/sfx2/templateproperties.hxx          |    2 -
 include/sfx2/templateviewitem.hxx            |    7 -----
 include/sfx2/thumbnailviewitem.hxx           |    6 ++++
 sfx2/source/control/templateabstractview.cxx |    1 
 sfx2/source/control/templatelocalview.cxx    |    9 ++++---
 sfx2/source/control/templatesearchview.cxx   |    2 -
 sfx2/source/control/templateviewitem.cxx     |   33 ---------------------------
 sfx2/source/control/thumbnailviewitem.cxx    |    5 ----
 sfx2/source/doc/templatedlg.cxx              |   12 +++++++++
 9 files changed, 27 insertions(+), 50 deletions(-)

New commits:
commit 5b42c982c10a3a877f1ca9d425b8c0c8e7723520
Author: Akshay Deep <akshaydeepiitr at gmail.com>
Date:   Mon May 23 13:17:14 2016 +0530

    Template Manager: Tooltips to display category
    
    Display categories in search view or all application filter
    
    Change-Id: If4a14ef822a84b4a651ce47d0a448767cfbce80b
    Reviewed-on: https://gerrit.libreoffice.org/25352
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt at cib.de>

diff --git a/include/sfx2/templateproperties.hxx b/include/sfx2/templateproperties.hxx
index 60a4065..ea2831b 100644
--- a/include/sfx2/templateproperties.hxx
+++ b/include/sfx2/templateproperties.hxx
@@ -15,12 +15,12 @@
 
 struct TemplateItemProperties
 {
-    bool aIsFolder;
     sal_uInt16 nId;         ///< Index for ThumbnailView
     sal_uInt16 nDocId;      ///< Index based on SfxTemplateDocument
     sal_uInt16 nRegionId;
     OUString aName;
     OUString aPath;
+    OUString aRegionName;
     BitmapEx aThumbnail;
 };
 
diff --git a/include/sfx2/templateviewitem.hxx b/include/sfx2/templateviewitem.hxx
index abfee23..c7e1b93 100644
--- a/include/sfx2/templateviewitem.hxx
+++ b/include/sfx2/templateviewitem.hxx
@@ -24,12 +24,6 @@ public:
 
     const OUString& getPath () const { return maPath; }
 
-    void setSubTitle (const OUString &rTitle) { maSubTitle = rTitle; }
-
-    virtual void calculateItemsPosition (const long nThumbnailHeight, const long nDisplayHeight,
-                                         const long nPadding, sal_uInt32 nMaxTextLength,
-                                         const ThumbnailItemAttributes *pAttrs) override;
-
     virtual void Paint (drawinglayer::processor2d::BaseProcessor2D *pProcessor,
                         const ThumbnailItemAttributes *pAttrs) override;
 
@@ -39,7 +33,6 @@ public:
 private:
 
     OUString maPath;
-    OUString maSubTitle;
 
     Point maSubTitlePos;
 };
diff --git a/include/sfx2/thumbnailviewitem.hxx b/include/sfx2/thumbnailviewitem.hxx
index 2cdf02f..5ca9f3e 100644
--- a/include/sfx2/thumbnailviewitem.hxx
+++ b/include/sfx2/thumbnailviewitem.hxx
@@ -76,6 +76,7 @@ public:
     bool mbHover;
     BitmapEx maPreview1;
     OUString maTitle;
+    OUString maHelpText;
     css::uno::Reference< css::accessibility::XAccessible > mxAcc;
 
     ThumbnailViewItem (ThumbnailView &rView, sal_uInt16 nId);
@@ -101,7 +102,10 @@ public:
     virtual Rectangle updateHighlight(bool bVisible, const Point& rPoint);
 
     /// Text to be used for the tooltip.
-    virtual OUString getHelpText() const;
+
+    void setHelpText (const OUString &sText) { maHelpText = sText; }
+
+    virtual OUString getHelpText() const { return maHelpText; };
 
     virtual void setEditTitle (bool edit, bool bChangeFocus = true);
     void updateTitleEditSize ();
diff --git a/sfx2/source/control/templateabstractview.cxx b/sfx2/source/control/templateabstractview.cxx
index ff39a25..117d04b 100644
--- a/sfx2/source/control/templateabstractview.cxx
+++ b/sfx2/source/control/templateabstractview.cxx
@@ -139,6 +139,7 @@ void TemplateAbstractView::insertItems(const std::vector<TemplateItemProperties>
         pChild->mnRegionId = pCur->nRegionId;
         pChild->maTitle = pCur->aName;
         pChild->setPath(pCur->aPath);
+        pChild->setHelpText(pCur->aRegionName);
         pChild->maPreview1 = pCur->aThumbnail;
 
         if ( pCur->aThumbnail.IsEmpty() )
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index 2ff233f..c0c2b3a 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -93,12 +93,12 @@ void TemplateLocalView::Populate ()
             OUString aURL = mpDocTemplates->GetPath(i,j);
 
             TemplateItemProperties aProperties;
-            aProperties.aIsFolder = false;          // Flat hierarchy for the local filesystem (no nested folders)
             aProperties.nId = j+1;
             aProperties.nDocId = j;
             aProperties.nRegionId = i;
             aProperties.aName = aName;
             aProperties.aPath = aURL;
+            aProperties.aRegionName = aRegionName;
             aProperties.aThumbnail = TemplateAbstractView::fetchThumbnail(aURL,
                                                                           getThumbnailWidth(),
                                                                           getThumbnailHeight());
@@ -471,6 +471,7 @@ bool TemplateLocalView::moveTemplate (const ThumbnailViewItem *pItem, const sal_
         aTemplateItem.nRegionId = nTargetRegion;
         aTemplateItem.aName = pViewItem->maTitle;
         aTemplateItem.aPath = mpDocTemplates->GetPath(nTargetRegion,nTargetIdx);
+        aTemplateItem.aRegionName = pViewItem->maHelpText;
         aTemplateItem.aThumbnail = pViewItem->maPreview1;
 
         pTarget->maTemplates.push_back(aTemplateItem);
@@ -569,6 +570,7 @@ bool TemplateLocalView::moveTemplates(const std::set<const ThumbnailViewItem*, s
                 aTemplateItem.nRegionId = nTargetRegion;
                 aTemplateItem.aName = pViewItem->maTitle;
                 aTemplateItem.aPath = mpDocTemplates->GetPath(nTargetRegion,nTargetIdx);
+                aTemplateItem.aRegionName = pViewItem->maHelpText;
                 aTemplateItem.aThumbnail = pViewItem->maPreview1;
 
                 pTarget->maTemplates.push_back(aTemplateItem);
@@ -653,6 +655,7 @@ bool TemplateLocalView::copyFrom(const sal_uInt16 nRegionItemId, const BitmapEx
                 aTemplate.nDocId = nDocId;
                 aTemplate.nRegionId = nRegionId;
                 aTemplate.aName = aPath;
+                aTemplate.aRegionName = getRegionName(nRegionId);
                 aTemplate.aThumbnail = rThumbnail;
                 aTemplate.aPath = mpDocTemplates->GetPath(nRegionId,nDocId);
 
@@ -690,7 +693,6 @@ bool TemplateLocalView::copyFrom(const OUString &rPath)
         return false;
 
     TemplateItemProperties aTemplate;
-    aTemplate.aIsFolder = false;
     aTemplate.nId = nId;
     aTemplate.nDocId = nDocId;
     aTemplate.nRegionId = nRegionId;
@@ -699,6 +701,7 @@ bool TemplateLocalView::copyFrom(const OUString &rPath)
                                                                 TEMPLATE_THUMBNAIL_MAX_WIDTH,
                                                                 TEMPLATE_THUMBNAIL_MAX_HEIGHT);
     aTemplate.aPath = rPath;
+    aTemplate.aRegionName = getRegionName(nRegionId);
 
     pRegItem->maTemplates.push_back(aTemplate);
 
@@ -723,7 +726,6 @@ bool TemplateLocalView::copyFrom (TemplateContainerItem *pItem, const OUString &
     if (mpDocTemplates->CopyFrom(nRegionId,nDocId,aPath))
     {
         TemplateItemProperties aTemplate;
-        aTemplate.aIsFolder = false;
         aTemplate.nId = nId;
         aTemplate.nDocId = nDocId;
         aTemplate.nRegionId = nRegionId;
@@ -732,6 +734,7 @@ bool TemplateLocalView::copyFrom (TemplateContainerItem *pItem, const OUString &
                                                                     TEMPLATE_THUMBNAIL_MAX_WIDTH,
                                                                     TEMPLATE_THUMBNAIL_MAX_HEIGHT);
         aTemplate.aPath = rPath;
+        aTemplate.aRegionName = getRegionName(nRegionId);
 
         pItem->maTemplates.push_back(aTemplate);
 
diff --git a/sfx2/source/control/templatesearchview.cxx b/sfx2/source/control/templatesearchview.cxx
index 3819013..9f85171 100644
--- a/sfx2/source/control/templatesearchview.cxx
+++ b/sfx2/source/control/templatesearchview.cxx
@@ -136,7 +136,7 @@ void TemplateSearchView::AppendItem(sal_uInt16 nAssocItemId, sal_uInt16 nRegionI
         pItem->maPreview1 = getDefaultThumbnail(rPath);
 
     pItem->maTitle = rTitle;
-    pItem->setSubTitle(rSubtitle);
+    pItem->setHelpText(rSubtitle);
     pItem->setPath(rPath);
 
     ThumbnailView::AppendItem(pItem);
diff --git a/sfx2/source/control/templateviewitem.cxx b/sfx2/source/control/templateviewitem.cxx
index dbcafec..047fec9 100644
--- a/sfx2/source/control/templateviewitem.cxx
+++ b/sfx2/source/control/templateviewitem.cxx
@@ -21,8 +21,6 @@
 #include <vcl/button.hxx>
 #include <vcl/graph.hxx>
 
-#define SUBTITLE_SCALE_FACTOR 0.85
-
 using namespace basegfx;
 using namespace basegfx::tools;
 using namespace drawinglayer::attribute;
@@ -39,36 +37,12 @@ TemplateViewItem::~TemplateViewItem ()
 {
 }
 
-void TemplateViewItem::calculateItemsPosition(const long nThumbnailHeight, const long nDisplayHeight,
-                                              const long nPadding, sal_uInt32 nMaxTextLength,
-                                              const ThumbnailItemAttributes *pAttrs)
-{
-    ThumbnailViewItem::calculateItemsPosition(nThumbnailHeight,nDisplayHeight,nPadding,nMaxTextLength, pAttrs);
-
-    if (!maSubTitle.isEmpty())
-    {
-        Size aRectSize = maDrawArea.GetSize();
-
-        drawinglayer::primitive2d::TextLayouterDevice aTextDev;
-        aTextDev.setFontAttribute(pAttrs->aFontAttr,
-                                  pAttrs->aFontSize.getX(), pAttrs->aFontSize.getY(),
-                                  css::lang::Locale() );
-
-        long nSpace = (nDisplayHeight + nPadding - 2*aTextDev.getTextHeight()) / 3;
-
-        // Set subtitle position
-        maSubTitlePos.setY(maTextPos.getY() + nSpace + aTextDev.getTextHeight());
-        maSubTitlePos.setX(maDrawArea.Left() +
-                           (aRectSize.Width() - aTextDev.getTextWidth(maSubTitle,0,nMaxTextLength)*SUBTITLE_SCALE_FACTOR)/2);
-    }
-}
-
 void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProcessor,
                                    const ThumbnailItemAttributes *pAttrs)
 {
     BColor aFillColor = pAttrs->aFillColor;
 
-    int nCount = maSubTitle.isEmpty() ? 5 : 6;
+    int nCount = 5;
     drawinglayer::primitive2d::Primitive2DContainer aSeq(nCount);
     double fTransparence = 0.0;
 
@@ -118,11 +92,6 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
 
     addTextPrimitives(maTitle, pAttrs, maTextPos, aSeq);
 
-    if (!maSubTitle.isEmpty())
-    {
-        addTextPrimitives(maSubTitle, pAttrs, maSubTitlePos, aSeq);
-    }
-
     pProcessor->process(aSeq);
 }
 
diff --git a/sfx2/source/control/thumbnailviewitem.cxx b/sfx2/source/control/thumbnailviewitem.cxx
index fd75498..c41ba8c 100644
--- a/sfx2/source/control/thumbnailviewitem.cxx
+++ b/sfx2/source/control/thumbnailviewitem.cxx
@@ -163,11 +163,6 @@ Rectangle ThumbnailViewItem::updateHighlight(bool bVisible, const Point& rPoint)
     return Rectangle();
 }
 
-OUString ThumbnailViewItem::getHelpText() const
-{
-    return maTitle;
-}
-
 void ThumbnailViewItem::setEditTitle (bool edit, bool bChangeFocus)
 {
     mbEditTitle = edit;
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 2810ef5..3bec66b 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -250,6 +250,7 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg(vcl::Window *parent)
     mpSearchView->setEditTemplateHdl(LINK(this,SfxTemplateManagerDlg, EditTemplateHdl));
     mpSearchView->setDeleteTemplateHdl(LINK(this,SfxTemplateManagerDlg, DeleteTemplateHdl));
     mpSearchView->setDefaultTemplateHdl(LINK(this,SfxTemplateManagerDlg, DefaultTemplateHdl));
+    mpSearchView->ShowTooltips(true);
 
     mpOKButton->SetClickHdl(LINK(this, SfxTemplateManagerDlg, OkClickHdl));
     mpMoveButton->SetClickHdl(LINK(this, SfxTemplateManagerDlg, MoveClickHdl));
@@ -369,6 +370,7 @@ void SfxTemplateManagerDlg::fillFolderComboBox()
             mpCBFolder->InsertEntry(aFolderNames[i], i+1);
     }
     mpCBFolder->SelectEntryPos(0);
+    mpLocalView->ShowTooltips(true);
 }
 
 void SfxTemplateManagerDlg::readSettings ()
@@ -406,6 +408,7 @@ void SfxTemplateManagerDlg::readSettings ()
     {
         //show all categories
         mpCBFolder->SelectEntryPos(0);
+        mpLocalView->ShowTooltips(true);
         mpLocalView->showAllTemplates();
     }
     else
@@ -441,6 +444,7 @@ IMPL_LINK_NOARG_TYPED(SfxTemplateManagerDlg, SelectApplicationHdl, ListBox&, voi
         mpCurView->filterItems(ViewFilter_Application(getCurrentApplicationFilter()));
         mpCurView->showAllTemplates();
         mpCBFolder->SelectEntryPos(0);
+        mpCurView->ShowTooltips(true);
     }
 
     if(mpSearchView->IsVisible())
@@ -453,9 +457,15 @@ IMPL_LINK_NOARG_TYPED(SfxTemplateManagerDlg, SelectRegionHdl, ListBox&, void)
     {
         const OUString sSelectedRegion = mpCBFolder->GetSelectEntry();
         if(mpCBFolder->GetSelectEntryPos() == 0)
+        {
             mpLocalView->showAllTemplates();
+            mpLocalView->ShowTooltips(true);
+        }
         else
+        {
             mpLocalView->showRegion(sSelectedRegion);
+            mpLocalView->ShowTooltips(false);
+        }
     }
 
     if(mpSearchView->IsVisible())
@@ -666,6 +676,7 @@ IMPL_LINK_NOARG_TYPED(SfxTemplateManagerDlg, ImportClickHdl, Button*, void)
 
     mpLocalView->reload();
     mpLocalView->showAllTemplates();
+    mpLocalView->ShowTooltips(true);
     mpCBApp->SelectEntryPos(0);
     mpCBFolder->SelectEntryPos(0);
 }
@@ -1173,6 +1184,7 @@ void SfxTemplateManagerDlg::OnCategoryDelete()
 
     mpLocalView->reload();
     mpLocalView->showAllTemplates();
+    mpLocalView->ShowTooltips(true);
     mpCBApp->SelectEntryPos(0);
     mpCBFolder->SelectEntryPos(0);
 }


More information about the Libreoffice-commits mailing list