mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 18:23:15 +02:00
97 lines
2.7 KiB
C++
97 lines
2.7 KiB
C++
#include "fctsys.h"
|
|
|
|
#include "dialog_lib_edit_pin.h"
|
|
|
|
// dialog should remember its previous screen position and size
|
|
// Not also if the defaut size is > s_LastSize, default size is used
|
|
wxPoint DIALOG_LIB_EDIT_PIN::s_LastPos( -1, -1 );
|
|
wxSize DIALOG_LIB_EDIT_PIN::s_LastSize;
|
|
|
|
DIALOG_LIB_EDIT_PIN::DIALOG_LIB_EDIT_PIN( wxWindow* parent ) :
|
|
DIALOG_LIB_EDIT_PIN_BASE( parent )
|
|
{
|
|
/* Required to make escape key work correctly in wxGTK. */
|
|
SetFocus();
|
|
// Set tab order
|
|
m_textPinName-> MoveAfterInTabOrder(this);
|
|
m_textPadName-> MoveAfterInTabOrder(m_textPinName);
|
|
m_sdbSizerButtonsOK->SetDefault();
|
|
}
|
|
|
|
void DIALOG_LIB_EDIT_PIN::SetLastSizeAndPosition()
|
|
{
|
|
if( s_LastPos.x != -1 )
|
|
{
|
|
wxSize defaultSize = GetSize();
|
|
if( s_LastSize.x < defaultSize.x )
|
|
s_LastSize.x = defaultSize.x;
|
|
SetSize( s_LastSize );
|
|
SetPosition( s_LastPos );
|
|
}
|
|
else
|
|
Center();
|
|
}
|
|
|
|
void DIALOG_LIB_EDIT_PIN::OnCloseDialog( wxCloseEvent& event )
|
|
{
|
|
// Save the dialog's position
|
|
s_LastPos = GetPosition();
|
|
s_LastSize = GetSize();
|
|
EndModal( wxID_CANCEL );
|
|
}
|
|
|
|
void DIALOG_LIB_EDIT_PIN::OnCancelButtonClick( wxCommandEvent& event )
|
|
{
|
|
// Save the dialog's position
|
|
s_LastPos = GetPosition();
|
|
s_LastSize = GetSize();
|
|
EndModal( wxID_CANCEL );
|
|
}
|
|
|
|
void DIALOG_LIB_EDIT_PIN::OnOKButtonClick( wxCommandEvent& event )
|
|
{
|
|
// Save the dialog's position
|
|
s_LastPos = GetPosition();
|
|
s_LastSize = GetSize();
|
|
EndModal( wxID_OK );
|
|
}
|
|
|
|
|
|
|
|
void DIALOG_LIB_EDIT_PIN::SetOrientationList( const wxArrayString& list,
|
|
const char*** aBitmaps )
|
|
{
|
|
for ( unsigned ii = 0; ii < list.GetCount(); ii++ )
|
|
{
|
|
if( aBitmaps == NULL )
|
|
m_choiceOrientation->Append( list[ii] );
|
|
else
|
|
m_choiceOrientation->Insert( list[ii], wxBitmap( aBitmaps[ii] ), ii );
|
|
}
|
|
}
|
|
|
|
|
|
void DIALOG_LIB_EDIT_PIN::SetElectricalTypeList( const wxArrayString& list,
|
|
const char*** aBitmaps )
|
|
{
|
|
for ( unsigned ii = 0; ii < list.GetCount(); ii++ )
|
|
{
|
|
if( aBitmaps == NULL )
|
|
m_choiceElectricalType->Append( list[ii] );
|
|
else
|
|
m_choiceElectricalType->Insert( list[ii], wxBitmap( aBitmaps[ii] ), ii );
|
|
}
|
|
}
|
|
|
|
|
|
void DIALOG_LIB_EDIT_PIN::SetStyleList( const wxArrayString& list, const char*** aBitmaps )
|
|
{
|
|
for ( unsigned ii = 0; ii < list.GetCount(); ii++ )
|
|
{
|
|
if( aBitmaps == NULL )
|
|
m_choiceStyle->Append( list[ii] );
|
|
else
|
|
m_choiceStyle->Insert( list[ii], wxBitmap( aBitmaps[ii] ), ii );
|
|
}
|
|
}
|