1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
9 
10 #pragma once
11 
12 #include <sal/config.h>
13 
14 #include <svtools/svtdllapi.h>
15 
16 namespace com :: sun :: star :: uno { template <typename > class Reference; }
17 
18 namespace weld { class Window; }
19 namespace com::sun::star::uno {
20     class XComponentContext;
21 }
22 
23 namespace svtools {
24 
25 enum RestartReason {
26     // "For the selected Java runtime environment to work properly,
27     // %PRODUCTNAME must be restarted.":
28     RESTART_REASON_JAVA,
29     // For the modified default print job format to take effect,
30     // %PRODUCTNAME must be restarted:
31     RESTART_REASON_PDF_AS_STANDARD_JOB_FORMAT,
32     // "For the bibliography to work properly,
33     // %PRODUCTNAME must be restarted.":
34     RESTART_REASON_BIBLIOGRAPHY_INSTALL,
35     // "For the mail merge to work properly,
36     // %PRODUCTNAME must be restarted.":
37     RESTART_REASON_MAILMERGE_INSTALL,
38     // "For the updated language settings to take effect,
39     // %PRODUCTNAME must be restarted.":
40     RESTART_REASON_LANGUAGE_CHANGE,
41     // "For the added path to take effect,
42     // %PRODUCTNAME must be restarted.":
43     RESTART_REASON_ADDING_PATH,
44     // "For the assigned java parameters to take effect,
45     // %PRODUCTNAME must be restarted.":
46     RESTART_REASON_ASSIGNING_JAVAPARAMETERS,
47     // "For the assigned folders and archives to take effect,
48     // %PRODUCTNAME must be restarted.":
49     RESTART_REASON_ASSIGNING_FOLDERS,
50     // "For the modified experimental features to take effect,
51     // %PRODUCTNAME must be restarted.":
52     RESTART_REASON_EXP_FEATURES,
53     // "For the extension to work properly,
54     // %PRODUCTNAME must be restarted.":
55     RESTART_REASON_EXTENSION_INSTALL,
56     // For the Skia changes to take effect,
57     // %PRODUCTNAME must be restarted:
58     RESTART_REASON_SKIA,
59     // For the OpenCL changes to take effect,
60     // %PRODUCTNAME must be restarted:
61     RESTART_REASON_OPENCL,
62     // For the multi-threaded calculation changes to take effect,
63     // %PRODUCTNAME must be restarted:
64     RESTART_REASON_THREADING,
65     // For restructuring the Form menu,
66     // %PRODUCTNAME must be restarted:
67     RESTART_REASON_MSCOMPATIBLE_FORMS_MENU,
68     // To apply changes, %PRODUCTNAME,
69     // %PRODUCTNAME must be restarted:
70     RESTART_REASON_UI_CHANGE,
71     // No particular reason:
72     RESTART_REASON_NONE
73 };
74 
75 // Must be called with the solar mutex locked; returns if restart was initiated:
76 SVT_DLLPUBLIC bool executeRestartDialog(
77     css::uno::Reference< css::uno::XComponentContext > const & context,
78     weld::Window* parent, RestartReason reason);
79 
80 }
81 
82 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
83