From a7ffe4026a2f4fcc77d297c9bc671ded158efc46 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Mon, 6 Jul 2020 12:26:28 +0200 Subject: move headers inside modules Change-Id: I002f42d83820c86737ddceab805aa53ccb388e06 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98203 Tested-by: Jenkins Reviewed-by: Noel Grandin --- svx/inc/labelitemwindow.hxx | 30 +++++++++ svx/inc/pch/precompiled_svx.hxx | 1 - svx/inc/tbxcolorupdate.hxx | 137 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 svx/inc/labelitemwindow.hxx create mode 100644 svx/inc/tbxcolorupdate.hxx (limited to 'svx/inc') diff --git a/svx/inc/labelitemwindow.hxx b/svx/inc/labelitemwindow.hxx new file mode 100644 index 000000000000..5271482b11ad --- /dev/null +++ b/svx/inc/labelitemwindow.hxx @@ -0,0 +1,30 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * 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 +#include + +class SVXCORE_DLLPUBLIC LabelItemWindow final : public InterimItemWindow +{ +private: + std::unique_ptr m_xLabel; + +public: + LabelItemWindow(vcl::Window* pParent, const OUString& rLabel); + void set_label(const OUString& rLabel); + OUString get_label() const; + + void SetOptimalSize(); + virtual void dispose() override; + virtual ~LabelItemWindow() override; +}; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/svx/inc/pch/precompiled_svx.hxx b/svx/inc/pch/precompiled_svx.hxx index 7a73d1b51b3c..31db07043fc0 100644 --- a/svx/inc/pch/precompiled_svx.hxx +++ b/svx/inc/pch/precompiled_svx.hxx @@ -397,7 +397,6 @@ #include #include #include -#include #include #include #include diff --git a/svx/inc/tbxcolorupdate.hxx b/svx/inc/tbxcolorupdate.hxx new file mode 100644 index 000000000000..d413b31d9c44 --- /dev/null +++ b/svx/inc/tbxcolorupdate.hxx @@ -0,0 +1,137 @@ +/* -*- 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/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include + +class ToolBox; +class VirtualDevice; + +namespace weld +{ + class Toolbar; +} + +namespace svx +{ + + + //= ToolboxButtonColorUpdater + + /** helper class to update a color in a toolbox button image + + formerly known as SvxTbxButtonColorUpdater_Impl, residing in svx/source/tbxctrls/colorwindow.hxx. + */ + class ToolboxButtonColorUpdaterBase + { + public: + ToolboxButtonColorUpdaterBase(bool bWideButton, const OUString& rCommandLabel, + const OUString& rCommandURL, + const css::uno::Reference& rFrame); + + virtual ~ToolboxButtonColorUpdaterBase(); + + void Update( const NamedColor& rNamedColor ); + void Update( const Color& rColor, bool bForceUpdate = false ); + Color const & GetCurrentColor() const { return maCurColor; } + OUString GetCurrentColorName(); + + private: + ToolboxButtonColorUpdaterBase(ToolboxButtonColorUpdaterBase const &) = delete; + ToolboxButtonColorUpdaterBase& operator =(ToolboxButtonColorUpdaterBase const &) = delete; + + protected: + bool mbWideButton; + bool mbWasHiContrastMode; + Color maCurColor; + tools::Rectangle maUpdRect; + Size maBmpSize; + OUString maCommandLabel; + OUString maCommandURL; + css::uno::Reference mxFrame; + + void Init(sal_uInt16 nSlotId); + + virtual void SetQuickHelpText(const OUString& rText) = 0; + virtual OUString GetQuickHelpText() const = 0; + virtual void SetImage(VirtualDevice* pVirDev) = 0; + virtual VclPtr CreateVirtualDevice() const = 0; + virtual vcl::ImageType GetImageSize() const = 0; + virtual Size GetItemSize() const = 0; + }; + + class VclToolboxButtonColorUpdater : public ToolboxButtonColorUpdaterBase + { + public: + VclToolboxButtonColorUpdater(sal_uInt16 nSlotId, sal_uInt16 nTbxBtnId, ToolBox* ptrTbx, bool bWideButton, + const OUString& rCommandLabel, const OUString& rCommandURL, + const css::uno::Reference& rFrame); + + + private: + sal_uInt16 mnBtnId; + VclPtr mpTbx; + + virtual void SetQuickHelpText(const OUString& rText) override; + virtual OUString GetQuickHelpText() const override; + virtual void SetImage(VirtualDevice* pVirDev) override; + virtual VclPtr CreateVirtualDevice() const override; + virtual vcl::ImageType GetImageSize() const override; + virtual Size GetItemSize() const override; + }; + + class ToolboxButtonColorUpdater : public ToolboxButtonColorUpdaterBase + { + public: + ToolboxButtonColorUpdater(sal_uInt16 nSlotId, const OString& rTbxBtnId, weld::Toolbar* ptrTbx, bool bWideButton, + const OUString& rCommandLabel, const css::uno::Reference& rFrame); + + private: + OString msBtnId; + weld::Toolbar* mpTbx; + + virtual void SetQuickHelpText(const OUString& rText) override; + virtual OUString GetQuickHelpText() const override; + virtual void SetImage(VirtualDevice* pVirDev) override; + virtual VclPtr CreateVirtualDevice() const override; + virtual vcl::ImageType GetImageSize() const override; + virtual Size GetItemSize() const override; + }; + + class ToolboxButtonLineStyleUpdater + { + private: + css::drawing::LineStyle m_eXLS; + int m_nDashStyleIndex; + public: + ToolboxButtonLineStyleUpdater(); + void Update(const css::frame::FeatureStateEvent& rEvent); + int GetStyleIndex() const; + }; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit