[Libreoffice-commits] core.git: include/sfx2 sfx2/Library_sfx.mk sfx2/source sw/qa

2023-02-21 Thread Jim Raykowski (via logerrit)
 include/sfx2/sidebar/TabBar.hxx   |2 +
 sfx2/Library_sfx.mk   |1 
 sfx2/source/sidebar/TabBar.cxx|9 
 sfx2/source/sidebar/uiobject.cxx  |   61 +
 sfx2/source/sidebar/uiobject.hxx  |   32 +
 sw/qa/uitest/sidebar/tdf152921.py |   70 ++
 6 files changed, 175 insertions(+)

New commits:
commit 88e29df0c216c300b9388ee2822003da2bee8679
Author: Jim Raykowski 
AuthorDate: Sat Jan 14 12:06:10 2023 -0900
Commit: Xisco Fauli 
CommitDate: Tue Feb 21 20:20:03 2023 +

tdf#152921 add uitest

Change-Id: I6d3e6d8503c23549b04f5aaace6a90de9f3ced5e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145522
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/include/sfx2/sidebar/TabBar.hxx b/include/sfx2/sidebar/TabBar.hxx
index fcbced33fa98..30da7852706f 100644
--- a/include/sfx2/sidebar/TabBar.hxx
+++ b/include/sfx2/sidebar/TabBar.hxx
@@ -39,6 +39,7 @@ class SidebarController;
 */
 class TabBar final : public InterimItemWindow
 {
+friend class TabBarUIObject;
 public:
 /** DeckMenuData has entries for display name, and a flag:
  - isCurrentDeck for the deck selection data
@@ -85,6 +86,7 @@ public:
 /// Enables/Disables the menu button. Used by LoKit.
 void EnableMenuButton(const bool bEnable);
 
+virtual FactoryFunction GetUITestFactory() const override;
 private:
 css::uno::Reference mxFrame;
 
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index 7b1dee935ff3..72f6bbaa9f0c 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -287,6 +287,7 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/sidebar/TitleBar \
 sfx2/source/sidebar/Theme \
 sfx2/source/sidebar/Tools \
+sfx2/source/sidebar/uiobject\
 sfx2/source/sidebar/UnoPanel \
 sfx2/source/sidebar/UnoPanels \
 sfx2/source/sidebar/UnoDeck \
diff --git a/sfx2/source/sidebar/TabBar.cxx b/sfx2/source/sidebar/TabBar.cxx
index bd73322f9496..6b77096898c7 100644
--- a/sfx2/source/sidebar/TabBar.cxx
+++ b/sfx2/source/sidebar/TabBar.cxx
@@ -35,6 +35,8 @@
 #include 
 #include 
 
+#include "uiobject.hxx"
+
 using namespace css;
 using namespace css::uno;
 
@@ -58,6 +60,8 @@ TabBar::TabBar(vcl::Window* pParentWindow,
 , maPopupMenuProvider(std::move(aPopupMenuProvider))
 , pParentSidebarController(rParentSidebarController)
 {
+set_id("TabBar"); // for uitest
+
 InitControlBase(mxMenuButton.get());
 
 mxTempToplevel->move(mxContents.get(), m_xContainer.get());
@@ -378,6 +382,11 @@ void TabBar::EnableMenuButton(const bool bEnable)
 mxMenuButton->set_sensitive(bEnable);
 }
 
+FactoryFunction TabBar::GetUITestFactory() const
+{
+return TabBarUIObject::create;
+}
+
 } // end of namespace sfx2::sidebar
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/sidebar/uiobject.cxx b/sfx2/source/sidebar/uiobject.cxx
new file mode 100644
index ..13c21d2220b5
--- /dev/null
+++ b/sfx2/source/sidebar/uiobject.cxx
@@ -0,0 +1,61 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include "uiobject.hxx"
+#include 
+
+namespace sfx2::sidebar
+{
+TabBarUIObject::TabBarUIObject(const VclPtr& xTabBar)
+: WindowUIObject(xTabBar)
+, mxTabBar(xTabBar)
+{
+}
+
+StringMap TabBarUIObject::get_state()
+{
+StringMap aMap = WindowUIObject::get_state();
+OUString rsHighlightedTabsIds;
+for (auto const& item : mxTabBar->maItems)
+{
+if (item->mxButton->get_item_active("toggle"))
+{
+if (!rsHighlightedTabsIds.isEmpty())
+rsHighlightedTabsIds += ",";
+rsHighlightedTabsIds += item->msDeckId;
+}
+}
+aMap["HighlightedTabsIds"] = rsHighlightedTabsIds;
+return aMap;
+}
+
+void TabBarUIObject::execute(const OUString& rAction, const StringMap& 
rParameters)
+{
+if (rAction == "CLICK")
+{
+if (rParameters.find("POS") != rParameters.end())
+mxTabBar->pParentSidebarController->OpenThenToggleDeck(
+
mxTabBar->GetDeckIdForIndex(rParameters.find("POS")->second.toInt32()));
+}
+else
+WindowUIObject::execute(rAction, rParameters);
+}
+
+std::unique_ptr TabBarUIObject::create(vcl::Window* pWindow)
+{
+TabBar* pTabBar = dynamic_cast(pWindow);
+assert(pTabBar);
+return std::unique_ptr(new TabBarUIObject(pTabBar));
+}
+
+OUString TabBarUIObject::get_name() const { return "TabBarUIObject"; }
+
+} // namespace sidebar
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/sidebar/uiobject.hxx b/sfx2/source/sidebar/uiobject.hxx
new file 

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

2021-02-11 Thread Tomaž Vajngerl (via logerrit)
 include/sfx2/devtools/DevelopmentToolDockingWindow.hxx |6 
 include/sfx2/devtools/ObjectInspectorTreeHandler.hxx   |   44 +
 sfx2/Library_sfx.mk|1 
 sfx2/source/devtools/DevelopmentToolDockingWindow.cxx  |  501 
 sfx2/source/devtools/ObjectInspectorTreeHandler.cxx|  503 +
 5 files changed, 557 insertions(+), 498 deletions(-)

New commits:
commit e44639f50056b843913573b4635517019e00431c
Author: Tomaž Vajngerl 
AuthorDate: Mon Feb 8 22:41:36 2021 +0900
Commit: Tomaž Vajngerl 
CommitDate: Thu Feb 11 12:54:47 2021 +0100

devtools: move handling of object inspector tree to own class/files

To make handling of object inspector tree view easier, move the
functionality to its own class and file.

Change-Id: I47ae1bc06b582d0d146e7e97bc08a3b5f82ce794
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110734
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 

diff --git a/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx 
b/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
index 1ed166239949..4721a424e66d 100644
--- a/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
+++ b/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
@@ -16,6 +16,7 @@
 #include 
 
 #include 
+#include 
 
 #include 
 #include 
@@ -37,18 +38,15 @@ private:
 css::uno::Reference 
mxSelectionListener;
 
 DocumentModelTreeHandler maDocumentModelTreeHandler;
+ObjectInspectorTreeHandler maObjectInspectorTreeHandler;
 
 DECL_LINK(DocumentModelTreeViewSelectionHandler, weld::TreeView&, void);
 DECL_LINK(SelectionToggled, weld::ToggleButton&, void);
 
-DECL_LINK(ObjectInspectorExpandingHandler, const weld::TreeIter&, bool);
-
 void inspectDocument();
 void updateSelection();
 void inspectSelectionOrRoot(css::uno::Reference 
const& xController);
 
-void clearObjectInspectorChildren(weld::TreeIter const& rParent);
-
 public:
 DevelopmentToolDockingWindow(SfxBindings* pBindings, SfxChildWindow* 
pChildWindow,
  vcl::Window* pParent);
diff --git a/include/sfx2/devtools/ObjectInspectorTreeHandler.hxx 
b/include/sfx2/devtools/ObjectInspectorTreeHandler.hxx
new file mode 100644
index ..aa6e353e6549
--- /dev/null
+++ b/include/sfx2/devtools/ObjectInspectorTreeHandler.hxx
@@ -0,0 +1,44 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ */
+
+#pragma once
+
+#include 
+#include 
+
+#include 
+#include 
+
+class ObjectInspectorTreeHandler
+{
+private:
+std::unique_ptr& mpObjectInspectorTree;
+std::unique_ptr& mpClassNameLabel;
+
+void clearObjectInspectorChildren(weld::TreeIter const& rParent);
+
+public:
+ObjectInspectorTreeHandler(std::unique_ptr& 
pObjectInspectorTree,
+   std::unique_ptr& pClassNameLabel)
+: mpObjectInspectorTree(pObjectInspectorTree)
+, mpClassNameLabel(pClassNameLabel)
+{
+mpObjectInspectorTree->connect_expanding(
+LINK(this, ObjectInspectorTreeHandler, ExpandingHandler));
+}
+
+DECL_LINK(ExpandingHandler, const weld::TreeIter&, bool);
+
+void introspect(css::uno::Reference const& 
xInterface);
+
+void dispose();
+};
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index 52ace3c503fe..b5126ca87893 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -165,6 +165,7 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/devtools/DevelopmentToolChildWindow \
 sfx2/source/devtools/DevelopmentToolDockingWindow \
 sfx2/source/devtools/DocumentModelTreeHandler \
+sfx2/source/devtools/ObjectInspectorTreeHandler \
 sfx2/source/dialog/alienwarn \
 sfx2/source/dialog/backingcomp \
 sfx2/source/dialog/backingwindow \
diff --git a/sfx2/source/devtools/DevelopmentToolDockingWindow.cxx 
b/sfx2/source/devtools/DevelopmentToolDockingWindow.cxx
index 89f9e878d69b..0d335b5118cc 100644
--- a/sfx2/source/devtools/DevelopmentToolDockingWindow.cxx
+++ b/sfx2/source/devtools/DevelopmentToolDockingWindow.cxx
@@ -12,433 +12,16 @@
 
 #include 
 
-#include 
-#include 
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include 
-#include 
-#include 
-
-#include 
-#include 
-
 #include 
 
-#include 
-
 #include 
-#include 
-
 #include 
-
 #include 
 
-#include 
-#include 
-
 #include "SelectionChangeHandler.hxx"
 
 using namespace css;
 
-namespace
-{
-uno::Reference
-TypeToIdlClass(const uno::Type& rType, const 
uno::Reference& xContext)
-{
-auto xReflection = reflection::theCoreReflection::get(xContext);
-

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

2020-11-23 Thread Vert D (via logerrit)
 include/sfx2/listview.hxx|  118 ++
 include/sfx2/strings.hrc |5 
 include/sfx2/templatedlg.hxx |   17 
 include/sfx2/templatedlglocalview.hxx|   62 +++
 sfx2/Library_sfx.mk  |2 
 sfx2/source/control/listview.cxx |  471 +++
 sfx2/source/control/templatedlglocalview.cxx |  294 
 sfx2/source/control/templatesearchview.cxx   |  182 ++
 sfx2/source/doc/templatedlg.cxx  |  114 ++
 sfx2/source/inc/templatesearchview.hxx   |   33 +
 sfx2/uiconfig/ui/templatedlg.ui  |  316 ++
 11 files changed, 1591 insertions(+), 23 deletions(-)

New commits:
commit 6b1de6057082bd8720594231839f967bff5372ae
Author: Vert D 
AuthorDate: Fri Sep 25 17:58:15 2020 -0500
Commit: Heiko Tietze 
CommitDate: Mon Nov 23 11:29:04 2020 +0100

tdf#104154 WIP:Add list view to template manager

*Added Thumbnail View and List View Buttons,
*selection is remembered for the next launch of the template manager.
*List view added to local view and search view.
*Added columns: name, category, application, modified, size and path.
*Added column sorting.
*Search, move, set as default and other existing tasks.

Change-Id: I7615f7e41020916ae518b639dba915a0a9340ff5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103418
Tested-by: Jenkins
Tested-by: Heiko Tietze 
Reviewed-by: Heiko Tietze 

diff --git a/include/sfx2/listview.hxx b/include/sfx2/listview.hxx
new file mode 100644
index ..0c5714caca33
--- /dev/null
+++ b/include/sfx2/listview.hxx
@@ -0,0 +1,118 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#pragma once
+
+#include 
+
+enum TemplateViewMode
+{
+eListView,
+eThumbnailView
+};
+class SfxDocumentTemplates;
+class TemplateContainerItem;
+struct ListViewItem;
+
+class ListView
+{
+public:
+ListView(std::unique_ptr xTreeView);
+~ListView();
+
+void AppendItem(const OUString& rId, const OUString& rTitle, const 
OUString& rSubtitle,
+const OUString& rPath, bool bDefault);
+
+void AppendRow(const OUString& rImage, const OUString& rTitle, const 
OUString& rSubtitle,
+   const OUString& rApplication, const OUString& rModify, 
const OUString& rSize,
+   const OUString& rId);
+
+void UpdateRow(int nIndex, const OUString& rImage, const OUString& rTitle,
+   const OUString& rSubtitle, const OUString& rApplication, 
const OUString& rModify,
+   const OUString& rSize, const OUString& rId);
+
+void ReloadRows();
+
+bool UpdateRows();
+
+void sortColumn(const int col);
+
+void sort();
+
+void clearListView();
+
+void ShowListView() { mxTreeView->show(); }
+
+void HideListView() { mxTreeView->hide(); }
+
+void unselect_all() { mxTreeView->unselect_all(); }
+
+void remove(const OUString& rId);
+
+void rename(const OUString& rId, const OUString& rTitle);
+
+void refreshDefaultColumn();
+
+protected:
+sal_uInt16 get_nId(int pos);
+
+OUString get_selected_id() { return mxTreeView->get_selected_id(); }
+
+void select_id(const OUString& sId) { mxTreeView->select_id(sId); }
+
+int get_selected_index() { return mxTreeView->get_selected_index(); }
+
+std::vector get_selected_rows() { return 
mxTreeView->get_selected_rows(); }
+
+bool IsListViewVisible() { return mxTreeView->is_visible(); }
+
+OUString get_id(int pos) { return mxTreeView->get_id(pos); }
+
+void set_cursor(int pos) { mxTreeView->set_cursor(pos); }
+
+int get_cursor_index() { return mxTreeView->get_cursor_index(); }
+
+sal_uInt16 get_cursor_nId() { return 
get_nId(mxTreeView->get_cursor_index()); }
+
+void select(int pos) { mxTreeView->select(pos); }
+
+int get_index(sal_uInt16 nId) { return 
mxTreeView->find_id(OUString::number(nId)); }
+
+DECL_LINK(ColumnClickedHdl, const int, void);
+
+DECL_LINK(QueryTooltipHdl, const weld::TreeIter&, OUString);
+
+protected:
+std::unique_ptr mxTreeView;
+std::vector> mListViewItems;
+Link maSelectionChangedHdl;
+int mnSortColumn;
+};
+
+struct ListViewItem
+{
+public:
+OUString maId;
+OUString maTitle;
+OUString maSubtitle;
+OUString maApplication;
+OUString maPath;
+bool mbDefault;
+
+/** Last modify time in seconds since 1/1/1970. */
+sal_uInt32 mnModify;
+/** Size in bytes of the file. */
+sal_uInt64 mnSize;
+
+OUString maDisplayModify;
+OUString maDisplaySize;
+OUString maDisplayPath;
+};
+
+/* vim:set shiftwi

[Libreoffice-commits] core.git: include/sfx2 sfx2/Library_sfx.mk sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk

2016-05-20 Thread Akshay Deep
 include/sfx2/saveastemplatedlg.hxx   |   68 +
 include/sfx2/templateabstractview.hxx|   32 
 include/sfx2/templatedlg.hxx |   92 +-
 include/sfx2/templatelocalview.hxx   |   26 
 include/sfx2/templateremoteview.hxx  |6 
 sfx2/Library_sfx.mk  |1 
 sfx2/UIConfig_sfx.mk |2 
 sfx2/source/control/templateabstractview.cxx |  135 +--
 sfx2/source/control/templatedefaultview.cxx  |   14 
 sfx2/source/control/templatelocalview.cxx|  387 +++--
 sfx2/source/control/templateremoteview.cxx   |   15 
 sfx2/source/control/templatesearchview.cxx   |   91 ++
 sfx2/source/dialog/backingwindow.cxx |2 
 sfx2/source/doc/doc.hrc  |   14 
 sfx2/source/doc/doc.src  |   53 +
 sfx2/source/doc/objserv.cxx  |6 
 sfx2/source/doc/saveastemplatedlg.cxx|  169 
 sfx2/source/doc/templatedlg.cxx  | 1133 +++
 sfx2/source/inc/templatesearchview.hxx   |   25 
 sfx2/uiconfig/ui/saveastemplatedlg.ui|  147 +++
 sfx2/uiconfig/ui/templatecategorydlg.ui  |  147 +++
 sfx2/uiconfig/ui/templatedlg.ui  |  578 ++---
 22 files changed, 1770 insertions(+), 1373 deletions(-)

New commits:
commit ca040d16d06fead95ad7ed8d10f5995fbade1219
Author: Akshay Deep 
Date:   Sun May 1 13:05:00 2016 +0530

New Template Manager

1. Save Mode removed from Template Manager
2. Context Menu for TemplateViewItems (Handled from LocalView for Local 
Repos)
3. 'showAllTemplates()' replacing 'showRootRegion()'
4. Filter Combobox for templates (Remembers filters also)
5. Search Filter (Synchronized with Filter ComboBoxes)
6. Removed Tabs from Template Manager
7. Removed Buttons from TemplateAbstractView
8. Unused GtkToolButtons removed
9. PushButtons in UI
10. Modal dialog for Import and Move (Works from "All Categories" now too)
11. ContextMenu for TemplateSearchView
12. Delete Categories(Folder) in Settings Menu
13. Save As Template Dialog

Change-Id: I88f6568c35271c17dbd7e6877d50119a8cfe4d60
Reviewed-on: https://gerrit.libreoffice.org/24545
Tested-by: Jenkins 
Reviewed-by: Samuel Mehrbrodt 

diff --git a/include/sfx2/saveastemplatedlg.hxx 
b/include/sfx2/saveastemplatedlg.hxx
new file mode 100644
index 000..691d4f0
--- /dev/null
+++ b/include/sfx2/saveastemplatedlg.hxx
@@ -0,0 +1,68 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef INCLUDED_SFX2_INC_SAVEASTEMPLATEDLG_HXX
+#define INCLUDED_SFX2_INC_SAVEASTEMPLATEDLG_HXX
+
+#include 
+#include 
+
+#include 
+#include 
+
+class Edit;
+class ListBox;
+class SfxDocumentTemplates;
+
+//  class SfxSaveAsTemplateDialog 
---
+
+class SFX2_DLLPUBLIC SfxSaveAsTemplateDialog : public ModalDialog
+{
+
+private:
+VclPtr mpLBCategory;
+VclPtrmpTemplateNameEdit;
+VclPtr  mpOKButton;
+
+OUString msSelectedCategory;
+OUString msTemplateName;
+sal_uInt16   mnRegionPos;
+
+std::vector msCategories;
+
+SfxDocumentTemplates *mpDocTemplates;
+
+css::uno::Reference< css::frame::XModel > m_xModel;
+
+public:
+DECL_LINK_TYPED(OkClickHdl, Button*, void);
+DECL_LINK_TYPED(TemplateNameEditHdl, Edit&, void);
+DECL_LINK_TYPED(SelectCategoryHdl, ListBox&, void);
+
+void setDocumentModel (const css::uno::Reference 
&rModel);
+
+void initialize();
+void SetCategoryLBEntries(std::vector names);
+
+/*Check whether template name is unique or not in a region*/
+bool IsTemplateNameUnique();
+
+bool SaveTemplate();
+
+public:
+
+explicit SfxSaveAsTemplateDialog(vcl::Window *parent = nullptr);
+
+virtual ~SfxSaveAsTemplateDialog();
+virtual void dispose() override;
+};
+
+#endif // INCLUDED_SFX2_INC_SAVEASTEMPLATEDLG_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/sfx2/templateabstractview.hxx 
b/include/sfx2/templateabstractview.hxx
index 81d0a96..2d6ad72 100644
--- a/include/sfx2/templateabstractview.hxx
+++ b/include/sfx2/templateabstractview.hxx
@@ -30,6 +30,7 @@
 #define TEMPLATE_THUMBNAIL_MAX_WIDTH TEMPLATE_ITEM_MAX_WIDTH - 
2*TEMPLATE_ITEM_PADDING
 
 class SfxDocumentTemplates;
+class TemplateViewItem;
 
 enum class FILTER_APPLICATION
 {
@@ -81,18 +82,14 @@ public:
 
 virtual void reload () { }
 
-virtual void showRootRegion () = 0;
+virtual void MouseButtonDown( const MouseEvent& rMEvt ) override;
+
+virtual void showAllTemplates () = 0;
 
 virtual void showRegion (Thumbnail

[Libreoffice-commits] core.git: include/sfx2 sfx2/Library_sfx.mk sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk

2016-04-26 Thread Akshay Deep
 include/sfx2/templatedlg.hxx   |2 
 include/sfx2/templateinfodlg.hxx   |   53 -
 sfx2/Library_sfx.mk|1 
 sfx2/UIConfig_sfx.mk   |1 
 sfx2/source/dialog/templateinfodlg.cxx |  134 -
 sfx2/source/doc/templatedlg.cxx|   18 
 sfx2/uiconfig/ui/templatedlg.ui|   14 ---
 sfx2/uiconfig/ui/templateinfodialog.ui |   82 
 8 files changed, 305 deletions(-)

New commits:
commit 0bdb8baf57ac243f574db6273eed70127379e3fc
Author: Akshay Deep 
Date:   Thu Mar 17 21:30:53 2016 +0530

tdf#64292 tdf#94639 Meaningless Functions in Template Properties Dialog

Removed useless Template Properties Dialog.

Change-Id: I453abb67de9eb1515f98ff78cc7bebcc69482a1e
Reviewed-on: https://gerrit.libreoffice.org/23339
Reviewed-by: Samuel Mehrbrodt 
Tested-by: Samuel Mehrbrodt 

diff --git a/include/sfx2/templatedlg.hxx b/include/sfx2/templatedlg.hxx
index ba3dbbf..74d7e09 100644
--- a/include/sfx2/templatedlg.hxx
+++ b/include/sfx2/templatedlg.hxx
@@ -25,7 +25,6 @@
 
 class Edit;
 class PopupMenu;
-class SfxTemplateInfoDlg;
 class TemplateAbstractView;
 class TemplateLocalView;
 class TemplateRemoteView;
@@ -89,7 +88,6 @@ private:
 static void OnTemplateLink ();
 void OnTemplateOpen ();
 void OnTemplateEdit ();
-void OnTemplateProperties ();
 void OnTemplateDelete ();
 void OnTemplateAsDefault ();
 void OnTemplateExport ();
diff --git a/include/sfx2/templateinfodlg.hxx b/include/sfx2/templateinfodlg.hxx
deleted file mode 100644
index afa39e4..000
--- a/include/sfx2/templateinfodlg.hxx
+++ /dev/null
@@ -1,53 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
-* This file is part of the LibreOffice project.
-*
-* This Source Code Form is subject to the terms of the Mozilla Public
-* License, v. 2.0. If a copy of the MPL was not distributed with this
-* file, You can obtain one at http://mozilla.org/MPL/2.0/.
-*/
-
-#ifndef INCLUDED_SFX2_TEMPLATEINFODLG_HXX
-#define INCLUDED_SFX2_TEMPLATEINFODLG_HXX
-
-#include 
-#include 
-#include 
-
-namespace svtools {
-class ODocumentInfoPreview;
-}
-
-namespace com{ namespace sun { namespace star { namespace awt   { class 
XWindow; } } } }
-namespace com{ namespace sun { namespace star { namespace frame { class 
XFrame2; } } } }
-
-class SfxTemplateInfoDlg : public ModalDialog
-{
-public:
-
-SfxTemplateInfoDlg (vcl::Window *pParent = nullptr);
-
-virtual ~SfxTemplateInfoDlg();
-virtual void dispose() override;
-
-void loadDocument (const OUString &rURL);
-
-protected:
-
-DECL_LINK_TYPED(CloseHdl, Button*, void);
-
-private:
-
-VclPtr   mpBtnClose;
-VclPtr   mpBox;
-
-VclPtr  mpPreviewView;  // gets released when xWindows get 
destroyed (don't delete in constructor)
-VclPtr mpInfoView;
-
-css::uno::Reference < css::frame::XFrame2 > m_xFrame;
-css::uno::Reference< css::awt::XWindow >xWindow;
-};
-
-#endif // INCLUDED_SFX2_TEMPLATEINFODLG_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index f4d61cd..00af5ab 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -192,7 +192,6 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/dialog/styfitem \
 sfx2/source/dialog/styledlg \
 sfx2/source/dialog/tabdlg \
-sfx2/source/dialog/templateinfodlg \
 sfx2/source/dialog/templdlg \
 sfx2/source/dialog/titledockwin \
 sfx2/source/dialog/tplcitem \
diff --git a/sfx2/UIConfig_sfx.mk b/sfx2/UIConfig_sfx.mk
index 9a555b9..f336669 100644
--- a/sfx2/UIConfig_sfx.mk
+++ b/sfx2/UIConfig_sfx.mk
@@ -43,7 +43,6 @@ $(eval $(call gb_UIConfig_add_uifiles,sfx,\
sfx2/uiconfig/ui/singletabdialog \
sfx2/uiconfig/ui/startcenter \
sfx2/uiconfig/ui/templatedlg \
-   sfx2/uiconfig/ui/templateinfodialog \
sfx2/uiconfig/ui/versionsofdialog \
sfx2/uiconfig/ui/versioncommentdialog \
sfx2/uiconfig/ui/versionscmis \
diff --git a/sfx2/source/dialog/templateinfodlg.cxx 
b/sfx2/source/dialog/templateinfodlg.cxx
deleted file mode 100644
index 379d704..000
--- a/sfx2/source/dialog/templateinfodlg.cxx
+++ /dev/null
@@ -1,134 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
-* This file is part of the LibreOffice project.
-*
-* This Source Code Form is subject to the terms of the Mozilla Public
-* License, v. 2.0. If a copy of the MPL was not distributed with this
-* file, You can obtain one at http://mozilla.org/MPL/2.0/.
-*/
-
-#include 
-
-#include 
-#include 
-#include 
-#include 
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::document;
-using namespace ::com::sun::star::

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

2014-11-21 Thread Kohei Yoshida
 include/sfx2/app.hxx   |7 --
 sfx2/Library_sfx.mk|1 
 sfx2/source/appl/appinit.cxx   |1 
 sfx2/source/appl/appquit.cxx   |1 
 sfx2/source/appl/shellimpl.cxx |  127 +
 sfx2/source/doc/objxtor.cxx|1 
 sfx2/source/inc/shellimpl.hxx  |   96 ++
 sfx2/source/view/viewfrm.cxx   |1 
 sfx2/source/view/viewsh.cxx|1 
 9 files changed, 232 insertions(+), 4 deletions(-)

New commits:
commit e59ae45fec5e65bea1bb5770d79a3f027e6adcf6
Author: Kohei Yoshida 
Date:   Fri Nov 21 22:57:41 2014 -0500

Forward declare all the std::vector based impl container classes.

Now #include  is a goner...

Change-Id: Ia2da27bae5fadfa3f6f633e55fcedce405281b67

diff --git a/include/sfx2/app.hxx b/include/sfx2/app.hxx
index 85a1acd..3673761 100644
--- a/include/sfx2/app.hxx
+++ b/include/sfx2/app.hxx
@@ -36,7 +36,6 @@
 #include 
 
 #include 
-#include 
 
 class Timer;
 class WorkWindow;
@@ -61,15 +60,15 @@ class SfxMedium;
 class SfxMenuCtrlFactArr_Impl;
 class SfxNewFileDialog;
 class SfxObjectShell;
-typedef ::std::vector SfxObjectShellArr_Impl;
+class SfxObjectShellArr_Impl;
 class SfxProgress;
 class SfxSlotPool;
 class SfxStbCtrlFactArr_Impl;
 class SfxTbxCtrlFactArr_Impl;
 class SfxViewFrame;
-typedef ::std::vector SfxViewFrameArr_Impl;
+class SfxViewFrameArr_Impl;
 class SfxViewShell;
-typedef ::std::vector SfxViewShellArr_Impl;
+class SfxViewShellArr_Impl;
 class StarBASIC;
 class SfxWorkWindow;
 class SfxFilterMatcher;
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index 0fc03c2..0a1100e 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -117,6 +117,7 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/appl/openuriexternally \
 sfx2/source/appl/sfxhelp \
 sfx2/source/appl/sfxpicklist \
+sfx2/source/appl/shellimpl \
 sfx2/source/appl/shutdownicon \
 sfx2/source/appl/workwin \
 sfx2/source/appl/xpackcreator \
diff --git a/sfx2/source/appl/appinit.cxx b/sfx2/source/appl/appinit.cxx
index 6238f5d..77067dd 100644
--- a/sfx2/source/appl/appinit.cxx
+++ b/sfx2/source/appl/appinit.cxx
@@ -68,6 +68,7 @@
 #include "helper.hxx"
 #include "sfxpicklist.hxx"
 #include 
+#include 
 
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::frame;
diff --git a/sfx2/source/appl/appquit.cxx b/sfx2/source/appl/appquit.cxx
index fb1771f0..2367e51a 100644
--- a/sfx2/source/appl/appquit.cxx
+++ b/sfx2/source/appl/appquit.cxx
@@ -55,6 +55,7 @@
 #include "appbaslib.hxx"
 #include "childwinimpl.hxx"
 #include 
+#include 
 #include 
 #include 
 
diff --git a/sfx2/source/appl/shellimpl.cxx b/sfx2/source/appl/shellimpl.cxx
new file mode 100644
index 000..84ed3de
--- /dev/null
+++ b/sfx2/source/appl/shellimpl.cxx
@@ -0,0 +1,127 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include 
+
+SfxObjectShellArr_Impl::iterator SfxObjectShellArr_Impl::begin()
+{
+return maData.begin();
+}
+
+SfxObjectShellArr_Impl::iterator SfxObjectShellArr_Impl::end()
+{
+return maData.end();
+}
+
+const SfxObjectShell* SfxObjectShellArr_Impl::operator[] ( size_t i ) const
+{
+return maData[i];
+}
+
+SfxObjectShell* SfxObjectShellArr_Impl::operator[] ( size_t i )
+{
+return maData[i];
+}
+
+void SfxObjectShellArr_Impl::erase( iterator it )
+{
+maData.erase(it);
+}
+
+void SfxObjectShellArr_Impl::push_back( SfxObjectShell* p )
+{
+maData.push_back(p);
+}
+
+size_t SfxObjectShellArr_Impl::size() const
+{
+return maData.size();
+}
+
+SfxViewFrameArr_Impl::iterator SfxViewFrameArr_Impl::begin()
+{
+return maData.begin();
+}
+
+SfxViewFrameArr_Impl::iterator SfxViewFrameArr_Impl::end()
+{
+return maData.end();
+}
+
+const SfxViewFrame* SfxViewFrameArr_Impl::operator[] ( size_t i ) const
+{
+return maData[i];
+}
+
+SfxViewFrame* SfxViewFrameArr_Impl::operator[] ( size_t i )
+{
+return maData[i];
+}
+
+void SfxViewFrameArr_Impl::erase( iterator it )
+{
+maData.erase(it);
+}
+
+void SfxViewFrameArr_Impl::push_back( SfxViewFrame* p )
+{
+maData.push_back(p);
+

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

2014-11-21 Thread Kohei Yoshida
 include/sfx2/app.hxx|3 --
 include/sfx2/mnuitem.hxx|1 
 sfx2/Library_sfx.mk |1 
 sfx2/source/appl/appinit.cxx|1 
 sfx2/source/appl/appquit.cxx|1 
 sfx2/source/appl/appreg.cxx |1 
 sfx2/source/appl/module.cxx |1 
 sfx2/source/control/ctrlfactoryimpl.cxx |   42 +++
 sfx2/source/inc/ctrlfactoryimpl.hxx |   43 
 sfx2/source/menu/mnuitem.cxx|1 
 10 files changed, 93 insertions(+), 2 deletions(-)

New commits:
commit c2d11710716f3ec5696f3402951be0d7539fe376
Author: Kohei Yoshida 
Date:   Fri Nov 21 20:45:47 2014 -0500

Forward declare SfxMenuCtrlFactArr_Impl in sfx2/app.hxx public header.

Change-Id: Iaf287912a52eb8785c687a13536fc170094425c7

diff --git a/include/sfx2/app.hxx b/include/sfx2/app.hxx
index d0a0459..a9bff02 100644
--- a/include/sfx2/app.hxx
+++ b/include/sfx2/app.hxx
@@ -35,7 +35,6 @@
 // header file because in former times SfxApplication was derived from it
 #include 
 
-#include 
 #include 
 #include 
 #include 
@@ -62,7 +61,7 @@ class SfxEventConfiguration;
 class SfxEventHint;
 class SfxItemSet;
 class SfxMedium;
-typedef boost::ptr_vector SfxMenuCtrlFactArr_Impl;
+class SfxMenuCtrlFactArr_Impl;
 class SfxNewFileDialog;
 class SfxObjectShell;
 typedef ::std::vector SfxObjectShellArr_Impl;
diff --git a/include/sfx2/mnuitem.hxx b/include/sfx2/mnuitem.hxx
index ff0816e..0ddfe02 100644
--- a/include/sfx2/mnuitem.hxx
+++ b/include/sfx2/mnuitem.hxx
@@ -25,6 +25,7 @@
 #include 
 #include 
 #include 
+#include 
 
 class SfxVirtualMenu;
 class SfxBindings;
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index 00c8781..0fc03c2 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -134,6 +134,7 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/config/evntconf \
 sfx2/source/control/bindings \
 sfx2/source/control/ctrlitem \
+sfx2/source/control/ctrlfactoryimpl \
sfx2/source/control/dispatch \
sfx2/source/control/itemdel \
 sfx2/source/control/minfitem \
diff --git a/sfx2/source/appl/appinit.cxx b/sfx2/source/appl/appinit.cxx
index a2d5d48..6238f5d 100644
--- a/sfx2/source/appl/appinit.cxx
+++ b/sfx2/source/appl/appinit.cxx
@@ -67,6 +67,7 @@
 #include 
 #include "helper.hxx"
 #include "sfxpicklist.hxx"
+#include 
 
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::frame;
diff --git a/sfx2/source/appl/appquit.cxx b/sfx2/source/appl/appquit.cxx
index b601bfa..fb1771f0 100644
--- a/sfx2/source/appl/appquit.cxx
+++ b/sfx2/source/appl/appquit.cxx
@@ -54,6 +54,7 @@
 #include 
 #include "appbaslib.hxx"
 #include "childwinimpl.hxx"
+#include 
 #include 
 #include 
 
diff --git a/sfx2/source/appl/appreg.cxx b/sfx2/source/appl/appreg.cxx
index e9c1e6e..923016d 100644
--- a/sfx2/source/appl/appreg.cxx
+++ b/sfx2/source/appl/appreg.cxx
@@ -34,6 +34,7 @@
 #include "partwnd.hxx"
 #include 
 #include "recfloat.hxx"
+#include 
 #include 
 #include 
 #include 
diff --git a/sfx2/source/appl/module.cxx b/sfx2/source/appl/module.cxx
index 974276b..71c06b4 100644
--- a/sfx2/source/appl/module.cxx
+++ b/sfx2/source/appl/module.cxx
@@ -42,6 +42,7 @@
 #define SfxModule
 #include "sfxslots.hxx"
 #include "childwinimpl.hxx"
+#include 
 
 static SfxModuleArr_Impl* pModules=0;
 
diff --git a/sfx2/source/control/ctrlfactoryimpl.cxx 
b/sfx2/source/control/ctrlfactoryimpl.cxx
new file mode 100644
index 000..3e5fbf5
--- /dev/null
+++ b/sfx2/source/control/ctrlfactoryimpl.cxx
@@ -0,0 +1,42 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include 
+
+const SfxMenuCtrlFactory& SfxMenuCtrlFactArr_Impl::operator []( size_t i ) 
const
+{
+return maData[i];
+}
+
+SfxMenuCtrlFactory& SfxMenuCtrlFactArr_Impl::operator []( size_t i )
+{
+return maData[i];
+}
+
+void SfxMenuCtrlFactArr_Impl::push_back( SfxMenuCtrlFactory* p )
+{
+maData.push_back(p);
+}
+
+size_t SfxMenuCtrlFactArr_Impl::size() const
+{
+return maData.size();
+}
+
+/* vim:set shiftwidth=4 sof

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

2014-11-20 Thread Kohei Yoshida
 include/sfx2/app.hxx |   16 
 include/sfx2/docfile.hxx |2 --
 sfx2/Library_sfx.mk  |3 ++-
 sfx2/source/appl/sfxpicklist.cxx |1 +
 sfx2/source/doc/sfxbasemodel.cxx |1 +
 5 files changed, 4 insertions(+), 19 deletions(-)

New commits:
commit 8e206be4ed997df73ef135d20694fc512b4d3d1b
Author: Kohei Yoshida 
Date:   Thu Nov 20 23:41:13 2014 -0500

Forgot to check this in. This should have been a part of the last commit.

Change-Id: Id2b75e6e64b11c523ffa862f2d99bf02c2adedc5

diff --git a/include/sfx2/app.hxx b/include/sfx2/app.hxx
index ee63e40..b2e5878 100644
--- a/include/sfx2/app.hxx
+++ b/include/sfx2/app.hxx
@@ -90,8 +90,6 @@ class ModalDialog;
 class SbxArray;
 class SbxValue;
 
-typedef ::std::vector< SfxMedium* > SfxMediumList;
-
 namespace sfx2
 {
 class SvLinkSource;
@@ -113,20 +111,6 @@ public:
 const Link&  GetValue() const { return aLink; }
 };
 
-//TODO/CLEANUP
-//is apparently used only in SfxPickList/SfxFrameLoader
-class SfxStringHint: public SfxSimpleHint
-{
-OUString  aObj;
-
-public:
-SfxStringHint( sal_uInt16 nId, const OUString& rObject ):
-SfxSimpleHint( nId ),
-aObj(rObject) { }
-const OUString& GetObject() const { return aObj; }
-virtual ~SfxStringHint() {}
-};
-
 #ifndef SFX_DECL_OBJECTSHELL_DEFINED
 #define SFX_DECL_OBJECTSHELL_DEFINED
 typedef tools::SvRef SfxObjectShellRef;
diff --git a/include/sfx2/docfile.hxx b/include/sfx2/docfile.hxx
index 4dd66db..92dc475 100644
--- a/include/sfx2/docfile.hxx
+++ b/include/sfx2/docfile.hxx
@@ -274,8 +274,6 @@ public:
 
 typedef tools::SvRef SfxMediumRef;
 
-typedef ::std::vector< SfxMedium* > SfxMediumList;
-
 #endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index d98e511..00c8781 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -242,8 +242,9 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/menu/thessubmenu \
 sfx2/source/menu/virtmenu \
 sfx2/source/notify/eventsupplier \
-   sfx2/source/notify/globalevents \
+sfx2/source/notify/globalevents \
 sfx2/source/notify/hintpost \
+sfx2/source/notify/stringhint \
 sfx2/source/sidebar/Sidebar \
 sfx2/source/sidebar/SidebarChildWindow \
 sfx2/source/sidebar/SidebarDockingWindow \
diff --git a/sfx2/source/appl/sfxpicklist.cxx b/sfx2/source/appl/sfxpicklist.cxx
index 0a6959f..1c2cf0a 100644
--- a/sfx2/source/appl/sfxpicklist.cxx
+++ b/sfx2/source/appl/sfxpicklist.cxx
@@ -48,6 +48,7 @@
 #include 
 #include 
 #include "objshimp.hxx"
+#include 
 #include 
 
 #include 
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx
index cbefd53..7e34a7b 100644
--- a/sfx2/source/doc/sfxbasemodel.cxx
+++ b/sfx2/source/doc/sfxbasemodel.cxx
@@ -110,6 +110,7 @@
 #include 
 #include "graphhelp.hxx"
 #include "docundomanager.hxx"
+#include 
 #include 
 #include 
 
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


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

2013-08-08 Thread Krisztian Pinter
 include/sfx2/recentdocsview.hxx|   61 +
 include/sfx2/recentdocsviewitem.hxx|   26 
 include/sfx2/thumbnailviewitem.hxx |2 
 sfx2/Library_sfx.mk|2 
 sfx2/source/control/recentdocsview.cxx |  183 +
 sfx2/source/control/recentdocsviewitem.cxx |   53 
 6 files changed, 326 insertions(+), 1 deletion(-)

New commits:
commit 9cf4be5ce8116eb447abea024f07456275d4ef4a
Author: Krisztian Pinter 
Date:   Thu Aug 8 17:41:07 2013 +0200

startcenter: Add RecentDocsView for displaying thumbnails for recent docs

Change-Id: I6d9bb87a6ee28d62ee012e6807d1c5a4f3219e27

diff --git a/include/sfx2/recentdocsview.hxx b/include/sfx2/recentdocsview.hxx
new file mode 100644
index 000..6ae9391
--- /dev/null
+++ b/include/sfx2/recentdocsview.hxx
@@ -0,0 +1,61 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef __SFX2_RECENTDOCSVIEW_HXX__
+#define __SFX2_RECENTDOCSVIEW_HXX__
+
+#include 
+#include 
+
+#include 
+#include 
+#include 
+
+struct LoadRecentFile
+{
+::com::sun::star::util::URL
 aTargetURL;
+::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >  
 aArgSeq;
+::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > 
 xDispatch;
+};
+
+class SFX2_DLLPUBLIC RecentDocsView :   protected ::comphelper::OBaseMutex,
+public ThumbnailView
+{
+public:
+RecentDocsView( Window* pParent );
+virtual ~RecentDocsView();
+
+void insertItem(const OUString &rURL, const OUString &rTitle);
+void loadRecentDocs();
+
+virtual Size GetOptimalSize() const;
+
+void SetThumbnailSize(long ThumbnailWidth, long ThumbnailHeight);
+void SetHeight(long Height);
+
+DECL_STATIC_LINK( RecentDocsView, ExecuteHdl_Impl, LoadRecentFile* );
+
+protected:
+virtual void OnItemDblClicked(ThumbnailViewItem *pItem);
+
+longmnItemMaxWidth;
+longmnItemMaxHeight;
+longmnItemPadding;
+longmnItemMaxTextLength;
+longmnItemThumbnailMaxHeight;
+longmnItemMaxHeightSub;
+
+long mnHeight;
+
+int mnMaxThumbnailItems;
+};
+
+#endif  // __SFX2_RECENTDOCSVIEW_HXX__
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/sfx2/recentdocsviewitem.hxx 
b/include/sfx2/recentdocsviewitem.hxx
new file mode 100644
index 000..05ae15ae
--- /dev/null
+++ b/include/sfx2/recentdocsviewitem.hxx
@@ -0,0 +1,26 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef __SFX2_RECENTDOCSVIEWITEM_HXX__
+#define __SFX2_RECENTDOCSVIEWITEM_HXX__
+
+#include 
+
+class RecentDocsViewItem : public ThumbnailViewItem
+{
+public:
+RecentDocsViewItem(ThumbnailView &rView, const OUString &rURL, const 
OUString &rTitle);
+virtual void setEditTitle (bool edit, bool bChangeFocus = true);
+
+OUString maURL;
+};
+
+#endif  // __SFX2_RECENTDOCSVIEWITEM_HXX__
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/sfx2/thumbnailviewitem.hxx 
b/include/sfx2/thumbnailviewitem.hxx
index 64a20cd..2272bc5 100644
--- a/include/sfx2/thumbnailviewitem.hxx
+++ b/include/sfx2/thumbnailviewitem.hxx
@@ -89,7 +89,7 @@ public:
 
 void setHighlight (bool state);
 
-void setEditTitle (bool edit, bool bChangeFocus = true);
+virtual void setEditTitle (bool edit, bool bChangeFocus = true);
 void updateTitleEditSize ();
 virtual void setTitle (const OUString& rTitle);
 
diff --git a/sfx2/Library_sfx.mk b/sfx2/Library_sfx.mk
index 4b8f424..836f232 100644
--- a/sfx2/Library_sfx.mk
+++ b/sfx2/Library_sfx.mk
@@ -134,6 +134,8 @@ $(eval $(call gb_Library_add_exception_objects,sfx,\
 sfx2/source/control/msgpool \
 sfx2/source/control/objface \
 sfx2/source/control/querystatus \
+sfx2/source/control/recentdocsview \
+sfx2/source/control/recentdocsviewitem \
 sfx2/source/control/request \
 sfx2/source/control/sfxstatuslistener \
 sfx2/source/control/shell \
diff --git a/sfx2/source/control/recentdocsview.cxx 
b/sfx2/source/control/recentdocsview.cxx
new file mode 100644
index 000..a1654a5
--- /dev/null
+++ b/sfx2/source/control/recentdocsview.cxx
@@ -0,0 +1,183 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the Libre