From d1f01dd44813af7a10523b4d4a5171bcb12a8f5d Mon Sep 17 00:00:00 2001 From: Samuel Mehrbrodt Date: Wed, 12 Oct 2016 13:01:15 +0200 Subject: SafeModeDialog: Handle quit button event Change-Id: Id24e9cb526bc0143a663e8d39a5dda59f929f8bf --- svx/source/dialog/SafeModeDialog.cxx | 14 +++++++++++++- svx/source/dialog/SafeModeDialog.hxx | 2 ++ 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'svx') diff --git a/svx/source/dialog/SafeModeDialog.cxx b/svx/source/dialog/SafeModeDialog.cxx index 549a62f39f7a..93581778c3e1 100644 --- a/svx/source/dialog/SafeModeDialog.cxx +++ b/svx/source/dialog/SafeModeDialog.cxx @@ -12,8 +12,14 @@ #include #include #include +#include #include +#include +#include + +using namespace css; + SafeModeDialog::SafeModeDialog(vcl::Window* pParent): Dialog(pParent, "SafeModeDialog", "svx/ui/safemodedialog.ui") { @@ -54,6 +60,12 @@ bool SafeModeDialog::Close() return Dialog::Close(); } +void SafeModeDialog::terminateOffice() +{ + uno::Reference xDesktop = frame::Desktop::create( comphelper::getProcessComponentContext() ); + xDesktop->terminate(); +} + IMPL_LINK(SafeModeDialog, BtnHdl, Button*, pBtn, void) { if (pBtn == mpBtnContinue.get()) @@ -62,7 +74,7 @@ IMPL_LINK(SafeModeDialog, BtnHdl, Button*, pBtn, void) } else if (pBtn == mpBtnQuit.get()) { - Close(); + terminateOffice(); } else if (pBtn == mpBtnRestart.get()) { diff --git a/svx/source/dialog/SafeModeDialog.hxx b/svx/source/dialog/SafeModeDialog.hxx index 41acc1fde70b..d91b50dfe724 100644 --- a/svx/source/dialog/SafeModeDialog.hxx +++ b/svx/source/dialog/SafeModeDialog.hxx @@ -38,6 +38,8 @@ private: VclPtr mpCBCustomizations; VclPtr mpCBFull; + static void terminateOffice(); + DECL_LINK(BtnHdl, Button*, void); }; -- cgit