summaryrefslogtreecommitdiff
path: root/sw/util
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2015-12-30 00:00:37 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2016-03-18 09:13:56 +0100
commit16e248bec76f2c1587383d26581ecc8241c755f8 (patch)
treea468153e1583d66c46ca79ff5d1159737a9a76d0 /sw/util
parent1f1cff03c4f15ee9fe7786a98ba8259a64823e0a (diff)
mailmerge: Implement toolbar controller to exclude entries.
This can be used as a "How to implement a custom widget / control in the toolbar" example: * the Controller.xcu change introduces a .uno:MailMergeExcludeEntry command so that it can be added in the toolbar .xml description (in this case mailmerge.xml) * the swriter.sdi introduces the .uno:MailMergeExcludeEntry command for the sfx2 handling - so that it can get notifications about enable/disable changes, invalidates, etc. * wrtapp.sdi + associated apphdl.cxx change make it possible to forward command invalidates (the rBindings.Invalidate(FN_MAILMERGE_EXCLUDE_ENTRY);) to the MMExcludeEntryController::statusChanged() for further handling (in this case setting the checked state according to the current data) * MMExcludeEntryController::createItemWindow() implements the custom widget itself (in this case a checkbox, but can be any VCL widget, even a custom one) * the rest (sw.component and the associated getImplementationName(), supportsService(), etc.) takes care of the instantiation of the controller. Change-Id: I68269538f779a6680b0ba98395b7985d3f1ab95a
Diffstat (limited to 'sw/util')
-rw-r--r--sw/util/sw.component4
1 files changed, 4 insertions, 0 deletions
diff --git a/sw/util/sw.component b/sw/util/sw.component
index 010f41bffb4e..ff6b032af603 100644
--- a/sw/util/sw.component
+++ b/sw/util/sw.component
@@ -27,6 +27,10 @@
<service name="com.sun.star.sdb.DataAccessDescriptor"/>
<service name="com.sun.star.text.MailMerge"/>
</implementation>
+ <implementation name="lo.writer.MMExcludeEntryController"
+ constructor="lo_writer_MMExcludeEntryController_get_implementation">
+ <service name="com.sun.star.frame.ToolbarController"/>
+ </implementation>
<implementation name="SwXModule" constructor="SwXModule_get_implementation">
<service name="com.sun.star.text.GlobalSettings"/>
</implementation>