KiCad PCB EDA Suite
pl_editor_layout.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2013 CERN
5 * Copyright (C) 2021-2022 KiCad Developers, see AUTHORS.txt for contributors.
6 * @author Jean-Pierre Charras, jp.charras at wanadoo.fr
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, you may find one here:
20 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
21 * or you may search the http://www.gnu.org website for the version 2 license,
22 * or you may write to the Free Software Foundation, Inc.,
23 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
24 */
25
26#ifndef CLASS_PL_EDITOR_LAYOUT_H
27#define CLASS_PL_EDITOR_LAYOUT_H
28
29#include <page_info.h>
30#include <title_block.h>
32
33
35{
36public:
39
41 const PAGE_INFO& GetPageSettings() const { return m_paper; }
42 void SetPageSettings( const PAGE_INFO& aPageSettings ) { m_paper = aPageSettings; }
43
44 const wxPoint& GetAuxOrigin() const
45 {
46 static wxPoint zero( 0, 0 );
47 return zero;
48 }
49
51 const TITLE_BLOCK& GetTitleBlock() const { return m_titles; }
52 void SetTitleBlock( const TITLE_BLOCK& aTitleBlock ) { m_titles = aTitleBlock; }
53
55 {
56 return m_drawItemList;
57 }
58
65
70 const BOX2I GetBoundingBox() const { return m_boundingBox; }
71
72 void SetBoundingBox( const BOX2I& aBox ) { m_boundingBox = aBox; }
73
74#if defined(DEBUG)
75 void Show( int nestLevel, std::ostream& os ) const;
76#endif
77
78private:
82
84};
85
86#endif // #ifndef CLASS_PL_EDITOR_LAYOUT_H
Store the list of graphic items: rect, lines, polygons and texts to draw/plot the title block and fra...
Definition: ds_draw_item.h:385
Describe the page size and margins of a paper page on which to eventually print or plot.
Definition: page_info.h:54
void SetPageSettings(const PAGE_INFO &aPageSettings)
TITLE_BLOCK m_titles
const TITLE_BLOCK & GetTitleBlock() const
TITLE_BLOCK & GetTitleBlock()
const wxPoint & GetAuxOrigin() const
PAGE_INFO & GetPageSettings()
DS_DRAW_ITEM_LIST & GetDrawItems()
const PAGE_INFO & GetPageSettings() const
void SetTitleBlock(const TITLE_BLOCK &aTitleBlock)
const BOX2I GetBoundingBox() const
Called soon after ComputeBoundingBox() to return the same BOX2I, as long as the CLASS_PL_EDITOR_LAYOU...
BOX2I ComputeBoundingBox()
Calculate the bounding box containing all Gerber items.
void SetBoundingBox(const BOX2I &aBox)
DS_DRAW_ITEM_LIST m_drawItemList
Hold the information shown in the lower right corner of a plot, printout, or editing view.
Definition: title_block.h:41