KiCad PCB EDA Suite
printout.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2018 CERN
3 * Copyright (C) 2020 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 PRINTOUT_H
21#define PRINTOUT_H
22
23#include <page_info.h>
24
26class COLOR_SETTINGS;
27
32{
33 PRINTOUT_SETTINGS( const PAGE_INFO& aPageInfo )
34 : m_pageInfo( aPageInfo )
35 {
36 m_scale = 1.0;
37 m_titleBlock = false;
38 m_blackWhite = true;
39 m_pageCount = 0;
40 m_background = false;
41 m_colorSettings = nullptr;
42 }
43
45 {
46 }
47
48 virtual void Save( APP_SETTINGS_BASE* aConfig );
49
50 virtual void Load( APP_SETTINGS_BASE* aConfig );
51
55 bool PrintBorderAndTitleBlock() const { return m_titleBlock; }
56
57
58 double m_scale;
64
67};
68
69#endif /* PRINTOUT_H */
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
Definition: app_settings.h:101
Color settings are a bit different than most of the settings objects in that there can be more than o...
Describe the page size and margins of a paper page on which to eventually print or plot.
Definition: page_info.h:54
Handle the parameters used to print a board drawing.
Definition: printout.h:32
bool PrintBorderAndTitleBlock() const
Returns true if the drawing border and title block should be printed.
Definition: printout.h:55
COLOR_SETTINGS * m_colorSettings
The color settings to be used for printing.
Definition: printout.h:66
virtual void Save(APP_SETTINGS_BASE *aConfig)
Definition: printout.cpp:24
bool m_titleBlock
Print frame and title block.
Definition: printout.h:59
bool m_blackWhite
Print in B&W or Color.
Definition: printout.h:60
int m_pageCount
Number of pages to print.
Definition: printout.h:61
const PAGE_INFO & m_pageInfo
Definition: printout.h:63
PRINTOUT_SETTINGS(const PAGE_INFO &aPageInfo)
Definition: printout.h:33
bool m_background
Print background color.
Definition: printout.h:62
virtual void Load(APP_SETTINGS_BASE *aConfig)
Definition: printout.cpp:32
double m_scale
Printing scale.
Definition: printout.h:58
virtual ~PRINTOUT_SETTINGS()
Definition: printout.h:44