KiCad PCB EDA Suite
pl_draw_panel_gal.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) 2017-2021 KiCad Developers, see AUTHORS.txt for contributors.
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 PL_DRAW_PANEL_GAL_H
21 #define PL_DRAW_PANEL_GAL_H
22 
23 #include <class_draw_panel_gal.h>
24 
25 class DS_PROXY_VIEW_ITEM;
26 class DS_DRAW_ITEM_PAGE;
27 
28 
30 {
31 public:
32  PL_DRAW_PANEL_GAL( wxWindow* aParentWindow, wxWindowID aWindowId, const wxPoint& aPosition,
33  const wxSize& aSize, KIGFX::GAL_DISPLAY_OPTIONS& aOptions,
34  GAL_TYPE aGalType = GAL_TYPE_OPENGL );
35 
36  virtual ~PL_DRAW_PANEL_GAL();
37 
39  void GetMsgPanelInfo( EDA_DRAW_FRAME* aFrame, std::vector<MSG_PANEL_ITEM>& aList ) override;
40 
44  void DisplayWorksheet();
45 
47  bool SwitchBackend( GAL_TYPE aGalType ) override;
48 
50  virtual void SetTopLayer( int aLayer ) override;
51 
52 protected:
54  void setDefaultLayerDeps();
55 
57  std::unique_ptr<DS_PROXY_VIEW_ITEM> m_worksheet;
58 
59  std::unique_ptr<DS_DRAW_ITEM_PAGE> m_pageDrawItem;
60 };
61 
62 
63 #endif /* PL_DRAW_PANEL_GAL_H */
PL_DRAW_PANEL_GAL(wxWindow *aParentWindow, wxWindowID aWindowId, const wxPoint &aPosition, const wxSize &aSize, KIGFX::GAL_DISPLAY_OPTIONS &aOptions, GAL_TYPE aGalType=GAL_TYPE_OPENGL)
bool SwitchBackend(GAL_TYPE aGalType) override
Move the selected layer to the top, so it is displayed above all others.
The base class for create windows for drawing purpose.
void DisplayWorksheet()
Build and update the list of WS_DRAW_ITEM_xxx showing the frame layout.
void GetMsgPanelInfo(EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) override
std::unique_ptr< DS_DRAW_ITEM_PAGE > m_pageDrawItem
A rectangle with thick segment showing the page limits and a marker showing the coordinate origin.
Definition: ds_draw_item.h:252
std::unique_ptr< DS_PROXY_VIEW_ITEM > m_worksheet
void setDefaultLayerDeps()
< Set rendering targets & dependencies for layers.
virtual void SetTopLayer(int aLayer) override
Move the selected layer to the top, so it is displayed above all others.