diff --git a/eeschema/CMakeLists.txt b/eeschema/CMakeLists.txt
index 9bdff754ad..7ed9711c7d 100644
--- a/eeschema/CMakeLists.txt
+++ b/eeschema/CMakeLists.txt
@@ -44,7 +44,8 @@ set(EESCHEMA_SRCS
dialog_build_BOM_base.cpp
# dialog_cmp_graphic_properties.cpp
dialog_create_component.cpp
-# dialog_edit_component_in_lib.cpp
+ dialog_edit_component_in_lib.cpp
+ dialog_edit_component_in_lib_base.cpp
dialog_edit_component_in_schematic_fbp.cpp
dialog_edit_component_in_schematic.cpp
dialog_edit_label.cpp
diff --git a/eeschema/dialog_edit_component_in_lib.cpp b/eeschema/dialog_edit_component_in_lib.cpp
index c2346ffae4..2c55e837cc 100644
--- a/eeschema/dialog_edit_component_in_lib.cpp
+++ b/eeschema/dialog_edit_component_in_lib.cpp
@@ -1,292 +1,109 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_edit_component_in_lib.cpp
-// Purpose:
// Author: jean-pierre Charras
-// Modified by:
-// Created: 02/03/2006 08:51:09
-// RCS-ID:
-// Copyright: License GNU
-// Licence:
+// Licence: GPL
/////////////////////////////////////////////////////////////////////////////
-// Generated by DialogBlocks (unregistered), 02/03/2006 08:51:09
+#include "fctsys.h"
+#include "appl_wxstruct.h"
+#include "common.h"
+#include "confirm.h"
+#include "gestfich.h"
-
-////@begin includes
-////@end includes
+#include "program.h"
+#include "libcmp.h"
+#include "general.h"
#include "dialog_edit_component_in_lib.h"
-////@begin XPM images
-////@end XPM images
+#include "protos.h"
-/*!
- * WinEDA_PartPropertiesFrame type definition
- */
-
-IMPLEMENT_DYNAMIC_CLASS( WinEDA_PartPropertiesFrame, wxDialog )
-
-/*!
- * WinEDA_PartPropertiesFrame event table definition
- */
-
-BEGIN_EVENT_TABLE( WinEDA_PartPropertiesFrame, wxDialog )
-
-////@begin WinEDA_PartPropertiesFrame event table entries
- EVT_BUTTON( ID_COPY_DOC_TO_ALIAS, WinEDA_PartPropertiesFrame::OnCopyDocToAliasClick )
-
- EVT_BUTTON( ID_BROWSE_DOC_FILES, WinEDA_PartPropertiesFrame::OnBrowseDocFilesClick )
-
- EVT_BUTTON( wxID_CANCEL, WinEDA_PartPropertiesFrame::OnCancelClick )
-
- EVT_BUTTON( wxID_OK, WinEDA_PartPropertiesFrame::OnOkClick )
-
-////@end WinEDA_PartPropertiesFrame event table entries
- EVT_BUTTON(ID_ADD_ALIAS, WinEDA_PartPropertiesFrame::AddAliasOfPart)
- EVT_BUTTON(ID_DELETE_ONE_ALIAS, WinEDA_PartPropertiesFrame::DeleteAliasOfPart)
- EVT_BUTTON(ID_DELETE_ALL_ALIAS, WinEDA_PartPropertiesFrame::DeleteAllAliasOfPart)
- EVT_BUTTON(ID_ADD_FOOTPRINT_FILTER, WinEDA_PartPropertiesFrame::AddFootprintFilter)
- EVT_BUTTON(ID_DELETE_ONE_FOOTPRINT_FILTER, WinEDA_PartPropertiesFrame::DeleteOneFootprintFilter)
- EVT_BUTTON(ID_DELETE_ALL_FOOTPRINT_FILTER, WinEDA_PartPropertiesFrame::DeleteAllFootprintFilter)
-END_EVENT_TABLE()
-
-/*!
- * WinEDA_PartPropertiesFrame constructors
- */
-
-WinEDA_PartPropertiesFrame::WinEDA_PartPropertiesFrame( )
+DIALOG_EDIT_COMPONENT_IN_LIBRARY::DIALOG_EDIT_COMPONENT_IN_LIBRARY( WinEDA_LibeditFrame* aParent):
+ DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE(aParent)
{
-}
-
-WinEDA_PartPropertiesFrame::WinEDA_PartPropertiesFrame( WinEDA_LibeditFrame* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style )
-{
- m_Parent = parent;
- m_RecreateToolbar = FALSE;
+ m_Parent = aParent;
+ m_RecreateToolbar = false;
m_AliasLocation = -1;
- InitBuffers();
+ Init();
- Create(parent, id, caption, pos, size, style);
-
- SetTitle(m_Title);
-}
-
-/*!
- * WinEDA_PartPropertiesFrame creator
- */
-
-bool WinEDA_PartPropertiesFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style )
-{
-////@begin WinEDA_PartPropertiesFrame member initialisation
- m_GeneralBoxSizer = NULL;
- m_NoteBook = NULL;
- m_PanelBasic = NULL;
- m_PanelBasicBoxSizer = NULL;
- m_OptionsBoxSizer = NULL;
- SelNumberOfUnits = NULL;
- m_SetSkew = NULL;
- m_OptionPower = NULL;
- m_OptionPartsLocked = NULL;
- m_PanelDoc = NULL;
- m_PanelDocBoxSizer = NULL;
- m_Doc = NULL;
- m_Keywords = NULL;
- m_Docfile = NULL;
- m_ButtonCopyDoc = NULL;
- m_PanelAlias = NULL;
- m_btClose = NULL;
-////@end WinEDA_PartPropertiesFrame member initialisation
-
-////@begin WinEDA_PartPropertiesFrame creation
- SetExtraStyle(wxWS_EX_BLOCK_EVENTS);
- wxDialog::Create( parent, id, caption, pos, size, style );
-
- CreateControls();
if (GetSizer())
{
GetSizer()->SetSizeHints(this);
}
- Centre();
-////@end WinEDA_PartPropertiesFrame creation
- return true;
}
-/*!
- * Control creation for WinEDA_PartPropertiesFrame
- */
-void WinEDA_PartPropertiesFrame::CreateControls()
+DIALOG_EDIT_COMPONENT_IN_LIBRARY::~DIALOG_EDIT_COMPONENT_IN_LIBRARY()
{
-////@begin WinEDA_PartPropertiesFrame content construction
- // Generated by DialogBlocks, 24/04/2009 14:21:42 (unregistered)
-
- WinEDA_PartPropertiesFrame* itemDialog1 = this;
-
- m_GeneralBoxSizer = new wxBoxSizer(wxVERTICAL);
- itemDialog1->SetSizer(m_GeneralBoxSizer);
-
- m_NoteBook = new wxNotebook( itemDialog1, ID_LIBEDIT_NOTEBOOK, wxDefaultPosition, wxDefaultSize, wxNB_DEFAULT|wxNB_TOP );
-
- m_PanelBasic = new wxPanel( m_NoteBook, ID_PANEL_BASIC, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
- m_PanelBasicBoxSizer = new wxBoxSizer(wxVERTICAL);
- m_PanelBasic->SetSizer(m_PanelBasicBoxSizer);
-
- wxStaticBox* itemStaticBoxSizer6Static = new wxStaticBox(m_PanelBasic, wxID_ANY, _("General :"));
- m_OptionsBoxSizer = new wxStaticBoxSizer(itemStaticBoxSizer6Static, wxVERTICAL);
- m_PanelBasicBoxSizer->Add(m_OptionsBoxSizer, 0, wxALIGN_LEFT|wxALL, 5);
-
- wxBoxSizer* itemBoxSizer7 = new wxBoxSizer(wxHORIZONTAL);
- m_PanelBasicBoxSizer->Add(itemBoxSizer7, 0, wxALIGN_LEFT|wxALL, 5);
- wxBoxSizer* itemBoxSizer8 = new wxBoxSizer(wxVERTICAL);
- itemBoxSizer7->Add(itemBoxSizer8, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
- wxStaticText* itemStaticText9 = new wxStaticText( m_PanelBasic, wxID_STATIC, _("Number of Units:"), wxDefaultPosition, wxDefaultSize, 0 );
- itemBoxSizer8->Add(itemStaticText9, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5);
-
- SelNumberOfUnits = new wxSpinCtrl( m_PanelBasic, ID_SPINCTRL1, _T("1"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 16, 1 );
- itemBoxSizer8->Add(SelNumberOfUnits, 0, wxALIGN_CENTER_HORIZONTAL|wxLEFT|wxRIGHT|wxBOTTOM, 5);
-
- wxBoxSizer* itemBoxSizer11 = new wxBoxSizer(wxVERTICAL);
- itemBoxSizer7->Add(itemBoxSizer11, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
- wxStaticText* itemStaticText12 = new wxStaticText( m_PanelBasic, wxID_STATIC, _("Skew:"), wxDefaultPosition, wxDefaultSize, 0 );
- itemBoxSizer11->Add(itemStaticText12, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5);
-
- m_SetSkew = new wxSpinCtrl( m_PanelBasic, ID_SPINCTRL, _T("0"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 100, 0 );
- itemBoxSizer11->Add(m_SetSkew, 0, wxALIGN_CENTER_HORIZONTAL|wxLEFT|wxRIGHT|wxBOTTOM, 5);
-
- m_OptionPower = new wxCheckBox( m_PanelBasic, ID_CHECKBOX, _("Power Symbol"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE );
- m_OptionPower->SetValue(false);
- m_PanelBasicBoxSizer->Add(m_OptionPower, 0, wxGROW|wxALL, 5);
-
- m_OptionPartsLocked = new wxCheckBox( m_PanelBasic, ID_CHECKBOX1, _("Parts are locked"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE );
- m_OptionPartsLocked->SetValue(false);
- m_PanelBasicBoxSizer->Add(m_OptionPartsLocked, 0, wxGROW|wxALL, 5);
-
- m_NoteBook->AddPage(m_PanelBasic, _("Options"));
-
- m_PanelDoc = new wxPanel( m_NoteBook, ID_PANEL_DOC, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
- m_PanelDocBoxSizer = new wxBoxSizer(wxVERTICAL);
- m_PanelDoc->SetSizer(m_PanelDocBoxSizer);
-
- wxStaticText* itemStaticText18 = new wxStaticText( m_PanelDoc, wxID_STATIC, _("Description:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(itemStaticText18, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5);
-
- m_Doc = new wxTextCtrl( m_PanelDoc, ID_TEXTCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(m_Doc, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
-
- wxStaticText* itemStaticText20 = new wxStaticText( m_PanelDoc, wxID_STATIC, _("Keywords:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(itemStaticText20, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5);
-
- m_Keywords = new wxTextCtrl( m_PanelDoc, ID_TEXTCTRL1, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(m_Keywords, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
-
- wxStaticText* itemStaticText22 = new wxStaticText( m_PanelDoc, wxID_STATIC, _("DocFileName:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(itemStaticText22, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5);
-
- m_Docfile = new wxTextCtrl( m_PanelDoc, ID_TEXTCTRL2, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
- m_PanelDocBoxSizer->Add(m_Docfile, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
-
- wxBoxSizer* itemBoxSizer24 = new wxBoxSizer(wxHORIZONTAL);
- m_PanelDocBoxSizer->Add(itemBoxSizer24, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
- m_ButtonCopyDoc = new wxButton( m_PanelDoc, ID_COPY_DOC_TO_ALIAS, _("Copy Doc"), wxDefaultPosition, wxDefaultSize, 0 );
- itemBoxSizer24->Add(m_ButtonCopyDoc, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
-
- wxButton* itemButton26 = new wxButton( m_PanelDoc, ID_BROWSE_DOC_FILES, _("Browse DocFiles"), wxDefaultPosition, wxDefaultSize, 0 );
- itemBoxSizer24->Add(itemButton26, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
-
- m_NoteBook->AddPage(m_PanelDoc, _("Description"));
-
- m_PanelAlias = new wxPanel( m_NoteBook, ID_PANEL_ALIAS, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
-
- m_NoteBook->AddPage(m_PanelAlias, _("Alias"));
-
- m_GeneralBoxSizer->Add(m_NoteBook, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
- wxBoxSizer* itemBoxSizer28 = new wxBoxSizer(wxHORIZONTAL);
- m_GeneralBoxSizer->Add(itemBoxSizer28, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
- m_btClose = new wxButton( itemDialog1, wxID_CANCEL, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
- itemBoxSizer28->Add(m_btClose, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
-
- wxButton* itemButton30 = new wxButton( itemDialog1, wxID_OK, _("&OK"), wxDefaultPosition, wxDefaultSize, 0 );
- itemButton30->SetDefault();
- itemBoxSizer28->Add(itemButton30, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
-
-////@end WinEDA_PartPropertiesFrame content construction
- m_btClose->SetFocus();
- BuildPanelBasic();
- BuildPanelDoc();
- BuildPanelAlias();
- BuildPanelFootprintFilter();
}
-/*!
- * Should we show tooltips?
- */
-
-bool WinEDA_PartPropertiesFrame::ShowToolTips()
+/* Initialize state of check boxes and texts
+*/
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::Init( )
{
- return true;
+ SetFocus();
+ m_AliasLocation = -1;
+ if( CurrentLibEntry == NULL )
+ {
+ SetTitle( _( "Lib Component Properties" ) );
+ return;
+ }
+
+ wxString title = _( "Properties for " );
+ if( !CurrentAliasName.IsEmpty() )
+ {
+ m_AliasLocation = LocateAlias( CurrentLibEntry->m_AliasList, CurrentAliasName );
+ title += CurrentAliasName +
+ _( "(alias of " ) +
+ wxString( CurrentLibEntry->m_Name.m_Text )
+ + wxT( ")" );
+ }
+ else
+ {
+ title += CurrentLibEntry->m_Name.m_Text;
+ CurrentAliasName.Empty();
+ }
+
+ SetTitle( title );
+
+ InitPanelDoc();
+ InitBasicPanel();
+
+ if( !CurrentAliasName.IsEmpty() )
+ m_ButtonDeleteAllAlias->Enable( false );
+
+ /* Place list of alias names in listbox */
+ if( CurrentLibEntry )
+ {
+ for( unsigned ii = 0; ii < CurrentLibEntry->m_AliasList.GetCount(); ii += ALIAS_NEXT )
+ m_PartAliasList->Append( CurrentLibEntry->m_AliasList[ii + ALIAS_NAME] );
+ }
+
+ if( (CurrentLibEntry == NULL) || (CurrentLibEntry->m_AliasList.GetCount() == 0) )
+ {
+ m_ButtonDeleteAllAlias->Enable( false );
+ m_ButtonDeleteOneAlias->Enable( false );
+ }
+
+ /* Read the Footprint Filter list */
+ if( CurrentLibEntry )
+ {
+ for( unsigned ii = 0; ii < CurrentLibEntry->m_FootprintList.GetCount(); ii++ )
+ m_FootprintFilterListBox->Append( CurrentLibEntry->m_FootprintList[ii] );
+ }
+
+ if( (CurrentLibEntry == NULL) || (CurrentLibEntry->m_FootprintList.GetCount() == 0) )
+ {
+ m_ButtonDeleteAllFootprintFilter->Enable( false );
+ m_ButtonDeleteOneFootprintFilter->Enable( false );
+ }
+
}
-/*!
- * Get bitmap resources
- */
-wxBitmap WinEDA_PartPropertiesFrame::GetBitmapResource( const wxString& name )
-{
- // Bitmap retrieval
-////@begin WinEDA_PartPropertiesFrame bitmap retrieval
- wxUnusedVar(name);
- return wxNullBitmap;
-////@end WinEDA_PartPropertiesFrame bitmap retrieval
-}
-
-/*!
- * Get icon resources
- */
-
-wxIcon WinEDA_PartPropertiesFrame::GetIconResource( const wxString& name )
-{
- // Icon retrieval
-////@begin WinEDA_PartPropertiesFrame icon retrieval
- wxUnusedVar(name);
- return wxNullIcon;
-////@end WinEDA_PartPropertiesFrame icon retrieval
-}
-/*!
- * wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_COPY_DOC_TO_ALIAS
- */
-
-void WinEDA_PartPropertiesFrame::OnCopyDocToAliasClick( wxCommandEvent& event )
-{
- CopyDocToAlias(event);
-}
-
-/*!
- * wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BROWSE_DOC_FILES
- */
-
-void WinEDA_PartPropertiesFrame::OnBrowseDocFilesClick( wxCommandEvent& event )
-{
- BrowseAndSelectDocFile(event);
-}
-
-/*!
- * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL
- */
-
-void WinEDA_PartPropertiesFrame::OnCancelClick( wxCommandEvent& event )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::OnCancelClick( wxCommandEvent& event )
{
EndModal(0);
}
-/*!
- * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
- */
-
-void WinEDA_PartPropertiesFrame::OnOkClick( wxCommandEvent& event )
-{
- PartPropertiesAccept(event);
-}
-
-
diff --git a/eeschema/dialog_edit_component_in_lib.h b/eeschema/dialog_edit_component_in_lib.h
index d27a47cca7..a593d4b3e6 100644
--- a/eeschema/dialog_edit_component_in_lib.h
+++ b/eeschema/dialog_edit_component_in_lib.h
@@ -1,129 +1,34 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_edit_component_in_lib.h
-// Purpose:
// Author: jean-pierre Charras
-// Modified by:
-// Created: 02/03/2006 08:51:09
-// RCS-ID:
-// Copyright: License GNU
-// Licence:
+// Licence: GPL
/////////////////////////////////////////////////////////////////////////////
-// Generated by DialogBlocks (unregistered), 02/03/2006 08:51:09
#ifndef _DIALOG_EDIT_COMPONENT_IN_LIB_H_
#define _DIALOG_EDIT_COMPONENT_IN_LIB_H_
-/*!
- * Includes
- */
+#include "dialog_edit_component_in_lib_base.h"
-////@begin includes
-#include "wx/notebook.h"
-#include "wx/spinctrl.h"
-////@end includes
-/*!
- * Forward declarations
- */
-
-////@begin forward declarations
-class wxBoxSizer;
-class wxNotebook;
-class wxSpinCtrl;
-////@end forward declarations
-
-/*!
- * Control identifiers
- */
-
-////@begin control identifiers
-#define ID_DIALOG 10000
-#define ID_LIBEDIT_NOTEBOOK 10001
-#define ID_PANEL_BASIC 10002
-#define ID_SPINCTRL1 10010
-#define ID_SPINCTRL 10009
-#define ID_CHECKBOX 10007
-#define ID_CHECKBOX1 10008
-#define ID_PANEL_DOC 10004
-#define ID_TEXTCTRL 10011
-#define ID_TEXTCTRL1 10012
-#define ID_TEXTCTRL2 10013
-#define ID_COPY_DOC_TO_ALIAS 10014
-#define ID_BROWSE_DOC_FILES 10005
-#define ID_PANEL_ALIAS 10003
-#define SYMBOL_WINEDA_PARTPROPERTIESFRAME_STYLE wxCAPTION|wxSYSTEM_MENU|wxCLOSE_BOX|MAYBE_RESIZE_BORDER
-#define SYMBOL_WINEDA_PARTPROPERTIESFRAME_TITLE _("Lib Component Properties")
-#define SYMBOL_WINEDA_PARTPROPERTIESFRAME_IDNAME ID_DIALOG
-#define SYMBOL_WINEDA_PARTPROPERTIESFRAME_SIZE wxSize(400, 300)
-#define SYMBOL_WINEDA_PARTPROPERTIESFRAME_POSITION wxDefaultPosition
-////@end control identifiers
-#define ID_DELETE_ONE_FOOTPRINT_FILTER 10020
-#define ID_DELETE_ALL_FOOTPRINT_FILTER 10021
-#define ID_ADD_FOOTPRINT_FILTER 10022
-
-/*!
- * Compatibility
- */
-
-#ifndef wxCLOSE_BOX
-#define wxCLOSE_BOX 0x1000
-#endif
-
-/*!
- * WinEDA_PartPropertiesFrame class declaration
- */
-
-class WinEDA_PartPropertiesFrame: public wxDialog
+class DIALOG_EDIT_COMPONENT_IN_LIBRARY: public DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE
{
- DECLARE_DYNAMIC_CLASS( WinEDA_PartPropertiesFrame )
- DECLARE_EVENT_TABLE()
+public:
+ WinEDA_LibeditFrame * m_Parent;
+ bool m_RecreateToolbar;
+ int m_AliasLocation;
public:
/// Constructors
- WinEDA_PartPropertiesFrame( );
- WinEDA_PartPropertiesFrame( WinEDA_LibeditFrame* parent, wxWindowID id = SYMBOL_WINEDA_PARTPROPERTIESFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_PARTPROPERTIESFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_PARTPROPERTIESFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_PARTPROPERTIESFRAME_SIZE, long style = SYMBOL_WINEDA_PARTPROPERTIESFRAME_STYLE );
+ DIALOG_EDIT_COMPONENT_IN_LIBRARY( WinEDA_LibeditFrame* parent);
+ ~DIALOG_EDIT_COMPONENT_IN_LIBRARY();
- /// Creation
- bool Create( wxWindow* parent, wxWindowID id = SYMBOL_WINEDA_PARTPROPERTIESFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_PARTPROPERTIESFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_PARTPROPERTIESFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_PARTPROPERTIESFRAME_SIZE, long style = SYMBOL_WINEDA_PARTPROPERTIESFRAME_STYLE );
-
- /// Creates the controls and sizers
- void CreateControls();
-
-////@begin WinEDA_PartPropertiesFrame event handler declarations
-
- /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_COPY_DOC_TO_ALIAS
- void OnCopyDocToAliasClick( wxCommandEvent& event );
-
- /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BROWSE_DOC_FILES
- void OnBrowseDocFilesClick( wxCommandEvent& event );
-
- /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL
- void OnCancelClick( wxCommandEvent& event );
-
- /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
- void OnOkClick( wxCommandEvent& event );
-
-////@end WinEDA_PartPropertiesFrame event handler declarations
-
-////@begin WinEDA_PartPropertiesFrame member function declarations
-
- /// Retrieves bitmap resources
- wxBitmap GetBitmapResource( const wxString& name );
-
- /// Retrieves icon resources
- wxIcon GetIconResource( const wxString& name );
-////@end WinEDA_PartPropertiesFrame member function declarations
-
- /// Should we show tooltips?
- static bool ShowToolTips();
-
- void InitBuffers();
- void BuildPanelBasic();
- void BuildPanelDoc();
- void BuildPanelAlias();
- void PartPropertiesAccept(wxCommandEvent& event);
- void OnQuit(wxCommandEvent& event);
+private:
+ void Init();
+ void InitPanelDoc();
+ void InitBasicPanel();
+ void OnCancelClick( wxCommandEvent& event );
+ void OnOkClick(wxCommandEvent& event);
void DeleteAllAliasOfPart(wxCommandEvent& event);
void DeleteAliasOfPart(wxCommandEvent& event);
void AddAliasOfPart(wxCommandEvent& event);
@@ -132,50 +37,10 @@ public:
void CopyDocToAlias(wxCommandEvent& event);
void BrowseAndSelectDocFile(wxCommandEvent& event);
- void BuildPanelFootprintFilter();
void DeleteAllFootprintFilter(wxCommandEvent& event);
void DeleteOneFootprintFilter(wxCommandEvent& event);
void AddFootprintFilter(wxCommandEvent& event);
-////@begin WinEDA_PartPropertiesFrame member variables
- wxBoxSizer* m_GeneralBoxSizer;
- wxNotebook* m_NoteBook;
- wxPanel* m_PanelBasic;
- wxBoxSizer* m_PanelBasicBoxSizer;
- wxStaticBoxSizer* m_OptionsBoxSizer;
- wxSpinCtrl* SelNumberOfUnits;
- wxSpinCtrl* m_SetSkew;
- wxCheckBox* m_OptionPower;
- wxCheckBox* m_OptionPartsLocked;
- wxPanel* m_PanelDoc;
- wxBoxSizer* m_PanelDocBoxSizer;
- wxTextCtrl* m_Doc;
- wxTextCtrl* m_Keywords;
- wxTextCtrl* m_Docfile;
- wxButton* m_ButtonCopyDoc;
- wxPanel* m_PanelAlias;
- wxButton* m_btClose;
-////@end WinEDA_PartPropertiesFrame member variables
-
- WinEDA_LibeditFrame * m_Parent;
- wxString m_Title;
-
- wxPanel * m_PanelFootprintFilter;
- wxButton * m_ButtonDeleteOneAlias;
- wxButton * m_ButtonDeleteAllAlias;
- wxButton * m_ButtonDeleteAllFootprintFilter;
- wxButton * m_ButtonDeleteOneFootprintFilter;
-
- wxCheckBox * AsConvertButt;
- wxCheckBox * ShowPinNumButt;
- wxCheckBox * ShowPinNameButt;
- wxCheckBox * m_PinsNameInsideButt;
-
- wxListBox * m_PartAliasList;
- wxListBox * m_FootprintFilterListBox;
- bool m_RecreateToolbar;
- int m_AliasLocation;
-
};
#endif
diff --git a/eeschema/dialog_edit_component_in_lib_base.cpp b/eeschema/dialog_edit_component_in_lib_base.cpp
new file mode 100644
index 0000000000..2b51efa80e
--- /dev/null
+++ b/eeschema/dialog_edit_component_in_lib_base.cpp
@@ -0,0 +1,252 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#include "dialog_edit_component_in_lib_base.h"
+
+///////////////////////////////////////////////////////////////////////////
+
+DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
+{
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+
+ wxBoxSizer* bMainSizer;
+ bMainSizer = new wxBoxSizer( wxVERTICAL );
+
+ m_NoteBook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_PanelBasic = new wxPanel( m_NoteBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizerBasicPanel;
+ bSizerBasicPanel = new wxBoxSizer( wxVERTICAL );
+
+ wxStaticBoxSizer* m_OptionsBoxSizer;
+ m_OptionsBoxSizer = new wxStaticBoxSizer( new wxStaticBox( m_PanelBasic, wxID_ANY, _("General :") ), wxVERTICAL );
+
+ m_AsConvertButt = new wxCheckBox( m_PanelBasic, wxID_ANY, _("As Convert"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_AsConvertButt->SetToolTip( _("Check this option for components that have a De Morgan representation.\nThis is usual for gates.") );
+
+ m_OptionsBoxSizer->Add( m_AsConvertButt, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_ShowPinNumButt = new wxCheckBox( m_PanelBasic, wxID_ANY, _("Show Pin Num"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_ShowPinNumButt->SetToolTip( _("Show or hide pin numbers") );
+
+ m_OptionsBoxSizer->Add( m_ShowPinNumButt, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_ShowPinNameButt = new wxCheckBox( m_PanelBasic, wxID_ANY, _("Show Pin Name"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_ShowPinNameButt->SetToolTip( _("Show or hide pin names") );
+
+ m_OptionsBoxSizer->Add( m_ShowPinNameButt, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_PinsNameInsideButt = new wxCheckBox( m_PanelBasic, wxID_ANY, _("Pin Name Inside"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_PinsNameInsideButt->SetToolTip( _("Check this option to have pin names inside the body and pin number outside.\nIf not checked pins names and pins numbers are outside.") );
+
+ m_OptionsBoxSizer->Add( m_PinsNameInsideButt, 0, wxALL, 5 );
+
+ bSizerBasicPanel->Add( m_OptionsBoxSizer, 0, 0, 5 );
+
+ m_staticline3 = new wxStaticLine( m_PanelBasic, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerBasicPanel->Add( m_staticline3, 0, wxEXPAND | wxALL, 5 );
+
+ wxBoxSizer* bSizerMidBasicPanel;
+ bSizerMidBasicPanel = new wxBoxSizer( wxHORIZONTAL );
+
+ wxBoxSizer* bSizernbunits;
+ bSizernbunits = new wxBoxSizer( wxVERTICAL );
+
+ m_staticTextNbUnits = new wxStaticText( m_PanelBasic, wxID_ANY, _("Number of Units:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextNbUnits->Wrap( -1 );
+ bSizernbunits->Add( m_staticTextNbUnits, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_SelNumberOfUnits = new wxSpinCtrl( m_PanelBasic, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 16, 1 );
+ bSizernbunits->Add( m_SelNumberOfUnits, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+
+ bSizerMidBasicPanel->Add( bSizernbunits, 1, wxEXPAND, 5 );
+
+ wxBoxSizer* bSizer17;
+ bSizer17 = new wxBoxSizer( wxVERTICAL );
+
+ m_staticTextskew = new wxStaticText( m_PanelBasic, wxID_ANY, _("Skew:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextskew->Wrap( -1 );
+ bSizer17->Add( m_staticTextskew, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_SetSkew = new wxSpinCtrl( m_PanelBasic, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 100, 0 );
+ bSizer17->Add( m_SetSkew, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ bSizerMidBasicPanel->Add( bSizer17, 1, wxEXPAND, 5 );
+
+ bSizerBasicPanel->Add( bSizerMidBasicPanel, 0, wxEXPAND, 5 );
+
+ m_staticline1 = new wxStaticLine( m_PanelBasic, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerBasicPanel->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
+
+ m_OptionPower = new wxCheckBox( m_PanelBasic, wxID_ANY, _("Power Symbol"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_OptionPower->SetToolTip( _("Check this option for power symbols.\nPower symbols have specific properties") );
+
+ bSizerBasicPanel->Add( m_OptionPower, 0, wxALL, 5 );
+
+ m_OptionPartsLocked = new wxCheckBox( m_PanelBasic, wxID_ANY, _("Parts are locked"), wxDefaultPosition, wxDefaultSize, 0 );
+
+ m_OptionPartsLocked->SetToolTip( _("Check this option if Eeschema cannot change parts selections inside a given package\nThis happens when parts are differents in this package.") );
+
+ bSizerBasicPanel->Add( m_OptionPartsLocked, 0, wxALL, 5 );
+
+ m_PanelBasic->SetSizer( bSizerBasicPanel );
+ m_PanelBasic->Layout();
+ bSizerBasicPanel->Fit( m_PanelBasic );
+ m_NoteBook->AddPage( m_PanelBasic, _("Options"), true );
+ m_PanelDoc = new wxPanel( m_NoteBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
+ wxBoxSizer* m_PanelDocBoxSizer;
+ m_PanelDocBoxSizer = new wxBoxSizer( wxVERTICAL );
+
+ m_staticTextDescription = new wxStaticText( m_PanelDoc, wxID_ANY, _("Description:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDescription->Wrap( -1 );
+ m_PanelDocBoxSizer->Add( m_staticTextDescription, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_Doc = new wxTextCtrl( m_PanelDoc, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ m_PanelDocBoxSizer->Add( m_Doc, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ m_staticTextKeywords = new wxStaticText( m_PanelDoc, wxID_ANY, _("Keywords:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextKeywords->Wrap( -1 );
+ m_PanelDocBoxSizer->Add( m_staticTextKeywords, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_Keywords = new wxTextCtrl( m_PanelDoc, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ m_PanelDocBoxSizer->Add( m_Keywords, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ m_staticTextDocFileName = new wxStaticText( m_PanelDoc, wxID_ANY, _("DocFileName:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDocFileName->Wrap( -1 );
+ m_PanelDocBoxSizer->Add( m_staticTextDocFileName, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_Docfile = new wxTextCtrl( m_PanelDoc, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 400,-1 ), 0 );
+ m_PanelDocBoxSizer->Add( m_Docfile, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ wxBoxSizer* bSizerPaneldocbutts;
+ bSizerPaneldocbutts = new wxBoxSizer( wxHORIZONTAL );
+
+ m_ButtonCopyDoc = new wxButton( m_PanelDoc, ID_COPY_DOC_TO_ALIAS, _("Copy Doc"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerPaneldocbutts->Add( m_ButtonCopyDoc, 0, wxALL, 5 );
+
+ m_buttonBrowseDocFiles = new wxButton( m_PanelDoc, ID_BROWSE_DOC_FILES, _("Browse DocFiles"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerPaneldocbutts->Add( m_buttonBrowseDocFiles, 0, wxALL, 5 );
+
+ m_PanelDocBoxSizer->Add( bSizerPaneldocbutts, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+
+ m_PanelDoc->SetSizer( m_PanelDocBoxSizer );
+ m_PanelDoc->Layout();
+ m_PanelDocBoxSizer->Fit( m_PanelDoc );
+ m_NoteBook->AddPage( m_PanelDoc, _("Description"), false );
+ m_PanelAlias = new wxPanel( m_NoteBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizerMainPanelAlias;
+ bSizerMainPanelAlias = new wxBoxSizer( wxHORIZONTAL );
+
+ wxBoxSizer* bLeftBoxSizerPanelAlias;
+ bLeftBoxSizerPanelAlias = new wxBoxSizer( wxVERTICAL );
+
+ m_staticTextAlias = new wxStaticText( m_PanelAlias, wxID_ANY, _("Alias List:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextAlias->Wrap( -1 );
+ bLeftBoxSizerPanelAlias->Add( m_staticTextAlias, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_PartAliasList = new wxListBox( m_PanelAlias, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bLeftBoxSizerPanelAlias->Add( m_PartAliasList, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ bSizerMainPanelAlias->Add( bLeftBoxSizerPanelAlias, 1, wxEXPAND, 5 );
+
+ wxBoxSizer* bRightBoxSizerPanelAlias;
+ bRightBoxSizerPanelAlias = new wxBoxSizer( wxVERTICAL );
+
+ m_ButtonAddeAlias = new wxButton( m_PanelAlias, ID_ADD_ALIAS, _("Add"), wxDefaultPosition, wxDefaultSize, 0 );
+ bRightBoxSizerPanelAlias->Add( m_ButtonAddeAlias, 0, wxALL, 5 );
+
+ m_ButtonDeleteOneAlias = new wxButton( m_PanelAlias, ID_DELETE_ONE_ALIAS, _("Delete"), wxDefaultPosition, wxDefaultSize, 0 );
+ bRightBoxSizerPanelAlias->Add( m_ButtonDeleteOneAlias, 0, wxALL, 5 );
+
+ m_ButtonDeleteAllAlias = new wxButton( m_PanelAlias, ID_DELETE_ALL_ALIAS, _("Delete All"), wxDefaultPosition, wxDefaultSize, 0 );
+ bRightBoxSizerPanelAlias->Add( m_ButtonDeleteAllAlias, 0, wxALL, 5 );
+
+ bSizerMainPanelAlias->Add( bRightBoxSizerPanelAlias, 0, wxALIGN_CENTER_VERTICAL, 5 );
+
+ m_PanelAlias->SetSizer( bSizerMainPanelAlias );
+ m_PanelAlias->Layout();
+ bSizerMainPanelAlias->Fit( m_PanelAlias );
+ m_NoteBook->AddPage( m_PanelAlias, _("Alias"), false );
+ m_PanelFootprintFilter = new wxPanel( m_NoteBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
+ wxBoxSizer* bPanelFpFilterBoxSizer;
+ bPanelFpFilterBoxSizer = new wxBoxSizer( wxHORIZONTAL );
+
+ wxBoxSizer* bFpFilterLeftBoxSizer;
+ bFpFilterLeftBoxSizer = new wxBoxSizer( wxVERTICAL );
+
+ m_staticTextFootprints = new wxStaticText( m_PanelFootprintFilter, wxID_ANY, _("Footprints"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextFootprints->Wrap( -1 );
+ bFpFilterLeftBoxSizer->Add( m_staticTextFootprints, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+
+ m_FootprintFilterListBox = new wxListBox( m_PanelFootprintFilter, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bFpFilterLeftBoxSizer->Add( m_FootprintFilterListBox, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ bPanelFpFilterBoxSizer->Add( bFpFilterLeftBoxSizer, 1, wxEXPAND, 5 );
+
+ wxBoxSizer* bFpFilterRightBoxSizer;
+ bFpFilterRightBoxSizer = new wxBoxSizer( wxVERTICAL );
+
+ m_buttonAddFpF = new wxButton( m_PanelFootprintFilter, ID_ADD_FOOTPRINT_FILTER, _("Add"), wxDefaultPosition, wxDefaultSize, 0 );
+ bFpFilterRightBoxSizer->Add( m_buttonAddFpF, 0, wxALL, 5 );
+
+ m_ButtonDeleteOneFootprintFilter = new wxButton( m_PanelFootprintFilter, ID_DELETE_ONE_FOOTPRINT_FILTER, _("Delete"), wxDefaultPosition, wxDefaultSize, 0 );
+ bFpFilterRightBoxSizer->Add( m_ButtonDeleteOneFootprintFilter, 0, wxALL, 5 );
+
+ m_ButtonDeleteAllFootprintFilter = new wxButton( m_PanelFootprintFilter, ID_DELETE_ALL_FOOTPRINT_FILTER, _("Delete All"), wxDefaultPosition, wxDefaultSize, 0 );
+ bFpFilterRightBoxSizer->Add( m_ButtonDeleteAllFootprintFilter, 0, wxALL, 5 );
+
+ bPanelFpFilterBoxSizer->Add( bFpFilterRightBoxSizer, 0, wxALIGN_CENTER_VERTICAL, 5 );
+
+ m_PanelFootprintFilter->SetSizer( bPanelFpFilterBoxSizer );
+ m_PanelFootprintFilter->Layout();
+ bPanelFpFilterBoxSizer->Fit( m_PanelFootprintFilter );
+ m_NoteBook->AddPage( m_PanelFootprintFilter, _("Footprint Filter"), false );
+
+ bMainSizer->Add( m_NoteBook, 1, wxEXPAND | wxALL, 5 );
+
+ m_sdbSizer2 = new wxStdDialogButtonSizer();
+ m_sdbSizer2OK = new wxButton( this, wxID_OK );
+ m_sdbSizer2->AddButton( m_sdbSizer2OK );
+ m_sdbSizer2Cancel = new wxButton( this, wxID_CANCEL );
+ m_sdbSizer2->AddButton( m_sdbSizer2Cancel );
+ m_sdbSizer2->Realize();
+ bMainSizer->Add( m_sdbSizer2, 0, wxEXPAND, 5 );
+
+ this->SetSizer( bMainSizer );
+ this->Layout();
+
+ // Connect Events
+ m_ButtonCopyDoc->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::CopyDocToAlias ), NULL, this );
+ m_buttonBrowseDocFiles->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::BrowseAndSelectDocFile ), NULL, this );
+ m_ButtonAddeAlias->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::AddAliasOfPart ), NULL, this );
+ m_ButtonDeleteOneAlias->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAliasOfPart ), NULL, this );
+ m_ButtonDeleteAllAlias->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAllAliasOfPart ), NULL, this );
+ m_buttonAddFpF->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::AddFootprintFilter ), NULL, this );
+ m_ButtonDeleteOneFootprintFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteOneFootprintFilter ), NULL, this );
+ m_ButtonDeleteAllFootprintFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAllFootprintFilter ), NULL, this );
+ m_sdbSizer2Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::OnCancelClick ), NULL, this );
+ m_sdbSizer2OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::OnOkClick ), NULL, this );
+}
+
+DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::~DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE()
+{
+ // Disconnect Events
+ m_ButtonCopyDoc->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::CopyDocToAlias ), NULL, this );
+ m_buttonBrowseDocFiles->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::BrowseAndSelectDocFile ), NULL, this );
+ m_ButtonAddeAlias->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::AddAliasOfPart ), NULL, this );
+ m_ButtonDeleteOneAlias->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAliasOfPart ), NULL, this );
+ m_ButtonDeleteAllAlias->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAllAliasOfPart ), NULL, this );
+ m_buttonAddFpF->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::AddFootprintFilter ), NULL, this );
+ m_ButtonDeleteOneFootprintFilter->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteOneFootprintFilter ), NULL, this );
+ m_ButtonDeleteAllFootprintFilter->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::DeleteAllFootprintFilter ), NULL, this );
+ m_sdbSizer2Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::OnCancelClick ), NULL, this );
+ m_sdbSizer2OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE::OnOkClick ), NULL, this );
+}
diff --git a/eeschema/dialog_edit_component_in_lib_base.fbp b/eeschema/dialog_edit_component_in_lib_base.fbp
new file mode 100644
index 0000000000..8aae1ef478
--- /dev/null
+++ b/eeschema/dialog_edit_component_in_lib_base.fbp
@@ -0,0 +1,2039 @@
+
+
+
+
+
diff --git a/eeschema/dialog_edit_component_in_lib_base.h b/eeschema/dialog_edit_component_in_lib_base.h
new file mode 100644
index 0000000000..91080a22ec
--- /dev/null
+++ b/eeschema/dialog_edit_component_in_lib_base.h
@@ -0,0 +1,112 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#ifndef __dialog_edit_component_in_lib_base__
+#define __dialog_edit_component_in_lib_base__
+
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+///////////////////////////////////////////////////////////////////////////
+
+#define ID_LIBEDIT_NOTEBOOK 1000
+#define ID_COPY_DOC_TO_ALIAS 1001
+#define ID_BROWSE_DOC_FILES 1002
+#define ID_ADD_ALIAS 1003
+#define ID_DELETE_ONE_ALIAS 1004
+#define ID_DELETE_ALL_ALIAS 1005
+#define ID_ADD_FOOTPRINT_FILTER 1006
+#define ID_DELETE_ONE_FOOTPRINT_FILTER 1007
+#define ID_DELETE_ALL_FOOTPRINT_FILTER 1008
+
+///////////////////////////////////////////////////////////////////////////////
+/// Class DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE
+///////////////////////////////////////////////////////////////////////////////
+class DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE : public wxDialog
+{
+ private:
+
+ protected:
+ wxNotebook* m_NoteBook;
+ wxPanel* m_PanelBasic;
+ wxCheckBox* m_AsConvertButt;
+ wxCheckBox* m_ShowPinNumButt;
+ wxCheckBox* m_ShowPinNameButt;
+ wxCheckBox* m_PinsNameInsideButt;
+ wxStaticLine* m_staticline3;
+ wxStaticText* m_staticTextNbUnits;
+ wxSpinCtrl* m_SelNumberOfUnits;
+ wxStaticText* m_staticTextskew;
+ wxSpinCtrl* m_SetSkew;
+ wxStaticLine* m_staticline1;
+ wxCheckBox* m_OptionPower;
+ wxCheckBox* m_OptionPartsLocked;
+ wxPanel* m_PanelDoc;
+ wxStaticText* m_staticTextDescription;
+ wxTextCtrl* m_Doc;
+ wxStaticText* m_staticTextKeywords;
+ wxTextCtrl* m_Keywords;
+ wxStaticText* m_staticTextDocFileName;
+ wxTextCtrl* m_Docfile;
+ wxButton* m_ButtonCopyDoc;
+ wxButton* m_buttonBrowseDocFiles;
+ wxPanel* m_PanelAlias;
+ wxStaticText* m_staticTextAlias;
+ wxListBox* m_PartAliasList;
+ wxButton* m_ButtonAddeAlias;
+ wxButton* m_ButtonDeleteOneAlias;
+ wxButton* m_ButtonDeleteAllAlias;
+ wxPanel* m_PanelFootprintFilter;
+ wxStaticText* m_staticTextFootprints;
+ wxListBox* m_FootprintFilterListBox;
+ wxButton* m_buttonAddFpF;
+ wxButton* m_ButtonDeleteOneFootprintFilter;
+ wxButton* m_ButtonDeleteAllFootprintFilter;
+ wxStdDialogButtonSizer* m_sdbSizer2;
+ wxButton* m_sdbSizer2OK;
+ wxButton* m_sdbSizer2Cancel;
+
+ // Virtual event handlers, overide them in your derived class
+ virtual void CopyDocToAlias( wxCommandEvent& event ){ event.Skip(); }
+ virtual void BrowseAndSelectDocFile( wxCommandEvent& event ){ event.Skip(); }
+ virtual void AddAliasOfPart( wxCommandEvent& event ){ event.Skip(); }
+ virtual void DeleteAliasOfPart( wxCommandEvent& event ){ event.Skip(); }
+ virtual void DeleteAllAliasOfPart( wxCommandEvent& event ){ event.Skip(); }
+ virtual void AddFootprintFilter( wxCommandEvent& event ){ event.Skip(); }
+ virtual void DeleteOneFootprintFilter( wxCommandEvent& event ){ event.Skip(); }
+ virtual void DeleteAllFootprintFilter( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnCancelClick( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnOkClick( wxCommandEvent& event ){ event.Skip(); }
+
+
+ public:
+ DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE( wxWindow* parent, wxWindowID id = ID_LIBEDIT_NOTEBOOK, const wxString& title = _("Lib Component Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 546,384 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+ ~DIALOG_EDIT_COMPONENT_IN_LIBRARY_BASE();
+
+};
+
+#endif //__dialog_edit_component_in_lib_base__
diff --git a/eeschema/dialog_edit_component_in_schematic.fbp b/eeschema/dialog_edit_component_in_schematic_fbp.fbp
similarity index 100%
rename from eeschema/dialog_edit_component_in_schematic.fbp
rename to eeschema/dialog_edit_component_in_schematic_fbp.fbp
diff --git a/eeschema/edit_component_in_lib.cpp b/eeschema/edit_component_in_lib.cpp
index add0be563f..d6059e6113 100644
--- a/eeschema/edit_component_in_lib.cpp
+++ b/eeschema/edit_component_in_lib.cpp
@@ -14,16 +14,6 @@
#include "protos.h"
-enum id_libedit {
- ID_PANEL_ALIAS,
- ID_COPY_DOC_TO_ALIAS,
- ID_BROWSE_DOC_FILES,
- ID_ADD_ALIAS,
- ID_DELETE_ONE_ALIAS,
- ID_DELETE_ALL_ALIAS,
- ID_ON_SELECT_FIELD
-};
-
extern int CurrentUnit;
@@ -34,18 +24,18 @@ extern int CurrentUnit;
* Doc and keys words
* Parts per package
* General properties
- * Fileds are NOT edited here. There is a specific dialog box to do that
+ * Fields are NOT edited here. There is a specific dialog box to do that
*/
-#include "dialog_edit_component_in_lib.cpp"
+#include "dialog_edit_component_in_lib.h"
/*****************************************************************/
void WinEDA_LibeditFrame::InstallLibeditFrame( void )
/*****************************************************************/
{
- WinEDA_PartPropertiesFrame* frame =
- new WinEDA_PartPropertiesFrame( this );
+ DIALOG_EDIT_COMPONENT_IN_LIBRARY* frame =
+ new DIALOG_EDIT_COMPONENT_IN_LIBRARY( this );
int IsModified = frame->ShowModal(); frame->Destroy();
@@ -54,179 +44,9 @@ void WinEDA_LibeditFrame::InstallLibeditFrame( void )
}
-/*****************************************************/
-void WinEDA_PartPropertiesFrame::InitBuffers()
-/*****************************************************/
-
-/* Init the buffers to a default value,
- * or to values from CurrentLibEntry if CurrentLibEntry != NULL
- */
-{
- m_AliasLocation = -1;
- if( CurrentLibEntry == NULL )
- {
- m_Title = _( "Lib Component Properties" );
- return;
- }
-
- wxString msg_text = _( "Properties for " );
- if( !CurrentAliasName.IsEmpty() )
- {
- m_AliasLocation = LocateAlias( CurrentLibEntry->m_AliasList, CurrentAliasName );
- m_Title = msg_text + CurrentAliasName +
- _( "(alias of " ) +
- wxString( CurrentLibEntry->m_Name.m_Text )
- + wxT( ")" );
- }
- else
- {
- m_Title = msg_text + CurrentLibEntry->m_Name.m_Text;
- CurrentAliasName.Empty();
- }
-}
-
/*****************************************************/
-void WinEDA_PartPropertiesFrame::BuildPanelAlias()
-/*****************************************************/
-
-/* create the panel for component alias list editing
- */
-{
- wxButton* Button;
-
- wxBoxSizer* PanelAliasBoxSizer = new wxBoxSizer( wxHORIZONTAL );
-
- m_PanelAlias->SetSizer( PanelAliasBoxSizer );
- wxBoxSizer* LeftBoxSizer = new wxBoxSizer( wxVERTICAL );
-
- PanelAliasBoxSizer->Add( LeftBoxSizer, 0, wxGROW | wxALL, 5 );
-
- wxStaticText* Msg = new wxStaticText( m_PanelAlias, -1, _( "Alias" ) );
-
- LeftBoxSizer->Add( Msg, 0, wxGROW | wxLEFT | wxRIGHT | wxTOP, 5 );
-
- m_PartAliasList = new wxListBox( m_PanelAlias,
- -1,
- wxDefaultPosition, wxSize( 200, 250 ),
- 0, NULL,
- wxLB_ALWAYS_SB | wxLB_SINGLE );
-
- LeftBoxSizer->Add( m_PartAliasList, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
-
- wxBoxSizer* RightBoxSizer = new wxBoxSizer( wxVERTICAL );
-
- PanelAliasBoxSizer->Add( RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 );
-
- Button = new wxButton( m_PanelAlias, ID_ADD_ALIAS, _( "Add" ) );
-
- RightBoxSizer->Add( Button, 0, wxGROW | wxALL, 5 );
-
- m_ButtonDeleteOneAlias = new wxButton( m_PanelAlias, ID_DELETE_ONE_ALIAS,
- _( "Delete" ) );
-
- RightBoxSizer->Add( m_ButtonDeleteOneAlias, 0, wxGROW | wxALL, 5 );
-
- m_ButtonDeleteAllAlias = new wxButton( m_PanelAlias, ID_DELETE_ALL_ALIAS,
- _( "Delete All" ) );
-
- if( !CurrentAliasName.IsEmpty() )
- m_ButtonDeleteAllAlias->Enable( FALSE );
- RightBoxSizer->Add( m_ButtonDeleteAllAlias, 0, wxGROW | wxALL, 5 );
-
-
- /* lecture des noms des alias */
- if( CurrentLibEntry )
- {
- for( unsigned ii = 0; ii < CurrentLibEntry->m_AliasList.GetCount(); ii += ALIAS_NEXT )
- m_PartAliasList->Append( CurrentLibEntry->m_AliasList[ii + ALIAS_NAME] );
- }
-
- if( (CurrentLibEntry == NULL) || (CurrentLibEntry->m_AliasList.GetCount() == 0) )
- {
- m_ButtonDeleteAllAlias->Enable( FALSE );
- m_ButtonDeleteOneAlias->Enable( FALSE );
- }
-}
-
-
-/*****************************************************************/
-void WinEDA_PartPropertiesFrame::BuildPanelFootprintFilter()
-/*****************************************************************/
-
-/* create the panel for footprint filtering in cvpcb list
- */
-{
- m_PanelFootprintFilter = new wxPanel( m_NoteBook,
- -1,
- wxDefaultPosition,
- wxDefaultSize,
- wxSUNKEN_BORDER | wxTAB_TRAVERSAL );
-
- m_NoteBook->AddPage( m_PanelFootprintFilter, _( "Footprint Filter" ) );
-
- wxBoxSizer* PanelFpFilterBoxSizer = new wxBoxSizer( wxHORIZONTAL );
-
- m_PanelFootprintFilter->SetSizer( PanelFpFilterBoxSizer );
- wxBoxSizer* LeftBoxSizer = new wxBoxSizer( wxVERTICAL );
-
- PanelFpFilterBoxSizer->Add( LeftBoxSizer, 0, wxGROW | wxALL, 5 );
-
- wxStaticText* Msg = new wxStaticText( m_PanelFootprintFilter, -1, _(
- "Footprints" ) );
-
- LeftBoxSizer->Add( Msg, 0, wxGROW | wxLEFT | wxRIGHT | wxTOP, 5 );
-
- m_FootprintFilterListBox = new wxListBox( m_PanelFootprintFilter,
- -1,
- wxDefaultPosition, wxSize( 200, 250 ),
- 0, NULL,
- wxLB_ALWAYS_SB | wxLB_SINGLE );
-
- LeftBoxSizer->Add( m_FootprintFilterListBox, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
-
- wxBoxSizer* RightBoxSizer = new wxBoxSizer( wxVERTICAL );
-
- PanelFpFilterBoxSizer->Add( RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 );
-
- wxButton* Button = new wxButton( m_PanelFootprintFilter,
- ID_ADD_FOOTPRINT_FILTER, _(
- "Add" ) );
-
- RightBoxSizer->Add( Button, 0, wxGROW | wxALL, 5 );
-
- m_ButtonDeleteOneFootprintFilter = new wxButton( m_PanelFootprintFilter,
- ID_DELETE_ONE_FOOTPRINT_FILTER,
- _(
- "Delete" ) );
-
- RightBoxSizer->Add( m_ButtonDeleteOneFootprintFilter, 0, wxGROW | wxALL, 5 );
-
- m_ButtonDeleteAllFootprintFilter = new wxButton( m_PanelFootprintFilter,
- ID_DELETE_ALL_FOOTPRINT_FILTER,
- _(
- "Delete All" ) );
-
- RightBoxSizer->Add( m_ButtonDeleteAllFootprintFilter, 0, wxGROW | wxALL, 5 );
-
-
- /* Read the Footprint Filter list */
- if( CurrentLibEntry )
- {
- for( unsigned ii = 0; ii < CurrentLibEntry->m_FootprintList.GetCount(); ii++ )
- m_FootprintFilterListBox->Append( CurrentLibEntry->m_FootprintList[ii] );
- }
-
- if( (CurrentLibEntry == NULL) || (CurrentLibEntry->m_FootprintList.GetCount() == 0) )
- {
- m_ButtonDeleteAllFootprintFilter->Enable( FALSE );
- m_ButtonDeleteOneFootprintFilter->Enable( FALSE );
- }
-}
-
-
-/*****************************************************/
-void WinEDA_PartPropertiesFrame::BuildPanelDoc()
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::InitPanelDoc()
/*****************************************************/
/* create the panel for component doc editing
@@ -269,41 +89,30 @@ void WinEDA_PartPropertiesFrame::BuildPanelDoc()
/*****************************************************/
-void WinEDA_PartPropertiesFrame::BuildPanelBasic()
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::InitBasicPanel()
/*****************************************************/
/* create the basic panel for component properties editing
*/
{
- AsConvertButt = new wxCheckBox( m_PanelBasic, -1, _( "As Convert" ) );
-
if( g_AsDeMorgan )
- AsConvertButt->SetValue( TRUE );
- m_OptionsBoxSizer->Add( AsConvertButt, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
-
- ShowPinNumButt = new wxCheckBox( m_PanelBasic, -1, _( "Show Pin Num" ) );
-
+ m_AsConvertButt->SetValue( TRUE );
if( CurrentLibEntry )
{
if( CurrentLibEntry->m_DrawPinNum )
- ShowPinNumButt->SetValue( TRUE );
+ m_ShowPinNumButt->SetValue( TRUE );
}
else
- ShowPinNumButt->SetValue( TRUE );
- m_OptionsBoxSizer->Add( ShowPinNumButt, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
-
- ShowPinNameButt = new wxCheckBox( m_PanelBasic, -1, _( "Show Pin Name" ) );
+ m_ShowPinNumButt->SetValue( TRUE );
if( CurrentLibEntry )
{
if( CurrentLibEntry->m_DrawPinName )
- ShowPinNameButt->SetValue( TRUE );
+ m_ShowPinNameButt->SetValue( TRUE );
}
else
- ShowPinNameButt->SetValue( TRUE );
- m_OptionsBoxSizer->Add( ShowPinNameButt, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
+ m_ShowPinNameButt->SetValue( TRUE );
- m_PinsNameInsideButt = new wxCheckBox( m_PanelBasic, -1, _( "Pin Name Inside" ) );
if( CurrentLibEntry )
{
@@ -312,14 +121,13 @@ void WinEDA_PartPropertiesFrame::BuildPanelBasic()
}
else
m_PinsNameInsideButt->SetValue( TRUE );
- m_OptionsBoxSizer->Add( m_PinsNameInsideButt, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
int number, number_of_units;
if( CurrentLibEntry )
number_of_units = CurrentLibEntry->m_UnitCount;
else
number_of_units = 1;
- SelNumberOfUnits->SetValue( number_of_units );
+ m_SelNumberOfUnits->SetValue( number_of_units );
if( CurrentLibEntry && CurrentLibEntry->m_TextInside )
number = CurrentLibEntry->m_TextInside;
@@ -342,7 +150,7 @@ void WinEDA_PartPropertiesFrame::BuildPanelBasic()
/**************************************************************************/
-void WinEDA_PartPropertiesFrame::PartPropertiesAccept( wxCommandEvent& event )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::OnOkClick( wxCommandEvent& event )
/**************************************************************************/
/* Updaye the current component parameters
@@ -411,11 +219,11 @@ void WinEDA_PartPropertiesFrame::PartPropertiesAccept( wxCommandEvent& event )
}
}
- ii = SelNumberOfUnits->GetValue();
+ ii = m_SelNumberOfUnits->GetValue();
if( ChangeNbUnitsPerPackage( ii ) )
m_RecreateToolbar = TRUE;
- if( AsConvertButt->GetValue() )
+ if( m_AsConvertButt->GetValue() )
{
if( !g_AsDeMorgan )
{
@@ -434,8 +242,8 @@ void WinEDA_PartPropertiesFrame::PartPropertiesAccept( wxCommandEvent& event )
}
}
- CurrentLibEntry->m_DrawPinNum = ShowPinNumButt->GetValue() ? 1 : 0;
- CurrentLibEntry->m_DrawPinName = ShowPinNameButt->GetValue() ? 1 : 0;
+ CurrentLibEntry->m_DrawPinNum = m_ShowPinNumButt->GetValue() ? 1 : 0;
+ CurrentLibEntry->m_DrawPinName = m_ShowPinNameButt->GetValue() ? 1 : 0;
if( m_PinsNameInsideButt->GetValue() == FALSE )
CurrentLibEntry->m_TextInside = 0;
@@ -469,7 +277,7 @@ void WinEDA_PartPropertiesFrame::PartPropertiesAccept( wxCommandEvent& event )
/*******************************************************************************/
-void WinEDA_PartPropertiesFrame::CopyDocToAlias( wxCommandEvent& WXUNUSED (event) )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::CopyDocToAlias( wxCommandEvent& WXUNUSED (event) )
/******************************************************************************/
{
if( CurrentLibEntry == NULL )
@@ -484,7 +292,7 @@ void WinEDA_PartPropertiesFrame::CopyDocToAlias( wxCommandEvent& WXUNUSED (event
/**********************************************************/
-void WinEDA_PartPropertiesFrame::DeleteAllAliasOfPart(
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::DeleteAllAliasOfPart(
wxCommandEvent& WXUNUSED (event) )
/**********************************************************/
{
@@ -503,7 +311,7 @@ void WinEDA_PartPropertiesFrame::DeleteAllAliasOfPart(
/*******************************************************************************/
-void WinEDA_PartPropertiesFrame::AddAliasOfPart( wxCommandEvent& WXUNUSED (event) )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::AddAliasOfPart( wxCommandEvent& WXUNUSED (event) )
/*******************************************************************************/
/* Add a new name to the alias list box
@@ -548,7 +356,7 @@ void WinEDA_PartPropertiesFrame::AddAliasOfPart( wxCommandEvent& WXUNUSED (event
/********************************************************/
-void WinEDA_PartPropertiesFrame::DeleteAliasOfPart(
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::DeleteAliasOfPart(
wxCommandEvent& WXUNUSED (event) )
/********************************************************/
{
@@ -576,7 +384,7 @@ void WinEDA_PartPropertiesFrame::DeleteAliasOfPart(
/********************************************************************/
-bool WinEDA_PartPropertiesFrame::ChangeNbUnitsPerPackage( int MaxUnit )
+bool DIALOG_EDIT_COMPONENT_IN_LIBRARY::ChangeNbUnitsPerPackage( int MaxUnit )
/********************************************************************/
/* Routine de modification du nombre d'unites par package pour le
@@ -657,7 +465,7 @@ bool WinEDA_PartPropertiesFrame::ChangeNbUnitsPerPackage( int MaxUnit )
/*****************************************************/
-bool WinEDA_PartPropertiesFrame::SetUnsetConvert()
+bool DIALOG_EDIT_COMPONENT_IN_LIBRARY::SetUnsetConvert()
/*****************************************************/
/* cr�e ou efface (selon option AsConvert) les �l�ments
@@ -735,7 +543,7 @@ bool WinEDA_PartPropertiesFrame::SetUnsetConvert()
/****************************************************************************/
-void WinEDA_PartPropertiesFrame::BrowseAndSelectDocFile( wxCommandEvent& event )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile( wxCommandEvent& event )
/****************************************************************************/
{
wxString FullFileName, mask;
@@ -771,7 +579,7 @@ void WinEDA_PartPropertiesFrame::BrowseAndSelectDocFile( wxCommandEvent& event )
/**********************************************************/
-void WinEDA_PartPropertiesFrame::DeleteAllFootprintFilter(
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::DeleteAllFootprintFilter(
wxCommandEvent& WXUNUSED (event) )
/**********************************************************/
{
@@ -785,7 +593,7 @@ void WinEDA_PartPropertiesFrame::DeleteAllFootprintFilter(
/*******************************************************************************/
-void WinEDA_PartPropertiesFrame::AddFootprintFilter( wxCommandEvent& WXUNUSED (event) )
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::AddFootprintFilter( wxCommandEvent& WXUNUSED (event) )
/*******************************************************************************/
/* Add a new name to the alias list box
@@ -820,7 +628,7 @@ void WinEDA_PartPropertiesFrame::AddFootprintFilter( wxCommandEvent& WXUNUSED (e
/********************************************************/
-void WinEDA_PartPropertiesFrame::DeleteOneFootprintFilter(
+void DIALOG_EDIT_COMPONENT_IN_LIBRARY::DeleteOneFootprintFilter(
wxCommandEvent& WXUNUSED (event) )
/********************************************************/
{
diff --git a/pcbnew/class_board.cpp b/pcbnew/class_board.cpp
index 1586813a45..10d9468ae0 100644
--- a/pcbnew/class_board.cpp
+++ b/pcbnew/class_board.cpp
@@ -893,7 +893,7 @@ MODULE* BOARD::FindModuleByReference( const wxString& aReference ) const
// Sort nets by decreasing pad count
static bool s_SortByNodes( const NETINFO_ITEM* a, const NETINFO_ITEM* b )
{
- return a->GetNodesCount() < b->GetNodesCount();
+ return b->GetNodesCount() < a->GetNodesCount();
}
diff --git a/pcbnew/dialog_copper_zones_base.cpp b/pcbnew/dialog_copper_zones_base.cpp
index 6bb0b7f8f9..4fd04a1579 100644
--- a/pcbnew/dialog_copper_zones_base.cpp
+++ b/pcbnew/dialog_copper_zones_base.cpp
@@ -40,7 +40,7 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
wxString m_FillModeCtrlChoices[] = { _("Use polygons"), _("Use segments") };
int m_FillModeCtrlNChoices = sizeof( m_FillModeCtrlChoices ) / sizeof( wxString );
m_FillModeCtrl = new wxRadioBox( this, ID_RADIOBOX_FILL_MODE_SELECTION, _("Filling Mode:"), wxDefaultPosition, wxDefaultSize, m_FillModeCtrlNChoices, m_FillModeCtrlChoices, 1, wxRA_SPECIFY_COLS );
- m_FillModeCtrl->SetSelection( 1 );
+ m_FillModeCtrl->SetSelection( 0 );
m_FillModeCtrl->SetToolTip( _("Filled areas can use solid polygons or segments.\nDepending on the complexity and the size of the zone,\nsometimes polygons are better and sometimes segments are better.") );
m_FillOptionsBox->Add( m_FillModeCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
@@ -48,7 +48,7 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
wxString m_ArcApproximationOptChoices[] = { _("16 segments / 360 deg"), _("32 segments / 360 deg") };
int m_ArcApproximationOptNChoices = sizeof( m_ArcApproximationOptChoices ) / sizeof( wxString );
m_ArcApproximationOpt = new wxRadioBox( this, wxID_ARC_APPROX, _("Arcs Approximation:"), wxDefaultPosition, wxDefaultSize, m_ArcApproximationOptNChoices, m_ArcApproximationOptChoices, 1, wxRA_SPECIFY_COLS );
- m_ArcApproximationOpt->SetSelection( 1 );
+ m_ArcApproximationOpt->SetSelection( 0 );
m_ArcApproximationOpt->SetToolTip( _("Number of segments to approximate a circle in filling calculations.\n16 segment is faster to calculate and when redraw screen.\n32 segment give a better quality") );
m_FillOptionsBox->Add( m_ArcApproximationOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
@@ -56,7 +56,7 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
wxString m_PadInZoneOptChoices[] = { _("Include pads"), _("Thermal relief"), _("Exclude pads") };
int m_PadInZoneOptNChoices = sizeof( m_PadInZoneOptChoices ) / sizeof( wxString );
m_PadInZoneOpt = new wxRadioBox( this, wxID_PADS_IN_ZONE_OPTIONS, _("Pad in Zone:"), wxDefaultPosition, wxDefaultSize, m_PadInZoneOptNChoices, m_PadInZoneOptChoices, 1, wxRA_SPECIFY_COLS );
- m_PadInZoneOpt->SetSelection( 0 );
+ m_PadInZoneOpt->SetSelection( 1 );
m_FillOptionsBox->Add( m_PadInZoneOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
wxStaticBoxSizer* m_ThermalShapesParamsSizer;
@@ -69,25 +69,25 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
m_AntipadSizeValue = new wxTextCtrl( this, wxID_ANTIPAD_SIZE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_AntipadSizeValue->SetToolTip( _("Define the gap around the pad") );
- m_ThermalShapesParamsSizer->Add( m_AntipadSizeValue, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_ThermalShapesParamsSizer->Add( m_AntipadSizeValue, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
m_CopperBridgeWidthText = new wxStaticText( this, wxID_ANY, _("Copper Width"), wxDefaultPosition, wxDefaultSize, 0 );
m_CopperBridgeWidthText->Wrap( -1 );
- m_ThermalShapesParamsSizer->Add( m_CopperBridgeWidthText, 0, wxRIGHT|wxLEFT, 5 );
+ m_ThermalShapesParamsSizer->Add( m_CopperBridgeWidthText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_CopperWidthValue = new wxTextCtrl( this, wxID_COPPER_BRIDGE_VALUE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_CopperWidthValue->SetToolTip( _("Define the tickness of copper in thermal reliefs") );
- m_ThermalShapesParamsSizer->Add( m_CopperWidthValue, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_ThermalShapesParamsSizer->Add( m_CopperWidthValue, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
m_FillOptionsBox->Add( m_ThermalShapesParamsSizer, 0, wxEXPAND, 5 );
m_LeftBoxSizer->Add( m_FillOptionsBox, 1, wxEXPAND, 5 );
- m_ExportableSetupSizer->Add( m_LeftBoxSizer, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
+ m_ExportableSetupSizer->Add( m_LeftBoxSizer, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
- m_ExportableSetupSizer->Add( 5, 5, 0, wxEXPAND, 5 );
+ m_ExportableSetupSizer->Add( 20, 20, 0, wxEXPAND, 5 );
wxBoxSizer* m_MiddleBox;
m_MiddleBox = new wxBoxSizer( wxVERTICAL );
@@ -135,14 +135,14 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
m_MiddleBoxSizer->Add( m_OutilinesBoxOpt, 1, wxEXPAND, 5 );
- m_MiddleBox->Add( m_MiddleBoxSizer, 0, 0, 5 );
+ m_MiddleBox->Add( m_MiddleBoxSizer, 0, wxEXPAND, 5 );
m_ExportableSetupSizer->Add( m_MiddleBox, 1, wxEXPAND, 5 );
m_OptionsBoxSizer->Add( m_ExportableSetupSizer, 1, wxEXPAND, 5 );
- m_OptionsBoxSizer->Add( 0, 0, 0, wxEXPAND, 5 );
+ m_OptionsBoxSizer->Add( 20, 20, 0, wxEXPAND, 5 );
wxBoxSizer* m_RightBoxSizer;
m_RightBoxSizer = new wxBoxSizer( wxVERTICAL );
@@ -160,7 +160,7 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
m_RightBoxSizer->Add( m_ButtonCancel, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxEXPAND, 5 );
- m_RightBoxSizer->Add( 5, 20, 0, wxEXPAND, 5 );
+ m_RightBoxSizer->Add( 20, 20, 0, wxEXPAND, 5 );
wxStaticBoxSizer* m_NetSortOptSizer;
m_NetSortOptSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Nets Display Options:") ), wxVERTICAL );
@@ -184,28 +184,40 @@ dialog_copper_zone_base::dialog_copper_zone_base( wxWindow* parent, wxWindowID i
m_RightBoxSizer->Add( m_NetSortOptSizer, 1, wxEXPAND, 5 );
- m_OptionsBoxSizer->Add( m_RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_OptionsBoxSizer->Add( m_RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_MainBoxSize->Add( m_OptionsBoxSizer, 0, 0, 5 );
+ m_MainBoxSize->Add( m_OptionsBoxSizer, 0, wxEXPAND, 5 );
wxBoxSizer* m_NetAndLayersLiastBoxSizer;
- m_NetAndLayersLiastBoxSizer = new wxBoxSizer( wxVERTICAL );
+ m_NetAndLayersLiastBoxSizer = new wxBoxSizer( wxHORIZONTAL );
+
+ wxBoxSizer* bSizerNets;
+ bSizerNets = new wxBoxSizer( wxVERTICAL );
m_staticText2 = new wxStaticText( this, wxID_ANY, _("Net:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText2->Wrap( -1 );
- m_NetAndLayersLiastBoxSizer->Add( m_staticText2, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizerNets->Add( m_staticText2, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_ListNetNameSelection = new wxListBox( this, ID_NETNAME_SELECTION, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- m_NetAndLayersLiastBoxSizer->Add( m_ListNetNameSelection, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ m_ListNetNameSelection->SetMinSize( wxSize( -1,150 ) );
+
+ bSizerNets->Add( m_ListNetNameSelection, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+
+ m_NetAndLayersLiastBoxSizer->Add( bSizerNets, 1, wxEXPAND, 5 );
+
+ wxBoxSizer* bSizerLayers;
+ bSizerLayers = new wxBoxSizer( wxVERTICAL );
m_staticText3 = new wxStaticText( this, wxID_ANY, _("Layer:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText3->Wrap( -1 );
- m_NetAndLayersLiastBoxSizer->Add( m_staticText3, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizerLayers->Add( m_staticText3, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_LayerSelectionCtrl = new wxListBox( this, ID_LAYER_CHOICE, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- m_NetAndLayersLiastBoxSizer->Add( m_LayerSelectionCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizerLayers->Add( m_LayerSelectionCtrl, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_MainBoxSize->Add( m_NetAndLayersLiastBoxSizer, 0, wxEXPAND, 5 );
+ m_NetAndLayersLiastBoxSizer->Add( bSizerLayers, 1, wxEXPAND, 5 );
+
+ m_MainBoxSize->Add( m_NetAndLayersLiastBoxSizer, 1, wxEXPAND, 5 );
this->SetSizer( m_MainBoxSize );
this->Layout();
diff --git a/pcbnew/dialog_copper_zones_base.fbp b/pcbnew/dialog_copper_zones_base.fbp
index 9d2de55420..c533a4b4ca 100644
--- a/pcbnew/dialog_copper_zones_base.fbp
+++ b/pcbnew/dialog_copper_zones_base.fbp
@@ -77,7 +77,7 @@
none
5
-
+ wxEXPAND
0
@@ -99,7 +99,7 @@
5
wxEXPAND|wxALIGN_CENTER_VERTICAL
- 0
+ 1
m_LeftBoxSizer
@@ -137,7 +137,7 @@
m_FillModeCtrl
protected
- 1
+ 0
wxRA_SPECIFY_COLS
@@ -191,7 +191,7 @@
m_ArcApproximationOpt
protected
- 1
+ 0
wxRA_SPECIFY_COLS
@@ -245,7 +245,7 @@
m_PadInZoneOpt
protected
- 0
+ 1
wxRA_SPECIFY_COLS
@@ -344,7 +344,7 @@
5
- wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND
+ wxEXPAND|wxRIGHT|wxLEFT
0
@@ -399,7 +399,7 @@
5
- wxRIGHT|wxLEFT
+ wxTOP|wxRIGHT|wxLEFT
0
@@ -450,7 +450,7 @@
5
- wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND
+ wxEXPAND|wxRIGHT|wxLEFT
0
@@ -514,9 +514,9 @@
wxEXPAND
0
- 5
+ 20
protected
- 5
+ 20
@@ -530,7 +530,7 @@
none
5
-
+ wxEXPAND
0
@@ -896,14 +896,14 @@
wxEXPAND
0
- 0
+ 20
protected
- 0
+ 20
5
- wxALIGN_CENTER_VERTICAL
+ wxALIGN_CENTER_VERTICAL|wxEXPAND
0
@@ -1073,7 +1073,7 @@
20
protected
- 5
+ 20
@@ -1257,216 +1257,238 @@
5
wxEXPAND
- 0
+ 1
m_NetAndLayersLiastBoxSizer
- wxVERTICAL
+ wxHORIZONTAL
none
5
- wxTOP|wxRIGHT|wxLEFT
- 0
-
-
-
- 1
-
-
- 0
- wxID_ANY
- Net:
-
+ wxEXPAND
+ 1
+
- m_staticText2
- protected
-
-
-
-
-
-
-
-
- -1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ bSizerNets
+ wxVERTICAL
+ none
+
+ 5
+ wxTOP|wxRIGHT|wxLEFT
+ 0
+
+
+
+ 1
+
+
+ 0
+ wxID_ANY
+ Net:
+
+
+ m_staticText2
+ protected
+
+
+
+
+
+
+
+
+ -1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT
+ 1
+
+
+
+
+ 1
+
+
+ 0
+ ID_NETNAME_SELECTION
+
+ -1,150
+ m_ListNetNameSelection
+ protected
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
5
- wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT
- 0
-
-
-
-
- 1
-
-
- 0
- ID_NETNAME_SELECTION
-
+ wxEXPAND
+ 1
+
- m_ListNetNameSelection
- protected
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
- wxTOP|wxRIGHT|wxLEFT
- 0
-
-
-
- 1
-
-
- 0
- wxID_ANY
- Layer:
-
-
- m_staticText3
- protected
-
-
-
-
-
-
-
-
- -1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
- wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT
- 0
-
-
-
-
- 1
-
-
- 0
- ID_LAYER_CHOICE
-
-
- m_LayerSelectionCtrl
- protected
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ bSizerLayers
+ wxVERTICAL
+ none
+
+ 5
+ wxTOP|wxRIGHT|wxLEFT
+ 0
+
+
+
+ 1
+
+
+ 0
+ wxID_ANY
+ Layer:
+
+
+ m_staticText3
+ protected
+
+
+
+
+
+
+
+
+ -1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT
+ 1
+
+
+
+
+ 1
+
+
+ 0
+ ID_LAYER_CHOICE
+
+
+ m_LayerSelectionCtrl
+ protected
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+