KiCad PCB EDA Suite
pcbnew/ratsnest/ratsnest.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) 2007-2014 Jean-Pierre Charras, jp.charras at wanadoo.fr
5  * Copyright (C) 1992-2012 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 #include <pcb_edit_frame.h>
26 #include <macros.h>
27 #include <class_board.h>
28 #include <class_module.h>
29 #include <class_track.h>
30 #include <pcbnew.h>
31 #include <ratsnest/ratsnest_data.h>
32 
41 void PCB_BASE_FRAME::Compile_Ratsnest( bool aDisplayStatus )
42 {
43  GetBoard()->GetConnectivity()->RecalculateRatsnest();
44  ClearMsgPanel();
45 
46  if( aDisplayStatus )
47  {
48  std::shared_ptr<CONNECTIVITY_DATA> conn = m_pcb->GetConnectivity();
49  wxString msg;
50 
51  msg.Printf( wxT( " %d" ), conn->GetPadCount() );
52  AppendMsgPanel( _( "Pads" ), msg, RED );
53 
54  msg.Printf( wxT( " %d" ), conn->GetNetCount() - 1 /* Don't include "No Net" in count */ );
55  AppendMsgPanel( _( "Nets" ), msg, CYAN );
56 
57  SetMsgPanel( m_pcb );
58  }
59 }
60 
void Compile_Ratsnest(bool aDisplayStatus)
Function Compile_Ratsnest Create the entire board ratsnest.
Class that computes missing connections on a PCB.
A single base class (TRACK) represents both tracks and vias, with subclasses for curved tracks (ARC) ...
This file contains miscellaneous commonly used macros and functions.
void SetMsgPanel(const std::vector< MSG_PANEL_ITEM > &aList)
Clear the message panel and populates it with the contents of aList.
std::shared_ptr< CONNECTIVITY_DATA > GetConnectivity() const
Return a list of missing connections between components/tracks.
Definition: class_board.h:381
Definition: color4d.h:59
virtual void ClearMsgPanel()
Clear all messages from the message panel.
Definition: color4d.h:60
void AppendMsgPanel(const wxString &textUpper, const wxString &textLower, COLOR4D color, int pad=6)
Append a message to the message panel.
#define _(s)
Definition: 3d_actions.cpp:33
BOARD * GetBoard() const