1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
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/.
12 #include <svx/svxdllapi.h>
13 #include <vcl/weld.hxx>
14 #include <svx/svdpage.hxx>
15 #include <svx/theme/IThemeColorChanger.hxx>
16 #include <svx/dialog/ThemeColorEditDialog.hxx>
17 #include <svx/dialog/ThemeColorValueSet.hxx>
29 class SVX_DLLPUBLIC ThemeDialog final
: public weld::GenericDialogController
32 weld::Window
* mpWindow
;
33 model::Theme
* mpTheme
;
34 std::shared_ptr
<svx::ThemeColorEditDialog
> mxSubDialog
;
35 std::vector
<model::ColorSet
> maColorSets
;
37 std::unique_ptr
<svx::ThemeColorValueSet
> mxValueSetThemeColors
;
38 std::unique_ptr
<weld::CustomWeld
> mxValueSetThemeColorsWindow
;
39 std::unique_ptr
<weld::Button
> mxAdd
;
41 std::shared_ptr
<model::ColorSet
> mpCurrentColorSet
;
43 void runThemeColorEditDialog();
47 ThemeDialog(weld::Window
* pParent
, model::Theme
* pTheme
);
48 virtual ~ThemeDialog() override
;
50 DECL_LINK(DoubleClickValueSetHdl
, ValueSet
*, void);
51 DECL_LINK(SelectItem
, ValueSet
*, void);
52 DECL_LINK(ButtonClicked
, weld::Button
&, void);
54 std::shared_ptr
<model::ColorSet
> const& getCurrentColorSet() { return mpCurrentColorSet
; }
57 } // end svx namespace
59 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */