20#ifndef INCLUDED_SFX2_SOURCE_APPL_SHUTDOWNICON_HXX
21#define INCLUDED_SFX2_SOURCE_APPL_SHUTDOWNICON_HXX
23#include <com/sun/star/frame/XTerminateListener.hpp>
24#include <com/sun/star/frame/XDesktop2.hpp>
25#include <com/sun/star/lang/XServiceInfo.hpp>
26#include <com/sun/star/lang/XInitialization.hpp>
27#include <com/sun/star/beans/XFastPropertySet.hpp>
28#include <com/sun/star/uno/XComponentContext.hpp>
29#include <rtl/ustring.hxx>
44 class FileDialogHelper;
48 css::lang::XInitialization,
49 css::frame::XTerminateListener,
50 css::lang::XServiceInfo,
53inline constexpr OUStringLiteral
WRITER_URL =
u"private:factory/swriter";
54inline constexpr OUStringLiteral
CALC_URL =
u"private:factory/scalc";
55inline constexpr OUStringLiteral
IMPRESS_URL =
u"private:factory/simpress";
57inline constexpr OUStringLiteral
DRAW_URL =
u"private:factory/sdraw";
58inline constexpr OUStringLiteral
MATH_URL =
u"private:factory/smath";
59inline constexpr OUStringLiteral
BASE_URL =
u"private:factory/sdatabase?Interactive";
68 css::uno::Reference< css::uno::XComponentContext >
m_xContext;
84 explicit ShutdownIcon( css::uno::Reference< css::uno::XComponentContext > xContext );
101 static void OpenURL(
const OUString& aURL,
const OUString&
rTarget,
const css::uno::Sequence< css::beans::PropertyValue >& =
102 css::uno::Sequence< css::beans::PropertyValue >( 0 ) );
122 virtual void disposing(std::unique_lock<std::mutex>&)
override;
125 virtual void SAL_CALL
disposing(
const css::lang::EventObject& Source )
override;
128 virtual void SAL_CALL
queryTermination(
const css::lang::EventObject& aEvent )
override;
129 virtual void SAL_CALL
notifyTermination(
const css::lang::EventObject& aEvent )
override;
132 virtual void SAL_CALL
initialize(
const css::uno::Sequence< css::uno::Any >& aArguments )
override;
136 const css::uno::Any& aValue )
override;
140 static void EnableAutostartW32(
const OUString &aShortcutName );
141 static OUString GetAutostartFolderNameW32();
virtual void disposing(std::unique_lock< std::mutex > &) override
static bool IsQuickstarterInstalled()
static ShutdownIcon * createInstance()
virtual ~ShutdownIcon() override
static ShutdownIcon * getInstance()
static OUString getShortcutName()
virtual void SAL_CALL setFastPropertyValue(::sal_Int32 nHandle, const css::uno::Any &aValue) override
bool m_bListenForTermination
static void terminateDesktop()
static rtl::Reference< ShutdownIcon > pShutdownIcon
css::uno::Reference< css::frame::XDesktop2 > m_xDesktop
css::uno::Reference< css::uno::XComponentContext > m_xContext
static void FromTemplate()
virtual void SAL_CALL queryTermination(const css::lang::EventObject &aEvent) override
std::unique_ptr< sfx2::FileDialogHelper > m_pFileDlg
static void addTerminateListener()
virtual void SAL_CALL notifyTermination(const css::lang::EventObject &aEvent) override
ShutdownIcon(css::uno::Reference< css::uno::XComponentContext > xContext)
virtual sal_Bool SAL_CALL supportsService(OUString const &ServiceName) override
virtual css::uno::Any SAL_CALL getFastPropertyValue(::sal_Int32 nHandle) override
static OUString GetUrlDescription(std::u16string_view aUrl)
static void LeaveModalMode()
static bool GetAutostart()
virtual OUString SAL_CALL getImplementationName() override
static void SetAutostart(bool bActivate)
static void OpenURL(const OUString &aURL, const OUString &rTarget, const css::uno::Sequence< css::beans::PropertyValue > &=css::uno::Sequence< css::beans::PropertyValue >(0))
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
DECL_LINK(DialogClosedHdl_Impl, sfx2::FileDialogHelper *, void)
virtual void SAL_CALL initialize(const css::uno::Sequence< css::uno::Any > &aArguments) override
static void EnterModalMode()
constexpr OUStringLiteral DRAW_URL
constexpr OUStringLiteral IMPRESS_URL
constexpr OUStringLiteral MATH_URL
constexpr OUStringLiteral STARTMODULE_URL
void SAL_DLLPUBLIC_EXPORT plugin_init_sys_tray()
comphelper::WeakComponentImplHelper< css::lang::XInitialization, css::frame::XTerminateListener, css::lang::XServiceInfo, css::beans::XFastPropertySet > ShutdownIconServiceBase
constexpr OUStringLiteral CALC_URL
void SAL_DLLPUBLIC_EXPORT plugin_shutdown_sys_tray()
constexpr OUStringLiteral BASE_URL
constexpr OUStringLiteral WRITER_URL
constexpr OUStringLiteral IMPRESS_WIZARD_URL
void SAL_DLLPUBLIC_EXPORT aqua_shutdown_systray()
void win32_init_sys_tray()
void win32_shutdown_sys_tray()