LibreOffice Module vcl (master) 1
wingdiimpl.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#ifndef INCLUDED_VCL_INC_WIN_WINGDIIMPL_HXX
11#define INCLUDED_VCL_INC_WIN_WINGDIIMPL_HXX
12
13#include <win/salgdi.h>
14#include <ControlCacheKey.hxx>
15
16class ControlCacheKey;
17
18// Base class for some functionality that OpenGL/Skia/GDI backends must each implement.
20{
21public:
23
24 // If true is returned, the following functions are used for drawing controls.
25 virtual bool UseRenderNativeControl() const { return false; }
26 virtual bool TryRenderCachedNativeControl(const ControlCacheKey& /*rControlCacheKey*/,
27 int /*nX*/, int /*nY*/)
28 {
29 abort();
30 }
31 virtual bool RenderAndCacheNativeControl(CompatibleDC& /*rWhite*/, CompatibleDC& /*rBlack*/,
32 int /*nX*/, int /*nY*/,
33 ControlCacheKey& /*aControlCacheKey*/)
34 {
35 abort();
36 }
37
38 virtual void ClearDevFontCache() {}
39
40 virtual void Flush() {}
41
42 // Implementation for WinSalGraphics::DrawTextLayout().
43 // Returns true if handled, if false, then WinSalGraphics will handle it itself.
44 virtual bool DrawTextLayout(const GenericSalLayout&) { return false; }
45
46 virtual void ClearNativeControlCache() {}
47};
48
49#endif // INCLUDED_VCL_INC_WIN_WINGDIIMPL_HXX
50
51/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Class that creates (and destroys) a compatible Device Context.
Definition: win/salgdi.h:105
virtual bool DrawTextLayout(const GenericSalLayout &)
Definition: wingdiimpl.hxx:44
virtual void Flush()
Definition: wingdiimpl.hxx:40
virtual bool TryRenderCachedNativeControl(const ControlCacheKey &, int, int)
Definition: wingdiimpl.hxx:26
virtual bool UseRenderNativeControl() const
Definition: wingdiimpl.hxx:25
virtual void ClearDevFontCache()
Definition: wingdiimpl.hxx:38
virtual ~WinSalGraphicsImplBase()
Definition: wingdiimpl.hxx:22
virtual void ClearNativeControlCache()
Definition: wingdiimpl.hxx:46
virtual bool RenderAndCacheNativeControl(CompatibleDC &, CompatibleDC &, int, int, ControlCacheKey &)
Definition: wingdiimpl.hxx:31