summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2015-12-23 18:48:47 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2016-03-18 09:13:56 +0100
commite770de4fdb74ac5db5d4fbfcf4856ea08e7403d7 (patch)
tree076409c7a4566133518cd67aae2188f736765924 /sw
parentba0796b331247b27886384377c480e413c3ee83d (diff)
mailmerge: Create toolbar buttons for the Save/Print/Email dialogs.
Change-Id: Ia983a313a02b470a23244b2844ff01b12593f723
Diffstat (limited to 'sw')
-rw-r--r--sw/Library_swui.mk2
-rw-r--r--sw/UIConfig_swriter.mk3
-rw-r--r--sw/inc/cmdid.h7
-rw-r--r--sw/inc/swabstdlg.hxx4
-rw-r--r--sw/sdi/swriter.sdi51
-rw-r--r--sw/sdi/wrtapp.sdi18
-rw-r--r--sw/source/ui/dbui/mailmergewizard.cxx1
-rw-r--r--sw/source/ui/dbui/mmoutputtypepage.cxx29
-rw-r--r--sw/source/ui/dbui/mmresultdialogs.cxx (renamed from sw/source/ui/dbui/mmoutputpage.cxx)3
-rw-r--r--sw/source/ui/dialog/swdlgfact.cxx19
-rw-r--r--sw/source/ui/dialog/swdlgfact.hxx3
-rw-r--r--sw/source/ui/inc/mmresultdialogs.hxx (renamed from sw/source/ui/dbui/mmoutputpage.hxx)0
-rw-r--r--sw/source/uibase/app/apphdl.cxx21
-rw-r--r--sw/uiconfig/swform/toolbar/mailmerge.xml3
-rw-r--r--sw/uiconfig/swreport/toolbar/mailmerge.xml3
-rw-r--r--sw/uiconfig/swriter/toolbar/mailmerge.xml3
-rw-r--r--sw/uiconfig/swxform/toolbar/mailmerge.xml3
17 files changed, 152 insertions, 21 deletions
diff --git a/sw/Library_swui.mk b/sw/Library_swui.mk
index 6738e3c9af5a..0d20c61d758a 100644
--- a/sw/Library_swui.mk
+++ b/sw/Library_swui.mk
@@ -169,9 +169,9 @@ $(eval $(call gb_Library_add_exception_objects,swui,\
sw/source/ui/dbui/mmgreetingspage \
sw/source/ui/dbui/mmlayoutpage \
sw/source/ui/dbui/mmmergepage \
- sw/source/ui/dbui/mmoutputpage \
sw/source/ui/dbui/mmoutputtypepage \
sw/source/ui/dbui/mmpreparemergepage \
+ sw/source/ui/dbui/mmresultdialogs \
sw/source/ui/dbui/selectdbtabledialog \
))
endif
diff --git a/sw/UIConfig_swriter.mk b/sw/UIConfig_swriter.mk
index 46a1db2f815f..5e7b0fd190fc 100644
--- a/sw/UIConfig_swriter.mk
+++ b/sw/UIConfig_swriter.mk
@@ -199,6 +199,9 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/swriter,\
sw/uiconfig/swriter/ui/mmoutputpage \
sw/uiconfig/swriter/ui/mmoutputtypepage \
sw/uiconfig/swriter/ui/mmpreparepage \
+ sw/uiconfig/swriter/ui/mmresultemaildialog \
+ sw/uiconfig/swriter/ui/mmresultprintdialog \
+ sw/uiconfig/swriter/ui/mmresultsavedialog \
sw/uiconfig/swriter/ui/mmselectpage \
sw/uiconfig/swriter/ui/mmsendmails \
sw/uiconfig/swriter/ui/mmsalutationpage \
diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h
index 47246bc2c61a..908d5c8e3893 100644
--- a/sw/inc/cmdid.h
+++ b/sw/inc/cmdid.h
@@ -257,10 +257,13 @@
#define FN_MAILMERGE_NEXT_ENTRY (FN_INSERT + 72) /* mail merge toolbar - go to the next entry */
#define FN_MAILMERGE_LAST_ENTRY (FN_INSERT + 73) /* mail merge toolbar - go to the next entry */
-#define FN_MAILMERGE_CREATE_DOCUMENTS (FN_INSERT + 74) /* mail merge toolbar - create individual documents */
-
#define FN_DRAWTEXT_ATTR_DLG (FN_INSERT + 76) /* position DrawText */
+#define FN_MAILMERGE_CREATE_DOCUMENTS (FN_INSERT + 77) /* mail merge toolbar - create the merged document */
+#define FN_MAILMERGE_SAVE_DOCUMENTS (FN_INSERT + 78) /* mail merge toolbar - save merged documents */
+#define FN_MAILMERGE_PRINT_DOCUMENTS (FN_INSERT + 79) /* mail merge toolbar - print merged documents */
+#define FN_MAILMERGE_EMAIL_DOCUMENTS (FN_INSERT + 80) /* mail merge toolbar - email merged documents */
+
#define FN_TOOL_ANCHOR_CHAR (FN_INSERT + 84) /* anchor Draw object to character */
#define FN_QRY_INSERT (FN_INSERT + 86) /* insert record selection in to text */
diff --git a/sw/inc/swabstdlg.hxx b/sw/inc/swabstdlg.hxx
index 60b81d394c90..9a57bdd24a29 100644
--- a/sw/inc/swabstdlg.hxx
+++ b/sw/inc/swabstdlg.hxx
@@ -458,6 +458,10 @@ public:
// for tabpage
virtual CreateTabPage GetTabPageCreatorFunc( sal_uInt16 nId ) = 0;
+ virtual void ExecuteMMResultSaveDialog() = 0;
+ virtual void ExecuteMMResultPrintDialog() = 0;
+ virtual void ExecuteMMResultEmailDialog() = 0;
+
protected:
~SwAbstractDialogFactory() {}
};
diff --git a/sw/sdi/swriter.sdi b/sw/sdi/swriter.sdi
index 1c40289e4a61..5383bca65f77 100644
--- a/sw/sdi/swriter.sdi
+++ b/sw/sdi/swriter.sdi
@@ -3858,6 +3858,57 @@ SfxVoidItem MailMergeCreateDocuments FN_MAILMERGE_CREATE_DOCUMENTS
GroupId = GID_DOCUMENT;
]
+SfxVoidItem MailMergeSaveDocuments FN_MAILMERGE_SAVE_DOCUMENTS
+()
+[
+ AutoUpdate = TRUE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = TRUE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ AccelConfig = TRUE,
+ MenuConfig = TRUE,
+ ToolBoxConfig = TRUE,
+ GroupId = GID_DOCUMENT;
+]
+
+SfxVoidItem MailMergePrintDocuments FN_MAILMERGE_PRINT_DOCUMENTS
+()
+[
+ AutoUpdate = TRUE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = TRUE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ AccelConfig = TRUE,
+ MenuConfig = TRUE,
+ ToolBoxConfig = TRUE,
+ GroupId = GID_DOCUMENT;
+]
+
+SfxVoidItem MailMergeEmailDocuments FN_MAILMERGE_EMAIL_DOCUMENTS
+()
+[
+ AutoUpdate = TRUE,
+ FastCall = TRUE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = TRUE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ AccelConfig = TRUE,
+ MenuConfig = TRUE,
+ ToolBoxConfig = TRUE,
+ GroupId = GID_DOCUMENT;
+]
+
SfxBoolItem MergeTable FN_TABLE_MERGE_TABLE
()
[
diff --git a/sw/sdi/wrtapp.sdi b/sw/sdi/wrtapp.sdi
index 57ad1e70090f..d1e71c4694d0 100644
--- a/sw/sdi/wrtapp.sdi
+++ b/sw/sdi/wrtapp.sdi
@@ -92,6 +92,24 @@ interface StarWriter
StateMethod = StateOther ;
]
+ FN_MAILMERGE_SAVE_DOCUMENTS
+ [
+ ExecMethod = ExecOther ;
+ StateMethod = StateOther ;
+ ]
+
+ FN_MAILMERGE_PRINT_DOCUMENTS
+ [
+ ExecMethod = ExecOther ;
+ StateMethod = StateOther ;
+ ]
+
+ FN_MAILMERGE_EMAIL_DOCUMENTS
+ [
+ ExecMethod = ExecOther ;
+ StateMethod = StateOther ;
+ ]
+
FN_SET_MODOPT_TBLNUMFMT // status()
[
ExecMethod = ExecOther ;
diff --git a/sw/source/ui/dbui/mailmergewizard.cxx b/sw/source/ui/dbui/mailmergewizard.cxx
index 967480626d8a..2ab51277da26 100644
--- a/sw/source/ui/dbui/mailmergewizard.cxx
+++ b/sw/source/ui/dbui/mailmergewizard.cxx
@@ -24,7 +24,6 @@
#include <mmpreparemergepage.hxx>
#include <mmmergepage.hxx>
#include <mmgreetingspage.hxx>
-#include <mmoutputpage.hxx>
#include <mmlayoutpage.hxx>
#include <mmconfigitem.hxx>
#include <swabstdlg.hxx>
diff --git a/sw/source/ui/dbui/mmoutputtypepage.cxx b/sw/source/ui/dbui/mmoutputtypepage.cxx
index a3c8526751a7..0bdcc0084d56 100644
--- a/sw/source/ui/dbui/mmoutputtypepage.cxx
+++ b/sw/source/ui/dbui/mmoutputtypepage.cxx
@@ -24,6 +24,20 @@
#include <dbui.hrc>
#include <swtypes.hxx>
+#include <rtl/ref.hxx>
+#include <com/sun/star/mail/XSmtpService.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/idle.hxx>
+
+#include <helpid.h>
+#include <cmdid.h>
+#include <swunohelper.hxx>
+#include <mmresultdialogs.hxx>
+#include <maildispatcher.hxx>
+#include <imaildsplistener.hxx>
+
+using namespace ::com::sun::star;
+
SwMailMergeOutputTypePage::SwMailMergeOutputTypePage(SwMailMergeWizard* pParent)
: svt::OWizardPage(pParent, "MMOutputTypePage",
"modules/swriter/ui/mmoutputtypepage.ui")
@@ -73,21 +87,6 @@ IMPL_LINK_NOARG_TYPED(SwMailMergeOutputTypePage, TypeHdl_Impl, Button*, void)
m_pWizard->UpdateRoadmap();
}
-
-#include <rtl/ref.hxx>
-#include <com/sun/star/mail/XSmtpService.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/idle.hxx>
-
-#include <helpid.h>
-#include <cmdid.h>
-#include <swunohelper.hxx>
-#include <mmoutputpage.hxx>
-#include <maildispatcher.hxx>
-#include <imaildsplistener.hxx>
-
-using namespace ::com::sun::star;
-
struct SwSendMailDialog_Impl
{
friend class SwSendMailDialog;
diff --git a/sw/source/ui/dbui/mmoutputpage.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx
index e385d59e6991..07c9523a6d87 100644
--- a/sw/source/ui/dbui/mmoutputpage.cxx
+++ b/sw/source/ui/dbui/mmresultdialogs.cxx
@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <mmoutputpage.hxx>
+#include <mmresultdialogs.hxx>
#include <mailmergewizard.hxx>
#include <mmconfigitem.hxx>
#include <mailmergechildwindow.hxx>
@@ -53,7 +53,6 @@
#include <unotools/tempfile.hxx>
#include <osl/file.hxx>
-#include <mmgreetingspage.hxx>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/sdbcx/XColumnsSupplier.hpp>
#include <com/sun/star/sdb/XColumn.hpp>
diff --git a/sw/source/ui/dialog/swdlgfact.cxx b/sw/source/ui/dialog/swdlgfact.cxx
index 4312e94421f5..6b31000a6dd9 100644
--- a/sw/source/ui/dialog/swdlgfact.cxx
+++ b/sw/source/ui/dialog/swdlgfact.cxx
@@ -91,6 +91,7 @@
#include <mailmergewizard.hxx>
#include <mailconfigpage.hxx>
#include <uiborder.hxx>
+#include <mmresultdialogs.hxx>
using namespace ::com::sun::star;
@@ -1190,4 +1191,22 @@ CreateTabPage SwAbstractDialogFactory_Impl::GetTabPageCreatorFunc( sal_uInt16 nI
return pRet;
}
+void SwAbstractDialogFactory_Impl::ExecuteMMResultSaveDialog()
+{
+ ScopedVclPtrInstance<SwMMResultSaveDialog> pDialog;
+ pDialog->Execute();
+}
+
+void SwAbstractDialogFactory_Impl::ExecuteMMResultPrintDialog()
+{
+ ScopedVclPtrInstance<SwMMResultPrintDialog> pDialog;
+ pDialog->Execute();
+}
+
+void SwAbstractDialogFactory_Impl::ExecuteMMResultEmailDialog()
+{
+ ScopedVclPtrInstance<SwMMResultEmailDialog> pDialog;
+ pDialog->Execute();
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/ui/dialog/swdlgfact.hxx b/sw/source/ui/dialog/swdlgfact.hxx
index 7005058c6bea..f760ebbea31b 100644
--- a/sw/source/ui/dialog/swdlgfact.hxx
+++ b/sw/source/ui/dialog/swdlgfact.hxx
@@ -496,6 +496,9 @@ public:
// For TabPage
virtual CreateTabPage GetTabPageCreatorFunc( sal_uInt16 nId ) override;
+ virtual void ExecuteMMResultSaveDialog();
+ virtual void ExecuteMMResultPrintDialog();
+ virtual void ExecuteMMResultEmailDialog();
};
#endif
diff --git a/sw/source/ui/dbui/mmoutputpage.hxx b/sw/source/ui/inc/mmresultdialogs.hxx
index 521bc4d66da1..521bc4d66da1 100644
--- a/sw/source/ui/dbui/mmoutputpage.hxx
+++ b/sw/source/ui/inc/mmresultdialogs.hxx
diff --git a/sw/source/uibase/app/apphdl.cxx b/sw/source/uibase/app/apphdl.cxx
index a8cf5aebb56c..9ea3a8449365 100644
--- a/sw/source/uibase/app/apphdl.cxx
+++ b/sw/source/uibase/app/apphdl.cxx
@@ -226,6 +226,9 @@ void SwModule::StateOther(SfxItemSet &rSet)
}
break;
case FN_MAILMERGE_CREATE_DOCUMENTS:
+ case FN_MAILMERGE_SAVE_DOCUMENTS:
+ case FN_MAILMERGE_PRINT_DOCUMENTS:
+ case FN_MAILMERGE_EMAIL_DOCUMENTS:
{
SwView* pView = ::GetActiveView();
SwMailMergeConfigItem* pConfigItem = pView->GetMailMergeConfigItem();
@@ -804,6 +807,24 @@ void SwModule::ExecOther(SfxRequest& rReq)
if (pConfigItem->GetTargetView())
pConfigItem->GetTargetView()->GetViewFrame()->GetFrame().Appear();
}
+ case FN_MAILMERGE_SAVE_DOCUMENTS:
+ {
+ SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create();
+ pFact->ExecuteMMResultSaveDialog();
+ }
+ break;
+ case FN_MAILMERGE_PRINT_DOCUMENTS:
+ {
+ SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create();
+ pFact->ExecuteMMResultPrintDialog();
+ }
+ break;
+ case FN_MAILMERGE_EMAIL_DOCUMENTS:
+ {
+ SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create();
+ pFact->ExecuteMMResultEmailDialog();
+ }
+ break;
#endif
}
}
diff --git a/sw/uiconfig/swform/toolbar/mailmerge.xml b/sw/uiconfig/swform/toolbar/mailmerge.xml
index 2ad2e32f9d2b..7610f2aef49a 100644
--- a/sw/uiconfig/swform/toolbar/mailmerge.xml
+++ b/sw/uiconfig/swform/toolbar/mailmerge.xml
@@ -17,4 +17,7 @@
<toolbar:toolbaritem xlink:href=".uno:MailMergeLastEntry"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:MailMergeCreateDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeSaveDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergePrintDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeEmailDocuments"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swreport/toolbar/mailmerge.xml b/sw/uiconfig/swreport/toolbar/mailmerge.xml
index 2ad2e32f9d2b..7610f2aef49a 100644
--- a/sw/uiconfig/swreport/toolbar/mailmerge.xml
+++ b/sw/uiconfig/swreport/toolbar/mailmerge.xml
@@ -17,4 +17,7 @@
<toolbar:toolbaritem xlink:href=".uno:MailMergeLastEntry"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:MailMergeCreateDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeSaveDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergePrintDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeEmailDocuments"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swriter/toolbar/mailmerge.xml b/sw/uiconfig/swriter/toolbar/mailmerge.xml
index 2ad2e32f9d2b..7610f2aef49a 100644
--- a/sw/uiconfig/swriter/toolbar/mailmerge.xml
+++ b/sw/uiconfig/swriter/toolbar/mailmerge.xml
@@ -17,4 +17,7 @@
<toolbar:toolbaritem xlink:href=".uno:MailMergeLastEntry"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:MailMergeCreateDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeSaveDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergePrintDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeEmailDocuments"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swxform/toolbar/mailmerge.xml b/sw/uiconfig/swxform/toolbar/mailmerge.xml
index 2ad2e32f9d2b..7610f2aef49a 100644
--- a/sw/uiconfig/swxform/toolbar/mailmerge.xml
+++ b/sw/uiconfig/swxform/toolbar/mailmerge.xml
@@ -17,4 +17,7 @@
<toolbar:toolbaritem xlink:href=".uno:MailMergeLastEntry"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:MailMergeCreateDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeSaveDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergePrintDocuments"/>
+ <toolbar:toolbaritem xlink:href=".uno:MailMergeEmailDocuments"/>
</toolbar:toolbar>