KiCad PCB EDA Suite
Loading...
Searching...
No Matches
gal_print.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2018 CERN
3
* Author: Maciej Suminski <
[email protected]
>
4
*
5
* This program is free software: you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License as published by the
7
* Free Software Foundation, either version 3 of the License, or (at your
8
* option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful, but
11
* WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License along
16
* with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef GAL_PRINT_H
20
#define GAL_PRINT_H
21
22
#include <
gal/gal.h
>
23
24
class
wxDC;
25
26
namespace
KIGFX
{
27
class
GAL;
28
class
GAL_DISPLAY_OPTIONS;
29
30
31
class
GAL_API
PRINT_CONTEXT
32
{
33
public
:
34
virtual
~PRINT_CONTEXT
() {}
35
virtual
double
GetNativeDPI
()
const
= 0;
36
virtual
bool
HasNativeLandscapeRotation
()
const
= 0;
37
};
38
39
43
class
GAL_API
GAL_PRINT
44
{
45
public
:
46
static
std::unique_ptr<GAL_PRINT> Create(
GAL_DISPLAY_OPTIONS
& aOptions, wxDC* aDC );
47
48
virtual
~GAL_PRINT
() {}
49
50
virtual
GAL
*
GetGAL
() = 0;
51
52
virtual
PRINT_CONTEXT
*
GetPrintCtx
()
const
= 0;
53
59
virtual
void
SetNativePaperSize
(
const
VECTOR2D
& aSize,
bool
aRotateIfLandscape ) = 0;
60
64
virtual
void
SetSheetSize
(
const
VECTOR2D
& aSize ) = 0;
65
};
66
67
};
// end namespace KIGFX
68
69
#endif
/* GAL_PRINT_H */
KIGFX::GAL_DISPLAY_OPTIONS
Definition:
gal_display_options.h:86
KIGFX::GAL_PRINT
Wrapper around GAL to provide information needed for printing.
Definition:
gal_print.h:44
KIGFX::GAL_PRINT::SetNativePaperSize
virtual void SetNativePaperSize(const VECTOR2D &aSize, bool aRotateIfLandscape)=0
KIGFX::GAL_PRINT::GetGAL
virtual GAL * GetGAL()=0
KIGFX::GAL_PRINT::GetPrintCtx
virtual PRINT_CONTEXT * GetPrintCtx() const =0
KIGFX::GAL_PRINT::SetSheetSize
virtual void SetSheetSize(const VECTOR2D &aSize)=0
KIGFX::GAL_PRINT::~GAL_PRINT
virtual ~GAL_PRINT()
Definition:
gal_print.h:48
KIGFX::GAL
Abstract interface for drawing on a 2D-surface.
Definition:
graphics_abstraction_layer.h:61
KIGFX::PRINT_CONTEXT
Definition:
gal_print.h:32
KIGFX::PRINT_CONTEXT::~PRINT_CONTEXT
virtual ~PRINT_CONTEXT()
Definition:
gal_print.h:34
KIGFX::PRINT_CONTEXT::GetNativeDPI
virtual double GetNativeDPI() const =0
KIGFX::PRINT_CONTEXT::HasNativeLandscapeRotation
virtual bool HasNativeLandscapeRotation() const =0
VECTOR2< double >
gal.h
GAL_API
#define GAL_API
Definition:
gal.h:28
KIGFX
The Cairo implementation of the graphics abstraction layer.
Definition:
color4d.cpp:247
src
include
gal
gal_print.h
Generated on Sun Dec 22 2024 00:05:24 for KiCad PCB EDA Suite by
1.9.6