LibreOffice Module vcl (master)
1
include
vcl
outdev
ScopedStates.hxx
Go to the documentation of this file.
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
11
#ifndef INCLUDED_VCL_SCOPEDSTATES_HXX
12
#define INCLUDED_VCL_SCOPEDSTATES_HXX
13
14
#include <
vcl/outdev.hxx
>
15
16
namespace
vcl
17
{
18
class
ScopedAntialiasing
19
{
20
private
:
21
OutputDevice
&
m_rOutputDevice
;
22
AntialiasingFlags
m_nPreviousAAState
;
23
24
public
:
25
ScopedAntialiasing
(
OutputDevice
& rOutputDevice,
bool
bAAState)
26
:
m_rOutputDevice
(rOutputDevice)
27
,
m_nPreviousAAState
(
m_rOutputDevice
.GetAntialiasing())
28
{
29
if
(bAAState)
30
rOutputDevice.
SetAntialiasing
(
m_nPreviousAAState
|
AntialiasingFlags::Enable
);
31
else
32
rOutputDevice.
SetAntialiasing
(
m_nPreviousAAState
& ~
AntialiasingFlags::Enable
);
33
}
34
35
~ScopedAntialiasing
() {
m_rOutputDevice
.
SetAntialiasing
(
m_nPreviousAAState
); }
36
};
37
}
38
39
#endif
// INCLUDED_VCL_SCOPEDSTATES_HXX
40
41
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
AntialiasingFlags
AntialiasingFlags
Definition:
AntialiasingFlags.hxx:25
AntialiasingFlags::Enable
@ Enable
OutputDevice
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
Definition:
outdev.hxx:170
OutputDevice::SetAntialiasing
void SetAntialiasing(AntialiasingFlags nMode)
Definition:
outdev.cxx:349
vcl::ScopedAntialiasing
Definition:
ScopedStates.hxx:19
vcl::ScopedAntialiasing::ScopedAntialiasing
ScopedAntialiasing(OutputDevice &rOutputDevice, bool bAAState)
Definition:
ScopedStates.hxx:25
vcl::ScopedAntialiasing::~ScopedAntialiasing
~ScopedAntialiasing()
Definition:
ScopedStates.hxx:35
vcl::ScopedAntialiasing::m_nPreviousAAState
AntialiasingFlags m_nPreviousAAState
Definition:
ScopedStates.hxx:22
vcl::ScopedAntialiasing::m_rOutputDevice
OutputDevice & m_rOutputDevice
Definition:
ScopedStates.hxx:21
vcl
outdev.hxx
Generated on Sun Jul 30 2023 04:34:51 for LibreOffice Module vcl (master) by
1.9.3