diff options
author | Cédric Bosdonnat <cedric.bosdonnat@free.fr> | 2013-01-31 16:36:52 +0100 |
---|---|---|
committer | Cédric Bosdonnat <cedric.bosdonnat@free.fr> | 2013-01-31 16:40:14 +0100 |
commit | af331776895c1c3d036040599501d3f08a4d5562 (patch) | |
tree | 432efa9c4feb79ce3ea18d2f420677f00398e6b5 /sfx2 | |
parent | bdb3c21ee5a20046dfd80c486e41ad591b863c1c (diff) |
Template Manager: show some icons if there is no thumbnail
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/inc/sfx2/sfx.hrc | 5 | ||||
-rw-r--r-- | sfx2/inc/templatedlg.hxx | 2 | ||||
-rw-r--r-- | sfx2/source/appl/sfx.src | 20 | ||||
-rw-r--r-- | sfx2/source/control/templateview.cxx | 6 | ||||
-rw-r--r-- | sfx2/source/doc/templatedlg.cxx | 25 |
5 files changed, 58 insertions, 0 deletions
diff --git a/sfx2/inc/sfx2/sfx.hrc b/sfx2/inc/sfx2/sfx.hrc index 500063c7575d..5d99d6130b83 100644 --- a/sfx2/inc/sfx2/sfx.hrc +++ b/sfx2/inc/sfx2/sfx.hrc @@ -169,6 +169,11 @@ #define BT_CHECKOUT (RID_SFX_START+126) #define STR_ACCTITLE_PRODUCTIVITYTOOLS (RID_SFX_START+157) +#define SFX_THUMBNAIL_TEXT (RID_SFX_START+158) +#define SFX_THUMBNAIL_SHEET (RID_SFX_START+159) +#define SFX_THUMBNAIL_PRESENTATION (RID_SFX_START+160) +#define SFX_THUMBNAIL_DRAWING (RID_SFX_START+161) + //========================================================================= // group ids diff --git a/sfx2/inc/templatedlg.hxx b/sfx2/inc/templatedlg.hxx index 4a18ab2afa4e..1cc9ae54d47e 100644 --- a/sfx2/inc/templatedlg.hxx +++ b/sfx2/inc/templatedlg.hxx @@ -50,6 +50,8 @@ public: DECL_LINK(ActivatePageHdl, void*); + static BitmapEx getDefaultThumbnail( const rtl::OUString& rPath ); + private: virtual void MouseButtonDown( const MouseEvent& rMEvt ); diff --git a/sfx2/source/appl/sfx.src b/sfx2/source/appl/sfx.src index 1103841a3000..bffec2b88814 100644 --- a/sfx2/source/appl/sfx.src +++ b/sfx2/source/appl/sfx.src @@ -37,3 +37,23 @@ String STR_PASSWD { Text [ en-US ] = "Password" ; }; + +Bitmap ( SFX_THUMBNAIL_TEXT ) +{ + File = "odt_48_8.png"; +}; + +Bitmap ( SFX_THUMBNAIL_SHEET ) +{ + File = "ods_48_8.png"; +}; + +Bitmap ( SFX_THUMBNAIL_PRESENTATION ) +{ + File = "odp_48_8.png"; +}; + +Bitmap ( SFX_THUMBNAIL_DRAWING ) +{ + File = "odg_48_8.png"; +}; diff --git a/sfx2/source/control/templateview.cxx b/sfx2/source/control/templateview.cxx index 01f92064dd83..4a44ea0d6004 100644 --- a/sfx2/source/control/templateview.cxx +++ b/sfx2/source/control/templateview.cxx @@ -7,6 +7,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +#include "templatedlg.hxx" #include <sfx2/templateview.hxx> #include <basegfx/matrix/b2dhommatrixtools.hxx> @@ -63,6 +64,11 @@ void TemplateView::InsertItems (const std::vector<TemplateItemProperties> &rTemp pItem->maTitle = pCur->aName; pItem->setPath(pCur->aPath); pItem->maPreview1 = pCur->aThumbnail; + if ( pCur->aThumbnail.IsEmpty() ) + { + // Use the default thumbnail if we have nothing else + pItem->maPreview1 = SfxTemplateManagerDlg::getDefaultThumbnail( pItem->getPath() ); + } pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected)); mItemList.push_back(pItem); diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx index d3721ab8c6e1..8bb8035f018b 100644 --- a/sfx2/source/doc/templatedlg.cxx +++ b/sfx2/source/doc/templatedlg.cxx @@ -1534,6 +1534,31 @@ void SfxTemplateManagerDlg::syncRepositories() const } } +BitmapEx SfxTemplateManagerDlg::getDefaultThumbnail( const OUString& rPath ) +{ + INetURLObject aUrl(rPath); + OUString aExt = aUrl.getExtension(); + + BitmapEx aImg; + if ( aExt == "ott" || aExt == "stw" || aExt == "oth" || aExt == "dot" || aExt == "dotx" ) + { + aImg = BitmapEx ( SfxResId( SFX_THUMBNAIL_TEXT ) ); + } + else if ( aExt == "ots" || aExt == "stc" || aExt == "xlt" || aExt == "xltm" || aExt == "xltx" ) + { + aImg = BitmapEx ( SfxResId( SFX_THUMBNAIL_SHEET ) ); + } + else if ( aExt == "otp" || aExt == "sti" || aExt == "pot" || aExt == "potm" || aExt == "potx" ) + { + aImg = BitmapEx ( SfxResId( SFX_THUMBNAIL_PRESENTATION ) ); + } + else if ( aExt == "otg" || aExt == "std" ) + { + aImg = BitmapEx ( SfxResId( SFX_THUMBNAIL_DRAWING ) ); + } + return aImg; +} + static bool lcl_getServiceName ( const OUString &rFileURL, OUString &rName ) { bool bRet = false; |