office-gobmx/include/svx/dialog/ThemeColorEditDialog.hxx
Tomaž Vajngerl 8e5df127d2 svx: rework the theme dialog to allow editing theme colors
In addition to editing of theme colors, this also changes the
way how theme colors are represented in the theme dialog and the
behaviour when changing applying a theme color change.

Previously a theme colors were applied with double-click, now a
double-click still applies, but automatically exits the dialog.
The selected theme is applied also when OK button is pressed.

Change-Id: Ic0f8399ede180d6ab0001a7f8b5dda0e7c49fa3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150975
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-04-25 20:38:25 +02:00

47 lines
1.4 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#pragma once
#include <svx/svxdllapi.h>
#include <vcl/weld.hxx>
#include <docmodel/theme/ColorSet.hxx>
class ColorListBox;
namespace svx
{
class SVX_DLLPUBLIC ThemeColorEditDialog final : public weld::GenericDialogController
{
private:
model::ColorSet maColorSet;
std::unique_ptr<weld::Entry> mxThemeColorsNameEntry;
std::unique_ptr<ColorListBox> mxDark1;
std::unique_ptr<ColorListBox> mxLight1;
std::unique_ptr<ColorListBox> mxDark2;
std::unique_ptr<ColorListBox> mxLight2;
std::unique_ptr<ColorListBox> mxAccent1;
std::unique_ptr<ColorListBox> mxAccent2;
std::unique_ptr<ColorListBox> mxAccent3;
std::unique_ptr<ColorListBox> mxAccent4;
std::unique_ptr<ColorListBox> mxAccent5;
std::unique_ptr<ColorListBox> mxAccent6;
std::unique_ptr<ColorListBox> mxHyperlink;
std::unique_ptr<ColorListBox> mxFollowHyperlink;
public:
ThemeColorEditDialog(weld::Window* pParent, model::ColorSet& rColorSet);
virtual ~ThemeColorEditDialog() override;
model::ColorSet getColorSet();
};
} // end svx namespace
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */