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