include/vcl/GraphicAttributes.hxx | 121 ++++++++++++++++++++++++++++++++++++++ include/vcl/GraphicObject.hxx | 96 ------------------------------ vcl/source/graphic/grfattr.cxx | 4 - 3 files changed, 124 insertions(+), 97 deletions(-)
New commits: commit d2974701e7f9e138ad952eeccb279567b5b309b1 Author: Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk> AuthorDate: Mon May 25 21:58:01 2020 +0200 Commit: Tomaž Vajngerl <qui...@gmail.com> CommitDate: Mon Jun 1 18:46:54 2020 +0200 vcl: move GraphicAttr into its own header file Change-Id: I8a730414e712a1484ffcca427ed4b1599d223f8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95276 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <qui...@gmail.com> diff --git a/include/vcl/GraphicAttributes.hxx b/include/vcl/GraphicAttributes.hxx new file mode 100644 index 000000000000..0908a8f56b9d --- /dev/null +++ b/include/vcl/GraphicAttributes.hxx @@ -0,0 +1,121 @@ +/* -*- 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 <memory> +#include <vcl/dllapi.h> +#include <o3tl/typed_flags_set.hxx> +#include <vcl/bitmap.hxx> + +enum class GraphicDrawMode +{ + Standard = 0, + Greys = 1, + Mono = 2, + Watermark = 3 +}; + +class VCL_DLLPUBLIC GraphicAttr +{ +private: + double mfGamma; + BmpMirrorFlags mnMirrFlags; + long mnLeftCrop; + long mnTopCrop; + long mnRightCrop; + long mnBottomCrop; + sal_uInt16 mnRotate10; + short mnContPercent; + short mnLumPercent; + short mnRPercent; + short mnGPercent; + short mnBPercent; + bool mbInvert; + sal_uInt8 mcTransparency; + GraphicDrawMode meDrawMode; + +public: + GraphicAttr(); + + bool operator==(const GraphicAttr& rAttr) const; + bool operator!=(const GraphicAttr& rAttr) const { return !(*this == rAttr); } + + void SetDrawMode(GraphicDrawMode eDrawMode) { meDrawMode = eDrawMode; } + GraphicDrawMode GetDrawMode() const { return meDrawMode; } + + void SetMirrorFlags(BmpMirrorFlags nMirrFlags) { mnMirrFlags = nMirrFlags; } + BmpMirrorFlags GetMirrorFlags() const { return mnMirrFlags; } + + void SetCrop(long nLeft_100TH_MM, long nTop_100TH_MM, long nRight_100TH_MM, + long nBottom_100TH_MM) + { + mnLeftCrop = nLeft_100TH_MM; + mnTopCrop = nTop_100TH_MM; + mnRightCrop = nRight_100TH_MM; + mnBottomCrop = nBottom_100TH_MM; + } + long GetLeftCrop() const { return mnLeftCrop; } + long GetTopCrop() const { return mnTopCrop; } + long GetRightCrop() const { return mnRightCrop; } + long GetBottomCrop() const { return mnBottomCrop; } + + void SetRotation(sal_uInt16 nRotate10) { mnRotate10 = nRotate10; } + sal_uInt16 GetRotation() const { return mnRotate10; } + + void SetLuminance(short nLuminancePercent) { mnLumPercent = nLuminancePercent; } + short GetLuminance() const { return mnLumPercent; } + + void SetContrast(short nContrastPercent) { mnContPercent = nContrastPercent; } + short GetContrast() const { return mnContPercent; } + + void SetChannelR(short nChannelRPercent) { mnRPercent = nChannelRPercent; } + short GetChannelR() const { return mnRPercent; } + + void SetChannelG(short nChannelGPercent) { mnGPercent = nChannelGPercent; } + short GetChannelG() const { return mnGPercent; } + + void SetChannelB(short nChannelBPercent) { mnBPercent = nChannelBPercent; } + short GetChannelB() const { return mnBPercent; } + + void SetGamma(double fGamma) { mfGamma = fGamma; } + double GetGamma() const { return mfGamma; } + + void SetInvert(bool bInvert) { mbInvert = bInvert; } + bool IsInvert() const { return mbInvert; } + + void SetTransparency(sal_uInt8 cTransparency) { mcTransparency = cTransparency; } + sal_uInt8 GetTransparency() const { return mcTransparency; } + + bool IsSpecialDrawMode() const { return (meDrawMode != GraphicDrawMode::Standard); } + bool IsMirrored() const { return mnMirrFlags != BmpMirrorFlags::NONE; } + bool IsCropped() const + { + return (mnLeftCrop != 0 || mnTopCrop != 0 || mnRightCrop != 0 || mnBottomCrop != 0); + } + bool IsRotated() const { return ((mnRotate10 % 3600) != 0); } + bool IsTransparent() const { return (mcTransparency > 0); } + bool IsAdjusted() const + { + return (mnLumPercent != 0 || mnContPercent != 0 || mnRPercent != 0 || mnGPercent != 0 + || mnBPercent != 0 || mfGamma != 1.0 || mbInvert); + } +}; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/GraphicObject.hxx b/include/vcl/GraphicObject.hxx index 92c01274a453..16735aac4b1f 100644 --- a/include/vcl/GraphicObject.hxx +++ b/include/vcl/GraphicObject.hxx @@ -24,6 +24,8 @@ #include <vcl/dllapi.h> #include <o3tl/typed_flags_set.hxx> +#include <vcl/GraphicAttributes.hxx> + namespace com::sun::star::graphic { class XGraphic; } // Adjustment defines @@ -42,104 +44,10 @@ namespace o3tl template<> struct typed_flags<GraphicAdjustmentFlags> : is_typed_flags<GraphicAdjustmentFlags, 0x1f> {}; } -enum class GraphicDrawMode -{ - Standard = 0, - Greys = 1, - Mono = 2, - Watermark = 3 -}; - class VirtualDevice; struct GrfSimpleCacheObj; struct ImplTileInfo; -class VCL_DLLPUBLIC GraphicAttr -{ -private: - - double mfGamma; - BmpMirrorFlags mnMirrFlags; - long mnLeftCrop; - long mnTopCrop; - long mnRightCrop; - long mnBottomCrop; - sal_uInt16 mnRotate10; - short mnContPercent; - short mnLumPercent; - short mnRPercent; - short mnGPercent; - short mnBPercent; - bool mbInvert; - sal_uInt8 mcTransparency; - GraphicDrawMode meDrawMode; - -public: - - GraphicAttr(); - - bool operator==( const GraphicAttr& rAttr ) const; - bool operator!=( const GraphicAttr& rAttr ) const { return !( *this == rAttr ); } - - void SetDrawMode( GraphicDrawMode eDrawMode ) { meDrawMode = eDrawMode; } - GraphicDrawMode GetDrawMode() const { return meDrawMode; } - - void SetMirrorFlags( BmpMirrorFlags nMirrFlags ) { mnMirrFlags = nMirrFlags; } - BmpMirrorFlags GetMirrorFlags() const { return mnMirrFlags; } - - void SetCrop( long nLeft_100TH_MM, long nTop_100TH_MM, long nRight_100TH_MM, long nBottom_100TH_MM ) - { - mnLeftCrop = nLeft_100TH_MM; mnTopCrop = nTop_100TH_MM; - mnRightCrop = nRight_100TH_MM; mnBottomCrop = nBottom_100TH_MM; - } - long GetLeftCrop() const { return mnLeftCrop; } - long GetTopCrop() const { return mnTopCrop; } - long GetRightCrop() const { return mnRightCrop; } - long GetBottomCrop() const { return mnBottomCrop; } - - void SetRotation( sal_uInt16 nRotate10 ) { mnRotate10 = nRotate10; } - sal_uInt16 GetRotation() const { return mnRotate10; } - - void SetLuminance( short nLuminancePercent ) { mnLumPercent = nLuminancePercent; } - short GetLuminance() const { return mnLumPercent; } - - void SetContrast( short nContrastPercent ) { mnContPercent = nContrastPercent; } - short GetContrast() const { return mnContPercent; } - - void SetChannelR( short nChannelRPercent ) { mnRPercent = nChannelRPercent; } - short GetChannelR() const { return mnRPercent; } - - void SetChannelG( short nChannelGPercent ) { mnGPercent = nChannelGPercent; } - short GetChannelG() const { return mnGPercent; } - - void SetChannelB( short nChannelBPercent ) { mnBPercent = nChannelBPercent; } - short GetChannelB() const { return mnBPercent; } - - void SetGamma( double fGamma ) { mfGamma = fGamma; } - double GetGamma() const { return mfGamma; } - - void SetInvert( bool bInvert ) { mbInvert = bInvert; } - bool IsInvert() const { return mbInvert; } - - void SetTransparency( sal_uInt8 cTransparency ) { mcTransparency = cTransparency; } - sal_uInt8 GetTransparency() const { return mcTransparency; } - - bool IsSpecialDrawMode() const { return( meDrawMode != GraphicDrawMode::Standard ); } - bool IsMirrored() const { return mnMirrFlags != BmpMirrorFlags::NONE; } - bool IsCropped() const - { - return( mnLeftCrop != 0 || mnTopCrop != 0 || - mnRightCrop != 0 || mnBottomCrop != 0 ); - } - bool IsRotated() const { return( ( mnRotate10 % 3600 ) != 0 ); } - bool IsTransparent() const { return( mcTransparency > 0 ); } - bool IsAdjusted() const - { - return( mnLumPercent != 0 || mnContPercent != 0 || mnRPercent != 0 || - mnGPercent != 0 || mnBPercent != 0 || mfGamma != 1.0 || mbInvert ); - } -}; - class VCL_DLLPUBLIC GraphicObject { friend class SdrGrafObj; diff --git a/vcl/source/graphic/grfattr.cxx b/vcl/source/graphic/grfattr.cxx index 88d0852afe60..35acaf50b841 100644 --- a/vcl/source/graphic/grfattr.cxx +++ b/vcl/source/graphic/grfattr.cxx @@ -17,9 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ - -#include <vcl/GraphicObject.hxx> - +#include <vcl/GraphicAttributes.hxx> GraphicAttr::GraphicAttr() : mfGamma ( 1.0 ), _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits