KiCad PCB EDA Suite
Loading...
Searching...
No Matches
drc_re_custom_rule_panel.cpp
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) 2024 KiCad Developers, see AUTHORS.txt for contributors.
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version 2
9
* of the License, or (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, you may find one here:
18
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
19
* or you may search the http://www.gnu.org website for the version 2 license,
20
* or you may write to the Free Software Foundation, Inc.,
21
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
22
*/
23
24
#include "
drc_re_custom_rule_panel.h
"
25
26
#include <wx/sizer.h>
27
28
DRC_RE_CUSTOM_RULE_PANEL::DRC_RE_CUSTOM_RULE_PANEL
(
29
wxWindow* aParent, std::shared_ptr<DRC_RE_CUSTOM_RULE_CONSTRAINT_DATA> aConstraintData ) :
30
wxPanel( aParent ),
31
m_constraintData
( aConstraintData )
32
{
33
wxBoxSizer* sizer =
new
wxBoxSizer( wxVERTICAL );
34
m_textCtrl
=
new
wxStyledTextCtrl(
this
, wxID_ANY );
35
sizer->Add(
m_textCtrl
, 1, wxEXPAND | wxALL, 5 );
36
SetSizer( sizer );
37
}
38
39
bool
DRC_RE_CUSTOM_RULE_PANEL::TransferDataToWindow
()
40
{
41
if
(
m_constraintData
)
42
m_textCtrl
->SetValue(
m_constraintData
->GetRuleText() );
43
return
true
;
44
}
45
46
bool
DRC_RE_CUSTOM_RULE_PANEL::TransferDataFromWindow
()
47
{
48
if
(
m_constraintData
)
49
m_constraintData
->SetRuleText(
m_textCtrl
->GetValue() );
50
return
true
;
51
}
52
53
bool
DRC_RE_CUSTOM_RULE_PANEL::ValidateInputs
(
int
* aErrorCount, std::string* aValidationMessage )
54
{
55
(void) aErrorCount;
56
(void) aValidationMessage;
57
return
true
;
58
}
59
60
61
wxString
DRC_RE_CUSTOM_RULE_PANEL::GenerateRule
(
const
RULE_GENERATION_CONTEXT
& aContext )
62
{
63
(void) aContext;
64
65
if
(
m_constraintData
)
66
return
m_constraintData
->GetRuleText();
67
68
if
(
m_textCtrl
)
69
return
m_textCtrl
->GetValue();
70
71
return
wxEmptyString;
72
}
DRC_RE_CUSTOM_RULE_PANEL::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition
drc_re_custom_rule_panel.cpp:46
DRC_RE_CUSTOM_RULE_PANEL::m_textCtrl
wxStyledTextCtrl * m_textCtrl
Definition
drc_re_custom_rule_panel.h:51
DRC_RE_CUSTOM_RULE_PANEL::TransferDataToWindow
bool TransferDataToWindow() override
Definition
drc_re_custom_rule_panel.cpp:39
DRC_RE_CUSTOM_RULE_PANEL::GenerateRule
wxString GenerateRule(const RULE_GENERATION_CONTEXT &aContext) override
Definition
drc_re_custom_rule_panel.cpp:61
DRC_RE_CUSTOM_RULE_PANEL::m_constraintData
std::shared_ptr< DRC_RE_CUSTOM_RULE_CONSTRAINT_DATA > m_constraintData
Definition
drc_re_custom_rule_panel.h:50
DRC_RE_CUSTOM_RULE_PANEL::DRC_RE_CUSTOM_RULE_PANEL
DRC_RE_CUSTOM_RULE_PANEL(wxWindow *aParent, std::shared_ptr< DRC_RE_CUSTOM_RULE_CONSTRAINT_DATA > aConstraintData)
Definition
drc_re_custom_rule_panel.cpp:28
DRC_RE_CUSTOM_RULE_PANEL::ValidateInputs
bool ValidateInputs(int *aErrorCount, std::string *aValidationMessage) override
Definition
drc_re_custom_rule_panel.cpp:53
drc_re_custom_rule_panel.h
RULE_GENERATION_CONTEXT
Definition
drc_rule_editor_enums.h:59
src
pcbnew
drc
rule_editor
drc_re_custom_rule_panel.cpp
Generated on Sun Feb 1 2026 00:08:31 for KiCad PCB EDA Suite by
1.13.2