KiCad PCB EDA Suite
Loading...
Searching...
No Matches
up_down_tree.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 The 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
#pragma once
25
26
#include <map>
27
#include <
kicommon.h
>
28
#include <wx/treectrl.h>
29
30
31
class
KICOMMON_API
UP_DOWN_TREE
:
public
wxTreeCtrl
32
{
33
public
:
34
UP_DOWN_TREE
( wxWindow *parent, wxWindowID
id
= wxID_ANY,
const
wxPoint& pos = wxDefaultPosition,
35
const
wxSize& size = wxDefaultSize,
long
style = wxTR_DEFAULT_STYLE ) :
36
wxTreeCtrl( parent, id, pos, size, style )
37
{
38
}
39
40
int
OnCompareItems(
const
wxTreeItemId& item1,
const
wxTreeItemId& item2 )
override
;
41
42
void
MoveItemUp(
const
wxTreeItemId& aItem );
43
void
MoveItemDown(
const
wxTreeItemId& aItem );
44
45
private
:
46
void
prepareForSort(
const
wxTreeItemId& aItem );
47
48
private
:
49
std::map<wxTreeItemId, int>
m_sortMap
;
50
51
// Need to use wxRTTI macros in order for OnCompareItems to work properly
52
// See: https://docs.wxwidgets.org/3.1/classwx_tree_ctrl.html#ab90a465793c291ca7aa827a576b7d146
53
wxDECLARE_ABSTRACT_CLASS
(
UP_DOWN_TREE
);
54
};
55
56
UP_DOWN_TREE::wxDECLARE_ABSTRACT_CLASS
wxDECLARE_ABSTRACT_CLASS(UP_DOWN_TREE)
UP_DOWN_TREE::m_sortMap
std::map< wxTreeItemId, int > m_sortMap
Definition
up_down_tree.h:49
UP_DOWN_TREE::UP_DOWN_TREE
UP_DOWN_TREE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTR_DEFAULT_STYLE)
Definition
up_down_tree.h:34
kicommon.h
KICOMMON_API
#define KICOMMON_API
Definition
kicommon.h:28
src
common
widgets
up_down_tree.h
Generated on Fri Jan 9 2026 00:06:36 for KiCad PCB EDA Suite by
1.13.2