KiCad PCB EDA Suite
Loading...
Searching...
No Matches
sch_edit_tool.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) 2019 CERN
5
* Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6
*
7
* This program is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU General Public License
9
* as published by the Free Software Foundation; either version 2
10
* of the License, or (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program; if not, you may find one here:
19
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
20
* or you may search the http://www.gnu.org website for the version 2 license,
21
* or you may write to the Free Software Foundation, Inc.,
22
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23
*/
24
25
#pragma once
26
27
#include <
tools/sch_tool_base.h
>
28
#include <
sch_base_frame.h
>
29
30
31
class
SCH_EDIT_TOOL
:
public
SCH_TOOL_BASE
<SCH_EDIT_FRAME>
32
{
33
public
:
34
SCH_EDIT_TOOL
();
35
~SCH_EDIT_TOOL
() =
default
;
36
37
static
const
std::vector<KICAD_T>
RotatableItems
;
38
static
const
std::vector<KICAD_T>
SwappableItems
;
39
41
bool
Init
()
override
;
42
43
int
Rotate
(
const
TOOL_EVENT
& aEvent );
44
int
Mirror
(
const
TOOL_EVENT
& aEvent );
45
int
Swap
(
const
TOOL_EVENT
& aEvent );
46
int
SwapPins
(
const
TOOL_EVENT
& aEvent );
47
int
SwapPinLabels
(
const
TOOL_EVENT
& aEvent );
48
int
SwapUnitLabels
(
const
TOOL_EVENT
& aEvent );
49
50
int
RepeatDrawItem
(
const
TOOL_EVENT
& aEvent );
51
52
int
Properties
(
const
TOOL_EVENT
& aEvent );
53
int
EditField
(
const
TOOL_EVENT
& aEvent );
54
int
AutoplaceFields
(
const
TOOL_EVENT
& aEvent );
55
int
ChangeSymbols
(
const
TOOL_EVENT
& aEvent );
56
int
CycleBodyStyle
(
const
TOOL_EVENT
& aEvent );
57
int
EditPageNumber
(
const
TOOL_EVENT
& aEvent );
58
69
int
ChangeTextType
(
const
TOOL_EVENT
& aEvent );
70
71
int
JustifyText
(
const
TOOL_EVENT
& aEvent );
72
73
int
BreakWire
(
const
TOOL_EVENT
& aEvent );
74
75
int
CleanupSheetPins
(
const
TOOL_EVENT
& aEvent );
76
int
GlobalEdit
(
const
TOOL_EVENT
& aEvent );
77
79
int
DoDelete
(
const
TOOL_EVENT
& aEvent );
80
82
int
DdAppendFile
(
const
TOOL_EVENT
& aEvent );
83
int
DdAddImage
(
const
TOOL_EVENT
& aEvent );
84
87
int
SetAttribute
(
const
TOOL_EVENT
& aEvent );
88
89
void
EditProperties
(
EDA_ITEM
* aItem );
90
91
wxString
FixERCErrorMenuText
(
const
std::shared_ptr<RC_ITEM>& aERCItem );
92
void
FixERCError
(
const
std::shared_ptr<RC_ITEM>& aERCItem );
93
94
private
:
95
void
editFieldText
(
SCH_FIELD
* aField );
96
97
void
collectUnits
(
const
SCH_SELECTION
& aSelection,
98
std::set<std::pair<SCH_SYMBOL*, SCH_SCREEN*>>& aCollectedUnits );
99
101
void
setTransitions
()
override
;
102
};
EDA_ITEM
A base class for most all the KiCad significant classes used in schematics and boards.
Definition
eda_item.h:98
SCH_EDIT_TOOL::FixERCErrorMenuText
wxString FixERCErrorMenuText(const std::shared_ptr< RC_ITEM > &aERCItem)
Definition
sch_edit_tool.cpp:3490
SCH_EDIT_TOOL::setTransitions
void setTransitions() override
This method is meant to be overridden in order to specify handlers for events.
Definition
sch_edit_tool.cpp:3559
SCH_EDIT_TOOL::SCH_EDIT_TOOL
SCH_EDIT_TOOL()
Definition
sch_edit_tool.cpp:283
SCH_EDIT_TOOL::RotatableItems
static const std::vector< KICAD_T > RotatableItems
Definition
sch_edit_tool.h:779
SCH_EDIT_TOOL::SwapUnitLabels
int SwapUnitLabels(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1775
SCH_EDIT_TOOL::EditField
int EditField(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2139
SCH_EDIT_TOOL::EditPageNumber
int EditPageNumber(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3306
SCH_EDIT_TOOL::DoDelete
int DoDelete(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1987
SCH_EDIT_TOOL::Init
bool Init() override
Init() is called once upon a registration of the tool.
Definition
sch_edit_tool.cpp:292
SCH_EDIT_TOOL::CleanupSheetPins
int CleanupSheetPins(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3279
SCH_EDIT_TOOL::EditProperties
void EditProperties(EDA_ITEM *aItem)
Definition
sch_edit_tool.cpp:2459
SCH_EDIT_TOOL::editFieldText
void editFieldText(SCH_FIELD *aField)
Definition
sch_edit_tool.cpp:2092
SCH_EDIT_TOOL::SwapPins
int SwapPins(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1535
SCH_EDIT_TOOL::Mirror
int Mirror(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1115
SCH_EDIT_TOOL::GlobalEdit
int GlobalEdit(const TOOL_EVENT &aEvent)
Delete the selected items, or the item under the cursor.
Definition
eeschema/dialogs/dialog_global_edit_text_and_graphics.cpp:536
SCH_EDIT_TOOL::SetAttribute
int SetAttribute(const TOOL_EVENT &aEvent)
Modify Attributes (DNP, Exclude, etc.) All attributes are set to true unless all symbols already have...
Definition
sch_edit_tool.cpp:3441
SCH_EDIT_TOOL::Properties
int Properties(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2334
SCH_EDIT_TOOL::Rotate
int Rotate(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:823
SCH_EDIT_TOOL::collectUnits
void collectUnits(const SCH_SELECTION &aSelection, std::set< std::pair< SCH_SYMBOL *, SCH_SCREEN * > > &aCollectedUnits)
Set up handlers for various events.
Definition
sch_edit_tool.cpp:3406
SCH_EDIT_TOOL::BreakWire
int BreakWire(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3178
SCH_EDIT_TOOL::DdAppendFile
int DdAppendFile(const TOOL_EVENT &aEvent)
Drag and drop.
Definition
sch_edit_tool.cpp:3380
SCH_EDIT_TOOL::JustifyText
int JustifyText(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3082
SCH_EDIT_TOOL::SwappableItems
static const std::vector< KICAD_T > SwappableItems
Definition
sch_edit_tool.h:804
SCH_EDIT_TOOL::FixERCError
void FixERCError(const std::shared_ptr< RC_ITEM > &aERCItem)
Definition
sch_edit_tool.cpp:3520
SCH_EDIT_TOOL::SwapPinLabels
int SwapPinLabels(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1722
SCH_EDIT_TOOL::AutoplaceFields
int AutoplaceFields(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2227
SCH_EDIT_TOOL::~SCH_EDIT_TOOL
~SCH_EDIT_TOOL()=default
SCH_EDIT_TOOL::CycleBodyStyle
int CycleBodyStyle(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2301
SCH_EDIT_TOOL::Swap
int Swap(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1395
SCH_EDIT_TOOL::ChangeSymbols
int ChangeSymbols(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2276
SCH_EDIT_TOOL::ChangeTextType
int ChangeTextType(const TOOL_EVENT &aEvent)
Change a text type to another one.
Definition
sch_edit_tool.cpp:2709
SCH_EDIT_TOOL::DdAddImage
int DdAddImage(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3386
SCH_EDIT_TOOL::RepeatDrawItem
int RepeatDrawItem(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1855
SCH_FIELD
Definition
sch_field.h:43
SCH_SELECTION
Definition
sch_selection.h:38
SCH_TOOL_BASE< SCH_EDIT_FRAME >::SCH_TOOL_BASE
SCH_TOOL_BASE(const std::string &aName)
Definition
sch_tool_base.h:58
TOOL_EVENT
Generic, UI-independent tool event.
Definition
tool_event.h:171
sch_base_frame.h
sch_tool_base.h
src
eeschema
tools
sch_edit_tool.h
Generated on Mon Oct 13 2025 00:06:19 for KiCad PCB EDA Suite by
1.13.2