Commit fcc6d8d7 authored by CHARRAS's avatar CHARRAS

bug 1874663 solved (edit a pad netname does not work very well)

parent 8cd913a2
...@@ -10,6 +10,9 @@ email address. ...@@ -10,6 +10,9 @@ email address.
labels and texts display changed when rotated 180 degres: labels and texts display changed when rotated 180 degres:
horizontal text are now right justified insteed of 180 degree rotated, and are readable. horizontal text are now right justified insteed of 180 degree rotated, and are readable.
+pcbnew:
bug 1874663 solved (edit a pad netname does not work very well)
2008-Jan-20 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> 2008-Jan-20 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================ ================================================================================
+pcbnew: +pcbnew:
......
...@@ -356,6 +356,7 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event ) ...@@ -356,6 +356,7 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event )
{ {
long PadLayerMask; long PadLayerMask;
bool error = FALSE; bool error = FALSE;
bool RastnestIsChanged = false;
if( m_DC ) if( m_DC )
m_Parent->DrawPanel->CursorOff( m_DC ); m_Parent->DrawPanel->CursorOff( m_DC );
...@@ -445,7 +446,11 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event ) ...@@ -445,7 +446,11 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event )
CurrentPad->Draw( m_Parent->DrawPanel, m_DC, wxPoint( 0, 0 ), GR_XOR ); CurrentPad->Draw( m_Parent->DrawPanel, m_DC, wxPoint( 0, 0 ), GR_XOR );
CurrentPad->m_PadShape = g_Pad_Master.m_PadShape; CurrentPad->m_PadShape = g_Pad_Master.m_PadShape;
CurrentPad->m_Attribut = g_Pad_Master.m_Attribut; CurrentPad->m_Attribut = g_Pad_Master.m_Attribut;
if (CurrentPad->m_Pos != g_Pad_Master.m_Pos )
{
CurrentPad->m_Pos = g_Pad_Master.m_Pos; CurrentPad->m_Pos = g_Pad_Master.m_Pos;
RastnestIsChanged = true;
}
/* compute the pos 0 value, i.e. pad position for module orient = 0 i.e. /* compute the pos 0 value, i.e. pad position for module orient = 0 i.e.
* refer to module origin (module position) */ * refer to module origin (module position) */
...@@ -460,11 +465,30 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event ) ...@@ -460,11 +465,30 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event )
CurrentPad->m_Drill = g_Pad_Master.m_Drill; CurrentPad->m_Drill = g_Pad_Master.m_Drill;
CurrentPad->m_DrillShape = g_Pad_Master.m_DrillShape; CurrentPad->m_DrillShape = g_Pad_Master.m_DrillShape;
CurrentPad->m_Offset = g_Pad_Master.m_Offset; CurrentPad->m_Offset = g_Pad_Master.m_Offset;
if ( CurrentPad->m_Masque_Layer != g_Pad_Master.m_Masque_Layer )
{
RastnestIsChanged = true;
CurrentPad->m_Masque_Layer = g_Pad_Master.m_Masque_Layer; CurrentPad->m_Masque_Layer = g_Pad_Master.m_Masque_Layer;
}
CurrentPad->SetPadName( g_Current_PadName ); CurrentPad->SetPadName( g_Current_PadName );
CurrentPad->m_Netname = Current_PadNetName;
if ( CurrentPad->m_Netname != Current_PadNetName )
{
if( Current_PadNetName.IsEmpty() ) if( Current_PadNetName.IsEmpty() )
CurrentPad->SetNet( 0 ); CurrentPad->SetNet( 0 );
else
{
const EQUIPOT* net = m_Parent->m_Pcb->FindNet( Current_PadNetName );
if ( net )
{
RastnestIsChanged = true;
CurrentPad->m_Netname = Current_PadNetName;
CurrentPad->SetNet(net->GetNet());
}
else
DisplayError(this, _("Unknown netname, no change"));
}
}
switch( CurrentPad->m_PadShape ) switch( CurrentPad->m_PadShape )
{ {
...@@ -514,4 +538,8 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event ) ...@@ -514,4 +538,8 @@ void WinEDA_PadPropertiesFrame::PadPropertiesAccept( wxCommandEvent& event )
if( m_DC ) if( m_DC )
m_Parent->DrawPanel->CursorOn( m_DC ); m_Parent->DrawPanel->CursorOn( m_DC );
if ( RastnestIsChanged ) // The net ratsnest must be recalculated
m_Parent->m_Pcb->m_Status_Pcb = 0;
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment