KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pcb_selection_conditions.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) 2014 CERN
5 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6 *
7 * @author Maciej Suminski <[email protected]>
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program. If not, see <https://www.gnu.org/licenses/>.
21 */
22
23#ifndef PCB_SELECTION_CONDITIONS_H_
24#define PCB_SELECTION_CONDITIONS_H_
25
26#include <tool/selection.h>
28#include <eda_shape.h>
29
30
32{
33public:
42 static SELECTION_CONDITION SameNet( bool aAllowUnconnected = false );
43
54
58 static bool HasLockedItems( const SELECTION& aSelection );
59
63 static bool HasUnlockedItems( const SELECTION& aSelection );
64
65private:
67 static bool sameNetFunc( const SELECTION& aSelection, bool aAllowUnconnected );
68
70 static bool sameLayerFunc( const SELECTION& aSelection );
71
72};
73
74#endif /* PCB_SELECTION_CONDITIONS_H_ */
static SELECTION_CONDITION SameLayer()
Creates a functor that tests if selection contains items that belong exclusively to the same layer.
static bool sameLayerFunc(const SELECTION &aSelection)
static bool HasUnlockedItems(const SELECTION &aSelection)
Test if any selected items are unlocked.
static SELECTION_CONDITION SameNet(bool aAllowUnconnected=false)
Create a functor that tests if selection contains items belonging to the same net or are unconnected ...
static bool sameNetFunc(const SELECTION &aSelection, bool aAllowUnconnected)
< Helper function used by SameNet()
static bool HasLockedItems(const SELECTION &aSelection)
Test if any selected items are locked.
Class that groups generic conditions for selected items.
std::function< bool(const SELECTION &)> SELECTION_CONDITION
Functor type that checks a specific condition for selected items.