[Libreoffice-commits] .: 5 commits - sfx2/inc sfx2/source
Rafael Dominguez
rdominguez at kemper.freedesktop.org
Sun Jul 8 17:26:52 PDT 2012
sfx2/inc/sfx2/templatefolderview.hxx | 6 ++-
sfx2/inc/sfx2/thumbnailview.hxx | 2 -
sfx2/inc/templatedlg.hxx | 2 +
sfx2/source/control/templatefolderview.cxx | 28 +++++++++++-----
sfx2/source/control/templatesearchview.cxx | 2 -
sfx2/source/control/templateview.cxx | 2 -
sfx2/source/control/thumbnailview.cxx | 4 +-
sfx2/source/doc/templatedlg.cxx | 50 ++++++++++++++++++++++-------
sfx2/source/doc/templatedlg.hrc | 4 +-
sfx2/source/doc/templatedlg.src | 12 ++++--
10 files changed, 77 insertions(+), 35 deletions(-)
New commits:
commit f8f2296a510612381fc86273d0380133d5929bf0
Author: Rafael Dominguez <venccsralph at gmail.com>
Date: Sun Jul 8 19:53:25 2012 -0430
Change OnFolderSelected function name to OnItemSelected.
Change-Id: I9a7437e4a11db4c40a4be88c3a3270f0bc813a52
diff --git a/sfx2/inc/sfx2/thumbnailview.hxx b/sfx2/inc/sfx2/thumbnailview.hxx
index 18ca2f8..4a45370 100644
--- a/sfx2/inc/sfx2/thumbnailview.hxx
+++ b/sfx2/inc/sfx2/thumbnailview.hxx
@@ -315,7 +315,7 @@ protected:
DECL_DLLPRIVATE_LINK( ImplScrollHdl, ScrollBar* );
DECL_DLLPRIVATE_LINK( ImplTimerHdl, void* );
- DECL_LINK(OnFolderSelected, ThumbnailViewItem*);
+ DECL_LINK(OnItemSelected, ThumbnailViewItem*);
protected:
diff --git a/sfx2/source/control/templatefolderview.cxx b/sfx2/source/control/templatefolderview.cxx
index de9c866..1db2f77 100644
--- a/sfx2/source/control/templatefolderview.cxx
+++ b/sfx2/source/control/templatefolderview.cxx
@@ -311,7 +311,7 @@ void TemplateFolderView::Populate ()
TemplateFolderViewItem* pItem = new TemplateFolderViewItem( *this, this );
pItem->mnId = i+1;
pItem->maText = aRegionName;
- pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnFolderSelected));
+ pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
sal_uInt16 nEntries = mpDocTemplates->GetCount(i);
@@ -456,7 +456,7 @@ sal_uInt16 TemplateFolderView::createRegion(const rtl::OUString &rName)
TemplateFolderViewItem* pItem = new TemplateFolderViewItem( *this, this );
pItem->mnId = nRegionId+1;
pItem->maText = aRegionName;
- pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnFolderSelected));
+ pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
mItemList.push_back(pItem);
diff --git a/sfx2/source/control/templatesearchview.cxx b/sfx2/source/control/templatesearchview.cxx
index fa6eabc..5bf2f73 100644
--- a/sfx2/source/control/templatesearchview.cxx
+++ b/sfx2/source/control/templatesearchview.cxx
@@ -44,7 +44,7 @@ void TemplateSearchView::AppendItem(sal_uInt16 nItemId, sal_uInt16 nRegionId, sa
pItem->maPreview1 = rImage;
pItem->maText = rStr;
pItem->setPath(rPath);
- pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnFolderSelected));
+ pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
mItemList.push_back(pItem);
diff --git a/sfx2/source/control/templateview.cxx b/sfx2/source/control/templateview.cxx
index a83a568..b804341 100644
--- a/sfx2/source/control/templateview.cxx
+++ b/sfx2/source/control/templateview.cxx
@@ -119,7 +119,7 @@ void TemplateView::InsertItems (const std::vector<TemplateItemProperties> &rTemp
pItem->setPath(pCur->aPath);
pItem->setFileType(pCur->aType);
pItem->maPreview1 = pCur->aThumbnail;
- pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnFolderSelected));
+ pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
mItemList.push_back(pItem);
}
diff --git a/sfx2/source/control/thumbnailview.cxx b/sfx2/source/control/thumbnailview.cxx
index b8a962c..d64edf1 100644
--- a/sfx2/source/control/thumbnailview.cxx
+++ b/sfx2/source/control/thumbnailview.cxx
@@ -540,7 +540,7 @@ void ThumbnailView::ImplEndTracking(const Point& /*rPos*/, bool const /*bCancel*
//FIXME TODO
}
-IMPL_LINK (ThumbnailView, OnFolderSelected, ThumbnailViewItem*, pItem)
+IMPL_LINK (ThumbnailView, OnItemSelected, ThumbnailViewItem*, pItem)
{
maItemStateHdl.Call(pItem);
return 0;
@@ -804,7 +804,7 @@ void ThumbnailView::InsertItem( sal_uInt16 nItemId, const BitmapEx& rImage,
pItem->mnId = nItemId;
pItem->maPreview1 = rImage;
pItem->maText = rText;
- pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnFolderSelected));
+ pItem->setSelectClickHdl(LINK(this,ThumbnailView,OnItemSelected));
ImplInsertItem( pItem, nPos );
}
commit fa10ab03bb9f3e796eaa8880d00d116cad9a4225
Author: Rafael Dominguez <venccsralph at gmail.com>
Date: Sun Jul 8 19:12:33 2012 -0430
Add an option in toolbar to delete folders when you select them.
Change-Id: Iff10ff99340d9680b924c11956dc036a5f2dac4f
diff --git a/sfx2/inc/sfx2/templatefolderview.hxx b/sfx2/inc/sfx2/templatefolderview.hxx
index e3187c4..c969a2a 100644
--- a/sfx2/inc/sfx2/templatefolderview.hxx
+++ b/sfx2/inc/sfx2/templatefolderview.hxx
@@ -62,6 +62,8 @@ public:
sal_uInt16 createRegion (const rtl::OUString &rName);
+ bool removeRegion (const sal_uInt16 nItemId);
+
bool removeTemplate (const sal_uInt16 nItemId);
bool moveTemplates (std::set<const ThumbnailViewItem*> &rItems, const sal_uInt16 nTargetItem, bool bCopy);
diff --git a/sfx2/inc/templatedlg.hxx b/sfx2/inc/templatedlg.hxx
index 9c5abfb..435b436 100644
--- a/sfx2/inc/templatedlg.hxx
+++ b/sfx2/inc/templatedlg.hxx
@@ -72,6 +72,7 @@ private:
void OnTemplateEdit ();
void OnTemplateProperties ();
void OnTemplateDelete ();
+ void OnFolderDelete ();
void centerTopButtons ();
diff --git a/sfx2/source/control/templatefolderview.cxx b/sfx2/source/control/templatefolderview.cxx
index 63ea12a..de9c866 100644
--- a/sfx2/source/control/templatefolderview.cxx
+++ b/sfx2/source/control/templatefolderview.cxx
@@ -468,6 +468,18 @@ sal_uInt16 TemplateFolderView::createRegion(const rtl::OUString &rName)
return true;
}
+bool TemplateFolderView::removeRegion(const sal_uInt16 nItemId)
+{
+ sal_uInt16 nRegionId = nItemId - 1;
+
+ if (!mpDocTemplates->Delete(nRegionId,USHRT_MAX))
+ return false;
+
+ RemoveItem(nItemId);
+
+ return true;
+}
+
bool TemplateFolderView::removeTemplate (const sal_uInt16 nItemId)
{
sal_uInt16 nRegionId = mpItemView->getRegionId();
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 0e7fe29..decb401 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -310,6 +310,9 @@ IMPL_LINK_NOARG(SfxTemplateManagerDlg,TBXViewHdl)
case TBI_TEMPLATE_IMPORT:
OnTemplateImport();
break;
+ case TBI_TEMPLATE_FOLDER_DEL:
+ OnFolderDelete();
+ break;
default:
break;
}
@@ -418,7 +421,10 @@ IMPL_LINK(SfxTemplateManagerDlg, TVFolderStateHdl, const ThumbnailViewItem*, pIt
if (pItem->isSelected())
{
if (maSelFolders.empty())
+ {
mpViewBar->EnableItem(TBI_TEMPLATE_IMPORT,true);
+ mpViewBar->ShowItem(TBI_TEMPLATE_FOLDER_DEL);
+ }
maSelFolders.insert(pItem);
}
@@ -427,7 +433,10 @@ IMPL_LINK(SfxTemplateManagerDlg, TVFolderStateHdl, const ThumbnailViewItem*, pIt
maSelFolders.erase(pItem);
if (maSelFolders.empty())
+ {
mpViewBar->EnableItem(TBI_TEMPLATE_IMPORT,false);
+ mpViewBar->HideItem(TBI_TEMPLATE_FOLDER_DEL);
+ }
}
return 0;
@@ -762,6 +771,18 @@ void SfxTemplateManagerDlg::OnTemplateDelete ()
}
}
+void SfxTemplateManagerDlg::OnFolderDelete()
+{
+ std::set<const ThumbnailViewItem*>::const_iterator pIter;
+ for (pIter = maSelFolders.begin(); pIter != maSelFolders.end();)
+ {
+ if (maView->removeRegion((*pIter)->mnId))
+ maSelFolders.erase(pIter++);
+ else
+ ++pIter;
+ }
+}
+
void SfxTemplateManagerDlg::centerTopButtons()
{
Point aFirstBtnPos = aButtonAll.GetPosPixel();
diff --git a/sfx2/source/doc/templatedlg.hrc b/sfx2/source/doc/templatedlg.hrc
index cf94cd3..509b925 100644
--- a/sfx2/source/doc/templatedlg.hrc
+++ b/sfx2/source/doc/templatedlg.hrc
@@ -38,6 +38,8 @@
#define BTN_TEMPLATE_CLOSE 24
+#define TBI_TEMPLATE_FOLDER_DEL 25
+
#define STR_CREATE_TEXT 260
#define STR_CREATE_SHEET 261
#define STR_CREATE_PRESENT 262
diff --git a/sfx2/source/doc/templatedlg.src b/sfx2/source/doc/templatedlg.src
index c634932..f32e26c 100644
--- a/sfx2/source/doc/templatedlg.src
+++ b/sfx2/source/doc/templatedlg.src
@@ -195,6 +195,13 @@ ModalDialog DLG_TEMPLATE_MANAGER
ImageBitmap = Bitmap { File = "import.png" ; };
};
};
+
+ ToolBoxItem
+ {
+ Identifier = TBI_TEMPLATE_FOLDER_DEL;
+ Hide = TRUE;
+ Text [ en-US ] = "Delete";
+ };
};
};
commit babc18065fa5185bd0208ce48636b4f6a492ebe5
Author: Rafael Dominguez <venccsralph at gmail.com>
Date: Sun Jul 8 16:35:25 2012 -0430
Remove "No folder" option from move menu.
- We dont support having folders and template files mixed, so
we cant move them to the same folders as templates.
Change-Id: I07a519e63fef358d915a1d2c8484c6c2d8940642
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index e9d57cb..0e7fe29 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -395,7 +395,6 @@ IMPL_LINK(SfxTemplateManagerDlg, TBXDropdownHdl, ToolBox*, pBox)
pMoveMenu->InsertSeparator();
pMoveMenu->InsertItem(MNI_MOVE_NEW,SfxResId(STR_MOVE_NEW).toString());
- pMoveMenu->InsertItem(MNI_MOVE_DELETE,SfxResId(STR_MOVE_DELETE).toString());
pMoveMenu->Execute(pBox,pBox->GetItemRect(TBI_TEMPLATE_MOVE),
POPUPMENU_EXECUTE_DOWN);
@@ -530,17 +529,6 @@ IMPL_LINK(SfxTemplateManagerDlg, MoveMenuSelectHdl, Menu*, pMenu)
}
}
}
- else if (nMenuId == MNI_MOVE_DELETE)
- {
- std::set<const ThumbnailViewItem*>::const_iterator pIter;
- for (pIter = maSelTemplates.begin(); pIter != maSelTemplates.end();)
- {
- if (maView->removeTemplate((*pIter)->mnId))
- maSelTemplates.erase(pIter++);
- else
- ++pIter;
- }
- }
else
{
// Try to move the template, if isnt possible try to copy it.
diff --git a/sfx2/source/doc/templatedlg.hrc b/sfx2/source/doc/templatedlg.hrc
index 8a46b11..cf94cd3 100644
--- a/sfx2/source/doc/templatedlg.hrc
+++ b/sfx2/source/doc/templatedlg.hrc
@@ -46,11 +46,9 @@
#define STR_ACTION_SORT_NAME 264
#define MNI_MOVE_NEW 265
-#define MNI_MOVE_DELETE 266
#define MNI_MOVE_FOLDER_BASE 267
#define STR_MOVE_NEW 268
-#define STR_MOVE_DELETE 270
#define STR_INPUT_NEW 271
#define IMG_ONLINE_REPOSITORY 100
diff --git a/sfx2/source/doc/templatedlg.src b/sfx2/source/doc/templatedlg.src
index f9ce918..c634932 100644
--- a/sfx2/source/doc/templatedlg.src
+++ b/sfx2/source/doc/templatedlg.src
@@ -40,11 +40,6 @@ String STR_MOVE_NEW
Text [ en-US ] = "New folder";
};
-String STR_MOVE_DELETE
-{
- Text [ en-US ] = "No folder";
-};
-
String STR_INPUT_NEW
{
Text [ en-US ] = "Enter folder name:";
commit 0088d0362381596f64e4218e1aa8af54b3db36e5
Author: Rafael Dominguez <venccsralph at gmail.com>
Date: Sun Jul 8 16:02:24 2012 -0430
Hide template toolbar when we close overlay and templates are selected.
Change-Id: I8ccff40fcb7d214ce368d5c3dc9577f76c1b2929
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index ed607da..e9d57cb 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -272,7 +272,13 @@ IMPL_LINK_NOARG(SfxTemplateManagerDlg,ViewDrawsHdl)
void SfxTemplateManagerDlg::MouseButtonDown( const MouseEvent& rMEvt )
{
if (!maView->GetActiveClipRegion().IsInside(rMEvt.GetPosPixel()) && maView->isOverlayVisible())
+ {
+ maSelTemplates.clear();
+ mpTemplateBar->Hide();
+ mpViewBar->Show();
+
maView->showOverlay(false);
+ }
}
IMPL_LINK_NOARG (SfxTemplateManagerDlg, CloseHdl)
@@ -281,9 +287,12 @@ IMPL_LINK_NOARG (SfxTemplateManagerDlg, CloseHdl)
return 0;
}
-
IMPL_LINK_NOARG(SfxTemplateManagerDlg, CloseOverlayHdl)
{
+ maSelTemplates.clear();
+ mpTemplateBar->Hide();
+ mpViewBar->Show();
+
maView->showOverlay(false);
return 0;
}
commit 7c98ed8f2673c02d3f424e56b7a6f5d887ad89f0
Author: Rafael Dominguez <venccsralph at gmail.com>
Date: Sun Jul 8 13:07:11 2012 -0430
Handle close overlay action in template dialog instead of folder view.
Change-Id: I1f79afff5ea8a9dec5b8534a73500224135e213b
diff --git a/sfx2/inc/sfx2/templatefolderview.hxx b/sfx2/inc/sfx2/templatefolderview.hxx
index af12962..e3187c4 100644
--- a/sfx2/inc/sfx2/templatefolderview.hxx
+++ b/sfx2/inc/sfx2/templatefolderview.hxx
@@ -48,6 +48,8 @@ public:
void setOverlayDblClickHdl (const Link &rLink);
+ void setOverlayCloseHdl (const Link &rLink);
+
void filterTemplatesByApp (const FILTER_APPLICATION &eApp);
std::vector<TemplateItemProperties>
@@ -78,8 +80,6 @@ private:
DECL_LINK(ChangeNameHdl, TemplateView*);
- DECL_LINK(OverlayCloseHdl, void*);
-
private:
bool mbFilteredResults; // Flag keep track if overlay has been filtered so folders can get filtered too afterwards
diff --git a/sfx2/inc/templatedlg.hxx b/sfx2/inc/templatedlg.hxx
index 7b528ae..9c5abfb 100644
--- a/sfx2/inc/templatedlg.hxx
+++ b/sfx2/inc/templatedlg.hxx
@@ -48,6 +48,7 @@ private:
virtual void MouseButtonDown( const MouseEvent& rMEvt );
DECL_LINK(CloseHdl, void*);
+ DECL_LINK(CloseOverlayHdl, void*);
DECL_LINK(OnClickSelectionMode, ImageButton*);
diff --git a/sfx2/source/control/templatefolderview.cxx b/sfx2/source/control/templatefolderview.cxx
index 91f0fbb..63ea12a 100644
--- a/sfx2/source/control/templatefolderview.cxx
+++ b/sfx2/source/control/templatefolderview.cxx
@@ -287,7 +287,6 @@ TemplateFolderView::TemplateFolderView ( Window* pParent, const ResId& rResId, b
mpItemView->setItemStateHdl(LINK(this,TemplateFolderView,TVTemplateStateHdl));
mpItemView->setChangeNameHdl(LINK(this,TemplateFolderView,ChangeNameHdl));
- mpItemView->setCloseHdl(LINK(this,TemplateFolderView,OverlayCloseHdl));
}
TemplateFolderView::~TemplateFolderView()
@@ -394,6 +393,11 @@ void TemplateFolderView::setOverlayDblClickHdl(const Link &rLink)
mpItemView->setDblClickHdl(rLink);
}
+void TemplateFolderView::setOverlayCloseHdl(const Link &rLink)
+{
+ mpItemView->setCloseHdl(rLink);
+}
+
void TemplateFolderView::filterTemplatesByApp (const FILTER_APPLICATION &eApp)
{
meFilterOption = eApp;
@@ -690,12 +694,6 @@ IMPL_LINK(TemplateFolderView, ChangeNameHdl, TemplateView*, pView)
return true;
}
-IMPL_LINK_NOARG(TemplateFolderView, OverlayCloseHdl)
-{
- showOverlay(false);
- return 0;
-}
-
void lcl_updateThumbnails (TemplateFolderViewItem *pItem)
{
// Update folder thumbnails
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 2b08cf2..ed607da 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -186,6 +186,7 @@ SfxTemplateManagerDlg::SfxTemplateManagerDlg (Window *parent)
maView->setItemStateHdl(LINK(this,SfxTemplateManagerDlg,TVFolderStateHdl));
maView->setTemplateStateHdl(LINK(this,SfxTemplateManagerDlg,TVTemplateStateHdl));
maView->setOverlayDblClickHdl(LINK(this,SfxTemplateManagerDlg,OpenTemplateHdl));
+ maView->setOverlayCloseHdl(LINK(this,SfxTemplateManagerDlg,CloseOverlayHdl));
mpSearchView->SetSizePixel(aThumbSize);
mpSearchView->setItemMaxTextLength(ITEM_MAX_TEXT_LENGTH);
@@ -280,6 +281,13 @@ IMPL_LINK_NOARG (SfxTemplateManagerDlg, CloseHdl)
return 0;
}
+
+IMPL_LINK_NOARG(SfxTemplateManagerDlg, CloseOverlayHdl)
+{
+ maView->showOverlay(false);
+ return 0;
+}
+
IMPL_LINK (SfxTemplateManagerDlg, OnClickSelectionMode, ImageButton*, pButton)
{
maView->setSelectionMode(pButton->GetState() == STATE_CHECK);
More information about the Libreoffice-commits
mailing list