Try to fix an unwanted left mouse release button event, when closing a dialog on a click or double click,
and therefore when the mouse butoon is released in the parent window Minor other fixes.
This commit is contained in:
parent
c648806703
commit
14fcf7f933
|
@ -209,6 +209,17 @@ void EDA_DRAW_FRAME::OnMenuOpen( wxMenuEvent& event )
|
||||||
event.Skip();
|
event.Skip();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* function IgnoreLeftButtonReleaseEvent
|
||||||
|
* after calling this function, the next left mouse button release
|
||||||
|
* event will be ignored.
|
||||||
|
* It is is usefull when closing a dialog on a mouse click,
|
||||||
|
* to ignore the next mouse click by the parent window, although the mouse
|
||||||
|
* button (cliched on the dialog) is released in the parent frame
|
||||||
|
*/
|
||||||
|
void EDA_DRAW_FRAME::IgnoreLeftButtonReleaseEvent()
|
||||||
|
{
|
||||||
|
m_canvas->SetIgnoreLeftButtonReleaseEvent( true );
|
||||||
|
}
|
||||||
|
|
||||||
void EDA_DRAW_FRAME::OnToggleGridState( wxCommandEvent& aEvent )
|
void EDA_DRAW_FRAME::OnToggleGridState( wxCommandEvent& aEvent )
|
||||||
{
|
{
|
||||||
|
|
|
@ -105,6 +105,7 @@ EDA_DRAW_PANEL::EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id,
|
||||||
m_panScrollbarLimits = false;
|
m_panScrollbarLimits = false;
|
||||||
m_enableAutoPan = true;
|
m_enableAutoPan = true;
|
||||||
m_ignoreMouseEvents = false;
|
m_ignoreMouseEvents = false;
|
||||||
|
m_ignoreNextLeftButtonRelease = false;
|
||||||
|
|
||||||
m_mouseCaptureCallback = NULL;
|
m_mouseCaptureCallback = NULL;
|
||||||
m_endMouseCaptureCallback = NULL;
|
m_endMouseCaptureCallback = NULL;
|
||||||
|
@ -118,6 +119,7 @@ EDA_DRAW_PANEL::EDA_DRAW_PANEL( EDA_DRAW_FRAME* parent, int id,
|
||||||
|
|
||||||
m_requestAutoPan = false;
|
m_requestAutoPan = false;
|
||||||
m_enableBlockCommands = false;
|
m_enableBlockCommands = false;
|
||||||
|
m_minDragEventCount = 0;
|
||||||
|
|
||||||
#ifdef __WXMAC__
|
#ifdef __WXMAC__
|
||||||
m_defaultCursor = m_currentCursor = wxCURSOR_CROSS;
|
m_defaultCursor = m_currentCursor = wxCURSOR_CROSS;
|
||||||
|
@ -874,14 +876,6 @@ void EDA_DRAW_PANEL::OnMouseWheel( wxMouseEvent& event )
|
||||||
|
|
||||||
void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
{
|
{
|
||||||
/* Used to inhibit a response to a mouse left button release, after a double click
|
|
||||||
* (when releasing the left button at the end of the second click. Used in Eeschema
|
|
||||||
* to inhibit a mouse left release command when switching between hierarchical sheets
|
|
||||||
* on a double click.
|
|
||||||
*/
|
|
||||||
static bool ignoreNextLeftButtonRelease = false;
|
|
||||||
static EDA_DRAW_PANEL* LastPanel = NULL;
|
|
||||||
|
|
||||||
int localrealbutt = 0, localbutt = 0;
|
int localrealbutt = 0, localbutt = 0;
|
||||||
BASE_SCREEN* screen = GetScreen();
|
BASE_SCREEN* screen = GetScreen();
|
||||||
|
|
||||||
|
@ -893,18 +887,8 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
*/
|
*/
|
||||||
#define MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND 5
|
#define MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND 5
|
||||||
|
|
||||||
/* Count the drag events. Used to filter mouse moves before starting a
|
|
||||||
* block command. A block command can be started only if
|
|
||||||
* MinDragEventCount > MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND
|
|
||||||
* and m_canStartBlock >= 0
|
|
||||||
* in order to avoid spurious block commands.
|
|
||||||
*/
|
|
||||||
static int MinDragEventCount;
|
|
||||||
|
|
||||||
if( event.Leaving() )
|
if( event.Leaving() )
|
||||||
{
|
|
||||||
m_canStartBlock = -1;
|
m_canStartBlock = -1;
|
||||||
}
|
|
||||||
|
|
||||||
if( !IsMouseCaptured() ) // No mouse capture in progress.
|
if( !IsMouseCaptured() ) // No mouse capture in progress.
|
||||||
m_requestAutoPan = false;
|
m_requestAutoPan = false;
|
||||||
|
@ -915,9 +899,7 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if( !event.IsButton() && !event.Moving() && !event.Dragging() )
|
if( !event.IsButton() && !event.Moving() && !event.Dragging() )
|
||||||
{
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
if( event.RightDown() )
|
if( event.RightDown() )
|
||||||
{
|
{
|
||||||
|
@ -970,26 +952,29 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
// inhibit a response to the mouse left button release,
|
// inhibit a response to the mouse left button release,
|
||||||
// because we have a double click, and we do not want a new
|
// because we have a double click, and we do not want a new
|
||||||
// OnLeftClick command at end of this Double Click
|
// OnLeftClick command at end of this Double Click
|
||||||
ignoreNextLeftButtonRelease = true;
|
m_ignoreNextLeftButtonRelease = true;
|
||||||
}
|
}
|
||||||
else if( event.LeftUp() )
|
else if( event.LeftUp() )
|
||||||
{
|
{
|
||||||
// A block command is in progress: a left up is the end of block
|
// A block command is in progress: a left up is the end of block
|
||||||
// or this is the end of a double click, already seen
|
// or this is the end of a double click, already seen
|
||||||
if( screen->m_BlockLocate.GetState() == STATE_NO_BLOCK && !ignoreNextLeftButtonRelease )
|
// Note also m_ignoreNextLeftButtonRelease can be set by
|
||||||
|
// the call to OnLeftClick(), so do not change it after calling OnLeftClick
|
||||||
|
bool ignoreEvt = m_ignoreNextLeftButtonRelease;
|
||||||
|
m_ignoreNextLeftButtonRelease = false;
|
||||||
|
|
||||||
|
if( screen->m_BlockLocate.GetState() == STATE_NO_BLOCK && !ignoreEvt )
|
||||||
GetParent()->OnLeftClick( &DC, screen->RefPos( true ) );
|
GetParent()->OnLeftClick( &DC, screen->RefPos( true ) );
|
||||||
|
|
||||||
ignoreNextLeftButtonRelease = false;
|
|
||||||
}
|
}
|
||||||
|
else if( !event.LeftIsDown() )
|
||||||
if( !event.LeftIsDown() )
|
|
||||||
{
|
{
|
||||||
/* be sure there is a response to a left button release command
|
/* be sure there is a response to a left button release command
|
||||||
* even when a LeftUp event is not seen. This happens when a
|
* even when a LeftUp event is not seen. This happens when a
|
||||||
* double click opens a dialog box, and the release mouse button
|
* double click opens a dialog box, and the release mouse button
|
||||||
* is made when the dialog box is open.
|
* is made when the dialog box is opened.
|
||||||
*/
|
*/
|
||||||
ignoreNextLeftButtonRelease = false;
|
m_ignoreNextLeftButtonRelease = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( event.ButtonDown( wxMOUSE_BTN_MIDDLE ) && m_enableMiddleButtonPan )
|
if( event.ButtonDown( wxMOUSE_BTN_MIDDLE ) && m_enableMiddleButtonPan )
|
||||||
|
@ -1115,9 +1100,10 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
/*******************************/
|
/*******************************/
|
||||||
|
|
||||||
// Command block can't start if mouse is dragging a new panel
|
// Command block can't start if mouse is dragging a new panel
|
||||||
if( LastPanel != this )
|
static EDA_DRAW_PANEL* lastPanel;
|
||||||
|
if( lastPanel != this )
|
||||||
{
|
{
|
||||||
MinDragEventCount = 0;
|
m_minDragEventCount = 0;
|
||||||
m_canStartBlock = -1;
|
m_canStartBlock = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1129,7 +1115,7 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
*/
|
*/
|
||||||
if( !event.LeftIsDown() && !event.MiddleIsDown() )
|
if( !event.LeftIsDown() && !event.MiddleIsDown() )
|
||||||
{
|
{
|
||||||
MinDragEventCount = 0;
|
m_minDragEventCount = 0;
|
||||||
m_canStartBlock = 0;
|
m_canStartBlock = 0;
|
||||||
|
|
||||||
/* Remember the last cursor position when a drag mouse starts
|
/* Remember the last cursor position when a drag mouse starts
|
||||||
|
@ -1155,7 +1141,7 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
{
|
{
|
||||||
m_requestAutoPan = false;
|
m_requestAutoPan = false;
|
||||||
GetParent()->HandleBlockPlace( &DC );
|
GetParent()->HandleBlockPlace( &DC );
|
||||||
ignoreNextLeftButtonRelease = true;
|
m_ignoreNextLeftButtonRelease = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if( ( m_canStartBlock >= 0 )
|
else if( ( m_canStartBlock >= 0 )
|
||||||
|
@ -1174,8 +1160,8 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
// A block command is started if the drag is enough. A small
|
// A block command is started if the drag is enough. A small
|
||||||
// drag is ignored (it is certainly a little mouse move when
|
// drag is ignored (it is certainly a little mouse move when
|
||||||
// clicking) not really a drag mouse
|
// clicking) not really a drag mouse
|
||||||
if( MinDragEventCount < MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND )
|
if( m_minDragEventCount < MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND )
|
||||||
MinDragEventCount++;
|
m_minDragEventCount++;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if( !GetParent()->HandleBlockBegin( &DC, cmd_type, m_CursorStartPos ) )
|
if( !GetParent()->HandleBlockBegin( &DC, cmd_type, m_CursorStartPos ) )
|
||||||
|
@ -1250,7 +1236,7 @@ void EDA_DRAW_PANEL::OnMouseEvent( wxMouseEvent& event )
|
||||||
GetParent()->PrintMsg( msg_debug );
|
GetParent()->PrintMsg( msg_debug );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
LastPanel = this;
|
lastPanel = this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -205,6 +205,9 @@ void DIALOG_ERC::OnLeftDblClickMarkersList( wxCommandEvent& event )
|
||||||
{
|
{
|
||||||
m_parent->GetScreen()->SetCrossHairPosition( m_lastMarkerFound->m_Pos );
|
m_parent->GetScreen()->SetCrossHairPosition( m_lastMarkerFound->m_Pos );
|
||||||
m_parent->RedrawScreen( m_lastMarkerFound->m_Pos, true);
|
m_parent->RedrawScreen( m_lastMarkerFound->m_Pos, true);
|
||||||
|
// prevent a left mouse click event on parent frame
|
||||||
|
// coming from the ERC dialog double click
|
||||||
|
m_parent->IgnoreLeftButtonReleaseEvent();
|
||||||
EndModal( 1 );
|
EndModal( 1 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -216,7 +216,6 @@ SCH_COMPONENT* SCH_EDIT_FRAME::Load_Component( wxDC* aDC,
|
||||||
{
|
{
|
||||||
int unit = 1;
|
int unit = 1;
|
||||||
int convert = 1;
|
int convert = 1;
|
||||||
|
|
||||||
m_itemToRepeat = NULL;
|
m_itemToRepeat = NULL;
|
||||||
m_canvas->SetIgnoreMouseEvents( true );
|
m_canvas->SetIgnoreMouseEvents( true );
|
||||||
|
|
||||||
|
|
|
@ -100,10 +100,10 @@ static wxAcceleratorEntry accels[] =
|
||||||
#define EXTRA_BORDER_SIZE 2
|
#define EXTRA_BORDER_SIZE 2
|
||||||
#define LIB_VIEW_FRAME_NAME wxT( "ViewlibFrame" )
|
#define LIB_VIEW_FRAME_NAME wxT( "ViewlibFrame" )
|
||||||
|
|
||||||
LIB_VIEW_FRAME::LIB_VIEW_FRAME( wxWindow* father, CMP_LIBRARY* Library,
|
LIB_VIEW_FRAME::LIB_VIEW_FRAME( SCH_BASE_FRAME* aParent, CMP_LIBRARY* aLibrary,
|
||||||
wxSemaphore* semaphore, long style ) :
|
wxSemaphore* aSemaphore, long aStyle ) :
|
||||||
SCH_BASE_FRAME( father, VIEWER_FRAME_TYPE, _( "Library Browser" ),
|
SCH_BASE_FRAME( aParent, VIEWER_FRAME_TYPE, _( "Library Browser" ),
|
||||||
wxDefaultPosition, wxDefaultSize, style, GetLibViewerFrameName() )
|
wxDefaultPosition, wxDefaultSize, aStyle, GetLibViewerFrameName() )
|
||||||
{
|
{
|
||||||
wxAcceleratorTable table( ACCEL_TABLE_CNT, accels );
|
wxAcceleratorTable table( ACCEL_TABLE_CNT, accels );
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ LIB_VIEW_FRAME::LIB_VIEW_FRAME( wxWindow* father, CMP_LIBRARY* Library,
|
||||||
m_LibList = NULL;
|
m_LibList = NULL;
|
||||||
m_LibListWindow = NULL;
|
m_LibListWindow = NULL;
|
||||||
m_CmpListWindow = NULL;
|
m_CmpListWindow = NULL;
|
||||||
m_Semaphore = semaphore;
|
m_Semaphore = aSemaphore;
|
||||||
if( m_Semaphore )
|
if( m_Semaphore )
|
||||||
SetModalMode( true );
|
SetModalMode( true );
|
||||||
m_exportToEeschemaCmpName.Empty();
|
m_exportToEeschemaCmpName.Empty();
|
||||||
|
@ -146,7 +146,7 @@ LIB_VIEW_FRAME::LIB_VIEW_FRAME( wxWindow* father, CMP_LIBRARY* Library,
|
||||||
|
|
||||||
wxPoint win_pos( 0, 0 );
|
wxPoint win_pos( 0, 0 );
|
||||||
|
|
||||||
if( Library == NULL )
|
if( aLibrary == NULL )
|
||||||
{
|
{
|
||||||
// Creates the libraries window display
|
// Creates the libraries window display
|
||||||
m_LibListWindow =
|
m_LibListWindow =
|
||||||
|
@ -163,7 +163,7 @@ LIB_VIEW_FRAME::LIB_VIEW_FRAME( wxWindow* father, CMP_LIBRARY* Library,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_libraryName = Library->GetName();
|
m_libraryName = aLibrary->GetName();
|
||||||
m_entryName.Clear();
|
m_entryName.Clear();
|
||||||
m_unit = 1;
|
m_unit = 1;
|
||||||
m_convert = 1;
|
m_convert = 1;
|
||||||
|
@ -507,7 +507,9 @@ void LIB_VIEW_FRAME::DClickOnCmpList( wxCommandEvent& event )
|
||||||
// Prevent the double click from being as a single click in the parent
|
// Prevent the double click from being as a single click in the parent
|
||||||
// window which would cause the part to be parked rather than staying
|
// window which would cause the part to be parked rather than staying
|
||||||
// in drag mode.
|
// in drag mode.
|
||||||
event.StopPropagation();
|
// event.StopPropagation();
|
||||||
|
((SCH_BASE_FRAME*) GetParent())->IgnoreLeftButtonReleaseEvent();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -73,9 +73,9 @@ protected:
|
||||||
static int m_convert;
|
static int m_convert;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
LIB_VIEW_FRAME( wxWindow* father, CMP_LIBRARY* Library = NULL,
|
LIB_VIEW_FRAME( SCH_BASE_FRAME* aParent, CMP_LIBRARY* aLibrary = NULL,
|
||||||
wxSemaphore* semaphore = NULL,
|
wxSemaphore* aSemaphore = NULL,
|
||||||
long style = KICAD_DEFAULT_DRAWFRAME_STYLE );
|
long aStyle = KICAD_DEFAULT_DRAWFRAME_STYLE );
|
||||||
|
|
||||||
~LIB_VIEW_FRAME();
|
~LIB_VIEW_FRAME();
|
||||||
|
|
||||||
|
|
|
@ -83,8 +83,20 @@ private:
|
||||||
|
|
||||||
bool m_ignoreMouseEvents; ///< Ignore mouse events when true.
|
bool m_ignoreMouseEvents; ///< Ignore mouse events when true.
|
||||||
|
|
||||||
|
/* Used to inhibit a response to a mouse left button release, after a double click
|
||||||
|
* (when releasing the left button at the end of the second click. Used in Eeschema
|
||||||
|
* to inhibit a mouse left release command when switching between hierarchical sheets
|
||||||
|
* on a double click.
|
||||||
|
*/
|
||||||
|
bool m_ignoreNextLeftButtonRelease; ///< Ignore the next mouse left button release when true.
|
||||||
|
|
||||||
bool m_enableBlockCommands; ///< True enables block commands.
|
bool m_enableBlockCommands; ///< True enables block commands.
|
||||||
|
|
||||||
|
int m_minDragEventCount; /* Count the drag events. Used to filter mouse moves before starting a
|
||||||
|
* block command. A block command can be started only if
|
||||||
|
* MinDragEventCount > MIN_DRAG_COUNT_FOR_START_BLOCK_COMMAND
|
||||||
|
* in order to avoid spurious block commands. */
|
||||||
|
|
||||||
/// True when drawing in mirror mode. Used by the draw arc function, because arcs
|
/// True when drawing in mirror mode. Used by the draw arc function, because arcs
|
||||||
/// are oriented, and in mirror mode, orientations are reversed.
|
/// are oriented, and in mirror mode, orientations are reversed.
|
||||||
bool m_PrintIsMirrored;
|
bool m_PrintIsMirrored;
|
||||||
|
@ -134,6 +146,8 @@ public:
|
||||||
|
|
||||||
void SetIgnoreMouseEvents( bool aIgnore ) { m_ignoreMouseEvents = aIgnore; }
|
void SetIgnoreMouseEvents( bool aIgnore ) { m_ignoreMouseEvents = aIgnore; }
|
||||||
|
|
||||||
|
void SetIgnoreLeftButtonReleaseEvent( bool aIgnore ) { m_ignoreNextLeftButtonRelease = aIgnore; }
|
||||||
|
|
||||||
void SetEnableBlockCommands( bool aEnable ) { m_enableBlockCommands = aEnable; }
|
void SetEnableBlockCommands( bool aEnable ) { m_enableBlockCommands = aEnable; }
|
||||||
|
|
||||||
bool GetPrintMirrored() const { return m_PrintIsMirrored; }
|
bool GetPrintMirrored() const { return m_PrintIsMirrored; }
|
||||||
|
|
|
@ -498,6 +498,17 @@ public:
|
||||||
|
|
||||||
void OnMenuOpen( wxMenuEvent& event );
|
void OnMenuOpen( wxMenuEvent& event );
|
||||||
void OnMouseEvent( wxMouseEvent& event );
|
void OnMouseEvent( wxMouseEvent& event );
|
||||||
|
|
||||||
|
/** function IgnoreLeftButtonReleaseEvent
|
||||||
|
* after calling this function, the next left mouse button release
|
||||||
|
* event will be ignored.
|
||||||
|
* It is is usefull when closing a dialog on a mouse click,
|
||||||
|
* to ignore the next mouse click by the parent window, although the mouse
|
||||||
|
* button (clicked on the dialog) is released in the parent frame,
|
||||||
|
* and therfore creates an unwanted mouse click event
|
||||||
|
*/
|
||||||
|
void IgnoreLeftButtonReleaseEvent();
|
||||||
|
|
||||||
virtual void OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,
|
virtual void OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,
|
||||||
EDA_ITEM* aItem = NULL );
|
EDA_ITEM* aItem = NULL );
|
||||||
|
|
||||||
|
|
|
@ -494,6 +494,27 @@ void MODULE::DisplayInfo( EDA_DRAW_FRAME* frame )
|
||||||
msg.Printf( wxT( "%.1f" ), (float) m_Orient / 10 );
|
msg.Printf( wxT( "%.1f" ), (float) m_Orient / 10 );
|
||||||
frame->AppendMsgPanel( _( "Orient" ), msg, BROWN );
|
frame->AppendMsgPanel( _( "Orient" ), msg, BROWN );
|
||||||
|
|
||||||
|
/* Controls on right side of the dialog */
|
||||||
|
switch( m_Attributs & 255 )
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
msg = _("Normal");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MOD_CMS:
|
||||||
|
msg = _("Insert");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MOD_VIRTUAL:
|
||||||
|
msg = _("Virtual");
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
msg = wxT("???");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
frame->AppendMsgPanel( _( "Attrib" ), msg, BROWN );
|
||||||
|
|
||||||
frame->AppendMsgPanel( _( "Module" ), m_LibRef, BLUE );
|
frame->AppendMsgPanel( _( "Module" ), m_LibRef, BLUE );
|
||||||
|
|
||||||
if( m_3D_Drawings != NULL )
|
if( m_3D_Drawings != NULL )
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 19 2012)
|
// C++ code generated with wxFormBuilder (version Apr 10 2012)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -77,8 +77,8 @@ DIALOG_GEN_MODULE_POSITION_BASE::DIALOG_GEN_MODULE_POSITION_BASE( wxWindow* pare
|
||||||
wxStaticBoxSizer* sbSizerMsg;
|
wxStaticBoxSizer* sbSizerMsg;
|
||||||
sbSizerMsg = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Messages:") ), wxVERTICAL );
|
sbSizerMsg = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Messages:") ), wxVERTICAL );
|
||||||
|
|
||||||
m_messagesBox = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY );
|
m_messagesBox = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_MULTILINE|wxTE_READONLY );
|
||||||
m_messagesBox->SetMinSize( wxSize( -1,70 ) );
|
m_messagesBox->SetMinSize( wxSize( -1,150 ) );
|
||||||
|
|
||||||
sbSizerMsg->Add( m_messagesBox, 1, wxEXPAND, 5 );
|
sbSizerMsg->Add( m_messagesBox, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
@ -97,7 +97,6 @@ DIALOG_GEN_MODULE_POSITION_BASE::DIALOG_GEN_MODULE_POSITION_BASE( wxWindow* pare
|
||||||
|
|
||||||
this->SetSizer( m_MainSizer );
|
this->SetSizer( m_MainSizer );
|
||||||
this->Layout();
|
this->Layout();
|
||||||
m_MainSizer->Fit( this );
|
|
||||||
|
|
||||||
this->Centre( wxBOTH );
|
this->Centre( wxBOTH );
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@
|
||||||
<property name="minimum_size">-1,-1</property>
|
<property name="minimum_size">-1,-1</property>
|
||||||
<property name="name">DIALOG_GEN_MODULE_POSITION_BASE</property>
|
<property name="name">DIALOG_GEN_MODULE_POSITION_BASE</property>
|
||||||
<property name="pos"></property>
|
<property name="pos"></property>
|
||||||
<property name="size">-1,-1</property>
|
<property name="size">510,351</property>
|
||||||
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
||||||
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
||||||
<property name="title">Position Files:</property>
|
<property name="title">Position Files:</property>
|
||||||
|
@ -717,7 +717,7 @@
|
||||||
<property name="maxlength">0</property>
|
<property name="maxlength">0</property>
|
||||||
<property name="min_size"></property>
|
<property name="min_size"></property>
|
||||||
<property name="minimize_button">0</property>
|
<property name="minimize_button">0</property>
|
||||||
<property name="minimum_size">-1,70</property>
|
<property name="minimum_size">-1,150</property>
|
||||||
<property name="moveable">1</property>
|
<property name="moveable">1</property>
|
||||||
<property name="name">m_messagesBox</property>
|
<property name="name">m_messagesBox</property>
|
||||||
<property name="pane_border">1</property>
|
<property name="pane_border">1</property>
|
||||||
|
@ -728,7 +728,7 @@
|
||||||
<property name="pos"></property>
|
<property name="pos"></property>
|
||||||
<property name="resize">Resizable</property>
|
<property name="resize">Resizable</property>
|
||||||
<property name="show">1</property>
|
<property name="show">1</property>
|
||||||
<property name="size"></property>
|
<property name="size">-1,-1</property>
|
||||||
<property name="style">wxTE_MULTILINE|wxTE_READONLY</property>
|
<property name="style">wxTE_MULTILINE|wxTE_READONLY</property>
|
||||||
<property name="subclass"></property>
|
<property name="subclass"></property>
|
||||||
<property name="toolbar_pane">0</property>
|
<property name="toolbar_pane">0</property>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 19 2012)
|
// C++ code generated with wxFormBuilder (version Apr 10 2012)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -57,7 +57,7 @@ class DIALOG_GEN_MODULE_POSITION_BASE : public DIALOG_SHIM
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
DIALOG_GEN_MODULE_POSITION_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Position Files:"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
DIALOG_GEN_MODULE_POSITION_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Position Files:"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 510,351 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
||||||
~DIALOG_GEN_MODULE_POSITION_BASE();
|
~DIALOG_GEN_MODULE_POSITION_BASE();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#define MinimalHeaderKey wxT( "DrillMinHeader" )
|
#define MinimalHeaderKey wxT( "DrillMinHeader" )
|
||||||
#define UnitDrillInchKey wxT( "DrillUnit" )
|
#define UnitDrillInchKey wxT( "DrillUnit" )
|
||||||
#define DrillOriginIsAuxAxisKey wxT( "DrillAuxAxis" )
|
#define DrillOriginIsAuxAxisKey wxT( "DrillAuxAxis" )
|
||||||
|
#define DrillMapFileTypeKey wxT( "DrillMapFileType" )
|
||||||
|
|
||||||
// list of allowed precision for EXCELLON files, for integer format:
|
// list of allowed precision for EXCELLON files, for integer format:
|
||||||
// Due to difference between inches and mm,
|
// Due to difference between inches and mm,
|
||||||
|
@ -98,11 +99,12 @@ DIALOG_GENDRILL::~DIALOG_GENDRILL()
|
||||||
|
|
||||||
void DIALOG_GENDRILL::initDialog()
|
void DIALOG_GENDRILL::initDialog()
|
||||||
{
|
{
|
||||||
m_config->Read( ZerosFormatKey, &DIALOG_GENDRILL::m_ZerosFormat );
|
m_config->Read( ZerosFormatKey, &m_ZerosFormat );
|
||||||
m_config->Read( MirrorKey, &DIALOG_GENDRILL::m_Mirror );
|
m_config->Read( MirrorKey, &m_Mirror );
|
||||||
m_config->Read( MinimalHeaderKey, &DIALOG_GENDRILL::m_MinimalHeader );
|
m_config->Read( MinimalHeaderKey, &m_MinimalHeader );
|
||||||
m_config->Read( UnitDrillInchKey, &DIALOG_GENDRILL::m_UnitDrillIsInch );
|
m_config->Read( UnitDrillInchKey, &m_UnitDrillIsInch );
|
||||||
m_config->Read( DrillOriginIsAuxAxisKey, &DIALOG_GENDRILL::m_DrillOriginIsAuxAxis );
|
m_config->Read( DrillOriginIsAuxAxisKey, &m_DrillOriginIsAuxAxis );
|
||||||
|
m_config->Read( DrillMapFileTypeKey, &m_mapFileType );
|
||||||
|
|
||||||
InitDisplayParams();
|
InitDisplayParams();
|
||||||
}
|
}
|
||||||
|
@ -114,20 +116,15 @@ void DIALOG_GENDRILL::InitDisplayParams()
|
||||||
|
|
||||||
m_Choice_Unit->SetSelection( m_UnitDrillIsInch ? 1 : 0 );
|
m_Choice_Unit->SetSelection( m_UnitDrillIsInch ? 1 : 0 );
|
||||||
m_Choice_Zeros_Format->SetSelection( m_ZerosFormat );
|
m_Choice_Zeros_Format->SetSelection( m_ZerosFormat );
|
||||||
|
|
||||||
UpdatePrecisionOptions();
|
UpdatePrecisionOptions();
|
||||||
|
|
||||||
m_Check_Minimal->SetValue( m_MinimalHeader );
|
m_Check_Minimal->SetValue( m_MinimalHeader );
|
||||||
|
|
||||||
if( m_DrillOriginIsAuxAxis )
|
if( m_DrillOriginIsAuxAxis )
|
||||||
m_Choice_Drill_Offset->SetSelection( 1 );
|
m_Choice_Drill_Offset->SetSelection( 1 );
|
||||||
|
|
||||||
m_Check_Mirror->SetValue( m_Mirror );
|
m_Check_Mirror->SetValue( m_Mirror );
|
||||||
|
|
||||||
m_Choice_Drill_Map->SetSelection( m_mapFileType );
|
m_Choice_Drill_Map->SetSelection( m_mapFileType );
|
||||||
|
|
||||||
m_ViaDrillValue->SetLabel( _( "Use Netclasses values" ) );
|
m_ViaDrillValue->SetLabel( _( "Use Netclasses values" ) );
|
||||||
|
|
||||||
m_MicroViaDrillValue->SetLabel( _( "Use Netclasses values" ) );
|
m_MicroViaDrillValue->SetLabel( _( "Use Netclasses values" ) );
|
||||||
|
|
||||||
// See if we have some buried vias or/and microvias, and display
|
// See if we have some buried vias or/and microvias, and display
|
||||||
|
@ -171,7 +168,7 @@ void DIALOG_GENDRILL::InitDisplayParams()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if( std::min( pad->GetDrillSize().x, pad->GetDrillSize().y ) != 0 )
|
if( pad->GetDrillSize().x != 0 && pad->GetDrillSize().y != 0 )
|
||||||
{
|
{
|
||||||
if( pad->GetAttribute() == PAD_HOLE_NOT_PLATED )
|
if( pad->GetAttribute() == PAD_HOLE_NOT_PLATED )
|
||||||
m_notplatedPadsHoleCount++;
|
m_notplatedPadsHoleCount++;
|
||||||
|
@ -217,6 +214,7 @@ void DIALOG_GENDRILL::UpdateConfig()
|
||||||
m_config->Write( MinimalHeaderKey, m_MinimalHeader );
|
m_config->Write( MinimalHeaderKey, m_MinimalHeader );
|
||||||
m_config->Write( UnitDrillInchKey, m_UnitDrillIsInch );
|
m_config->Write( UnitDrillInchKey, m_UnitDrillIsInch );
|
||||||
m_config->Write( DrillOriginIsAuxAxisKey, m_DrillOriginIsAuxAxis );
|
m_config->Write( DrillOriginIsAuxAxisKey, m_DrillOriginIsAuxAxis );
|
||||||
|
m_config->Write( DrillMapFileTypeKey, m_mapFileType );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -335,7 +333,7 @@ void DIALOG_GENDRILL::SetParams()
|
||||||
/**
|
/**
|
||||||
* Function GenDrillAndMapFiles
|
* Function GenDrillAndMapFiles
|
||||||
* Calls the functions to create EXCELLON drill files and/or drill map files
|
* Calls the functions to create EXCELLON drill files and/or drill map files
|
||||||
* >When all holes are through, only one excellon file is created.
|
* >When all holes are through holes, only one excellon file is created.
|
||||||
* >When there are some partial holes (some blind or buried vias),
|
* >When there are some partial holes (some blind or buried vias),
|
||||||
* one excellon file is created, for all plated through holes,
|
* one excellon file is created, for all plated through holes,
|
||||||
* and one file per layer pair, which have one or more holes, excluding
|
* and one file per layer pair, which have one or more holes, excluding
|
||||||
|
|
|
@ -300,23 +300,23 @@ void DIALOG_PAD_PROPERTIES::initValues()
|
||||||
m_PadNetNameCtrl->SetValue( m_dummyPad->GetNetname() );
|
m_PadNetNameCtrl->SetValue( m_dummyPad->GetNetname() );
|
||||||
|
|
||||||
// Display current unit name in dialog:
|
// Display current unit name in dialog:
|
||||||
m_PadPosX_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadPosX_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadPosY_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadPosY_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadDrill_X_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadDrill_X_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadDrill_Y_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadDrill_Y_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadShapeSizeX_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadShapeSizeX_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadShapeSizeY_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadShapeSizeY_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadShapeOffsetX_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadShapeOffsetX_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadShapeOffsetY_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadShapeOffsetY_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadShapeDelta_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadShapeDelta_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_PadLengthDie_Unit->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_PadLengthDie_Unit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
|
|
||||||
// Display current pad masks clearances units
|
// Display current pad masks clearances units
|
||||||
m_NetClearanceUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_NetClearanceUnits->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_SolderMaskMarginUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_SolderMaskMarginUnits->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_SolderPasteMarginUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_SolderPasteMarginUnits->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_ThermalWidthUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_ThermalWidthUnits->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
m_ThermalGapUnits->SetLabel( GetUnitsLabel( g_UserUnit ) );
|
m_ThermalGapUnits->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
|
|
||||||
// Display current pad parameters units:
|
// Display current pad parameters units:
|
||||||
PutValueInLocalUnits( *m_PadPosition_X_Ctrl, m_dummyPad->GetPosition().x );
|
PutValueInLocalUnits( *m_PadPosition_X_Ctrl, m_dummyPad->GetPosition().x );
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 19 2012)
|
// C++ code generated with wxFormBuilder (version Apr 10 2012)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -16,8 +16,11 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
wxBoxSizer* m_MainSizer;
|
wxBoxSizer* m_MainSizer;
|
||||||
m_MainSizer = new wxBoxSizer( wxVERTICAL );
|
m_MainSizer = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
m_notebook1 = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
|
wxBoxSizer* bSizerUpper;
|
||||||
m_panel2 = new wxPanel( m_notebook1, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
bSizerUpper = new wxBoxSizer( wxHORIZONTAL );
|
||||||
|
|
||||||
|
m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_panelGeneral = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
||||||
wxBoxSizer* bGeneralSizer;
|
wxBoxSizer* bGeneralSizer;
|
||||||
bGeneralSizer = new wxBoxSizer( wxHORIZONTAL );
|
bGeneralSizer = new wxBoxSizer( wxHORIZONTAL );
|
||||||
|
|
||||||
|
@ -30,27 +33,27 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
fgSizerPadType->SetFlexibleDirection( wxBOTH );
|
fgSizerPadType->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizerPadType->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizerPadType->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_PadNumText = new wxStaticText( m_panel2, wxID_ANY, _("Pad number:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadNumText = new wxStaticText( m_panelGeneral, wxID_ANY, _("Pad number:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadNumText->Wrap( -1 );
|
m_PadNumText->Wrap( -1 );
|
||||||
fgSizerPadType->Add( m_PadNumText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizerPadType->Add( m_PadNumText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadNumCtrl = new wxTextCtrl( m_panel2, wxID_PADNUMCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadNumCtrl = new wxTextCtrl( m_panelGeneral, wxID_PADNUMCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerPadType->Add( m_PadNumCtrl, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
fgSizerPadType->Add( m_PadNumCtrl, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_PadNameText = new wxStaticText( m_panel2, wxID_ANY, _("Net name:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadNameText = new wxStaticText( m_panelGeneral, wxID_ANY, _("Net name:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadNameText->Wrap( -1 );
|
m_PadNameText->Wrap( -1 );
|
||||||
fgSizerPadType->Add( m_PadNameText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizerPadType->Add( m_PadNameText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadNetNameCtrl = new wxTextCtrl( m_panel2, wxID_PADNETNAMECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadNetNameCtrl = new wxTextCtrl( m_panelGeneral, wxID_PADNETNAMECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerPadType->Add( m_PadNetNameCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
fgSizerPadType->Add( m_PadNetNameCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_staticText44 = new wxStaticText( m_panel2, wxID_ANY, _("Pad type:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText44 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Pad type:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText44->Wrap( -1 );
|
m_staticText44->Wrap( -1 );
|
||||||
fgSizerPadType->Add( m_staticText44, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
fgSizerPadType->Add( m_staticText44, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
wxString m_PadTypeChoices[] = { _("Through-hole"), _("SMD"), _("Connector"), _("NPTH, Mechanical") };
|
wxString m_PadTypeChoices[] = { _("Through-hole"), _("SMD"), _("Connector"), _("NPTH, Mechanical") };
|
||||||
int m_PadTypeNChoices = sizeof( m_PadTypeChoices ) / sizeof( wxString );
|
int m_PadTypeNChoices = sizeof( m_PadTypeChoices ) / sizeof( wxString );
|
||||||
m_PadType = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadTypeNChoices, m_PadTypeChoices, 0 );
|
m_PadType = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadTypeNChoices, m_PadTypeChoices, 0 );
|
||||||
m_PadType->SetSelection( 0 );
|
m_PadType->SetSelection( 0 );
|
||||||
fgSizerPadType->Add( m_PadType, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
fgSizerPadType->Add( m_PadType, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
|
@ -63,143 +66,143 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
fgSizerShapeType->SetFlexibleDirection( wxBOTH );
|
fgSizerShapeType->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizerShapeType->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizerShapeType->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_staticText4 = new wxStaticText( m_panel2, wxID_ANY, _("Position X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText4 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Position X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText4->Wrap( -1 );
|
m_staticText4->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText4, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText4, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadPosition_X_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadPosition_X_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_PadPosition_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_PadPosition_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_PadPosX_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadPosX_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadPosX_Unit->Wrap( -1 );
|
m_PadPosX_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadPosX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadPosX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText41 = new wxStaticText( m_panel2, wxID_ANY, _("Position Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText41 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Position Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText41->Wrap( -1 );
|
m_staticText41->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText41, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText41, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadPosition_Y_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadPosition_Y_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_PadPosition_Y_Ctrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
|
fgSizerShapeType->Add( m_PadPosition_Y_Ctrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadPosY_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadPosY_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadPosY_Unit->Wrap( -1 );
|
m_PadPosY_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadPosY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadPosY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText45 = new wxStaticText( m_panel2, wxID_ANY, _("Shape:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText45 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText45->Wrap( -1 );
|
m_staticText45->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText45, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_staticText45, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
wxString m_PadShapeChoices[] = { _("Circular"), _("Oval"), _("Rectangular"), _("Trapezoidal") };
|
wxString m_PadShapeChoices[] = { _("Circular"), _("Oval"), _("Rectangular"), _("Trapezoidal") };
|
||||||
int m_PadShapeNChoices = sizeof( m_PadShapeChoices ) / sizeof( wxString );
|
int m_PadShapeNChoices = sizeof( m_PadShapeChoices ) / sizeof( wxString );
|
||||||
m_PadShape = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadShapeNChoices, m_PadShapeChoices, 0 );
|
m_PadShape = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadShapeNChoices, m_PadShapeChoices, 0 );
|
||||||
m_PadShape->SetSelection( 0 );
|
m_PadShape->SetSelection( 0 );
|
||||||
fgSizerShapeType->Add( m_PadShape, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
|
fgSizerShapeType->Add( m_PadShape, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
fgSizerShapeType->Add( 0, 0, 0, wxEXPAND, 5 );
|
fgSizerShapeType->Add( 0, 0, 0, wxEXPAND, 5 );
|
||||||
|
|
||||||
m_staticText12 = new wxStaticText( m_panel2, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText12 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText12->Wrap( -1 );
|
m_staticText12->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText12, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText12, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_ShapeSize_X_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_ShapeSize_X_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_ShapeSize_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_ShapeSize_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_PadShapeSizeX_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadShapeSizeX_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadShapeSizeX_Unit->Wrap( -1 );
|
m_PadShapeSizeX_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadShapeSizeX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadShapeSizeX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText15 = new wxStaticText( m_panel2, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText15 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText15->Wrap( -1 );
|
m_staticText15->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText15, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText15, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_ShapeSize_Y_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_ShapeSize_Y_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_ShapeSize_Y_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_ShapeSize_Y_Ctrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadShapeSizeY_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadShapeSizeY_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadShapeSizeY_Unit->Wrap( -1 );
|
m_PadShapeSizeY_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadShapeSizeY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadShapeSizeY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText48 = new wxStaticText( m_panel2, wxID_ANY, _("Orientation:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText48 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Orientation:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText48->Wrap( -1 );
|
m_staticText48->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText48, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText48, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
wxString m_PadOrientChoices[] = { _("0"), _("90"), _("-90"), _("180"), _("Custom") };
|
wxString m_PadOrientChoices[] = { _("0"), _("90"), _("-90"), _("180"), _("Custom") };
|
||||||
int m_PadOrientNChoices = sizeof( m_PadOrientChoices ) / sizeof( wxString );
|
int m_PadOrientNChoices = sizeof( m_PadOrientChoices ) / sizeof( wxString );
|
||||||
m_PadOrient = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadOrientNChoices, m_PadOrientChoices, 0 );
|
m_PadOrient = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadOrientNChoices, m_PadOrientChoices, 0 );
|
||||||
m_PadOrient->SetSelection( 0 );
|
m_PadOrient->SetSelection( 0 );
|
||||||
fgSizerShapeType->Add( m_PadOrient, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_PadOrient, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_staticText491 = new wxStaticText( m_panel2, wxID_ANY, _("deg"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText491 = new wxStaticText( m_panelGeneral, wxID_ANY, _("deg"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText491->Wrap( -1 );
|
m_staticText491->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText491, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_staticText491, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_PadOrientText = new wxStaticText( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadOrientText = new wxStaticText( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadOrientText->Wrap( -1 );
|
m_PadOrientText->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadOrientText, 0, wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_PadOrientText, 0, wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_PadOrientCtrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadOrientCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_PadOrientCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_PadOrientCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_customOrientUnits = new wxStaticText( m_panel2, wxID_ANY, _("0.1 deg"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_customOrientUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("0.1 deg"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_customOrientUnits->Wrap( -1 );
|
m_customOrientUnits->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_customOrientUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_customOrientUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText17 = new wxStaticText( m_panel2, wxID_ANY, _("Shape offset X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText17 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape offset X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText17->Wrap( -1 );
|
m_staticText17->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText17, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText17, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_ShapeOffset_X_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_ShapeOffset_X_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_ShapeOffset_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_ShapeOffset_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_PadShapeOffsetX_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadShapeOffsetX_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadShapeOffsetX_Unit->Wrap( -1 );
|
m_PadShapeOffsetX_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadShapeOffsetX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadShapeOffsetX_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText19 = new wxStaticText( m_panel2, wxID_ANY, _("Shape offset Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText19 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape offset Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText19->Wrap( -1 );
|
m_staticText19->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText19, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText19, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_ShapeOffset_Y_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_ShapeOffset_Y_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_ShapeOffset_Y_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_ShapeOffset_Y_Ctrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadShapeOffsetY_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadShapeOffsetY_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadShapeOffsetY_Unit->Wrap( -1 );
|
m_PadShapeOffsetY_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadShapeOffsetY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadShapeOffsetY_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText38 = new wxStaticText( m_panel2, wxID_ANY, _("Die length:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText38 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Die length:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText38->Wrap( -1 );
|
m_staticText38->Wrap( -1 );
|
||||||
m_staticText38->SetToolTip( _("Wire length from pad to die on chip ( used to calculate actual track length)") );
|
m_staticText38->SetToolTip( _("Wire length from pad to die on chip ( used to calculate actual track length)") );
|
||||||
|
|
||||||
fgSizerShapeType->Add( m_staticText38, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText38, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
||||||
|
|
||||||
m_LengthDieCtrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_LengthDieCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_LengthDieCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_LengthDieCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLengthDie_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLengthDie_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadLengthDie_Unit->Wrap( -1 );
|
m_PadLengthDie_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadLengthDie_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadLengthDie_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText21 = new wxStaticText( m_panel2, wxID_ANY, _("Trap. delta dim:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText21 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Trap. delta dim:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText21->Wrap( -1 );
|
m_staticText21->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText21, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText21, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
|
||||||
|
|
||||||
m_ShapeDelta_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_ShapeDelta_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerShapeType->Add( m_ShapeDelta_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerShapeType->Add( m_ShapeDelta_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_PadShapeDelta_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadShapeDelta_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadShapeDelta_Unit->Wrap( -1 );
|
m_PadShapeDelta_Unit->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_PadShapeDelta_Unit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
|
fgSizerShapeType->Add( m_PadShapeDelta_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_staticText23 = new wxStaticText( m_panel2, wxID_ANY, _("Trap. direction:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText23 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Trap. direction:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText23->Wrap( -1 );
|
m_staticText23->Wrap( -1 );
|
||||||
fgSizerShapeType->Add( m_staticText23, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxLEFT, 5 );
|
fgSizerShapeType->Add( m_staticText23, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
wxString m_trapDeltaDirChoiceChoices[] = { _("Horiz."), _("Vert.") };
|
wxString m_trapDeltaDirChoiceChoices[] = { _("Horiz."), _("Vert.") };
|
||||||
int m_trapDeltaDirChoiceNChoices = sizeof( m_trapDeltaDirChoiceChoices ) / sizeof( wxString );
|
int m_trapDeltaDirChoiceNChoices = sizeof( m_trapDeltaDirChoiceChoices ) / sizeof( wxString );
|
||||||
m_trapDeltaDirChoice = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_trapDeltaDirChoiceNChoices, m_trapDeltaDirChoiceChoices, 0 );
|
m_trapDeltaDirChoice = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_trapDeltaDirChoiceNChoices, m_trapDeltaDirChoiceChoices, 0 );
|
||||||
m_trapDeltaDirChoice->SetSelection( 0 );
|
m_trapDeltaDirChoice->SetSelection( 0 );
|
||||||
fgSizerShapeType->Add( m_trapDeltaDirChoice, 0, wxEXPAND|wxALL, 5 );
|
fgSizerShapeType->Add( m_trapDeltaDirChoice, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
|
|
||||||
m_LeftBoxSizer->Add( fgSizerShapeType, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
m_LeftBoxSizer->Add( fgSizerShapeType, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
||||||
|
@ -222,7 +225,7 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
m_LeftBoxSizer->Add( bMiddleUpperSizer, 0, wxEXPAND, 5 );
|
m_LeftBoxSizer->Add( bMiddleUpperSizer, 0, wxEXPAND, 5 );
|
||||||
|
|
||||||
wxStaticBoxSizer* sbSizeModuleInfo;
|
wxStaticBoxSizer* sbSizeModuleInfo;
|
||||||
sbSizeModuleInfo = new wxStaticBoxSizer( new wxStaticBox( m_panel2, wxID_ANY, _("Footprint Orientation") ), wxVERTICAL );
|
sbSizeModuleInfo = new wxStaticBoxSizer( new wxStaticBox( m_panelGeneral, wxID_ANY, _("Footprint Orientation") ), wxVERTICAL );
|
||||||
|
|
||||||
wxFlexGridSizer* fgSizer4;
|
wxFlexGridSizer* fgSizer4;
|
||||||
fgSizer4 = new wxFlexGridSizer( 2, 2, 0, 0 );
|
fgSizer4 = new wxFlexGridSizer( 2, 2, 0, 0 );
|
||||||
|
@ -230,31 +233,25 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
fgSizer4->SetFlexibleDirection( wxBOTH );
|
fgSizer4->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_staticTitleModuleRot = new wxStaticText( m_panel2, wxID_ANY, _("Rotation:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticTitleModuleRot = new wxStaticText( m_panelGeneral, wxID_ANY, _("Rotation:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticTitleModuleRot->Wrap( -1 );
|
m_staticTitleModuleRot->Wrap( -1 );
|
||||||
fgSizer4->Add( m_staticTitleModuleRot, 0, wxALIGN_RIGHT|wxTOP|wxRIGHT|wxLEFT, 5 );
|
fgSizer4->Add( m_staticTitleModuleRot, 0, wxALIGN_RIGHT|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_staticModuleRotValue = new wxStaticText( m_panel2, wxID_ANY, _("0"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticModuleRotValue = new wxStaticText( m_panelGeneral, wxID_ANY, _("0"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticModuleRotValue->Wrap( -1 );
|
m_staticModuleRotValue->Wrap( -1 );
|
||||||
fgSizer4->Add( m_staticModuleRotValue, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
fgSizer4->Add( m_staticModuleRotValue, 0, wxTOP|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_staticTitleModuleSide = new wxStaticText( m_panel2, wxID_ANY, _("Board side:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticTitleModuleSide = new wxStaticText( m_panelGeneral, wxID_ANY, _("Board side:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticTitleModuleSide->Wrap( -1 );
|
m_staticTitleModuleSide->Wrap( -1 );
|
||||||
fgSizer4->Add( m_staticTitleModuleSide, 0, wxALL|wxALIGN_RIGHT, 5 );
|
fgSizer4->Add( m_staticTitleModuleSide, 0, wxALL|wxALIGN_RIGHT, 5 );
|
||||||
|
|
||||||
m_staticModuleSideValue = new wxStaticText( m_panel2, wxID_ANY, _("Front side"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticModuleSideValue = new wxStaticText( m_panelGeneral, wxID_ANY, _("Front side"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticModuleSideValue->Wrap( -1 );
|
m_staticModuleSideValue->Wrap( -1 );
|
||||||
fgSizer4->Add( m_staticModuleSideValue, 0, wxALL|wxEXPAND, 5 );
|
fgSizer4->Add( m_staticModuleSideValue, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
sbSizeModuleInfo->Add( fgSizer4, 1, wxEXPAND, 5 );
|
sbSizeModuleInfo->Add( fgSizer4, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
m_staticTextWarningPadFlipped = new wxStaticText( m_panel2, wxID_ANY, _("Warning:\nThis pad is flipped on board.\nBack and front layers will be swapped."), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_staticTextWarningPadFlipped->Wrap( -1 );
|
|
||||||
m_staticTextWarningPadFlipped->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
|
|
||||||
|
|
||||||
sbSizeModuleInfo->Add( m_staticTextWarningPadFlipped, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_LeftBoxSizer->Add( sbSizeModuleInfo, 0, wxEXPAND|wxBOTTOM, 5 );
|
m_LeftBoxSizer->Add( sbSizeModuleInfo, 0, wxEXPAND|wxBOTTOM, 5 );
|
||||||
|
|
||||||
|
@ -265,46 +262,46 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
bSizer10 = new wxBoxSizer( wxVERTICAL );
|
bSizer10 = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
wxStaticBoxSizer* sbSizer2;
|
wxStaticBoxSizer* sbSizer2;
|
||||||
sbSizer2 = new wxStaticBoxSizer( new wxStaticBox( m_panel2, wxID_ANY, _("Drill") ), wxVERTICAL );
|
sbSizer2 = new wxStaticBoxSizer( new wxStaticBox( m_panelGeneral, wxID_ANY, _("Drill") ), wxVERTICAL );
|
||||||
|
|
||||||
wxFlexGridSizer* fgSizerGeometry;
|
wxFlexGridSizer* fgSizerGeometry;
|
||||||
fgSizerGeometry = new wxFlexGridSizer( 14, 3, 0, 0 );
|
fgSizerGeometry = new wxFlexGridSizer( 14, 3, 0, 0 );
|
||||||
fgSizerGeometry->SetFlexibleDirection( wxBOTH );
|
fgSizerGeometry->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizerGeometry->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizerGeometry->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_staticText47 = new wxStaticText( m_panel2, wxID_ANY, _("Shape:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText47 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText47->Wrap( -1 );
|
m_staticText47->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_staticText47, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerGeometry->Add( m_staticText47, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
wxString m_DrillShapeCtrlChoices[] = { _("Circular"), _("Oval") };
|
wxString m_DrillShapeCtrlChoices[] = { _("Circular"), _("Oval") };
|
||||||
int m_DrillShapeCtrlNChoices = sizeof( m_DrillShapeCtrlChoices ) / sizeof( wxString );
|
int m_DrillShapeCtrlNChoices = sizeof( m_DrillShapeCtrlChoices ) / sizeof( wxString );
|
||||||
m_DrillShapeCtrl = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_DrillShapeCtrlNChoices, m_DrillShapeCtrlChoices, 0 );
|
m_DrillShapeCtrl = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_DrillShapeCtrlNChoices, m_DrillShapeCtrlChoices, 0 );
|
||||||
m_DrillShapeCtrl->SetSelection( 0 );
|
m_DrillShapeCtrl->SetSelection( 0 );
|
||||||
fgSizerGeometry->Add( m_DrillShapeCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgSizerGeometry->Add( m_DrillShapeCtrl, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_staticText51 = new wxStaticText( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText51 = new wxStaticText( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText51->Wrap( -1 );
|
m_staticText51->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_staticText51, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerGeometry->Add( m_staticText51, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_textPadDrillX = new wxStaticText( m_panel2, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_textPadDrillX = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_textPadDrillX->Wrap( -1 );
|
m_textPadDrillX->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_textPadDrillX, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
fgSizerGeometry->Add( m_textPadDrillX, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadDrill_X_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadDrill_X_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerGeometry->Add( m_PadDrill_X_Ctrl, 0, wxALL, 5 );
|
fgSizerGeometry->Add( m_PadDrill_X_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadDrill_X_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadDrill_X_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadDrill_X_Unit->Wrap( -1 );
|
m_PadDrill_X_Unit->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_PadDrill_X_Unit, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizerGeometry->Add( m_PadDrill_X_Unit, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_textPadDrillY = new wxStaticText( m_panel2, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_textPadDrillY = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_textPadDrillY->Wrap( -1 );
|
m_textPadDrillY->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_textPadDrillY, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
fgSizerGeometry->Add( m_textPadDrillY, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadDrill_Y_Ctrl = new wxTextCtrl( m_panel2, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadDrill_Y_Ctrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgSizerGeometry->Add( m_PadDrill_Y_Ctrl, 0, wxALL, 5 );
|
fgSizerGeometry->Add( m_PadDrill_Y_Ctrl, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadDrill_Y_Unit = new wxStaticText( m_panel2, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadDrill_Y_Unit = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_PadDrill_Y_Unit->Wrap( -1 );
|
m_PadDrill_Y_Unit->Wrap( -1 );
|
||||||
fgSizerGeometry->Add( m_PadDrill_Y_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
fgSizerGeometry->Add( m_PadDrill_Y_Unit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
|
@ -315,18 +312,18 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
bSizer10->Add( sbSizer2, 0, wxALL, 5 );
|
bSizer10->Add( sbSizer2, 0, wxALL, 5 );
|
||||||
|
|
||||||
wxStaticBoxSizer* m_LayersSizer;
|
wxStaticBoxSizer* m_LayersSizer;
|
||||||
m_LayersSizer = new wxStaticBoxSizer( new wxStaticBox( m_panel2, wxID_ANY, _("Layers") ), wxVERTICAL );
|
m_LayersSizer = new wxStaticBoxSizer( new wxStaticBox( m_panelGeneral, wxID_ANY, _("Layers") ), wxVERTICAL );
|
||||||
|
|
||||||
wxBoxSizer* bSizer11;
|
wxBoxSizer* bSizer11;
|
||||||
bSizer11 = new wxBoxSizer( wxHORIZONTAL );
|
bSizer11 = new wxBoxSizer( wxHORIZONTAL );
|
||||||
|
|
||||||
m_staticText511 = new wxStaticText( m_panel2, wxID_ANY, _("Copper:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText511 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Copper:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText511->Wrap( -1 );
|
m_staticText511->Wrap( -1 );
|
||||||
bSizer11->Add( m_staticText511, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
bSizer11->Add( m_staticText511, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
wxString m_rbCopperLayersSelChoices[] = { _("Front"), _("Back"), _("All"), _("None") };
|
wxString m_rbCopperLayersSelChoices[] = { _("Front"), _("Back"), _("All"), _("None") };
|
||||||
int m_rbCopperLayersSelNChoices = sizeof( m_rbCopperLayersSelChoices ) / sizeof( wxString );
|
int m_rbCopperLayersSelNChoices = sizeof( m_rbCopperLayersSelChoices ) / sizeof( wxString );
|
||||||
m_rbCopperLayersSel = new wxChoice( m_panel2, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_rbCopperLayersSelNChoices, m_rbCopperLayersSelChoices, 0 );
|
m_rbCopperLayersSel = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_rbCopperLayersSelNChoices, m_rbCopperLayersSelChoices, 0 );
|
||||||
m_rbCopperLayersSel->SetSelection( 0 );
|
m_rbCopperLayersSel->SetSelection( 0 );
|
||||||
bSizer11->Add( m_rbCopperLayersSel, 1, wxALL, 5 );
|
bSizer11->Add( m_rbCopperLayersSel, 1, wxALL, 5 );
|
||||||
|
|
||||||
|
@ -334,39 +331,39 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
m_LayersSizer->Add( bSizer11, 0, wxEXPAND, 5 );
|
m_LayersSizer->Add( bSizer11, 0, wxEXPAND, 5 );
|
||||||
|
|
||||||
wxStaticBoxSizer* sbSizerTechlayers;
|
wxStaticBoxSizer* sbSizerTechlayers;
|
||||||
sbSizerTechlayers = new wxStaticBoxSizer( new wxStaticBox( m_panel2, wxID_ANY, _("Technical Layers") ), wxVERTICAL );
|
sbSizerTechlayers = new wxStaticBoxSizer( new wxStaticBox( m_panelGeneral, wxID_ANY, _("Technical Layers") ), wxVERTICAL );
|
||||||
|
|
||||||
m_PadLayerAdhCmp = new wxCheckBox( m_panel2, wxID_ANY, _("Adhesive Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerAdhCmp = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Adhesive Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerAdhCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerAdhCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerAdhCu = new wxCheckBox( m_panel2, wxID_ANY, _("Adhesive Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerAdhCu = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Adhesive Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerAdhCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerAdhCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerPateCmp = new wxCheckBox( m_panel2, wxID_ANY, _("Solder paste Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerPateCmp = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Solder paste Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerPateCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerPateCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerPateCu = new wxCheckBox( m_panel2, wxID_ANY, _("Solder paste Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerPateCu = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Solder paste Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerPateCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerPateCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerSilkCmp = new wxCheckBox( m_panel2, wxID_ANY, _("Silkscreen Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerSilkCmp = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Silkscreen Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerSilkCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerSilkCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerSilkCu = new wxCheckBox( m_panel2, wxID_ANY, _("Silkscreen Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerSilkCu = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Silkscreen Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerSilkCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerSilkCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerMaskCmp = new wxCheckBox( m_panel2, wxID_ANY, _("Solder mask Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerMaskCmp = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Solder mask Cmp"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerMaskCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerMaskCmp, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerMaskCu = new wxCheckBox( m_panel2, wxID_ANY, _("Solder mask Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerMaskCu = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Solder mask Copper"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerMaskCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerMaskCu, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerDraft = new wxCheckBox( m_panel2, wxID_ANY, _("Draft layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerDraft = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Draft layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerDraft, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerDraft, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerECO1 = new wxCheckBox( m_panel2, wxID_ANY, _("E.C.O.1 layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerECO1 = new wxCheckBox( m_panelGeneral, wxID_ANY, _("E.C.O.1 layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerECO1, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
sbSizerTechlayers->Add( m_PadLayerECO1, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_PadLayerECO2 = new wxCheckBox( m_panel2, wxID_ANY, _("E.C.O.2 layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_PadLayerECO2 = new wxCheckBox( m_panelGeneral, wxID_ANY, _("E.C.O.2 layer"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
sbSizerTechlayers->Add( m_PadLayerECO2, 0, wxALL, 5 );
|
sbSizerTechlayers->Add( m_PadLayerECO2, 0, wxALL, 5 );
|
||||||
|
|
||||||
|
|
||||||
|
@ -378,37 +375,26 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
|
|
||||||
bGeneralSizer->Add( bSizer10, 0, wxALL|wxEXPAND, 5 );
|
bGeneralSizer->Add( bSizer10, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
wxBoxSizer* bSizer13x;
|
|
||||||
bSizer13x = new wxBoxSizer( wxVERTICAL );
|
|
||||||
|
|
||||||
m_panelShowPad = new wxPanel( m_panel2, wxID_ANY, wxDefaultPosition, wxSize( 200,200 ), wxFULL_REPAINT_ON_RESIZE|wxSIMPLE_BORDER );
|
m_panelGeneral->SetSizer( bGeneralSizer );
|
||||||
m_panelShowPad->SetBackgroundColour( wxColour( 0, 0, 0 ) );
|
m_panelGeneral->Layout();
|
||||||
|
bGeneralSizer->Fit( m_panelGeneral );
|
||||||
bSizer13x->Add( m_panelShowPad, 1, wxEXPAND|wxRIGHT|wxSHAPED|wxTOP, 5 );
|
m_notebook->AddPage( m_panelGeneral, _("General"), true );
|
||||||
|
m_localSettingsPanel = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
||||||
|
|
||||||
bGeneralSizer->Add( bSizer13x, 1, wxEXPAND, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_panel2->SetSizer( bGeneralSizer );
|
|
||||||
m_panel2->Layout();
|
|
||||||
bGeneralSizer->Fit( m_panel2 );
|
|
||||||
m_notebook1->AddPage( m_panel2, _("General"), true );
|
|
||||||
m_localSettingsPanel = new wxPanel( m_notebook1, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
|
||||||
wxBoxSizer* bSizer14;
|
wxBoxSizer* bSizer14;
|
||||||
bSizer14 = new wxBoxSizer( wxHORIZONTAL );
|
bSizer14 = new wxBoxSizer( wxHORIZONTAL );
|
||||||
|
|
||||||
|
|
||||||
bSizer14->Add( 0, 0, 1, wxEXPAND, 5 );
|
bSizer14->Add( 0, 0, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
wxBoxSizer* bSizer13;
|
wxBoxSizer* bSizerClearance;
|
||||||
bSizer13 = new wxBoxSizer( wxVERTICAL );
|
bSizerClearance = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
wxStaticBoxSizer* sbClearancesSizer;
|
wxStaticBoxSizer* sbClearancesSizer;
|
||||||
sbClearancesSizer = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Clearances") ), wxVERTICAL );
|
sbClearancesSizer = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Clearances") ), wxVERTICAL );
|
||||||
|
|
||||||
wxFlexGridSizer* fgClearancesGridSizer;
|
wxFlexGridSizer* fgClearancesGridSizer;
|
||||||
fgClearancesGridSizer = new wxFlexGridSizer( 5, 3, 0, 0 );
|
fgClearancesGridSizer = new wxFlexGridSizer( 4, 3, 0, 0 );
|
||||||
fgClearancesGridSizer->SetFlexibleDirection( wxBOTH );
|
fgClearancesGridSizer->SetFlexibleDirection( wxBOTH );
|
||||||
fgClearancesGridSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgClearancesGridSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
|
@ -468,13 +454,13 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
sbClearancesSizer->Add( fgClearancesGridSizer, 1, wxEXPAND, 5 );
|
sbClearancesSizer->Add( fgClearancesGridSizer, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizer13->Add( sbClearancesSizer, 0, wxEXPAND|wxALL, 5 );
|
bSizerClearance->Add( sbClearancesSizer, 0, wxEXPAND|wxALL, 5 );
|
||||||
|
|
||||||
wxStaticBoxSizer* sbSizer7;
|
wxStaticBoxSizer* sbSizerZonesSettings;
|
||||||
sbSizer7 = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Copper Zones") ), wxVERTICAL );
|
sbSizerZonesSettings = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Copper Zones") ), wxVERTICAL );
|
||||||
|
|
||||||
wxFlexGridSizer* fgSizer41;
|
wxFlexGridSizer* fgSizer41;
|
||||||
fgSizer41 = new wxFlexGridSizer( 0, 3, 0, 0 );
|
fgSizer41 = new wxFlexGridSizer( 3, 3, 0, 0 );
|
||||||
fgSizer41->SetFlexibleDirection( wxBOTH );
|
fgSizer41->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizer41->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizer41->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
|
@ -488,9 +474,8 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
m_ZoneConnectionChoice->SetSelection( 0 );
|
m_ZoneConnectionChoice->SetSelection( 0 );
|
||||||
fgSizer41->Add( m_ZoneConnectionChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizer41->Add( m_ZoneConnectionChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_staticText43 = new wxStaticText( m_localSettingsPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_staticText43->Wrap( -1 );
|
fgSizer41->Add( 0, 0, 0, 0, 5 );
|
||||||
fgSizer41->Add( m_staticText43, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
|
||||||
|
|
||||||
m_staticText49 = new wxStaticText( m_localSettingsPanel, wxID_ANY, _("Thermal relief width:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticText49 = new wxStaticText( m_localSettingsPanel, wxID_ANY, _("Thermal relief width:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticText49->Wrap( -1 );
|
m_staticText49->Wrap( -1 );
|
||||||
|
@ -515,19 +500,19 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
fgSizer41->Add( m_ThermalGapUnits, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
fgSizer41->Add( m_ThermalGapUnits, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
|
|
||||||
sbSizer7->Add( fgSizer41, 1, wxEXPAND, 5 );
|
sbSizerZonesSettings->Add( fgSizer41, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizer13->Add( sbSizer7, 1, wxEXPAND|wxALL, 5 );
|
bSizerClearance->Add( sbSizerZonesSettings, 0, wxEXPAND|wxALL, 5 );
|
||||||
|
|
||||||
m_staticTextWarning = new wxStaticText( m_localSettingsPanel, wxID_ANY, _("Set fields to 0 to use parent or global values"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_staticTextWarning = new wxStaticText( m_localSettingsPanel, wxID_ANY, _("Set fields to 0 to use parent or global values"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_staticTextWarning->Wrap( -1 );
|
m_staticTextWarning->Wrap( -1 );
|
||||||
m_staticTextWarning->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
|
m_staticTextWarning->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
|
||||||
|
|
||||||
bSizer13->Add( m_staticTextWarning, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
|
bSizerClearance->Add( m_staticTextWarning, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizer14->Add( bSizer13, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
bSizer14->Add( bSizerClearance, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizer14->Add( 0, 0, 1, wxEXPAND, 5 );
|
bSizer14->Add( 0, 0, 1, wxEXPAND, 5 );
|
||||||
|
@ -536,9 +521,29 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
m_localSettingsPanel->SetSizer( bSizer14 );
|
m_localSettingsPanel->SetSizer( bSizer14 );
|
||||||
m_localSettingsPanel->Layout();
|
m_localSettingsPanel->Layout();
|
||||||
bSizer14->Fit( m_localSettingsPanel );
|
bSizer14->Fit( m_localSettingsPanel );
|
||||||
m_notebook1->AddPage( m_localSettingsPanel, _("Local Settings"), false );
|
m_notebook->AddPage( m_localSettingsPanel, _("Local Clearance and Settings"), false );
|
||||||
|
|
||||||
m_MainSizer->Add( m_notebook1, 1, wxALL|wxEXPAND, 5 );
|
bSizerUpper->Add( m_notebook, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
|
wxBoxSizer* bSizer13x;
|
||||||
|
bSizer13x = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
|
m_panelShowPad = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxSize( 200,200 ), wxFULL_REPAINT_ON_RESIZE|wxSIMPLE_BORDER );
|
||||||
|
m_panelShowPad->SetBackgroundColour( wxColour( 0, 0, 0 ) );
|
||||||
|
|
||||||
|
bSizer13x->Add( m_panelShowPad, 1, wxEXPAND|wxRIGHT|wxSHAPED|wxTOP, 5 );
|
||||||
|
|
||||||
|
|
||||||
|
bSizerUpper->Add( bSizer13x, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
|
m_MainSizer->Add( bSizerUpper, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
m_staticTextWarningPadFlipped = new wxStaticText( this, wxID_ANY, _("Warning:\nThis pad is flipped on board.\nBack and front layers will be swapped."), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_staticTextWarningPadFlipped->Wrap( -1 );
|
||||||
|
m_staticTextWarningPadFlipped->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
|
||||||
|
|
||||||
|
m_MainSizer->Add( m_staticTextWarningPadFlipped, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_sdbSizer1 = new wxStdDialogButtonSizer();
|
m_sdbSizer1 = new wxStdDialogButtonSizer();
|
||||||
m_sdbSizer1OK = new wxButton( this, wxID_OK );
|
m_sdbSizer1OK = new wxButton( this, wxID_OK );
|
||||||
|
@ -583,8 +588,8 @@ DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWind
|
||||||
m_PadLayerDraft->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerDraft->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_PadLayerECO1->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerECO1->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_PadLayerECO2->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerECO2->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_panelShowPad->Connect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
|
|
||||||
m_NetClearanceValueCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
|
m_NetClearanceValueCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
|
||||||
|
m_panelShowPad->Connect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
|
||||||
m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancelButtonClick ), NULL, this );
|
m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancelButtonClick ), NULL, this );
|
||||||
m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadPropertiesAccept ), NULL, this );
|
m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadPropertiesAccept ), NULL, this );
|
||||||
}
|
}
|
||||||
|
@ -619,8 +624,8 @@ DIALOG_PAD_PROPERTIES_BASE::~DIALOG_PAD_PROPERTIES_BASE()
|
||||||
m_PadLayerDraft->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerDraft->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_PadLayerECO1->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerECO1->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_PadLayerECO2->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
m_PadLayerECO2->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
|
||||||
m_panelShowPad->Disconnect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
|
|
||||||
m_NetClearanceValueCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
|
m_NetClearanceValueCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
|
||||||
|
m_panelShowPad->Disconnect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
|
||||||
m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancelButtonClick ), NULL, this );
|
m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancelButtonClick ), NULL, this );
|
||||||
m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadPropertiesAccept ), NULL, this );
|
m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadPropertiesAccept ), NULL, this );
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 19 2012)
|
// C++ code generated with wxFormBuilder (version Apr 10 2012)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -48,8 +48,8 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
wxID_PADNETNAMECTRL
|
wxID_PADNETNAMECTRL
|
||||||
};
|
};
|
||||||
|
|
||||||
wxNotebook* m_notebook1;
|
wxNotebook* m_notebook;
|
||||||
wxPanel* m_panel2;
|
wxPanel* m_panelGeneral;
|
||||||
wxStaticText* m_PadNumText;
|
wxStaticText* m_PadNumText;
|
||||||
wxTextCtrl* m_PadNumCtrl;
|
wxTextCtrl* m_PadNumCtrl;
|
||||||
wxStaticText* m_PadNameText;
|
wxStaticText* m_PadNameText;
|
||||||
|
@ -95,7 +95,6 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
wxStaticText* m_staticModuleRotValue;
|
wxStaticText* m_staticModuleRotValue;
|
||||||
wxStaticText* m_staticTitleModuleSide;
|
wxStaticText* m_staticTitleModuleSide;
|
||||||
wxStaticText* m_staticModuleSideValue;
|
wxStaticText* m_staticModuleSideValue;
|
||||||
wxStaticText* m_staticTextWarningPadFlipped;
|
|
||||||
wxStaticText* m_staticText47;
|
wxStaticText* m_staticText47;
|
||||||
wxChoice* m_DrillShapeCtrl;
|
wxChoice* m_DrillShapeCtrl;
|
||||||
wxStaticText* m_staticText51;
|
wxStaticText* m_staticText51;
|
||||||
|
@ -118,7 +117,6 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
wxCheckBox* m_PadLayerDraft;
|
wxCheckBox* m_PadLayerDraft;
|
||||||
wxCheckBox* m_PadLayerECO1;
|
wxCheckBox* m_PadLayerECO1;
|
||||||
wxCheckBox* m_PadLayerECO2;
|
wxCheckBox* m_PadLayerECO2;
|
||||||
wxPanel* m_panelShowPad;
|
|
||||||
wxPanel* m_localSettingsPanel;
|
wxPanel* m_localSettingsPanel;
|
||||||
wxStaticText* m_staticTextNetClearance;
|
wxStaticText* m_staticTextNetClearance;
|
||||||
wxTextCtrl* m_NetClearanceValueCtrl;
|
wxTextCtrl* m_NetClearanceValueCtrl;
|
||||||
|
@ -134,7 +132,6 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
wxStaticText* m_SolderPasteRatioMarginUnits;
|
wxStaticText* m_SolderPasteRatioMarginUnits;
|
||||||
wxStaticText* m_staticText40;
|
wxStaticText* m_staticText40;
|
||||||
wxChoice* m_ZoneConnectionChoice;
|
wxChoice* m_ZoneConnectionChoice;
|
||||||
wxStaticText* m_staticText43;
|
|
||||||
wxStaticText* m_staticText49;
|
wxStaticText* m_staticText49;
|
||||||
wxTextCtrl* m_ThermalWidthCtrl;
|
wxTextCtrl* m_ThermalWidthCtrl;
|
||||||
wxStaticText* m_ThermalWidthUnits;
|
wxStaticText* m_ThermalWidthUnits;
|
||||||
|
@ -142,6 +139,8 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
wxTextCtrl* m_ThermalGapCtrl;
|
wxTextCtrl* m_ThermalGapCtrl;
|
||||||
wxStaticText* m_ThermalGapUnits;
|
wxStaticText* m_ThermalGapUnits;
|
||||||
wxStaticText* m_staticTextWarning;
|
wxStaticText* m_staticTextWarning;
|
||||||
|
wxPanel* m_panelShowPad;
|
||||||
|
wxStaticText* m_staticTextWarningPadFlipped;
|
||||||
wxStdDialogButtonSizer* m_sdbSizer1;
|
wxStdDialogButtonSizer* m_sdbSizer1;
|
||||||
wxButton* m_sdbSizer1OK;
|
wxButton* m_sdbSizer1OK;
|
||||||
wxButton* m_sdbSizer1Cancel;
|
wxButton* m_sdbSizer1Cancel;
|
||||||
|
@ -160,7 +159,7 @@ class DIALOG_PAD_PROPERTIES_BASE : public DIALOG_SHIM
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWindowID id = wxID_DIALOG_EDIT_PAD, const wxString& title = _("Pad Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 857,618 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSUNKEN_BORDER );
|
DIALOG_PAD_PROPERTIES_BASE( wxWindow* parent, wxWindowID id = wxID_DIALOG_EDIT_PAD, const wxString& title = _("Pad Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 857,630 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSUNKEN_BORDER );
|
||||||
~DIALOG_PAD_PROPERTIES_BASE();
|
~DIALOG_PAD_PROPERTIES_BASE();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -338,6 +338,18 @@ void PCB_EDIT_FRAME::GenFootprintsPositionFile( wxCommandEvent& event )
|
||||||
* aSide = 0 -> Back (bottom) side)
|
* aSide = 0 -> Back (bottom) side)
|
||||||
* aSide = 1 -> Front (top) side)
|
* aSide = 1 -> Front (top) side)
|
||||||
* aSide = 2 -> both sides
|
* aSide = 2 -> both sides
|
||||||
|
*
|
||||||
|
* The format is:
|
||||||
|
* ### Module positions - created on 04/12/2012 15:24:24 ###
|
||||||
|
* ### Printed by Pcbnew version pcbnew (2012-11-30 BZR 3828)-testing
|
||||||
|
* ## Unit = inches, Angle = deg.
|
||||||
|
* ## Side : Front
|
||||||
|
* # Ref Val Package PosX PosY Rot Side
|
||||||
|
* C123 0,1uF/50V SM0603 1.6024 -2.6280 180.0 Front
|
||||||
|
* C124 0,1uF/50V SM0603 1.6063 -2.7579 180.0 Front
|
||||||
|
* C125 0,1uF/50V SM0603 1.6010 -2.8310 180.0 Front
|
||||||
|
* ## End
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
|
int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
|
||||||
bool aUnitsMM,
|
bool aUnitsMM,
|
||||||
|
@ -385,6 +397,7 @@ int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -425,15 +438,14 @@ int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
|
||||||
list.push_back( item );
|
list.push_back( item );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( moduleCount > 1 )
|
if( list.size() > 1 )
|
||||||
sort( list.begin(), list.end(), sortFPlist );
|
sort( list.begin(), list.end(), sortFPlist );
|
||||||
|
|
||||||
wxString frontLayerName = GetBoard()->GetLayerName( LAYER_N_FRONT );
|
wxString frontLayerName = GetBoard()->GetLayerName( LAYER_N_FRONT );
|
||||||
wxString backLayerName = GetBoard()->GetLayerName( LAYER_N_BACK );
|
wxString backLayerName = GetBoard()->GetLayerName( LAYER_N_BACK );
|
||||||
|
|
||||||
// Switch the locale to standard C (needed to print floating point
|
// Switch the locale to standard C (needed to print floating point numbers)
|
||||||
// numbers like 1.3)
|
LOCALE_IO toggle;
|
||||||
SetLocaleTo_C_standard( );
|
|
||||||
|
|
||||||
// Write file header
|
// Write file header
|
||||||
sprintf( line, "### Module positions - created on %s ###\n", TO_UTF8( DateAndTime() ) );
|
sprintf( line, "### Module positions - created on %s ###\n", TO_UTF8( DateAndTime() ) );
|
||||||
|
@ -494,8 +506,6 @@ int PCB_EDIT_FRAME::DoGenFootprintsPositionFile( const wxString& aFullFileName,
|
||||||
// Write EOF
|
// Write EOF
|
||||||
fputs( "## End\n", file );
|
fputs( "## End\n", file );
|
||||||
|
|
||||||
SetLocaleTo_Default( ); // revert to the current locale
|
|
||||||
|
|
||||||
fclose( file );
|
fclose( file );
|
||||||
return moduleCount;
|
return moduleCount;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue