[Libreoffice-commits] .: 5 commits - sfx2/inc sfx2/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Dec 10 07:15:47 PST 2012
sfx2/inc/sfx2/templateabstractview.hxx | 6 -
sfx2/inc/sfx2/templatelocalview.hxx | 2
sfx2/inc/sfx2/templatelocalviewitem.hxx | 2
sfx2/inc/sfx2/templateremoteviewitem.hxx | 2
sfx2/inc/sfx2/templateview.hxx | 6 -
sfx2/inc/sfx2/templateviewitem.hxx | 2
sfx2/inc/sfx2/thumbnailview.hxx | 11 --
sfx2/inc/sfx2/thumbnailviewitem.hxx | 18 ---
sfx2/inc/templatedlg.hxx | 5
sfx2/source/control/templateabstractview.cxx | 38 -------
sfx2/source/control/templatelocalview.cxx | 33 +++---
sfx2/source/control/templatelocalviewitem.cxx | 71 ++++++-------
sfx2/source/control/templateremoteview.cxx | 6 -
sfx2/source/control/templateremoteviewitem.cxx | 4
sfx2/source/control/templatesearchview.cxx | 2
sfx2/source/control/templateview.cxx | 6 -
sfx2/source/control/templateviewitem.cxx | 46 ++++----
sfx2/source/control/thumbnailview.cxx | 134 ++++---------------------
sfx2/source/control/thumbnailviewitem.cxx | 77 ++------------
sfx2/source/doc/templatedlg.cxx | 45 +-------
sfx2/source/doc/templatedlg.src | 14 --
sfx2/source/inc/templatesearchviewitem.hxx | 4
22 files changed, 149 insertions(+), 385 deletions(-)
New commits:
commit 1e9261aefd9cf19a12c3ce8fde883b21c3b29fb9
Author: Cédric Bosdonnat <cedric.bosdonnat at free.fr>
Date: Thu Dec 6 18:53:01 2012 +0100
Template manager: paint white background under thumbnails
Change-Id: I55bbda1a7d04e462737b8cf24aba755b8ce96e8a
diff --git a/sfx2/inc/sfx2/thumbnailviewitem.hxx b/sfx2/inc/sfx2/thumbnailviewitem.hxx
index 0a7f08a..9609667 100644
--- a/sfx2/inc/sfx2/thumbnailviewitem.hxx
+++ b/sfx2/inc/sfx2/thumbnailviewitem.hxx
@@ -36,7 +36,7 @@ class Window;
class ThumbnailView;
namespace basegfx {
- class B2DPoint;
+ class B2DPolygon;
}
namespace drawinglayer {
@@ -45,7 +45,7 @@ namespace drawinglayer {
}
namespace primitive2d {
- class BorderLinePrimitive2D;
+ class PolygonHairlinePrimitive2D;
}
}
@@ -107,8 +107,8 @@ public:
virtual void Paint (drawinglayer::processor2d::BaseProcessor2D *pProcessor,
const ThumbnailItemAttributes *pAttrs);
- static drawinglayer::primitive2d::BorderLinePrimitive2D*
- createBorderLine (const basegfx::B2DPoint &rStart, const basegfx::B2DPoint &rEnd);
+ static drawinglayer::primitive2d::PolygonHairlinePrimitive2D*
+ createBorderLine (const basegfx::B2DPolygon &rPolygon);
protected:
diff --git a/sfx2/source/control/templatelocalviewitem.cxx b/sfx2/source/control/templatelocalviewitem.cxx
index 544b86a..54ba379 100644
--- a/sfx2/source/control/templatelocalviewitem.cxx
+++ b/sfx2/source/control/templatelocalviewitem.cxx
@@ -12,8 +12,8 @@
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <drawinglayer/attribute/fillbitmapattribute.hxx>
-#include <drawinglayer/primitive2d/borderlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/fillbitmapprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
#include <drawinglayer/primitive2d/textprimitive2d.hxx>
@@ -42,10 +42,10 @@ void TemplateLocalViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *p
int nSeqSize = 2;
if (!maPreview1.IsEmpty())
- nSeqSize += 5;
+ nSeqSize += 3;
if (!maPreview2.IsEmpty())
- nSeqSize += 5;
+ nSeqSize += 3;
BColor aFillColor = pAttrs->aFillColor;
Primitive2DSequence aSeq(nSeqSize);
@@ -70,6 +70,20 @@ void TemplateLocalViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *p
fScaleX = 0.8f;
fScaleY = 0.8f;
+ float fWidth = aImageSize.Width()*fScaleX;
+ float fHeight = aImageSize.Height()*fScaleY;
+ float fPosX = aPos.getX()+35*fScaleX;
+ float fPosY = aPos.getY()+20*fScaleY;
+
+ B2DPolygon aBounds;
+ aBounds.append(B2DPoint(fPosX,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY+fHeight));
+ aBounds.append(B2DPoint(fPosX,fPosY+fHeight));
+ aBounds.setClosed(true);
+
+ aSeq[nCount++] = Primitive2DReference( new PolyPolygonColorPrimitive2D(
+ B2DPolyPolygon(aBounds), Color(COL_WHITE).getBColor()));
aSeq[nCount++] = Primitive2DReference( new FillBitmapPrimitive2D(
createScaleTranslateB2DHomMatrix(fScaleX,fScaleY,aPos.X(),aPos.Y()),
FillBitmapAttribute(maPreview2,
@@ -79,23 +93,26 @@ void TemplateLocalViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *p
));
// draw thumbnail borders
- float fWidth = aImageSize.Width()*fScaleX;
- float fHeight = aImageSize.Height()*fScaleY;
- float fPosX = aPos.getX()+35*fScaleX;
- float fPosY = aPos.getY()+20*fScaleY;
-
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY),
- B2DPoint(fPosX+fWidth,fPosY)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY),
- B2DPoint(fPosX+fWidth,fPosY+fHeight)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY+fHeight),
- B2DPoint(fPosX,fPosY+fHeight)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY+fHeight),
- B2DPoint(fPosX,fPosY)));
+ aSeq[nCount++] = Primitive2DReference(createBorderLine(aBounds));
}
if (!maPreview1.IsEmpty())
{
+ // draw thumbnail borders
+ float fWidth = aImageSize.Width()*fScaleX;
+ float fHeight = aImageSize.Height()*fScaleY;
+ float fPosX = aPos.getX();
+ float fPosY = aPos.getY();
+
+ B2DPolygon aBounds;
+ aBounds.append(B2DPoint(fPosX,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY+fHeight));
+ aBounds.append(B2DPoint(fPosX,fPosY+fHeight));
+ aBounds.setClosed(true);
+
+ aSeq[nCount++] = Primitive2DReference( new PolyPolygonColorPrimitive2D(
+ B2DPolyPolygon(aBounds), Color(COL_WHITE).getBColor()));
aSeq[nCount++] = Primitive2DReference( new FillBitmapPrimitive2D(
createScaleTranslateB2DHomMatrix(fScaleX,fScaleY,aPos.X(),aPos.Y()),
FillBitmapAttribute(maPreview1,
@@ -104,20 +121,7 @@ void TemplateLocalViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *p
false)
));
- // draw thumbnail borders
- float fWidth = aImageSize.Width()*fScaleX;
- float fHeight = aImageSize.Height()*fScaleY;
- float fPosX = aPos.getX();
- float fPosY = aPos.getY();
-
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY),
- B2DPoint(fPosX+fWidth,fPosY)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY),
- B2DPoint(fPosX+fWidth,fPosY+fHeight)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY+fHeight),
- B2DPoint(fPosX,fPosY+fHeight)));
- aSeq[nCount++] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY+fHeight),
- B2DPoint(fPosX,fPosY)));
+ aSeq[nCount++] = Primitive2DReference(createBorderLine(aBounds));
}
// Draw centered text below thumbnail
diff --git a/sfx2/source/control/templateviewitem.cxx b/sfx2/source/control/templateviewitem.cxx
index e2abf71..51a2862 100644
--- a/sfx2/source/control/templateviewitem.cxx
+++ b/sfx2/source/control/templateviewitem.cxx
@@ -12,8 +12,8 @@
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <drawinglayer/attribute/fillbitmapattribute.hxx>
-#include <drawinglayer/primitive2d/borderlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/fillbitmapprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
#include <drawinglayer/primitive2d/textprimitive2d.hxx>
@@ -68,7 +68,7 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
{
BColor aFillColor = pAttrs->aFillColor;
- int nCount = maSubTitle.isEmpty() ? 7 : 8;
+ int nCount = maSubTitle.isEmpty() ? 5 : 6;
Primitive2DSequence aSeq(nCount);
// Draw background
@@ -82,7 +82,22 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
// Draw thumbnail
Size aImageSize = maPreview1.GetSizePixel();
- aSeq[1] = Primitive2DReference( new FillBitmapPrimitive2D(
+ float fWidth = aImageSize.Width();
+ float fHeight = aImageSize.Height();
+ float fPosX = maPrev1Pos.getX();
+ float fPosY = maPrev1Pos.getY();
+
+ B2DPolygon aBounds;
+ aBounds.append(B2DPoint(fPosX,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY+fHeight));
+ aBounds.append(B2DPoint(fPosX,fPosY+fHeight));
+ aBounds.setClosed(true);
+
+ aSeq[1] = Primitive2DReference( new PolyPolygonColorPrimitive2D(
+ B2DPolyPolygon(aBounds), Color(COL_WHITE).getBColor()));
+
+ aSeq[2] = Primitive2DReference( new FillBitmapPrimitive2D(
createTranslateB2DHomMatrix(maPrev1Pos.X(),maPrev1Pos.Y()),
FillBitmapAttribute(maPreview1,
B2DPoint(0,0),
@@ -91,19 +106,7 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
));
// draw thumbnail borders
- float fWidth = aImageSize.Width();
- float fHeight = aImageSize.Height();
- float fPosX = maPrev1Pos.getX();
- float fPosY = maPrev1Pos.getY();
-
- aSeq[2] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY),
- B2DPoint(fPosX+fWidth,fPosY)));
- aSeq[3] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY),
- B2DPoint(fPosX+fWidth,fPosY+fHeight)));
- aSeq[4] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY+fHeight),
- B2DPoint(fPosX,fPosY+fHeight)));
- aSeq[5] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY+fHeight),
- B2DPoint(fPosX,fPosY)));
+ aSeq[3] = Primitive2DReference(createBorderLine(aBounds));
// Draw centered text below thumbnail
@@ -112,7 +115,7 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
pAttrs->aFontSize.getX(), pAttrs->aFontSize.getY(),
double( maTextPos.X() ), double( maTextPos.Y() ) ) );
- aSeq[6] = Primitive2DReference(
+ aSeq[4] = Primitive2DReference(
new TextSimplePortionPrimitive2D(aTitleMatrix,
maTitle,0,pAttrs->nMaxTextLenght,
std::vector< double >( ),
@@ -126,7 +129,7 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
pAttrs->aFontSize.getX()*SUBTITLE_SCALE_FACTOR, pAttrs->aFontSize.getY()*SUBTITLE_SCALE_FACTOR,
double( maSubTitlePos.X() ), double( maSubTitlePos.Y() ) ) );
- aSeq[7] = Primitive2DReference(
+ aSeq[5] = Primitive2DReference(
new TextSimplePortionPrimitive2D(aSubTitleMatrix,
maSubTitle,0,pAttrs->nMaxTextLenght,
std::vector< double >( ),
diff --git a/sfx2/source/control/thumbnailviewitem.cxx b/sfx2/source/control/thumbnailviewitem.cxx
index 2410922..3f1077e 100644
--- a/sfx2/source/control/thumbnailviewitem.cxx
+++ b/sfx2/source/control/thumbnailviewitem.cxx
@@ -26,8 +26,8 @@
#include <basegfx/vector/b2dsize.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <drawinglayer/attribute/fillbitmapattribute.hxx>
-#include <drawinglayer/primitive2d/borderlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/fillbitmapprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
#include <drawinglayer/primitive2d/textprimitive2d.hxx>
@@ -122,7 +122,7 @@ void ThumbnailViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *pProc
const ThumbnailItemAttributes *pAttrs)
{
BColor aFillColor = pAttrs->aFillColor;
- Primitive2DSequence aSeq(7);
+ Primitive2DSequence aSeq(4);
// Draw background
if ( mbSelected || mbHover )
@@ -150,14 +150,14 @@ void ThumbnailViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *pProc
float fPosX = maPrev1Pos.getX();
float fPosY = maPrev1Pos.getY();
- aSeq[2] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY),
- B2DPoint(fPosX+fWidth,fPosY)));
- aSeq[3] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY),
- B2DPoint(fPosX+fWidth,fPosY+fHeight)));
- aSeq[4] = Primitive2DReference(createBorderLine(B2DPoint(fPosX+fWidth,fPosY+fHeight),
- B2DPoint(fPosX,fPosY+fHeight)));
- aSeq[5] = Primitive2DReference(createBorderLine(B2DPoint(fPosX,fPosY+fHeight),
- B2DPoint(fPosX,fPosY)));
+ B2DPolygon aBounds;
+ aBounds.append(B2DPoint(fPosX,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY));
+ aBounds.append(B2DPoint(fPosX+fWidth,fPosY+fHeight));
+ aBounds.append(B2DPoint(fPosX,fPosY+fHeight));
+ aBounds.setClosed(true);
+
+ aSeq[2] = Primitive2DReference(createBorderLine(aBounds));
// Draw centered text below thumbnail
aPos = maTextPos;
@@ -167,7 +167,7 @@ void ThumbnailViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *pProc
pAttrs->aFontSize.getX(), pAttrs->aFontSize.getY(),
double( aPos.X() ), double( aPos.Y() ) ) );
- aSeq[6] = Primitive2DReference(
+ aSeq[3] = Primitive2DReference(
new TextSimplePortionPrimitive2D(aTextMatrix,
maTitle,0,pAttrs->nMaxTextLenght,
std::vector< double >( ),
@@ -178,12 +178,10 @@ void ThumbnailViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *pProc
pProcessor->process(aSeq);
}
-drawinglayer::primitive2d::BorderLinePrimitive2D*
-ThumbnailViewItem::createBorderLine (const basegfx::B2DPoint &rStart, const basegfx::B2DPoint &rEnd)
+drawinglayer::primitive2d::PolygonHairlinePrimitive2D*
+ThumbnailViewItem::createBorderLine (const basegfx::B2DPolygon& rPolygon)
{
- return new BorderLinePrimitive2D(rStart,rEnd,0.5,0,0,0,0,0,0,
- BColor(),Color(COL_BLACK).getBColor(),BColor(),
- false,STYLE_SOLID);
+ return new PolygonHairlinePrimitive2D(rPolygon, Color(186,186,186).getBColor());
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 87e5851af82a11d9880e235c0f66980dcb5e5af7
Author: Cédric Bosdonnat <cedric.bosdonnat at free.fr>
Date: Thu Dec 6 15:50:07 2012 +0100
Template manager: toolbars height was too small
Change-Id: Ie2cb1f4947baf99d90bfaaf62834482c8f7e6a05
diff --git a/sfx2/source/doc/templatedlg.src b/sfx2/source/doc/templatedlg.src
index c0687fd..7a61186 100644
--- a/sfx2/source/doc/templatedlg.src
+++ b/sfx2/source/doc/templatedlg.src
@@ -178,7 +178,7 @@ ModelessDialog DLG_TEMPLATE_MANAGER
Control TOOLBARS
{
Pos = MAP_APPFONT( 0 , 22 );
- Size = MAP_APPFONT( 290 , 15 );
+ Size = MAP_APPFONT( 290 , 20 );
TabStop = False;
};
commit 7b5f71239ef376503731aa450a4ffa6bd1e019cb
Author: Cédric Bosdonnat <cedric.bosdonnat at free.fr>
Date: Thu Dec 6 15:35:58 2012 +0100
Template manager: fix preview for folders after using filters
Change-Id: Iadd38ee0bee7634c0924f48e204baa05566b7586
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index b261e34..557b8ff 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -59,12 +59,18 @@ public:
if (isValid(rTemplates[i].aType))
{
++nVisCount;
-
- // Update the thumbnails
- if (nVisCount == 1)
- pFolderItem->maPreview1 = rTemplates[i].aThumbnail;
- else if (nVisCount == 2)
- pFolderItem->maPreview2 = rTemplates[i].aThumbnail;
+ if ( pFolderItem->maPreview1.IsEmpty( ) )
+ {
+ pFolderItem->maPreview1 = TemplateAbstractView::scaleImg(rTemplates[i].aThumbnail,
+ TEMPLATE_THUMBNAIL_MAX_WIDTH*0.75,
+ TEMPLATE_THUMBNAIL_MAX_HEIGHT*0.75);
+ }
+ else if ( pFolderItem->maPreview2.IsEmpty() )
+ {
+ pFolderItem->maPreview2 = TemplateAbstractView::scaleImg(rTemplates[i].aThumbnail,
+ TEMPLATE_THUMBNAIL_MAX_WIDTH*0.75,
+ TEMPLATE_THUMBNAIL_MAX_HEIGHT*0.75);
+ }
}
}
commit 99584c777f0d795644cfa04f16c4bd526cebd052
Author: Cédric Bosdonnat <cedric.bosdonnat at free.fr>
Date: Thu Dec 6 13:30:53 2012 +0100
Revert "Template Manager: ban double-click"
This reverts commit 5487769838570ba5f1b35529689321e1842bae31.
Come back to a more consistant UI:
- single click for selection. CTRL modifier for multi-selection
- double click for action
- removed item's checkbox
- get rid of the selection mode
- no hover on items
Change-Id: I82863c77ed6a45410242a244545505a5b898ba56
diff --git a/sfx2/inc/sfx2/templateabstractview.hxx b/sfx2/inc/sfx2/templateabstractview.hxx
index 0ab599e..4eb7e6f 100644
--- a/sfx2/inc/sfx2/templateabstractview.hxx
+++ b/sfx2/inc/sfx2/templateabstractview.hxx
@@ -106,7 +106,7 @@ public:
void setOverlayItemStateHdl (const Link &aLink) { maOverlayItemStateHdl = aLink; }
- void setOverlayClickHdl (const Link &rLink);
+ void setOverlayDblClickHdl (const Link &rLink);
void setOverlayCloseHdl (const Link &rLink);
@@ -122,15 +122,11 @@ protected:
virtual void DrawItem (ThumbnailViewItem *pItem);
- virtual void OnSelectionMode (bool bMode);
-
DECL_LINK(OverlayItemStateHdl, const ThumbnailViewItem*);
- DECL_LINK(OverlaySelectionModeHdl, bool*);
protected:
TemplateView *mpItemView;
- bool mbInSelectionModeHdl;
Link maOverlayItemStateHdl;
};
diff --git a/sfx2/inc/sfx2/templatelocalview.hxx b/sfx2/inc/sfx2/templatelocalview.hxx
index 58debca..9a101f2 100644
--- a/sfx2/inc/sfx2/templatelocalview.hxx
+++ b/sfx2/inc/sfx2/templatelocalview.hxx
@@ -75,7 +75,7 @@ public:
private:
- virtual void OnItemClicked (ThumbnailViewItem *pRegionItem);
+ virtual void OnItemDblClicked (ThumbnailViewItem *pRegionItem);
DECL_LINK(ChangeNameHdl, TemplateView*);
diff --git a/sfx2/inc/sfx2/templatelocalviewitem.hxx b/sfx2/inc/sfx2/templatelocalviewitem.hxx
index 80330b2..739f70e 100644
--- a/sfx2/inc/sfx2/templatelocalviewitem.hxx
+++ b/sfx2/inc/sfx2/templatelocalviewitem.hxx
@@ -22,7 +22,7 @@ public:
BitmapEx maPreview2;
std::vector<TemplateItemProperties> maTemplates;
- TemplateLocalViewItem (ThumbnailView &rView, Window *pParent);
+ TemplateLocalViewItem (ThumbnailView &rView);
virtual ~TemplateLocalViewItem ();
diff --git a/sfx2/inc/sfx2/templateremoteviewitem.hxx b/sfx2/inc/sfx2/templateremoteviewitem.hxx
index 396b965..63f2c7d 100644
--- a/sfx2/inc/sfx2/templateremoteviewitem.hxx
+++ b/sfx2/inc/sfx2/templateremoteviewitem.hxx
@@ -17,7 +17,7 @@ class TemplateRemoteViewItem : public ThumbnailViewItem
{
public:
- TemplateRemoteViewItem (ThumbnailView &rView, Window *pParent);
+ TemplateRemoteViewItem (ThumbnailView &rView);
virtual ~TemplateRemoteViewItem ();
diff --git a/sfx2/inc/sfx2/templateview.hxx b/sfx2/inc/sfx2/templateview.hxx
index fee955b..881c68d 100644
--- a/sfx2/inc/sfx2/templateview.hxx
+++ b/sfx2/inc/sfx2/templateview.hxx
@@ -37,7 +37,7 @@ public:
void InsertItems (const std::vector<TemplateItemProperties> &rTemplates);
- void setClickHdl (const Link &rLink) { maClickHdl = rLink; }
+ void setDblClickHdl (const Link &rLink) { maDblClickHdl = rLink; }
void setChangeNameHdl (const Link &rLink) { maChangeNameHdl = rLink; }
@@ -49,7 +49,7 @@ protected:
virtual void MouseButtonDown (const MouseEvent &rMEvt);
- virtual void OnItemClicked (ThumbnailViewItem *pItem);
+ virtual void OnItemDblClicked (ThumbnailViewItem *pItem);
DECL_LINK (ChangeNameHdl, void*);
@@ -59,7 +59,7 @@ private:
bool mbRenderTitle;
sal_uInt16 mnId;
OUString maName;
- Link maClickHdl;
+ Link maDblClickHdl;
Link maChangeNameHdl;
Link maCloseHdl;
diff --git a/sfx2/inc/sfx2/templateviewitem.hxx b/sfx2/inc/sfx2/templateviewitem.hxx
index 992af40..9a7d358 100644
--- a/sfx2/inc/sfx2/templateviewitem.hxx
+++ b/sfx2/inc/sfx2/templateviewitem.hxx
@@ -16,7 +16,7 @@ class TemplateViewItem : public ThumbnailViewItem
{
public:
- TemplateViewItem (ThumbnailView &rView, Window *pParent);
+ TemplateViewItem (ThumbnailView &rView);
virtual ~TemplateViewItem ();
diff --git a/sfx2/inc/sfx2/thumbnailview.hxx b/sfx2/inc/sfx2/thumbnailview.hxx
index 023c569..6ebe23f 100644
--- a/sfx2/inc/sfx2/thumbnailview.hxx
+++ b/sfx2/inc/sfx2/thumbnailview.hxx
@@ -233,15 +233,12 @@ public:
long GetScrollWidth() const;
- void setSelectionMode (bool mode);
-
void filterItems (const boost::function<bool (const ThumbnailViewItem*) > &func);
void sortItems (const boost::function<bool (const ThumbnailViewItem*,
const ThumbnailViewItem*) > &func);
void setItemStateHdl (const Link &aLink) { maItemStateHdl = aLink; }
- void setSelectionModeHdl (const Link &aLink) { maSelectionModeHdl = aLink; }
protected:
@@ -249,8 +246,6 @@ protected:
virtual void MouseButtonUp( const MouseEvent& rMEvt );
- virtual void MouseMove( const MouseEvent& rMEvt );
-
virtual void Command( const CommandEvent& rCEvt );
virtual void Paint( const Rectangle& rRect );
@@ -275,9 +270,7 @@ protected:
virtual void DrawItem (ThumbnailViewItem *pItem);
- virtual void OnSelectionMode (bool bMode);
-
- virtual void OnItemClicked (ThumbnailViewItem *pItem);
+ virtual void OnItemDblClicked (ThumbnailViewItem *pItem);
protected:
@@ -327,11 +320,9 @@ protected:
bool mbScroll : 1;
bool mbIsTransientChildrenDisabled : 1;
bool mbHasVisibleItems : 1;
- bool mbSelectionMode;
Color maColor;
Link maItemStateHdl;
- Link maSelectionModeHdl;
ThumbnailItemAttributes *mpItemAttrs;
drawinglayer::processor2d::BaseProcessor2D *mpProcessor;
boost::function<bool (const ThumbnailViewItem*) > maFilterFunc;
diff --git a/sfx2/inc/sfx2/thumbnailviewitem.hxx b/sfx2/inc/sfx2/thumbnailviewitem.hxx
index 96cdc5c..0a7f08a 100644
--- a/sfx2/inc/sfx2/thumbnailviewitem.hxx
+++ b/sfx2/inc/sfx2/thumbnailviewitem.hxx
@@ -71,7 +71,7 @@ public:
rtl::OUString maTitle;
::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >* mpxAcc;
- ThumbnailViewItem (ThumbnailView &rView, Window *pParent);
+ ThumbnailViewItem (ThumbnailView &rView);
virtual ~ThumbnailViewItem ();
@@ -102,8 +102,6 @@ public:
const Point& getPrev1Pos () const { return maPrev1Pos; }
- void setSelectionMode (bool mode);
-
void setSelectClickHdl (const Link &link);
virtual void Paint (drawinglayer::processor2d::BaseProcessor2D *pProcessor,
@@ -112,18 +110,12 @@ public:
static drawinglayer::primitive2d::BorderLinePrimitive2D*
createBorderLine (const basegfx::B2DPoint &rStart, const basegfx::B2DPoint &rEnd);
-private:
-
- DECL_LINK (OnClick, CheckBox *);
-
protected:
- bool mbMode;
Point maTextPos;
Point maPrev1Pos;
Rectangle maDrawArea;
Link maClickHdl;
- CheckBox *mpSelectBox;
};
#endif // THUMBNAILVIEWITEM_HXX
diff --git a/sfx2/inc/templatedlg.hxx b/sfx2/inc/templatedlg.hxx
index 8e70039..c0d1284 100644
--- a/sfx2/inc/templatedlg.hxx
+++ b/sfx2/inc/templatedlg.hxx
@@ -57,9 +57,6 @@ private:
DECL_LINK(CloseOverlayHdl, void*);
- DECL_LINK(OnClickSelectionMode, ImageButton*);
- DECL_LINK(SelectionModeHdl, bool*);
-
DECL_LINK(TBXViewHdl, void*);
DECL_LINK(TBXActionHdl, void*);
DECL_LINK(TBXTemplateHdl, void*);
@@ -124,7 +121,6 @@ private:
PushButton aButtonPresents;
PushButton aButtonSheets;
PushButton aButtonDraws;
- ImageButton maButtonSelMode;
Control *mpToolbars;
Edit *mpSearchEdit;
@@ -143,7 +139,6 @@ private:
std::set<const ThumbnailViewItem*> maSelFolders;
bool mbIsSaveMode; ///< Flag that indicates if we are in save mode or not.
- bool mbInSelectionModeHdl; ///< Flag avoiding selection mode handler loop
com::sun::star::uno::Reference< com::sun::star::frame::XModel > m_xModel;
com::sun::star::uno::Reference< com::sun::star::frame::XComponentLoader > mxDesktop;
};
diff --git a/sfx2/source/control/templateabstractview.cxx b/sfx2/source/control/templateabstractview.cxx
index dd00449..5d5cd3e 100644
--- a/sfx2/source/control/templateabstractview.cxx
+++ b/sfx2/source/control/templateabstractview.cxx
@@ -59,20 +59,16 @@ bool ViewFilter_Keyword::operator ()(const ThumbnailViewItem *pItem)
TemplateAbstractView::TemplateAbstractView (Window *pParent, WinBits nWinStyle, bool bDisableTransientChildren)
: ThumbnailView(pParent,nWinStyle,bDisableTransientChildren),
- mpItemView(new TemplateView(this)),
- mbInSelectionModeHdl(false)
+ mpItemView(new TemplateView(this))
{
mpItemView->setItemStateHdl(LINK(this,TemplateAbstractView,OverlayItemStateHdl));
- mpItemView->setSelectionModeHdl(LINK(this,TemplateAbstractView,OverlaySelectionModeHdl));
}
TemplateAbstractView::TemplateAbstractView(Window *pParent, const ResId &rResId, bool bDisableTransientChildren)
: ThumbnailView(pParent,rResId,bDisableTransientChildren),
- mpItemView(new TemplateView(this)),
- mbInSelectionModeHdl(false)
+ mpItemView(new TemplateView(this))
{
mpItemView->setItemStateHdl(LINK(this,TemplateAbstractView,OverlayItemStateHdl));
- mpItemView->setSelectionModeHdl(LINK(this,TemplateAbstractView,OverlaySelectionModeHdl));
}
TemplateAbstractView::~TemplateAbstractView ()
@@ -124,9 +120,9 @@ void TemplateAbstractView::filterTemplatesByKeyword(const OUString &rKeyword)
mpItemView->filterItems(ViewFilter_Keyword(rKeyword));
}
-void TemplateAbstractView::setOverlayClickHdl(const Link &rLink)
+void TemplateAbstractView::setOverlayDblClickHdl(const Link &rLink)
{
- mpItemView->setClickHdl(rLink);
+ mpItemView->setDblClickHdl(rLink);
}
void TemplateAbstractView::setOverlayCloseHdl(const Link &rLink)
@@ -287,36 +283,10 @@ void TemplateAbstractView::DrawItem(ThumbnailViewItem *pItem)
ThumbnailView::DrawItem(pItem);
}
-void TemplateAbstractView::OnSelectionMode (bool bMode)
-{
- if (!mbInSelectionModeHdl)
- {
- if (mpItemView->IsVisible())
- {
- mbSelectionMode = bMode;
- mpItemView->setSelectionMode(bMode);
- }
- else
- ThumbnailView::OnSelectionMode(bMode);
- }
-}
-
IMPL_LINK(TemplateAbstractView, OverlayItemStateHdl, const ThumbnailViewItem*, pItem)
{
maOverlayItemStateHdl.Call((void*)pItem);
return 0;
}
-IMPL_LINK(TemplateAbstractView, OverlaySelectionModeHdl, bool*, pMode)
-{
- mbInSelectionModeHdl = true;
- setSelectionMode(*pMode);
- if (!*pMode)
- {
- deselectOverlayItems();
- }
- mbInSelectionModeHdl = false;
- return 0;
-}
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index 15e3b8d..b261e34 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -128,7 +128,7 @@ void TemplateLocalView::Populate ()
aRegionName += "...";
}
- TemplateLocalViewItem* pItem = new TemplateLocalViewItem( *this, this );
+ TemplateLocalViewItem* pItem = new TemplateLocalViewItem( *this );
pItem->mnId = i+1;
pItem->maTitle = aRegionName;
pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
@@ -224,8 +224,6 @@ void TemplateLocalView::showOverlay (bool bVisible)
}
mpItemView->Clear();
-
- setSelectionMode(mbSelectionMode);
}
}
@@ -278,7 +276,7 @@ sal_uInt16 TemplateLocalView::createRegion(const OUString &rName)
aRegionName += "...";
}
- TemplateLocalViewItem* pItem = new TemplateLocalViewItem( *this, this );
+ TemplateLocalViewItem* pItem = new TemplateLocalViewItem( *this );
pItem->mnId = nRegionId+1;
pItem->maTitle = aRegionName;
pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
@@ -702,7 +700,7 @@ bool TemplateLocalView::isTemplateNameUnique(const sal_uInt16 nRegionItemId, con
return true;
}
-void TemplateLocalView::OnItemClicked (ThumbnailViewItem *pRegionItem)
+void TemplateLocalView::OnItemDblClicked (ThumbnailViewItem *pRegionItem)
{
// Fill templates
sal_uInt16 nRegionId = pRegionItem->mnId-1;
@@ -711,9 +709,6 @@ void TemplateLocalView::OnItemClicked (ThumbnailViewItem *pRegionItem)
mpItemView->setName(mpDocTemplates->GetRegionName(nRegionId));
mpItemView->InsertItems(static_cast<TemplateLocalViewItem*>(pRegionItem)->maTemplates);
- if (mbSelectionMode)
- mpItemView->setSelectionMode(true);
-
mpItemView->filterItems(ViewFilter_Application(meFilterOption));
showOverlay(true);
diff --git a/sfx2/source/control/templatelocalviewitem.cxx b/sfx2/source/control/templatelocalviewitem.cxx
index 7ba1183..544b86a 100644
--- a/sfx2/source/control/templatelocalviewitem.cxx
+++ b/sfx2/source/control/templatelocalviewitem.cxx
@@ -26,8 +26,8 @@ using namespace basegfx::tools;
using namespace drawinglayer::attribute;
using namespace drawinglayer::primitive2d;
-TemplateLocalViewItem::TemplateLocalViewItem (ThumbnailView &rView, Window *pParent)
- : ThumbnailViewItem(rView,pParent)
+TemplateLocalViewItem::TemplateLocalViewItem (ThumbnailView &rView)
+ : ThumbnailViewItem(rView)
{
}
@@ -137,9 +137,6 @@ void TemplateLocalViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *p
Color(COL_BLACK).getBColor() ) );
pProcessor->process(aSeq);
-
- if (mbMode || mbHover || mbSelected)
- mpSelectBox->Paint(maDrawArea);
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/control/templateremoteview.cxx b/sfx2/source/control/templateremoteview.cxx
index 776bab1..24ee41d 100644
--- a/sfx2/source/control/templateremoteview.cxx
+++ b/sfx2/source/control/templateremoteview.cxx
@@ -78,7 +78,7 @@ void TemplateRemoteView::Populate()
for (sal_Int32 i = 0; i < aUrls.getLength() && i < aNames.getLength(); ++i)
{
- TemplateRemoteViewItem *pItem = new TemplateRemoteViewItem(*this,this);
+ TemplateRemoteViewItem *pItem = new TemplateRemoteViewItem(*this);
pItem->mnId = i+1;
pItem->maTitle = aNames[i];
@@ -107,8 +107,6 @@ void TemplateRemoteView::showOverlay (bool bVisible)
if (!bVisible)
{
mpItemView->Clear();
-
- setSelectionMode(mbSelectionMode);
}
}
@@ -261,7 +259,7 @@ bool TemplateRemoteView::insertRepository(const OUString &rName, const OUString
return false;
}
- TemplateRemoteViewItem *pItem = new TemplateRemoteViewItem(*this,this);
+ TemplateRemoteViewItem *pItem = new TemplateRemoteViewItem(*this);
pItem->mnId = maRepositories.size()+1;
pItem->maTitle = rName;
diff --git a/sfx2/source/control/templateremoteviewitem.cxx b/sfx2/source/control/templateremoteviewitem.cxx
index cb6de5e..626786f 100644
--- a/sfx2/source/control/templateremoteviewitem.cxx
+++ b/sfx2/source/control/templateremoteviewitem.cxx
@@ -9,8 +9,8 @@
#include <sfx2/templateremoteviewitem.hxx>
-TemplateRemoteViewItem::TemplateRemoteViewItem (ThumbnailView &rView, Window *pParent)
- : ThumbnailViewItem(rView,pParent)
+TemplateRemoteViewItem::TemplateRemoteViewItem (ThumbnailView &rView)
+ : ThumbnailViewItem(rView)
{
}
diff --git a/sfx2/source/control/templatesearchview.cxx b/sfx2/source/control/templatesearchview.cxx
index 24554fb..775abbc 100644
--- a/sfx2/source/control/templatesearchview.cxx
+++ b/sfx2/source/control/templatesearchview.cxx
@@ -25,7 +25,7 @@ void TemplateSearchView::AppendItem(sal_uInt16 nItemId, sal_uInt16 nRegionId, sa
const OUString &rPath,
const BitmapEx &rImage)
{
- TemplateSearchViewItem *pItem = new TemplateSearchViewItem(*this,this);
+ TemplateSearchViewItem *pItem = new TemplateSearchViewItem(*this);
pItem->mnId = nItemId;
pItem->mnIdx = nIdx;
pItem->mnRegionId = nRegionId;
diff --git a/sfx2/source/control/templateview.cxx b/sfx2/source/control/templateview.cxx
index 1156fa8..0892a15 100644
--- a/sfx2/source/control/templateview.cxx
+++ b/sfx2/source/control/templateview.cxx
@@ -108,7 +108,7 @@ void TemplateView::InsertItems (const std::vector<TemplateItemProperties> &rTemp
{
for (size_t i = 0, n = rTemplates.size(); i < n; ++i )
{
- TemplateViewItem *pItem = new TemplateViewItem(*this,this);
+ TemplateViewItem *pItem = new TemplateViewItem(*this);
const TemplateItemProperties *pCur = &rTemplates[i];
pItem->mnId = pCur->nId;
@@ -208,9 +208,9 @@ void TemplateView::MouseButtonDown (const MouseEvent &rMEvt)
ThumbnailView::MouseButtonDown(rMEvt);
}
-void TemplateView::OnItemClicked(ThumbnailViewItem *pItem)
+void TemplateView::OnItemDblClicked(ThumbnailViewItem *pItem)
{
- maClickHdl.Call(pItem);
+ maDblClickHdl.Call(pItem);
}
IMPL_LINK_NOARG(TemplateView, ChangeNameHdl)
diff --git a/sfx2/source/control/templateviewitem.cxx b/sfx2/source/control/templateviewitem.cxx
index 2c27e5f..e2abf71 100644
--- a/sfx2/source/control/templateviewitem.cxx
+++ b/sfx2/source/control/templateviewitem.cxx
@@ -27,8 +27,8 @@ using namespace basegfx::tools;
using namespace drawinglayer::attribute;
using namespace drawinglayer::primitive2d;
-TemplateViewItem::TemplateViewItem (ThumbnailView &rView, Window *pParent)
- : ThumbnailViewItem(rView,pParent)
+TemplateViewItem::TemplateViewItem (ThumbnailView &rView)
+ : ThumbnailViewItem(rView)
{
}
@@ -136,9 +136,6 @@ void TemplateViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D *pProces
}
pProcessor->process(aSeq);
-
- if (mbMode || mbHover || mbSelected)
- mpSelectBox->Paint(maDrawArea);
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/control/thumbnailview.cxx b/sfx2/source/control/thumbnailview.cxx
index 32571b7..db8d626 100644
--- a/sfx2/source/control/thumbnailview.cxx
+++ b/sfx2/source/control/thumbnailview.cxx
@@ -98,7 +98,6 @@ void ThumbnailView::ImplInit()
mnSpacing = 0;
mbScroll = false;
mbHasVisibleItems = false;
- mbSelectionMode = false;
maFilterFunc = ViewFilterAll();
maColor = GetSettings().GetStyleSettings().GetFieldColor();
@@ -197,21 +196,7 @@ void ThumbnailView::DrawItem (ThumbnailViewItem *pItem)
}
}
-void ThumbnailView::OnSelectionMode (bool bMode)
-{
- if ( !bMode )
- deselectItems();
-
- for (size_t i = 0, n = mItemList.size(); i < n; ++i)
- {
- mItemList[i]->setSelectionMode(bMode);
-
- if (mItemList[i]->isVisible())
- DrawItem(mItemList[i]);
- }
-}
-
-void ThumbnailView::OnItemClicked (ThumbnailViewItem*)
+void ThumbnailView::OnItemDblClicked (ThumbnailViewItem*)
{
}
@@ -508,51 +493,40 @@ IMPL_LINK (ThumbnailView, OnItemSelected, ThumbnailViewItem*, pItem)
void ThumbnailView::MouseButtonDown( const MouseEvent& rMEvt )
{
- bool bProcessClick = rMEvt.IsLeft();
-
- if ( rMEvt.IsRight( ) )
- {
- // Set selection mode with right click
- if (!mbSelectionMode)
- {
- setSelectionMode( true );
- bProcessClick = true;
- }
- }
-
- if ( bProcessClick )
+ if ( rMEvt.IsLeft() )
{
ThumbnailViewItem* pItem = ImplGetItem( ImplGetItem( rMEvt.GetPosPixel() ) );
if (pItem && pItem->isVisible())
{
- if ( !rMEvt.IsMod2() )
+ if ( rMEvt.GetClicks() == 1 )
{
- if ( rMEvt.GetClicks() == 1 )
- {
- if (mbSelectionMode)
- {
- pItem->setSelection(!pItem->isSelected());
+ if (!pItem->isSelected() && !rMEvt.IsMod1())
+ deselectItems( );
+ pItem->setSelection(!pItem->isSelected());
- if (!pItem->isHighlighted())
- DrawItem(pItem);
+ if (!pItem->isHighlighted())
+ DrawItem(pItem);
- maItemStateHdl.Call(pItem);
- }
- else
- {
- Rectangle aRect(pItem->getDrawArea());
- aRect.SetSize(Size(mnItemWidth,mnThumbnailHeight));
+ maItemStateHdl.Call(pItem);
+ }
+ else if ( rMEvt.GetClicks() == 2 )
+ {
+ // The mouse button down event 1 click right before is pointless
+ pItem->setSelection(!pItem->isSelected());
+ maItemStateHdl.Call(pItem);
- if (!mbSelectionMode && aRect.IsInside(rMEvt.GetPosPixel()))
- OnItemClicked(pItem);
- }
- }
+ Rectangle aRect(pItem->getDrawArea());
+ aRect.SetSize(Size(mnItemWidth,mnThumbnailHeight));
+
+ if (aRect.IsInside(rMEvt.GetPosPixel()))
+ OnItemDblClicked(pItem);
}
return;
}
}
+
Control::MouseButtonDown( rMEvt );
}
@@ -561,56 +535,6 @@ void ThumbnailView::MouseButtonUp( const MouseEvent& rMEvt )
Control::MouseButtonUp( rMEvt );
}
-void ThumbnailView::MouseMove( const MouseEvent& rMEvt )
-{
- ThumbnailViewItem* pItem = ImplGetItem( ImplGetItem( rMEvt.GetPosPixel() ) );
-
- if (pItem)
- {
- if (mnHighItemId != pItem->mnId && pItem->isVisible())
- {
- size_t nPos = GetItemPos(mnHighItemId);
-
- if (nPos != THUMBNAILVIEW_ITEM_NOTFOUND)
- {
- ThumbnailViewItem *pOld = mItemList[nPos];
-
- pOld->setHighlight(false);
-
- if (!pOld->isSelected())
- DrawItem(pOld);
- }
-
- mnHighItemId = pItem->mnId;
- pItem->setHighlight(true);
-
- if (!pItem->isSelected())
- DrawItem(pItem);
- }
- }
- else
- {
- if (mnHighItemId)
- {
- size_t nPos = GetItemPos(mnHighItemId);
-
- if (nPos != THUMBNAILVIEW_ITEM_NOTFOUND)
- {
- ThumbnailViewItem *pOld = mItemList[nPos];
-
- pOld->setHighlight(false);
-
- if (!pOld->isSelected())
- DrawItem(pOld);
- }
-
- mnHighItemId = 0;
- }
- }
-
- Control::MouseMove( rMEvt );
-}
-
void ThumbnailView::Command( const CommandEvent& rCEvt )
{
if ( (rCEvt.GetCommand() == COMMAND_WHEEL) ||
@@ -1049,13 +973,6 @@ long ThumbnailView::GetScrollWidth() const
return 0;
}
-void ThumbnailView::setSelectionMode (bool mode)
-{
- mbSelectionMode = mode;
- OnSelectionMode(mode);
- maSelectionModeHdl.Call(&mode);
-}
-
void ThumbnailView::filterItems (const boost::function<bool (const ThumbnailViewItem*) > &func)
{
mnFirstLine = 0; // start at the top of the list instead of the current position
diff --git a/sfx2/source/control/thumbnailviewitem.cxx b/sfx2/source/control/thumbnailviewitem.cxx
index 57041ce..2410922 100644
--- a/sfx2/source/control/thumbnailviewitem.cxx
+++ b/sfx2/source/control/thumbnailviewitem.cxx
@@ -41,18 +41,14 @@ using namespace ::com::sun::star;
using namespace drawinglayer::attribute;
using namespace drawinglayer::primitive2d;
-ThumbnailViewItem::ThumbnailViewItem(ThumbnailView &rView, Window *pParent)
+ThumbnailViewItem::ThumbnailViewItem(ThumbnailView &rView)
: mrParent(rView)
, mnId(0)
, mbVisible(true)
, mbSelected(false)
, mbHover(false)
, mpxAcc(NULL)
- , mbMode(false)
- , mpSelectBox(new CheckBox(pParent,WB_HIDE | WB_NOPOINTERFOCUS))
{
- mpSelectBox->SetSizePixel(Size(20,20));
- mpSelectBox->SetClickHdl(LINK(this,ThumbnailViewItem,OnClick));
}
ThumbnailViewItem::~ThumbnailViewItem()
@@ -62,37 +58,21 @@ ThumbnailViewItem::~ThumbnailViewItem()
static_cast< ThumbnailViewItemAcc* >( mpxAcc->get() )->ParentDestroyed();
delete mpxAcc;
}
-
- delete mpSelectBox;
}
void ThumbnailViewItem::show (bool bVisible)
{
mbVisible = bVisible;
-
- if (mbMode)
- mpSelectBox->Show(bVisible);
- else if (!bVisible)
- mpSelectBox->Show(bVisible);
- else if (mbSelected)
- mpSelectBox->Show(bVisible);
}
void ThumbnailViewItem::setSelection (bool state)
{
mbSelected = state;
- mpSelectBox->SetState(state ? STATE_CHECK : STATE_NOCHECK);
-
- if (!isHighlighted())
- mpSelectBox->Show(state);
}
void ThumbnailViewItem::setHighlight (bool state)
{
mbHover = state;
-
- if (!isSelected())
- mpSelectBox->Show(state);
}
uno::Reference< accessibility::XAccessible > ThumbnailViewItem::GetAccessible( bool bIsTransientChildrenDisabled )
@@ -131,20 +111,6 @@ void ThumbnailViewItem::calculateItemsPosition (const long nThumbnailHeight, con
aPos.Y() = aPos.Y() + aTextDev.getTextHeight() + (nDisplayHeight - aTextDev.getTextHeight())/2;
aPos.X() = maDrawArea.Left() + (aRectSize.Width() - aTextDev.getTextWidth(maTitle,0,nMaxTextLenght))/2;
maTextPos = aPos;
-
- // Calculate checkbox position
- aPos.Y() -= aTextDev.getTextHeight();
- aPos.X() = maDrawArea.Left() + 15;
-
- mpSelectBox->SetPosPixel(aPos);
-}
-
-void ThumbnailViewItem::setSelectionMode (bool mode)
-{
- mbMode = mode;
-
- if (!mbHover && !mbSelected && mbVisible)
- mpSelectBox->Show(mode);
}
void ThumbnailViewItem::setSelectClickHdl (const Link &link)
@@ -210,9 +176,6 @@ void ThumbnailViewItem::Paint (drawinglayer::processor2d::BaseProcessor2D *pProc
Color(COL_BLACK).getBColor() ) );
pProcessor->process(aSeq);
-
- if (mbMode || mbHover || mbSelected)
- mpSelectBox->Paint(maDrawArea);
}
drawinglayer::primitive2d::BorderLinePrimitive2D*
@@ -223,14 +186,6 @@ ThumbnailViewItem::createBorderLine (const basegfx::B2DPoint &rStart, const base
false,STYLE_SOLID);
}
-IMPL_LINK (ThumbnailViewItem, OnClick, CheckBox*, )
-{
- mbSelected = mpSelectBox->GetState() == STATE_CHECK;
- mpSelectBox->Invalidate();
- maClickHdl.Call(this);
- return 0;
-}
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 2990440..e0ea98c 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -104,7 +104,6 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
aButtonPresents(this,SfxResId(BTN_SELECT_PRESENTATIONS)),
aButtonSheets(this,SfxResId(BTN_SELECT_SHEETS)),
aButtonDraws(this,SfxResId(BTN_SELECT_DRAWS)),
- maButtonSelMode(this,SfxResId(BTN_SELECTION_MODE)),
mpToolbars( new Control(this,SfxResId(TOOLBARS))),
mpSearchEdit(new Edit(this,WB_HIDE | WB_BORDER)),
mpViewBar( new ToolBox(mpToolbars, SfxResId(TBX_ACTION_VIEW))),
@@ -114,11 +113,8 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
maView(new TemplateLocalView(this,SfxResId(TEMPLATE_VIEW))),
mpOnlineView(new TemplateRemoteView(this, WB_VSCROLL,false)),
mbIsSaveMode(false),
- mbInSelectionModeHdl(false),
mxDesktop(comphelper::getProcessServiceFactory()->createInstance( "com.sun.star.frame.Desktop" ),uno::UNO_QUERY )
{
- maButtonSelMode.SetStyle(maButtonSelMode.GetStyle() | WB_TOGGLE);
-
// Create popup menus
mpActionMenu = new PopupMenu;
mpActionMenu->InsertItem(MNI_ACTION_SORT_NAME,SfxResId(STR_ACTION_SORT_NAME).toString(),SfxResId(IMG_ACTION_SORT));
@@ -197,9 +193,8 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
maView->setItemStateHdl(LINK(this,SfxTemplateManagerDlg,TVFolderStateHdl));
maView->setOverlayItemStateHdl(LINK(this,SfxTemplateManagerDlg,TVTemplateStateHdl));
- maView->setOverlayClickHdl(LINK(this,SfxTemplateManagerDlg,OpenTemplateHdl));
+ maView->setOverlayDblClickHdl(LINK(this,SfxTemplateManagerDlg,OpenTemplateHdl));
maView->setOverlayCloseHdl(LINK(this,SfxTemplateManagerDlg,CloseOverlayHdl));
- maView->setSelectionModeHdl(LINK(this,SfxTemplateManagerDlg,SelectionModeHdl));
// Set online view position and dimensions
mpOnlineView->SetPosSizePixel(aViewPos,aThumbSize);
@@ -210,10 +205,9 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
TEMPLATE_ITEM_PADDING);
mpOnlineView->setOverlayItemStateHdl(LINK(this,SfxTemplateManagerDlg,TVTemplateStateHdl));
- mpOnlineView->setOverlayClickHdl(LINK(this,SfxTemplateManagerDlg,OpenTemplateHdl));
+ mpOnlineView->setOverlayDblClickHdl(LINK(this,SfxTemplateManagerDlg,OpenTemplateHdl));
mpOnlineView->setOverlayCloseHdl(LINK(this,SfxTemplateManagerDlg,CloseOverlayHdl));
mpOnlineView->setOverlayChangeNameHdl(LINK(this,SfxTemplateManagerDlg,RepositoryChangeNameHdl));
- mpOnlineView->setSelectionModeHdl(LINK(this,SfxTemplateManagerDlg,SelectionModeHdl));
mpSearchView->SetSizePixel(aThumbSize);
mpSearchView->setItemMaxTextLength(TEMPLATE_ITEM_MAX_TEXT_LENGTH);
@@ -223,14 +217,12 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
TEMPLATE_ITEM_PADDING);
mpSearchView->setItemStateHdl(LINK(this,SfxTemplateManagerDlg,TVTemplateStateHdl));
- mpSearchView->setSelectionModeHdl(LINK(this,SfxTemplateManagerDlg,SelectionModeHdl));
aButtonAll.SetClickHdl(LINK(this,SfxTemplateManagerDlg,ViewAllHdl));
aButtonDocs.SetClickHdl(LINK(this,SfxTemplateManagerDlg,ViewDocsHdl));
aButtonPresents.SetClickHdl(LINK(this,SfxTemplateManagerDlg,ViewPresentsHdl));
aButtonSheets.SetClickHdl(LINK(this,SfxTemplateManagerDlg,ViewSheetsHdl));
aButtonDraws.SetClickHdl(LINK(this,SfxTemplateManagerDlg,ViewDrawsHdl));
- maButtonSelMode.SetClickHdl(LINK(this,SfxTemplateManagerDlg,OnClickSelectionMode));
// Set dialog to correct dimensions
SetSizePixel(aWinSize);
@@ -350,21 +342,6 @@ IMPL_LINK_NOARG(SfxTemplateManagerDlg, CloseOverlayHdl)
return 0;
}
-IMPL_LINK (SfxTemplateManagerDlg, OnClickSelectionMode, ImageButton*, pButton)
-{
- if (!mbInSelectionModeHdl)
- maView->setSelectionMode(pButton->GetState() == STATE_CHECK);
- return 0;
-}
-
-IMPL_LINK (SfxTemplateManagerDlg, SelectionModeHdl, bool*, pMode)
-{
- mbInSelectionModeHdl = true;
- maButtonSelMode.SetState( *pMode ? STATE_CHECK : STATE_NOCHECK );
- mbInSelectionModeHdl = false;
- return 0;
-}
-
IMPL_LINK_NOARG(SfxTemplateManagerDlg,TBXViewHdl)
{
switch(mpViewBar->GetCurItemId())
@@ -1221,11 +1198,10 @@ void SfxTemplateManagerDlg::centerTopButtons()
{
Point aFirstBtnPos = aButtonAll.GetPosPixel();
- Size aSelBtnSize = maButtonSelMode.GetOutputSize(); // Last button in the list
Size aBtnSize = aButtonAll.GetOutputSize();
Size aWinSize = GetOutputSize();
- long nTotalWidth = aSelBtnSize.getWidth() + aBtnSize.getWidth()*5;
+ long nTotalWidth = aBtnSize.getWidth()*5;
long nSpace = (aWinSize.getWidth() - nTotalWidth)/2;
Point aBtnPos(nSpace,aFirstBtnPos.getY());
@@ -1242,9 +1218,6 @@ void SfxTemplateManagerDlg::centerTopButtons()
aBtnPos.setX(aBtnPos.getX() + aBtnSize.getWidth());
aButtonDraws.SetPosPixel(aBtnPos);
-
- aBtnPos.setX(aBtnPos.getX() + aBtnSize.getWidth());
- maButtonSelMode.SetPosPixel(aBtnPos);
}
void SfxTemplateManagerDlg::createRepositoryMenu()
diff --git a/sfx2/source/doc/templatedlg.src b/sfx2/source/doc/templatedlg.src
index 61fe2b8..c0687fd 100644
--- a/sfx2/source/doc/templatedlg.src
+++ b/sfx2/source/doc/templatedlg.src
@@ -152,20 +152,6 @@ ModelessDialog DLG_TEMPLATE_MANAGER
Text [en-US] = "Drawings";
};
- ImageButton BTN_SELECTION_MODE
- {
- Pos = MAP_APPFONT(260,5);
- Size = MAP_APPFONT(20,14);
- TabStop = TRUE;
-
- ButtonImage = Image
- {
- ImageBitmap = Bitmap { File = "select.png" ; };
- };
-
- QuickHelpText [en-US] = "Enables selecting items by just clicking in the thumbnail or title.";
- };
-
Control TEMPLATE_VIEW
{
Pos = MAP_APPFONT(5,30);
diff --git a/sfx2/source/inc/templatesearchviewitem.hxx b/sfx2/source/inc/templatesearchviewitem.hxx
index 185560a..27e393d 100644
--- a/sfx2/source/inc/templatesearchviewitem.hxx
+++ b/sfx2/source/inc/templatesearchviewitem.hxx
@@ -14,8 +14,8 @@
struct TemplateSearchViewItem : public TemplateViewItem
{
- TemplateSearchViewItem (ThumbnailView &rView, Window *pParent)
- : TemplateViewItem(rView,pParent)
+ TemplateSearchViewItem (ThumbnailView &rView)
+ : TemplateViewItem(rView)
{}
virtual ~TemplateSearchViewItem ()
commit 35a19a8f048d282bf5389e9497f89d2b9dba1fe6
Author: Cédric Bosdonnat <cedric.bosdonnat at free.fr>
Date: Thu Dec 6 13:30:12 2012 +0100
Template manager: white background for the thumbnail view
Change-Id: Ie5497713b83da23801f58f4c6d990e28042a3df9
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index 582e508..15e3b8d 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -106,7 +106,7 @@ TemplateLocalView::TemplateLocalView ( Window* pParent, const ResId& rResId, boo
meFilterOption(FILTER_APP_NONE),
mpDocTemplates(new SfxDocumentTemplates)
{
- mpItemView->SetColor(Color(COL_WHITE));
+ mpItemView->SetColor(GetSettings().GetStyleSettings().GetFieldColor());
mpItemView->setChangeNameHdl(LINK(this,TemplateLocalView,ChangeNameHdl));
}
@@ -716,7 +716,7 @@ void TemplateLocalView::OnItemClicked (ThumbnailViewItem *pRegionItem)
mpItemView->filterItems(ViewFilter_Application(meFilterOption));
- mpItemView->Show();
+ showOverlay(true);
}
IMPL_LINK(TemplateLocalView, ChangeNameHdl, TemplateView*, pView)
diff --git a/sfx2/source/control/thumbnailview.cxx b/sfx2/source/control/thumbnailview.cxx
index e51385a..32571b7 100644
--- a/sfx2/source/control/thumbnailview.cxx
+++ b/sfx2/source/control/thumbnailview.cxx
@@ -100,7 +100,7 @@ void ThumbnailView::ImplInit()
mbHasVisibleItems = false;
mbSelectionMode = false;
maFilterFunc = ViewFilterAll();
- maColor = GetSettings().GetStyleSettings().GetDialogColor();
+ maColor = GetSettings().GetStyleSettings().GetFieldColor();
// Create the processor and process the primitives
const drawinglayer::geometry::ViewInformation2D aNewViewInfos;
@@ -156,14 +156,11 @@ void ThumbnailView::ImplInitSettings( bool bFont, bool bForeground, bool bBackgr
if ( bBackground )
{
- Color aColor;
- if ( IsControlBackground() )
- aColor = GetControlBackground();
- else
- aColor = rStyleSettings.GetFaceColor();
+ Color aColor = rStyleSettings.GetFieldColor();
SetBackground( aColor );
}
+
mpItemAttrs = new ThumbnailItemAttributes;
mpItemAttrs->aFillColor = maColor.getBColor();
mpItemAttrs->aHighlightColor = rStyleSettings.GetHighlightColor().getBColor();
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index b4fb512..2990440 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -135,13 +135,6 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
Size aWinSize = GetOutputSize();
- // Calculate thumbnail view minimum size
- Size aThumbSize = maView->CalcWindowSizePixel(INIT_FOLDER_COLS,INIT_FOLDER_LINES,
- TEMPLATE_ITEM_MAX_WIDTH,TEMPLATE_ITEM_MAX_HEIGHT,TEMPLATE_ITEM_SPACE);
-
- if (aWinSize.getWidth() < aThumbSize.getWidth() + 2*PADDING_DLG_BORDER)
- aWinSize.setWidth(aThumbSize.getWidth() + 2*PADDING_DLG_BORDER);
-
// Calculate toolboxs size and positions
Size aViewSize = mpViewBar->CalcMinimumWindowSizePixel();
Size aActionSize = mpActionBar->CalcMinimumWindowSizePixel();
@@ -178,8 +171,9 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
// Set view position below toolbox
Point aViewPos = maView->GetPosPixel();
aViewPos.setY(mpToolbars->GetPosPixel().Y() + mpToolbars->GetSizePixel().getHeight());
- aViewPos.setX((aWinSize.getWidth() - aThumbSize.getWidth())/2); // Center the view
- maView->SetPosPixel(aViewPos);
+ aViewPos.setX(0);
+ Size aThumbSize(aWinSize.getWidth(), aWinSize.getHeight() - aViewPos.getY());
+ maView->SetPosSizePixel(aViewPos, aThumbSize);
if (aWinSize.getHeight() < aViewPos.getY() + aThumbSize.getHeight() + PADDING_DLG_BORDER)
aWinSize.setHeight(aViewPos.getY() + aThumbSize.getHeight() + PADDING_DLG_BORDER);
diff --git a/sfx2/source/doc/templatedlg.src b/sfx2/source/doc/templatedlg.src
index 184b216..61fe2b8 100644
--- a/sfx2/source/doc/templatedlg.src
+++ b/sfx2/source/doc/templatedlg.src
@@ -192,7 +192,7 @@ ModelessDialog DLG_TEMPLATE_MANAGER
Control TOOLBARS
{
Pos = MAP_APPFONT( 0 , 22 );
- Size = MAP_APPFONT( 290 , 20 );
+ Size = MAP_APPFONT( 290 , 15 );
TabStop = False;
};
More information about the Libreoffice-commits
mailing list