include/sfx2/recentdocsview.hxx | 2 +- include/sfx2/recentdocsviewitem.hxx | 3 ++- include/sfx2/templatecontaineritem.hxx | 2 +- include/sfx2/templateviewitem.hxx | 2 +- include/sfx2/thumbnailviewitem.hxx | 2 +- sfx2/source/control/recentdocsview.cxx | 6 +++--- sfx2/source/control/recentdocsviewitem.cxx | 5 +++-- sfx2/source/control/templateabstractview.cxx | 6 ++---- sfx2/source/control/templatecontaineritem.cxx | 4 ++-- sfx2/source/control/templatelocalview.cxx | 12 ++++-------- sfx2/source/control/templatesearchview.cxx | 3 +-- sfx2/source/control/templateviewitem.cxx | 4 ++-- sfx2/source/control/thumbnailviewitem.cxx | 4 ++-- sfx2/source/inc/templatesearchviewitem.hxx | 4 ++-- 14 files changed, 27 insertions(+), 32 deletions(-)
New commits: commit e90982f5962968a0f334d232b3be54fcdb736e1d Author: Caolán McNamara <caol...@redhat.com> Date: Wed Sep 18 12:44:08 2013 +0100 Resolves: fdo#69444 cursor keys don't move between recent used docs because each item is identified by an id, but that isn't set on the recent used so it stays stuck on the first one. change the ctor of the base element to require an id to be passed to it and adjust all the good code and then use the index+1 of the recently used elements as the id. Change-Id: I1e5978ddedbd4718923ef72d67598158d5ba8ee7 diff --git a/include/sfx2/recentdocsview.hxx b/include/sfx2/recentdocsview.hxx index ebb915c..1c3949e 100644 --- a/include/sfx2/recentdocsview.hxx +++ b/include/sfx2/recentdocsview.hxx @@ -44,7 +44,7 @@ public: RecentDocsView( Window* pParent ); virtual ~RecentDocsView(); - void insertItem(const OUString &rURL, const OUString &rTitle); + void insertItem(const OUString &rURL, const OUString &rTitle, sal_uInt16 nId); void loadRecentDocs(); void SetThumbnailSize(long thumbnailSize); diff --git a/include/sfx2/recentdocsviewitem.hxx b/include/sfx2/recentdocsviewitem.hxx index 05ae15ae..33d3bb9 100644 --- a/include/sfx2/recentdocsviewitem.hxx +++ b/include/sfx2/recentdocsviewitem.hxx @@ -15,7 +15,8 @@ class RecentDocsViewItem : public ThumbnailViewItem { public: - RecentDocsViewItem(ThumbnailView &rView, const OUString &rURL, const OUString &rTitle); + RecentDocsViewItem(ThumbnailView &rView, const OUString &rURL, + const OUString &rTitle, sal_uInt16 nId); virtual void setEditTitle (bool edit, bool bChangeFocus = true); OUString maURL; diff --git a/include/sfx2/templatecontaineritem.hxx b/include/sfx2/templatecontaineritem.hxx index 8f23c28..9d69ddf 100644 --- a/include/sfx2/templatecontaineritem.hxx +++ b/include/sfx2/templatecontaineritem.hxx @@ -23,7 +23,7 @@ public: BitmapEx maPreview4; std::vector<TemplateItemProperties> maTemplates; - TemplateContainerItem (ThumbnailView &rView); + TemplateContainerItem (ThumbnailView &rView, sal_uInt16 nId); virtual ~TemplateContainerItem (); diff --git a/include/sfx2/templateviewitem.hxx b/include/sfx2/templateviewitem.hxx index 6e3442b..92d5919 100644 --- a/include/sfx2/templateviewitem.hxx +++ b/include/sfx2/templateviewitem.hxx @@ -16,7 +16,7 @@ class TemplateViewItem : public ThumbnailViewItem { public: - TemplateViewItem (ThumbnailView &rView); + TemplateViewItem (ThumbnailView &rView, sal_uInt16 nId); virtual ~TemplateViewItem (); diff --git a/include/sfx2/thumbnailviewitem.hxx b/include/sfx2/thumbnailviewitem.hxx index 2272bc5..ea7bf93 100644 --- a/include/sfx2/thumbnailviewitem.hxx +++ b/include/sfx2/thumbnailviewitem.hxx @@ -73,7 +73,7 @@ public: OUString maTitle; ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >* mpxAcc; - ThumbnailViewItem (ThumbnailView &rView); + ThumbnailViewItem (ThumbnailView &rView, sal_uInt16 nId); virtual ~ThumbnailViewItem (); diff --git a/sfx2/source/control/recentdocsview.cxx b/sfx2/source/control/recentdocsview.cxx index 1099911..5e3c796 100644 --- a/sfx2/source/control/recentdocsview.cxx +++ b/sfx2/source/control/recentdocsview.cxx @@ -136,9 +136,9 @@ BitmapEx RecentDocsView::getDefaultThumbnail(const OUString &rURL) return aImg; } -void RecentDocsView::insertItem(const OUString &rURL, const OUString &rTitle) +void RecentDocsView::insertItem(const OUString &rURL, const OUString &rTitle, sal_uInt16 nId) { - RecentDocsViewItem *pChild = new RecentDocsViewItem(*this, rURL, rTitle); + RecentDocsViewItem *pChild = new RecentDocsViewItem(*this, rURL, rTitle, nId); AppendItem(pChild); } @@ -167,7 +167,7 @@ void RecentDocsView::loadRecentDocs() if( isAcceptedFile(aURL) ) { - insertItem(aURL, aTitle); + insertItem(aURL, aTitle, i+1); } } diff --git a/sfx2/source/control/recentdocsviewitem.cxx b/sfx2/source/control/recentdocsviewitem.cxx index a4024ae..3817d0d 100644 --- a/sfx2/source/control/recentdocsviewitem.cxx +++ b/sfx2/source/control/recentdocsviewitem.cxx @@ -13,8 +13,9 @@ #include <sfx2/recentdocsview.hxx> #include <tools/urlobj.hxx> -RecentDocsViewItem::RecentDocsViewItem(ThumbnailView &rView, const OUString &rURL, const OUString &rTitle) - : ThumbnailViewItem(rView) +RecentDocsViewItem::RecentDocsViewItem(ThumbnailView &rView, const OUString &rURL, + const OUString &rTitle, sal_uInt16 nId) + : ThumbnailViewItem(rView, nId) { RecentDocsView& rRecentView = dynamic_cast<RecentDocsView&>(rView); long nThumbnailSize = rRecentView.GetThumbnailSize(); diff --git a/sfx2/source/control/templateabstractview.cxx b/sfx2/source/control/templateabstractview.cxx index 9eb0a01..32f1372 100644 --- a/sfx2/source/control/templateabstractview.cxx +++ b/sfx2/source/control/templateabstractview.cxx @@ -162,8 +162,7 @@ void TemplateAbstractView::insertItem(const TemplateItemProperties &rTemplate) { const TemplateItemProperties *pCur = &rTemplate; - TemplateViewItem *pChild = new TemplateViewItem(*this); - pChild->mnId = pCur->nId; + TemplateViewItem *pChild = new TemplateViewItem(*this, pCur->nId); pChild->mnDocId = pCur->nDocId; pChild->mnRegionId = pCur->nRegionId; pChild->maTitle = pCur->aName; @@ -190,10 +189,9 @@ void TemplateAbstractView::insertItems(const std::vector<TemplateItemProperties> for (size_t i = 0, n = rTemplates.size(); i < n; ++i ) { //TODO: CHECK IF THE ITEM IS A FOLDER OR NOT - TemplateViewItem *pChild = new TemplateViewItem(*this); const TemplateItemProperties *pCur = &rTemplates[i]; - pChild->mnId = pCur->nId; + TemplateViewItem *pChild = new TemplateViewItem(*this, pCur->nId); pChild->mnDocId = pCur->nDocId; pChild->mnRegionId = pCur->nRegionId; pChild->maTitle = pCur->aName; diff --git a/sfx2/source/control/templatecontaineritem.cxx b/sfx2/source/control/templatecontaineritem.cxx index 5dc8c30..fb0cf99 100644 --- a/sfx2/source/control/templatecontaineritem.cxx +++ b/sfx2/source/control/templatecontaineritem.cxx @@ -28,8 +28,8 @@ using namespace basegfx::tools; using namespace drawinglayer::attribute; using namespace drawinglayer::primitive2d; -TemplateContainerItem::TemplateContainerItem (ThumbnailView &rView) - : ThumbnailViewItem(rView) +TemplateContainerItem::TemplateContainerItem (ThumbnailView &rView, sal_uInt16 nId) + : ThumbnailViewItem(rView, nId) { } diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx index bcc0d7d..a6933a3 100644 --- a/sfx2/source/control/templatelocalview.cxx +++ b/sfx2/source/control/templatelocalview.cxx @@ -71,8 +71,7 @@ void TemplateLocalView::Populate () { OUString aRegionName(mpDocTemplates->GetFullRegionName(i)); - TemplateContainerItem* pItem = new TemplateContainerItem( *this ); - pItem->mnId = i+1; + TemplateContainerItem* pItem = new TemplateContainerItem( *this, i+1 ); pItem->mnRegionId = i; pItem->maTitle = aRegionName; pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected)); @@ -139,8 +138,7 @@ void TemplateLocalView::showRootRegion() for (int i = 0, n = maRegions.size(); i < n; ++i) { TemplateContainerItem *pCur = maRegions[i]; - TemplateContainerItem *pItem = new TemplateContainerItem(*this); - pItem->mnId = pCur->mnId; + TemplateContainerItem *pItem = new TemplateContainerItem(*this, pCur->mnId); pItem->mnRegionId = pCur->mnRegionId; pItem->maTitle = pCur->maTitle; pItem->maTemplates = pCur->maTemplates; @@ -272,16 +270,14 @@ sal_uInt16 TemplateLocalView::createRegion(const OUString &rName) OUString aRegionName = rName; // Insert to the region cache list and to the thumbnail item list - TemplateContainerItem* pItem = new TemplateContainerItem( *this ); - pItem->mnId = nItemId; + TemplateContainerItem* pItem = new TemplateContainerItem( *this, nItemId ); pItem->mnRegionId = nRegionId; pItem->maTitle = aRegionName; pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected)); maRegions.push_back(pItem); - pItem = new TemplateContainerItem(*this); - pItem->mnId = nItemId; + pItem = new TemplateContainerItem(*this, nItemId); pItem->mnRegionId = nRegionId; pItem->maTitle = aRegionName; pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected)); diff --git a/sfx2/source/control/templatesearchview.cxx b/sfx2/source/control/templatesearchview.cxx index 2942b66..87bd69c 100644 --- a/sfx2/source/control/templatesearchview.cxx +++ b/sfx2/source/control/templatesearchview.cxx @@ -25,8 +25,7 @@ void TemplateSearchView::AppendItem(sal_uInt16 nAssocItemId, sal_uInt16 nRegionI const OUString &rPath, const BitmapEx &rImage) { - TemplateSearchViewItem *pItem = new TemplateSearchViewItem(*this); - pItem->mnId = getNextItemId(); + TemplateSearchViewItem *pItem = new TemplateSearchViewItem(*this, getNextItemId()); pItem->mnAssocId = nAssocItemId; pItem->mnDocId = nIdx; pItem->mnRegionId = nRegionId; diff --git a/sfx2/source/control/templateviewitem.cxx b/sfx2/source/control/templateviewitem.cxx index f488f81..116a4c0 100644 --- a/sfx2/source/control/templateviewitem.cxx +++ b/sfx2/source/control/templateviewitem.cxx @@ -28,8 +28,8 @@ using namespace basegfx::tools; using namespace drawinglayer::attribute; using namespace drawinglayer::primitive2d; -TemplateViewItem::TemplateViewItem (ThumbnailView &rView) - : ThumbnailViewItem(rView), +TemplateViewItem::TemplateViewItem (ThumbnailView &rView, sal_uInt16 nId) + : ThumbnailViewItem(rView, nId), mnRegionId(USHRT_MAX), mnDocId(USHRT_MAX) { diff --git a/sfx2/source/control/thumbnailviewitem.cxx b/sfx2/source/control/thumbnailviewitem.cxx index b2beb6d..791d981 100644 --- a/sfx2/source/control/thumbnailviewitem.cxx +++ b/sfx2/source/control/thumbnailviewitem.cxx @@ -104,9 +104,9 @@ void ResizableMultiLineEdit::Modify() mpItem->updateTitleEditSize(); } -ThumbnailViewItem::ThumbnailViewItem(ThumbnailView &rView) +ThumbnailViewItem::ThumbnailViewItem(ThumbnailView &rView, sal_uInt16 nId) : mrParent(rView) - , mnId(0) + , mnId(nId) , mbVisible(true) , mbSelected(false) , mbHover(false) diff --git a/sfx2/source/inc/templatesearchviewitem.hxx b/sfx2/source/inc/templatesearchviewitem.hxx index 9d26ac7..f6e6a6d 100644 --- a/sfx2/source/inc/templatesearchviewitem.hxx +++ b/sfx2/source/inc/templatesearchviewitem.hxx @@ -14,8 +14,8 @@ struct TemplateSearchViewItem : public TemplateViewItem { - TemplateSearchViewItem (ThumbnailView &rView) - : TemplateViewItem(rView) + TemplateSearchViewItem (ThumbnailView &rView, sal_uInt16 nId) + : TemplateViewItem(rView, nId) {} virtual ~TemplateSearchViewItem ()
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits