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
40
bool
Init
()
override
;
41
42
int
Rotate
(
const
TOOL_EVENT
& aEvent );
43
int
Mirror
(
const
TOOL_EVENT
& aEvent );
44
int
Swap
(
const
TOOL_EVENT
& aEvent );
45
46
int
RepeatDrawItem
(
const
TOOL_EVENT
& aEvent );
47
48
int
Properties
(
const
TOOL_EVENT
& aEvent );
49
int
EditField
(
const
TOOL_EVENT
& aEvent );
50
int
AutoplaceFields
(
const
TOOL_EVENT
& aEvent );
51
int
ChangeSymbols
(
const
TOOL_EVENT
& aEvent );
52
int
CycleBodyStyle
(
const
TOOL_EVENT
& aEvent );
53
int
EditPageNumber
(
const
TOOL_EVENT
& aEvent );
54
65
int
ChangeTextType
(
const
TOOL_EVENT
& aEvent );
66
67
int
JustifyText
(
const
TOOL_EVENT
& aEvent );
68
69
int
BreakWire
(
const
TOOL_EVENT
& aEvent );
70
71
int
CleanupSheetPins
(
const
TOOL_EVENT
& aEvent );
72
int
GlobalEdit
(
const
TOOL_EVENT
& aEvent );
73
75
int
DoDelete
(
const
TOOL_EVENT
& aEvent );
76
78
int
DdAppendFile
(
const
TOOL_EVENT
& aEvent );
79
int
DdAddImage
(
const
TOOL_EVENT
& aEvent );
80
83
int
SetAttribute
(
const
TOOL_EVENT
& aEvent );
84
85
private
:
86
void
editFieldText
(
SCH_FIELD
* aField );
87
88
void
collectUnits
(
const
SCH_SELECTION
& aSelection,
89
std::set<std::pair<SCH_SYMBOL*, SCH_SCREEN*>>& aCollectedUnits );
90
92
void
setTransitions
()
override
;
93
};
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:3156
SCH_EDIT_TOOL::SCH_EDIT_TOOL
SCH_EDIT_TOOL()
Definition
sch_edit_tool.cpp:278
SCH_EDIT_TOOL::RotatableItems
static const std::vector< KICAD_T > RotatableItems
Definition
sch_edit_tool.h:772
SCH_EDIT_TOOL::EditField
int EditField(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1803
SCH_EDIT_TOOL::EditPageNumber
int EditPageNumber(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2972
SCH_EDIT_TOOL::DoDelete
int DoDelete(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1651
SCH_EDIT_TOOL::Init
bool Init() override
Init() is called once upon a registration of the tool.
Definition
sch_edit_tool.cpp:287
SCH_EDIT_TOOL::CleanupSheetPins
int CleanupSheetPins(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2945
SCH_EDIT_TOOL::editFieldText
void editFieldText(SCH_FIELD *aField)
Definition
sch_edit_tool.cpp:1756
SCH_EDIT_TOOL::Mirror
int Mirror(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1089
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:3107
SCH_EDIT_TOOL::Properties
int Properties(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1998
SCH_EDIT_TOOL::Rotate
int Rotate(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:797
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:3072
SCH_EDIT_TOOL::BreakWire
int BreakWire(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2844
SCH_EDIT_TOOL::DdAppendFile
int DdAppendFile(const TOOL_EVENT &aEvent)
Drag and drop.
Definition
sch_edit_tool.cpp:3046
SCH_EDIT_TOOL::JustifyText
int JustifyText(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:2748
SCH_EDIT_TOOL::AutoplaceFields
int AutoplaceFields(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1891
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:1965
SCH_EDIT_TOOL::Swap
int Swap(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1390
SCH_EDIT_TOOL::ChangeSymbols
int ChangeSymbols(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1940
SCH_EDIT_TOOL::ChangeTextType
int ChangeTextType(const TOOL_EVENT &aEvent)
Change a text type to another one.
Definition
sch_edit_tool.cpp:2375
SCH_EDIT_TOOL::DdAddImage
int DdAddImage(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:3052
SCH_EDIT_TOOL::RepeatDrawItem
int RepeatDrawItem(const TOOL_EVENT &aEvent)
Definition
sch_edit_tool.cpp:1519
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 Sun Sep 21 2025 01:05:25 for KiCad PCB EDA Suite by
1.13.2