diff --git a/bitmaps_png/CMakeLists.txt b/bitmaps_png/CMakeLists.txt
index f6cf7fa183..9c5bac3e49 100644
--- a/bitmaps_png/CMakeLists.txt
+++ b/bitmaps_png/CMakeLists.txt
@@ -289,6 +289,7 @@ set( BMAPS_MID
load_module_lib
local_ratsnest
locked
+ macros_record
mirepcb
mirror_h
mirror_v
diff --git a/bitmaps_png/cpp_26/macros_record.cpp b/bitmaps_png/cpp_26/macros_record.cpp
new file mode 100644
index 0000000000..bea33d959a
--- /dev/null
+++ b/bitmaps_png/cpp_26/macros_record.cpp
@@ -0,0 +1,74 @@
+
+/* Do not modify this file, it was automatically generated by the
+ * PNG2cpp CMake script, using a *.png file as input.
+ */
+
+#include "bitmaps.h"
+
+static const unsigned char png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
+ 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
+ 0xce, 0x00, 0x00, 0x03, 0x90, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0x96, 0xcb, 0x8b, 0x1d,
+ 0x55, 0x10, 0xc6, 0x7f, 0x75, 0xce, 0xe9, 0xfb, 0xe8, 0x79, 0x65, 0x9e, 0x92, 0x31, 0x28, 0x46,
+ 0x27, 0x51, 0x51, 0x0c, 0xf1, 0x01, 0x21, 0x9a, 0xe8, 0x42, 0x31, 0xf9, 0x07, 0x34, 0x06, 0x22,
+ 0xba, 0x8a, 0xb8, 0x70, 0xe9, 0xda, 0x95, 0x10, 0xb2, 0x13, 0x71, 0x29, 0xba, 0x70, 0x21, 0x6e,
+ 0xdc, 0x29, 0xba, 0x31, 0x20, 0xf1, 0x31, 0xa0, 0x62, 0x40, 0x12, 0xc7, 0x99, 0x38, 0x01, 0x13,
+ 0x47, 0x31, 0xf3, 0xc8, 0xdc, 0xb9, 0x77, 0xba, 0x4f, 0x95, 0x8b, 0xee, 0xfb, 0x9a, 0xeb, 0x52,
+ 0x66, 0x95, 0xde, 0xf4, 0x57, 0xb7, 0xbb, 0xcf, 0x57, 0x5f, 0x55, 0x9d, 0xef, 0x5c, 0x31, 0x33,
+ 0x76, 0xe3, 0x72, 0xec, 0xd2, 0xb5, 0x6b, 0x44, 0xa1, 0x37, 0x10, 0x91, 0x39, 0x60, 0xf2, 0x7f,
+ 0x5a, 0x7b, 0xc5, 0xcc, 0x16, 0x07, 0x88, 0xc6, 0xc6, 0xc6, 0xce, 0x3c, 0x75, 0xfc, 0xd8, 0xbb,
+ 0x23, 0xa3, 0x23, 0x75, 0x11, 0x41, 0x04, 0x8a, 0xbb, 0x80, 0x19, 0xed, 0x56, 0x9a, 0x19, 0x6a,
+ 0x86, 0xa9, 0x62, 0x06, 0x66, 0x4a, 0xd4, 0x22, 0x56, 0x33, 0x34, 0x46, 0xd4, 0x8c, 0xf5, 0xb5,
+ 0xf5, 0xad, 0x10, 0xc2, 0x2b, 0x79, 0x9e, 0x7f, 0xd2, 0x47, 0x34, 0x3d, 0x33, 0xfd, 0xe6, 0xd4,
+ 0xcc, 0xf4, 0x70, 0x96, 0xe5, 0x48, 0x21, 0xaf, 0xad, 0x13, 0xb5, 0x88, 0xaa, 0x12, 0xa3, 0x12,
+ 0x63, 0x24, 0x6a, 0x24, 0x46, 0x45, 0x63, 0x2c, 0x63, 0x25, 0xe6, 0x91, 0x5c, 0x15, 0xcb, 0x23,
+ 0x79, 0x9e, 0x93, 0x54, 0x2a, 0xc3, 0x93, 0x93, 0x93, 0x6f, 0x01, 0xfd, 0x44, 0xa6, 0x96, 0xff,
+ 0xae, 0x0f, 0x23, 0xe9, 0x68, 0xa1, 0xa2, 0x43, 0x53, 0xa8, 0x80, 0xb6, 0x24, 0x30, 0x0c, 0xcc,
+ 0xca, 0x5c, 0xac, 0xf3, 0x28, 0x94, 0x61, 0x82, 0x91, 0x47, 0xc3, 0x6d, 0x7c, 0x5a, 0xfb, 0xcf,
+ 0x1e, 0x85, 0xe0, 0xa8, 0x8f, 0x4f, 0x23, 0x02, 0x4e, 0x40, 0x30, 0x90, 0x82, 0x4c, 0x80, 0x2c,
+ 0x8f, 0x45, 0x49, 0x3b, 0x3d, 0xb5, 0x0e, 0xf6, 0x4e, 0x78, 0xf4, 0xfe, 0x59, 0x82, 0x77, 0x6c,
+ 0x6c, 0x36, 0xb9, 0x76, 0x63, 0x95, 0x95, 0x4b, 0xce, 0x0d, 0x12, 0x8d, 0xee, 0x1f, 0x89, 0xe6,
+ 0x08, 0xce, 0x48, 0x7c, 0xd9, 0x1f, 0xa4, 0x93, 0xb5, 0x00, 0x52, 0xaa, 0x91, 0x32, 0xee, 0x26,
+ 0x61, 0x88, 0x08, 0xff, 0xac, 0x6d, 0xe0, 0x9d, 0x63, 0xfd, 0xd6, 0x16, 0x6a, 0x11, 0x9f, 0xce,
+ 0x0c, 0x2a, 0xaa, 0xdf, 0xf5, 0xe4, 0xde, 0xc9, 0x99, 0x59, 0x1a, 0x5b, 0x0d, 0x5a, 0x22, 0x85,
+ 0x9a, 0x9e, 0xf2, 0xb5, 0xe3, 0x7e, 0x45, 0x5d, 0x0c, 0xc6, 0xd2, 0xb5, 0x15, 0xbc, 0x77, 0x78,
+ 0x27, 0xd4, 0x2a, 0x9e, 0xf1, 0x7d, 0x0f, 0xed, 0x19, 0x20, 0x0a, 0x4e, 0x2d, 0x09, 0x86, 0x43,
+ 0x19, 0x4e, 0x2b, 0x25, 0xc1, 0xce, 0xcc, 0x0b, 0x59, 0x1d, 0xbc, 0xa3, 0x7c, 0x52, 0x96, 0x3b,
+ 0x78, 0x21, 0x04, 0x08, 0xae, 0x6b, 0x3b, 0xa1, 0x37, 0xeb, 0xc4, 0x81, 0x77, 0x10, 0x9c, 0x0e,
+ 0x2c, 0xd6, 0x51, 0xd6, 0x5b, 0xca, 0x1d, 0x71, 0x3b, 0xa1, 0xd1, 0x34, 0x60, 0x3d, 0xdf, 0xf5,
+ 0x13, 0x49, 0x41, 0xe0, 0x50, 0xb6, 0x9b, 0x59, 0x7f, 0xe6, 0xd2, 0x4d, 0x06, 0x29, 0xec, 0xc4,
+ 0x49, 0xd1, 0x17, 0xe7, 0xba, 0x84, 0x6d, 0x9c, 0xf8, 0xa2, 0xf4, 0xbe, 0x3b, 0x0b, 0x3d, 0xe3,
+ 0x2d, 0x6c, 0x27, 0xde, 0xea, 0x92, 0x6d, 0x90, 0x2d, 0x7d, 0x81, 0x19, 0x9c, 0x3f, 0x7f, 0x8e,
+ 0xf5, 0xb5, 0x0d, 0xea, 0xf5, 0x1a, 0xcd, 0xd6, 0x16, 0xcf, 0x3d, 0x7b, 0x82, 0x56, 0xb3, 0x45,
+ 0xa5, 0x36, 0xc4, 0x0b, 0x6f, 0x9c, 0xe3, 0xe9, 0xc7, 0xee, 0xe1, 0x99, 0xc7, 0x0f, 0x72, 0xe5,
+ 0xca, 0x65, 0x0e, 0xcc, 0x1d, 0xe4, 0xf2, 0xf2, 0x75, 0x3e, 0xfe, 0xec, 0x07, 0xaa, 0xc1, 0x50,
+ 0x35, 0xc4, 0x87, 0xed, 0x01, 0xaf, 0xab, 0x0d, 0x8d, 0x5f, 0x0d, 0x4e, 0xc9, 0xb6, 0x9b, 0x5c,
+ 0xfc, 0xfa, 0x1b, 0x0e, 0x1f, 0x3e, 0xc4, 0xec, 0xde, 0x3b, 0xf9, 0xf6, 0xbb, 0x8b, 0xcc, 0xcf,
+ 0x7f, 0xcf, 0x7d, 0xf7, 0x1e, 0xe0, 0xc4, 0xc9, 0xe7, 0x49, 0xd3, 0x3a, 0xdb, 0xcd, 0x4d, 0x88,
+ 0x4d, 0xe6, 0xee, 0x9e, 0x66, 0xf5, 0xe6, 0x2a, 0x17, 0x2e, 0x7c, 0xc5, 0xc2, 0xc2, 0xaf, 0xdc,
+ 0x31, 0x31, 0x4a, 0xc5, 0x1b, 0xc1, 0x29, 0x89, 0x28, 0x43, 0x63, 0x13, 0x57, 0x07, 0x14, 0x79,
+ 0xef, 0x48, 0x9c, 0xe2, 0xc5, 0x68, 0x34, 0x1a, 0x7c, 0xf0, 0xfe, 0x87, 0x9c, 0x3a, 0xf5, 0x22,
+ 0xa7, 0x4f, 0x9f, 0x21, 0x09, 0x9e, 0xdf, 0x16, 0x17, 0xb8, 0xfe, 0xc7, 0x75, 0x8e, 0x1c, 0x3d,
+ 0x42, 0xa6, 0x42, 0xbd, 0x9a, 0xb0, 0xb8, 0xfc, 0x27, 0x27, 0x8f, 0x3f, 0xc1, 0x6b, 0x67, 0x5f,
+ 0x27, 0x4d, 0x53, 0xe6, 0x7f, 0xfe, 0x05, 0x2f, 0x8a, 0xc7, 0x50, 0x51, 0x9c, 0xf8, 0xee, 0xe4,
+ 0xb6, 0xcf, 0xa3, 0x63, 0xaf, 0xbe, 0xf3, 0xe3, 0x03, 0xfb, 0xfc, 0x23, 0x37, 0xfe, 0x6e, 0x30,
+ 0x39, 0x5c, 0x10, 0x0f, 0xa5, 0x35, 0x26, 0xf6, 0x0c, 0x23, 0xc0, 0xfa, 0xad, 0x4d, 0x62, 0x16,
+ 0xf1, 0x4e, 0x70, 0xde, 0x11, 0x92, 0x0a, 0x02, 0x0c, 0x0f, 0x55, 0xa8, 0x56, 0x13, 0xf2, 0xed,
+ 0xc8, 0x66, 0xa3, 0x89, 0xa2, 0x24, 0xde, 0xd3, 0x6c, 0xb6, 0x98, 0xbf, 0x2a, 0x3f, 0x7d, 0xfe,
+ 0xde, 0xd9, 0x43, 0x7d, 0x8a, 0x1c, 0x84, 0xc4, 0x29, 0x69, 0xdd, 0x53, 0xab, 0x3a, 0x44, 0x20,
+ 0xcb, 0x32, 0x56, 0xfe, 0xba, 0xd9, 0xe7, 0x10, 0x31, 0x02, 0x39, 0x48, 0xab, 0x89, 0x00, 0x9b,
+ 0x9b, 0x83, 0xfb, 0xac, 0x5a, 0x49, 0x4a, 0x53, 0xf6, 0xa1, 0xaf, 0x47, 0x22, 0x32, 0xa5, 0xda,
+ 0x1c, 0x09, 0xce, 0x18, 0xaf, 0x0b, 0xc1, 0x59, 0xe1, 0x10, 0x4e, 0x09, 0x4e, 0x4b, 0x6c, 0x25,
+ 0xd6, 0xf2, 0x77, 0xeb, 0xc1, 0xda, 0xf7, 0xbe, 0x68, 0x86, 0x47, 0xd1, 0xbc, 0x35, 0x22, 0x22,
+ 0x53, 0xbd, 0x8a, 0x52, 0x4c, 0x92, 0xa1, 0xaa, 0xa7, 0x5e, 0x91, 0x01, 0x7b, 0x71, 0x3b, 0xe2,
+ 0x02, 0x4b, 0x77, 0x53, 0xf7, 0x8c, 0x7f, 0x7b, 0x03, 0x3b, 0xe7, 0x80, 0x98, 0x00, 0x69, 0xd7,
+ 0x70, 0xcd, 0x96, 0xf7, 0x1f, 0x7d, 0xf9, 0xed, 0x2f, 0xf3, 0x07, 0x5f, 0x12, 0xc3, 0x39, 0x29,
+ 0xa7, 0xd1, 0xb5, 0x17, 0x90, 0x8e, 0x7b, 0x4b, 0xc9, 0x28, 0x7d, 0x27, 0x66, 0xfb, 0x55, 0x29,
+ 0xcf, 0x2c, 0x31, 0x15, 0x89, 0x2b, 0x4b, 0x97, 0x3e, 0x32, 0xb3, 0xe5, 0xbe, 0x61, 0xb8, 0xfd,
+ 0xe7, 0xe4, 0x36, 0xd1, 0xbf, 0x70, 0x51, 0x80, 0xee, 0x5f, 0x46, 0xf4, 0x81, 0x00, 0x00, 0x00,
+ 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
+};
+
+const BITMAP_OPAQUE macros_record_xpm[1] = {{ png, sizeof( png ), "macros_record_xpm" }};
+
+//EOF
diff --git a/bitmaps_png/sources/macros_record.svg b/bitmaps_png/sources/macros_record.svg
new file mode 100644
index 0000000000..cc36d87abe
--- /dev/null
+++ b/bitmaps_png/sources/macros_record.svg
@@ -0,0 +1,713 @@
+
+
+
+
diff --git a/eeschema/dialogs/dialog_lib_edit_draw_item.fbp b/eeschema/dialogs/dialog_lib_edit_draw_item.fbp
index 2270065666..a8d1275281 100644
--- a/eeschema/dialogs/dialog_lib_edit_draw_item.fbp
+++ b/eeschema/dialogs/dialog_lib_edit_draw_item.fbp
@@ -2,9 +2,12 @@
@@ -535,7 +922,7 @@
wxALL|wxEXPAND
1
-
+
bSizer6
wxHORIZONTAL
none
@@ -554,7 +941,7 @@
wxEXPAND
0
-
+
bSizer7
wxVERTICAL
none
@@ -563,51 +950,87 @@
wxALL
0
-
-
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
1
-
-
+
+ 1
+
+ 0
0
wxID_ANY
Do ¬ fill
-
-
+
+
+ 0
+
+
+ 0
+
+ 1
m_radioFillNone
+ 1
+
+
protected
-
-
+ 1
+
+
+ Resizable
+
+ 1
+
wxRB_GROUP
-
-
+
+ 0
+
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -615,51 +1038,87 @@
wxALL
0
-
-
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
1
-
-
+
+ 1
+
+ 0
0
wxID_ANY
Fill &foreground
-
-
+
+
+ 0
+
+
+ 0
+
+ 1
m_radioFillForeground
+ 1
+
+
protected
-
-
-
-
-
+ 1
+
+
+ Resizable
+
+ 1
+
+
+
+ 0
+
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -667,51 +1126,87 @@
wxALL
0
-
-
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
1
-
-
+
+ 1
+
+ 0
0
wxID_ANY
Fill &background
-
-
+
+
+ 0
+
+
+ 0
+
+ 1
m_radioFillBackground
+ 1
+
+
protected
-
-
-
-
-
+ 1
+
+
+ Resizable
+
+ 1
+
+
+
+ 0
+
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -741,17 +1236,17 @@
1
0
0
-
+
m_sdbSizer1
protected
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/eeschema/dialogs/dialog_lib_edit_draw_item_base.cpp b/eeschema/dialogs/dialog_lib_edit_draw_item_base.cpp
index e8dd377f1f..c3027db61f 100644
--- a/eeschema/dialogs/dialog_lib_edit_draw_item_base.cpp
+++ b/eeschema/dialogs/dialog_lib_edit_draw_item_base.cpp
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// C++ code generated with wxFormBuilder (version Jun 30 2011)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@@ -47,14 +47,19 @@ DIALOG_LIB_EDIT_DRAW_ITEM_BASE::DIALOG_LIB_EDIT_DRAW_ITEM_BASE( wxWindow* parent
dlgBorderSizer->Add( bSizer3, 0, wxALL|wxEXPAND, 0 );
+ m_staticTextSharing = new wxStaticText( this, ID_M_STATICTEXTSHARING, _("Sharing"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextSharing->Wrap( -1 );
+ m_staticTextSharing->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
+
+ dlgBorderSizer->Add( m_staticTextSharing, 0, wxTOP|wxBOTTOM, 5 );
+
wxBoxSizer* bSizer4;
bSizer4 = new wxBoxSizer( wxHORIZONTAL );
bSizer4->Add( 12, 0, 0, wxEXPAND, 3 );
- m_checkApplyToAllUnits = new wxCheckBox( this, wxID_ANY, _("Apply changes to all &parts in component"), wxDefaultPosition, wxDefaultSize, 0 );
-
+ m_checkApplyToAllUnits = new wxCheckBox( this, wxID_ANY, _("Shared by all &parts in component"), wxDefaultPosition, wxDefaultSize, 0 );
bSizer4->Add( m_checkApplyToAllUnits, 0, wxALIGN_CENTER_VERTICAL|wxALL, 3 );
dlgBorderSizer->Add( bSizer4, 0, wxALL|wxEXPAND, 0 );
@@ -65,8 +70,7 @@ DIALOG_LIB_EDIT_DRAW_ITEM_BASE::DIALOG_LIB_EDIT_DRAW_ITEM_BASE( wxWindow* parent
bSizer5->Add( 12, 0, 0, wxEXPAND, 3 );
- m_checkApplyToAllConversions = new wxCheckBox( this, wxID_ANY, _("Apply changes to all body &styles (DeMorgan)"), wxDefaultPosition, wxDefaultSize, 0 );
-
+ m_checkApplyToAllConversions = new wxCheckBox( this, wxID_ANY, _("Shared by all body &styles (DeMorgan)"), wxDefaultPosition, wxDefaultSize, 0 );
bSizer5->Add( m_checkApplyToAllConversions, 0, wxALIGN_CENTER_VERTICAL|wxALL, 3 );
dlgBorderSizer->Add( bSizer5, 0, wxEXPAND, 3 );
diff --git a/eeschema/dialogs/dialog_lib_edit_draw_item_base.h b/eeschema/dialogs/dialog_lib_edit_draw_item_base.h
index 1df99e3677..6ab2256d0b 100644
--- a/eeschema/dialogs/dialog_lib_edit_draw_item_base.h
+++ b/eeschema/dialogs/dialog_lib_edit_draw_item_base.h
@@ -1,15 +1,16 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// C++ code generated with wxFormBuilder (version Jun 30 2011)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
-#ifndef __dialog_lib_edit_draw_item_base__
-#define __dialog_lib_edit_draw_item_base__
+#ifndef __DIALOG_LIB_EDIT_DRAW_ITEM_BASE_H__
+#define __DIALOG_LIB_EDIT_DRAW_ITEM_BASE_H__
+#include
+#include
#include
-
#include
#include
#include
@@ -33,31 +34,31 @@ class DIALOG_LIB_EDIT_DRAW_ITEM_BASE : public wxDialog
private:
protected:
+ enum
+ {
+ ID_M_STATICTEXTSHARING = 1000,
+ };
+
wxStaticText* m_staticText1;
-
wxStaticText* m_staticWidth;
-
wxTextCtrl* m_textWidth;
wxStaticText* m_staticWidthUnits;
-
+ wxStaticText* m_staticTextSharing;
wxCheckBox* m_checkApplyToAllUnits;
-
wxCheckBox* m_checkApplyToAllConversions;
-
wxStaticText* m_staticText4;
-
wxRadioButton* m_radioFillNone;
wxRadioButton* m_radioFillForeground;
wxRadioButton* m_radioFillBackground;
-
wxStdDialogButtonSizer* m_sdbSizer1;
wxButton* m_sdbSizer1OK;
wxButton* m_sdbSizer1Cancel;
public:
- DIALOG_LIB_EDIT_DRAW_ITEM_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Drawing Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ DIALOG_LIB_EDIT_DRAW_ITEM_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Drawing Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~DIALOG_LIB_EDIT_DRAW_ITEM_BASE();
};
-#endif //__dialog_lib_edit_draw_item_base__
+#endif //__DIALOG_LIB_EDIT_DRAW_ITEM_BASE_H__
diff --git a/eeschema/dialogs/dialog_lib_edit_pin_base.cpp b/eeschema/dialogs/dialog_lib_edit_pin_base.cpp
index e13159def3..f92641f795 100644
--- a/eeschema/dialogs/dialog_lib_edit_pin_base.cpp
+++ b/eeschema/dialogs/dialog_lib_edit_pin_base.cpp
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Nov 17 2010)
+// C++ code generated with wxFormBuilder (version Jun 30 2011)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@@ -75,13 +75,12 @@ DIALOG_LIB_EDIT_PIN_BASE::DIALOG_LIB_EDIT_PIN_BASE( wxWindow* parent, wxWindowID
boarderSizer = new wxBoxSizer( wxVERTICAL );
wxStaticBoxSizer* sbSizerPinSharing;
- sbSizerPinSharing = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Pin Sharing") ), wxVERTICAL );
+ sbSizerPinSharing = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Sharing") ), wxVERTICAL );
- m_checkApplyToAllParts = new wxCheckBox( this, wxID_ANY, _("Add to all &parts in package"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkApplyToAllParts = new wxCheckBox( this, wxID_ANY, _("Shared by all &parts in component"), wxDefaultPosition, wxDefaultSize, 0 );
sbSizerPinSharing->Add( m_checkApplyToAllParts, 0, wxALIGN_CENTER_VERTICAL|wxALL, 3 );
- m_checkApplyToAllConversions = new wxCheckBox( this, wxID_ANY, _("Add to all alternate &body styles (DeMorgan)"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkApplyToAllConversions->SetValue(true);
+ m_checkApplyToAllConversions = new wxCheckBox( this, wxID_ANY, _("Shared by all body &styles (DeMorgan)"), wxDefaultPosition, wxDefaultSize, 0 );
sbSizerPinSharing->Add( m_checkApplyToAllConversions, 0, wxALIGN_CENTER_VERTICAL|wxALL, 3 );
boarderSizer->Add( sbSizerPinSharing, 0, wxEXPAND|wxALL, 5 );
diff --git a/eeschema/dialogs/dialog_lib_edit_pin_base.fbp b/eeschema/dialogs/dialog_lib_edit_pin_base.fbp
index 7820d2c5af..11e510a8fd 100644
--- a/eeschema/dialogs/dialog_lib_edit_pin_base.fbp
+++ b/eeschema/dialogs/dialog_lib_edit_pin_base.fbp
@@ -7,6 +7,7 @@
1
source_name
0
+ res
UTF-8
connect
dialog_lib_edit_pin_base
@@ -28,6 +29,7 @@
1
0
+
1
@@ -50,8 +52,10 @@
0
wxID_ANY
+
0
+
0
1
@@ -65,7 +69,7 @@
Resizable
1
- 499,372
+ 476,372
wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER
Pin Properties
@@ -80,6 +84,12 @@
+
+
+
+
+
+
OnCloseDialog
@@ -157,6 +167,7 @@
1
1
+
1
@@ -177,8 +188,10 @@
wxID_ANY
Pin &name:
+
0
+
0
1
@@ -241,6 +254,7 @@
1
1
+
1
@@ -260,9 +274,11 @@
0
ID_M_TEXTPINNAME
+
0
0
+
0
1
@@ -329,6 +345,7 @@
1
1
+
1
@@ -349,8 +366,10 @@
ID_M_STATICTEXTPADNAME
Pin n&umber:
+
0
+
0
1
@@ -413,6 +432,7 @@
1
1
+
1
@@ -432,9 +452,11 @@
0
ID_M_TEXTPADNAME
+
0
0
+
0
1
@@ -501,6 +523,7 @@
1
1
+
1
@@ -521,8 +544,10 @@
wxID_ANY
&Orientation:
+
0
+
0
1
@@ -585,6 +610,7 @@
1
1
+
1
@@ -605,8 +631,10 @@
0
wxID_ANY
+
0
+
0
1
@@ -672,6 +700,7 @@
1
1
+
1
@@ -692,8 +721,10 @@
wxID_ANY
&Electrical type:
+
0
+
0
1
@@ -756,6 +787,7 @@
1
1
+
1
@@ -776,8 +808,10 @@
0
wxID_ANY
+
0
+
0
1
@@ -843,6 +877,7 @@
1
1
+
1
@@ -863,8 +898,10 @@
wxID_ANY
Graphic &Style:
+
0
+
0
1
@@ -927,6 +964,7 @@
1
1
+
1
@@ -947,8 +985,10 @@
0
wxID_ANY
+
0
+
0
1
@@ -1021,7 +1061,7 @@
0
wxID_ANY
- Pin Sharing
+ Sharing
sbSizerPinSharing
wxVERTICAL
@@ -1037,6 +1077,7 @@
1
1
+
1
@@ -1056,10 +1097,12 @@
0
0
wxID_ANY
- Add to all &parts in package
+ Shared by all &parts in component
+
0
+
0
1
@@ -1122,11 +1165,12 @@
1
1
+
1
0
- 1
+ 0
1
1
@@ -1141,10 +1185,12 @@
0
0
wxID_ANY
- Add to all alternate &body styles (DeMorgan)
+ Shared by all body &styles (DeMorgan)
+
0
+
0
1
@@ -1221,6 +1267,7 @@
1
1
+
1
@@ -1242,8 +1289,10 @@
wxID_ANY
&Visible
+
0
+
0
1
@@ -1337,6 +1386,7 @@
1
1
+
1
@@ -1357,8 +1407,10 @@
ID_M_STATICTEXTNAMESIZE
N&ame text size:
+
0
+
0
1
@@ -1421,6 +1473,7 @@
1
1
+
1
@@ -1440,9 +1493,11 @@
0
ID_M_TEXTPINNAMETEXTSIZE
+
0
0
+
0
1
@@ -1509,6 +1564,7 @@
1
1
+
1
@@ -1529,8 +1585,10 @@
ID_M_STATICNAMETEXTSIZEUNITS
units
+
0
+
0
-1,-1
1
@@ -1593,6 +1651,7 @@
1
1
+
1
@@ -1613,8 +1672,10 @@
ID_M_STATICTEXTPADNAMESIZE
Number te&xt size:
+
0
+
0
1
@@ -1677,6 +1738,7 @@
1
1
+
1
@@ -1696,9 +1758,11 @@
0
ID_M_TEXTPADNAMETEXTSIZE
+
0
0
+
0
1
@@ -1765,6 +1829,7 @@
1
1
+
1
@@ -1785,8 +1850,10 @@
ID_M_STATICNUMBERTEXTSIZEUNITS
units
+
0
+
0
1
@@ -1849,6 +1916,7 @@
1
1
+
1
@@ -1869,8 +1937,10 @@
ID_M_STATICTEXTPINLEN
&Length:
+
0
+
0
1
@@ -1933,6 +2003,7 @@
1
1
+
1
@@ -1952,9 +2023,11 @@
0
ID_M_TEXTLENGTH
+
0
0
+
0
1
@@ -2021,6 +2094,7 @@
1
1
+
1
@@ -2041,8 +2115,10 @@
ID_M_STATICLENGTHUNITS
units
+
0
+
0
1
@@ -2107,6 +2183,7 @@
1
1
+
1
@@ -2126,8 +2203,10 @@
0
wxID_ANY
+
0
+
0
150,150
1
@@ -2192,6 +2271,7 @@
1
1
+
1
@@ -2211,8 +2291,10 @@
0
wxID_ANY
+
0
+
0
1
diff --git a/eeschema/dialogs/dialog_lib_edit_pin_base.h b/eeschema/dialogs/dialog_lib_edit_pin_base.h
index 2f39eae75b..fe92de1142 100644
--- a/eeschema/dialogs/dialog_lib_edit_pin_base.h
+++ b/eeschema/dialogs/dialog_lib_edit_pin_base.h
@@ -1,15 +1,16 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Nov 17 2010)
+// C++ code generated with wxFormBuilder (version Jun 30 2011)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
-#ifndef __dialog_lib_edit_pin_base__
-#define __dialog_lib_edit_pin_base__
+#ifndef __DIALOG_LIB_EDIT_PIN_BASE_H__
+#define __DIALOG_LIB_EDIT_PIN_BASE_H__
+#include
+#include
#include
-
class wxBitmapComboBox;
#include
@@ -92,9 +93,9 @@ class DIALOG_LIB_EDIT_PIN_BASE : public wxDialog
public:
- DIALOG_LIB_EDIT_PIN_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Pin Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 499,372 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+ DIALOG_LIB_EDIT_PIN_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Pin Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 476,372 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~DIALOG_LIB_EDIT_PIN_BASE();
};
-#endif //__dialog_lib_edit_pin_base__
+#endif //__DIALOG_LIB_EDIT_PIN_BASE_H__
diff --git a/include/bitmaps.h b/include/bitmaps.h
index 7487b0a885..9eb6af240d 100644
--- a/include/bitmaps.h
+++ b/include/bitmaps.h
@@ -279,6 +279,7 @@ EXTERN_BITMAP( load_module_board_xpm )
EXTERN_BITMAP( load_module_lib_xpm )
EXTERN_BITMAP( local_ratsnest_xpm )
EXTERN_BITMAP( locked_xpm )
+EXTERN_BITMAP( macros_record_xpm )
EXTERN_BITMAP( mirepcb_xpm )
EXTERN_BITMAP( mirror_h_xpm )
EXTERN_BITMAP( mirror_v_xpm )
diff --git a/pcbnew/menubar_pcbframe.cpp b/pcbnew/menubar_pcbframe.cpp
index f3f185840e..ea7500bd51 100644
--- a/pcbnew/menubar_pcbframe.cpp
+++ b/pcbnew/menubar_pcbframe.cpp
@@ -18,7 +18,6 @@
void PCB_EDIT_FRAME::ReCreateMenuBar()
{
wxString text;
- wxMenuItem* item;
wxMenuBar* menuBar = GetMenuBar();
if( ! menuBar )
@@ -37,11 +36,10 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
wxMenu* filesMenu = new wxMenu;
// New
- item = new wxMenuItem( filesMenu, ID_NEW_BOARD,
+ AddMenuItem( filesMenu, ID_NEW_BOARD,
_( "&New" ),
- _( "Clear current board and initialize a new one" ) );
- SET_BITMAP( KiBitmap( new_xpm ) );
- filesMenu->Append( item );
+ _( "Clear current board and initialize a new one" ),
+ KiBitmap( new_xpm ) );
// Open
text = AddHotkeyName( _( "&Open" ), g_Board_Editor_Hokeys_Descr,
@@ -68,11 +66,10 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
// Pcbnew Board
- item = new wxMenuItem( filesMenu, ID_APPEND_FILE,
+ AddMenuItem( filesMenu, ID_APPEND_FILE,
_( "&Append Board" ),
- _( "Append another Pcbnew board to the current loaded board" ) );
- SET_BITMAP( KiBitmap( import_xpm ) );
- filesMenu->Append( item );
+ _( "Append another Pcbnew board to the current loaded board" ),
+ KiBitmap( import_xpm ) );
// Separator
filesMenu->AppendSeparator();
@@ -81,59 +78,52 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
text = AddHotkeyName( _( "&Save" ), g_Board_Editor_Hokeys_Descr,
HK_SAVE_BOARD );
AddMenuItem( filesMenu, ID_SAVE_BOARD, text,
- _( "Save current board" ),
- KiBitmap( save_xpm ) );
+ _( "Save current board" ),
+ KiBitmap( save_xpm ) );
// Save As
- item = new wxMenuItem( filesMenu, ID_SAVE_BOARD_AS,
+ AddMenuItem( filesMenu, ID_SAVE_BOARD_AS,
_( "Save as..." ),
- _( "Save the current board as.." ) );
- SET_BITMAP( KiBitmap( save_as_xpm ) );
- filesMenu->Append( item );
+ _( "Save the current board as.." ),
+ KiBitmap( save_as_xpm ) );
filesMenu->AppendSeparator();
// Revert
- item = new wxMenuItem( filesMenu, ID_MENU_READ_LAST_SAVED_VERSION_BOARD,
+ AddMenuItem( filesMenu, ID_MENU_READ_LAST_SAVED_VERSION_BOARD,
_( "&Revert" ),
- _( "Clear board and get previous saved version of board" ) );
- SET_BITMAP( KiBitmap( jigsaw_xpm ) );
- filesMenu->Append( item );
+ _( "Clear board and get previous saved version of board" ),
+ KiBitmap( jigsaw_xpm ) );
// Rescue
- item = new wxMenuItem( filesMenu, ID_MENU_RECOVER_BOARD, _( "&Rescue" ),
- _( "Clear old board and get last rescue file" ) );
- SET_BITMAP( KiBitmap( hammer_xpm ) );
- filesMenu->Append( item );
+ AddMenuItem( filesMenu, ID_MENU_RECOVER_BOARD, _( "&Rescue" ),
+ _( "Clear old board and get last rescue file" ),
+ KiBitmap( hammer_xpm ) );
filesMenu->AppendSeparator();
/* Fabrication Outputs submenu */
wxMenu* fabricationOutputsMenu = new wxMenu;
- item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_POS_MODULES_FILE,
+ AddMenuItem( fabricationOutputsMenu, ID_PCB_GEN_POS_MODULES_FILE,
_( "&Modules Position File" ),
- _( "Generate modules position file for pick and place" ) );
- SET_BITMAP( KiBitmap( post_compo_xpm ) );
- fabricationOutputsMenu->Append( item );
+ _( "Generate modules position file for pick and place" ),
+ KiBitmap( post_compo_xpm ) );
- item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_DRILL_FILE,
+ AddMenuItem( fabricationOutputsMenu, ID_PCB_GEN_DRILL_FILE,
_( "&Drill File" ),
- _( "Generate excellon2 drill file" ) );
- SET_BITMAP( KiBitmap( post_drill_xpm ) );
- fabricationOutputsMenu->Append( item );
+ _( "Generate excellon2 drill file" ),
+ KiBitmap( post_drill_xpm ) );
// Component File
- item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_CMP_FILE,
+ AddMenuItem( fabricationOutputsMenu, ID_PCB_GEN_CMP_FILE,
_( "&Component File" ),
- _( "(Re)create components file (*.cmp) for CvPcb" ) );
- SET_BITMAP( KiBitmap( create_cmp_file_xpm ) );
- fabricationOutputsMenu->Append( item );
+ _( "(Re)create components file (*.cmp) for CvPcb" ),
+ KiBitmap( create_cmp_file_xpm ) );
// BOM File
- item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_BOM_FILE_FROM_BOARD,
+ AddMenuItem( fabricationOutputsMenu, ID_PCB_GEN_BOM_FILE_FROM_BOARD,
_( "&BOM File" ),
- _( "Create a bill of materials from schematic" ) );
- SET_BITMAP( KiBitmap( tools_xpm ) );
- fabricationOutputsMenu->Append( item );
+ _( "Create a bill of materials from schematic" ),
+ KiBitmap( tools_xpm ) );
// Fabrications Outputs submenu append
AddMenuItem( filesMenu, fabricationOutputsMenu,
@@ -142,52 +132,45 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
KiBitmap( fabrication_xpm ) );
-
/** Import submenu **/
wxMenu* submenuImport = new wxMenu();
// Specctra Session
- item = new wxMenuItem( submenuImport, ID_GEN_IMPORT_SPECCTRA_SESSION,
+ AddMenuItem( submenuImport, ID_GEN_IMPORT_SPECCTRA_SESSION,
_( "&Specctra Session" ),
- _( "Import a routed \"Specctra Session\" (*.ses) file" ) );
- SET_BITMAP( KiBitmap( import_xpm ) ); // @todo need better bitmap
- submenuImport->Append( item );
+ _( "Import a routed \"Specctra Session\" (*.ses) file" ),
+ KiBitmap( import_xpm ) );
AddMenuItem( filesMenu, submenuImport,
ID_GEN_IMPORT_FILE, _( "Import" ),
_( "Import files" ), KiBitmap( import_xpm ) );
-
/** Export submenu **/
wxMenu* submenuexport = new wxMenu();
// Specctra DSN
- item = new wxMenuItem( submenuexport, ID_GEN_EXPORT_SPECCTRA,
+ AddMenuItem( submenuexport, ID_GEN_EXPORT_SPECCTRA,
_( "&Specctra DSN" ),
- _( "Export the current board to a \"Specctra DSN\" file" ) );
- SET_BITMAP( KiBitmap( export_xpm ) );
- submenuexport->Append( item );
+ _( "Export the current board to a \"Specctra DSN\" file" ),
+ KiBitmap( export_xpm ) );
// GenCAD
- item = new wxMenuItem( submenuexport, ID_GEN_EXPORT_FILE_GENCADFORMAT,
- _( "&GenCAD" ), _( "Export GenCAD format" ) );
- SET_BITMAP( KiBitmap( export_xpm ) );
- submenuexport->Append( item );
+ AddMenuItem( submenuexport, ID_GEN_EXPORT_FILE_GENCADFORMAT,
+ _( "&GenCAD" ), _( "Export GenCAD format" ),
+ KiBitmap( export_xpm ) );
// Module Report
- item = new wxMenuItem( submenuexport, ID_GEN_EXPORT_FILE_MODULE_REPORT,
+ AddMenuItem( submenuexport, ID_GEN_EXPORT_FILE_MODULE_REPORT,
_( "&Module Report" ),
- _( "Create a report of all modules on the current board" ) );
- SET_BITMAP( KiBitmap( tools_xpm ) );
- submenuexport->Append( item );
+ _( "Create a report of all modules on the current board" ),
+ KiBitmap( tools_xpm ) );
// VRML
- item = new wxMenuItem( submenuexport, ID_GEN_EXPORT_FILE_VRML,
+ AddMenuItem( submenuexport, ID_GEN_EXPORT_FILE_VRML,
_( "&VRML" ),
- _( "Export a VRML board representation" ) );
- SET_BITMAP( KiBitmap( three_d_xpm ) );
- submenuexport->Append( item );
+ _( "Export a VRML board representation" ),
+ KiBitmap( three_d_xpm ) );
AddMenuItem( filesMenu, submenuexport,
ID_GEN_EXPORT_FILE, _( "&Export" ),
@@ -196,49 +179,43 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
filesMenu->AppendSeparator();
// Page settings
- item = new wxMenuItem( filesMenu, ID_SHEET_SET,
+ AddMenuItem( filesMenu, ID_SHEET_SET,
_( "&Page settings" ),
- _( "Page settings for paper size and texts" ) );
- SET_BITMAP( KiBitmap( sheetset_xpm ) );
- filesMenu->Append( item );
+ _( "Page settings for paper size and texts" ),
+ KiBitmap( sheetset_xpm ) );
// Print
- item = new wxMenuItem( filesMenu, wxID_PRINT,
- _( "&Print" ),
- _( "Print board" ) );
- SET_BITMAP( KiBitmap( print_button_xpm ) );
- filesMenu->Append( item );
+ AddMenuItem( filesMenu, wxID_PRINT,
+ _( "&Print" ), _( "Print board" ),
+ KiBitmap( print_button_xpm ) );
// Create SVG file
- item = new wxMenuItem( filesMenu, ID_GEN_PLOT_SVG,
+ AddMenuItem( filesMenu, ID_GEN_PLOT_SVG,
_( "Print S&VG" ),
- _( "Plot board in Scalable Vector Graphics format" ) );
- SET_BITMAP( KiBitmap( print_button_xpm ) );
- filesMenu->Append( item );
+ _( "Plot board in Scalable Vector Graphics format" ),
+ KiBitmap( print_button_xpm ) );
// Plot
- item = new wxMenuItem( filesMenu, ID_GEN_PLOT,
- _( "&Plot" ),
- _( "Plot board in HPGL, PostScript or Gerber RS-274X format)" ) );
- SET_BITMAP( KiBitmap( plot_xpm ) );
- filesMenu->Append( item );
- filesMenu->AppendSeparator();
+ AddMenuItem( filesMenu, ID_GEN_PLOT,
+ _( "&Plot" ),
+ _( "Plot board in HPGL, PostScript or Gerber RS-274X format)" ),
+ KiBitmap( plot_xpm ) );
+
+ filesMenu->AppendSeparator();
wxMenu* submenuarchive = new wxMenu();
// Archive New Footprints
- item = new wxMenuItem( submenuarchive, ID_MENU_ARCHIVE_NEW_MODULES,
- _( "Archive New Footprints" ),
- _( "Archive new footprints only in a library (keep other footprints in this lib)" ) );
- SET_BITMAP( KiBitmap( library_update_xpm ) );
- submenuarchive->Append( item );
+ AddMenuItem( submenuarchive, ID_MENU_ARCHIVE_NEW_MODULES,
+ _( "Archive New Footprints" ),
+ _( "Archive new footprints only in a library (keep other footprints in this lib)" ),
+ KiBitmap( library_update_xpm ) );
// Create FootPrint Archive
- item = new wxMenuItem( submenuarchive, ID_MENU_ARCHIVE_ALL_MODULES,
- _( "Create Footprint Archive" ),
- _( "Archive all footprints in a library (old library will be deleted)" ) );
- SET_BITMAP( KiBitmap( library_xpm ) );
- submenuarchive->Append( item );
+ AddMenuItem( submenuarchive, ID_MENU_ARCHIVE_ALL_MODULES,
+ _( "Create Footprint Archive" ),
+ _( "Archive all footprints in a library (old library will be deleted)" ),
+ KiBitmap( library_xpm ) );
AddMenuItem( filesMenu, submenuarchive,
ID_MENU_ARCHIVE_MODULES,
@@ -248,56 +225,47 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
/* Quit */
filesMenu->AppendSeparator();
- item = new wxMenuItem( filesMenu, wxID_EXIT, _( "&Quit" ), _( "Quit Pcbnew" ) );
- SET_BITMAP( KiBitmap( exit_xpm ) );
- filesMenu->Append( item );
+ AddMenuItem( filesMenu, wxID_EXIT, _( "&Quit" ), _( "Quit Pcbnew" ),
+ KiBitmap( exit_xpm ) );
/** Create Edit menu **/
wxMenu* editMenu = new wxMenu;
// Undo
text = AddHotkeyName( _( "Undo" ), g_Pcbnew_Editor_Hokeys_Descr, HK_UNDO );
- item = new wxMenuItem( editMenu, wxID_UNDO, text,
- HELP_UNDO, wxITEM_NORMAL );
- SET_BITMAP( KiBitmap( undo_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, wxID_UNDO, text,
+ HELP_UNDO, KiBitmap( undo_xpm ) );
// Redo
text = AddHotkeyName( _( "Redo" ), g_Pcbnew_Editor_Hokeys_Descr, HK_REDO );
- item = new wxMenuItem( editMenu, wxID_REDO, text,
- HELP_REDO, wxITEM_NORMAL );
- SET_BITMAP( KiBitmap( redo_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, wxID_REDO, text,
+ HELP_REDO, KiBitmap( redo_xpm ) );
// Delete
- item = new wxMenuItem( editMenu, ID_PCB_DELETE_ITEM_BUTT,
- _( "Delete" ),
- _( "Delete items" ) );
- SET_BITMAP( KiBitmap( delete_body_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_PCB_DELETE_ITEM_BUTT,
+ _( "Delete" ), _( "Delete items" ),
+ KiBitmap( delete_body_xpm ) );
+
editMenu->AppendSeparator();
// Find
text = AddHotkeyName( _( "&Find" ), g_Pcbnew_Editor_Hokeys_Descr, HK_FIND_ITEM );
- item = new wxMenuItem( editMenu, ID_FIND_ITEMS,
- text, HELP_FIND );
- SET_BITMAP( KiBitmap( find_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_FIND_ITEMS,
+ text, HELP_FIND , KiBitmap( find_xpm ) );
+
editMenu->AppendSeparator();
// Global Deletions
- item = new wxMenuItem( editMenu, ID_PCB_GLOBAL_DELETE,
- _( "Global &Deletions" ),
- _( "Delete tracks, modules, texts... on board" ) );
- SET_BITMAP( KiBitmap( general_deletions_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_PCB_GLOBAL_DELETE,
+ _( "Global &Deletions" ),
+ _( "Delete tracks, modules, texts... on board" ),
+ KiBitmap( general_deletions_xpm ) );
// Cleanup Tracks and Vias
- item = new wxMenuItem( editMenu, ID_MENU_PCB_CLEAN,
- _( "&Cleanup Tracks and Vias" ),
- _( "Clean stubs, vias, delete break points, or connect dangling tracks to pads and vias" ) );
- SET_BITMAP( KiBitmap( delete_body_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_MENU_PCB_CLEAN,
+ _( "&Cleanup Tracks and Vias" ),
+ _( "Clean stubs, vias, delete break points, or connect dangling tracks to pads and vias" ),
+ KiBitmap( delete_body_xpm ) );
// Swap Layers
AddMenuItem( editMenu, ID_MENU_PCB_SWAP_LAYERS,
@@ -306,20 +274,16 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
KiBitmap( swap_layer_xpm ) );
// Reset module reference sizes
- item = new wxMenuItem( editMenu,
- ID_MENU_PCB_RESET_TEXTMODULE_REFERENCE_SIZES,
- _( "Reset Module &Reference Sizes" ),
- _( "Reset text size and width of all module references to current defaults" ) );
- SET_BITMAP( KiBitmap( reset_text_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_MENU_PCB_RESET_TEXTMODULE_REFERENCE_SIZES,
+ _( "Reset Module &Reference Sizes" ),
+ _( "Reset text size and width of all module references to current defaults" ),
+ KiBitmap( reset_text_xpm ) );
// Reset module value sizes
- item = new wxMenuItem( editMenu,
- ID_MENU_PCB_RESET_TEXTMODULE_VALUE_SIZES,
- _( "Reset Module &Value Sizes" ),
- _( "Reset text size and width of all module values to current defaults" ) );
- SET_BITMAP( KiBitmap( reset_text_xpm ) );
- editMenu->Append( item );
+ AddMenuItem( editMenu, ID_MENU_PCB_RESET_TEXTMODULE_VALUE_SIZES,
+ _( "Reset Module &Value Sizes" ),
+ _( "Reset text size and width of all module values to current defaults" ),
+ KiBitmap( reset_text_xpm ) );
/** Create View menu **/
wxMenu* viewMenu = new wxMenu;
@@ -338,215 +302,164 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
// Zoom In
text = AddHotkeyName( _( "Zoom In" ), g_Pcbnew_Editor_Hokeys_Descr,
HK_ZOOM_IN, IS_ACCELERATOR );
- item = new wxMenuItem( viewMenu, ID_ZOOM_IN, text, HELP_ZOOM_IN, wxITEM_NORMAL );
- SET_BITMAP( KiBitmap( zoom_in_xpm ) );
- viewMenu->Append( item );
+ AddMenuItem( viewMenu, ID_ZOOM_IN, text, HELP_ZOOM_IN, KiBitmap( zoom_in_xpm ) );
// Zoom Out
text = AddHotkeyName( _( "Zoom Out" ), g_Pcbnew_Editor_Hokeys_Descr,
HK_ZOOM_OUT, IS_ACCELERATOR );
- item = new wxMenuItem( viewMenu, ID_ZOOM_OUT, text, HELP_ZOOM_OUT, wxITEM_NORMAL );
-
- SET_BITMAP( KiBitmap( zoom_out_xpm ) );
- viewMenu->Append( item );
+ AddMenuItem( viewMenu, ID_ZOOM_OUT, text, HELP_ZOOM_OUT, KiBitmap( zoom_out_xpm ) );
// Fit on Screen
text = AddHotkeyName( _( "Fit on Screen" ), g_Pcbnew_Editor_Hokeys_Descr,
HK_ZOOM_AUTO );
- item = new wxMenuItem( viewMenu, ID_ZOOM_PAGE, text, HELP_ZOOM_FIT, wxITEM_NORMAL );
- SET_BITMAP( KiBitmap( zoom_fit_in_page_xpm ) );
- viewMenu->Append( item );
+ AddMenuItem( viewMenu, ID_ZOOM_PAGE, text, HELP_ZOOM_FIT,
+ KiBitmap( zoom_fit_in_page_xpm ) );
viewMenu->AppendSeparator();
// Redraw
text = AddHotkeyName( _( "Redraw" ), g_Pcbnew_Editor_Hokeys_Descr, HK_ZOOM_REDRAW );
- item = new wxMenuItem( viewMenu, ID_ZOOM_REDRAW, text,
- HELP_ZOOM_REDRAW, wxITEM_NORMAL );
- SET_BITMAP( KiBitmap( zoom_redraw_xpm ) );
- viewMenu->Append( item );
+ AddMenuItem( viewMenu, ID_ZOOM_REDRAW, text,
+ HELP_ZOOM_REDRAW, KiBitmap( zoom_redraw_xpm ) );
viewMenu->AppendSeparator();
// 3D Display
- item = new wxMenuItem( viewMenu, ID_MENU_PCB_SHOW_3D_FRAME,
- _( "3D Display" ),
- _( "Show board in 3D viewer" ) );
- SET_BITMAP( KiBitmap( three_d_xpm ) );
- viewMenu->Append( item );
+ AddMenuItem( viewMenu, ID_MENU_PCB_SHOW_3D_FRAME,
+ _( "3D Display" ),_( "Show board in 3D viewer" ),
+ KiBitmap( three_d_xpm ) );
// List Nets
- item = new wxMenuItem( viewMenu, ID_MENU_LIST_NETS,
- _( "&List Nets" ),
- _( "View a list of nets with names and id's" ) );
- SET_BITMAP( KiBitmap( tools_xpm ) );
- viewMenu->Append( item );
-
-
+ AddMenuItem( viewMenu, ID_MENU_LIST_NETS,
+ _( "&List Nets" ), _( "View a list of nets with names and id's" ),
+ KiBitmap( tools_xpm ) );
/** Create Place Menu **/
wxMenu* placeMenu = new wxMenu;
// Module
- text = AddHotkeyName( _( "Module" ), g_Pcbnew_Editor_Hokeys_Descr, HK_ADD_MODULE, IS_ACCELERATOR );
- item = new wxMenuItem( placeMenu, ID_PCB_MODULE_BUTT, text,
- _( "Add modules" ), wxITEM_NORMAL );
-
- SET_BITMAP( KiBitmap( module_xpm ) );
- placeMenu->Append( item );
+ text = AddHotkeyName( _( "Module" ), g_Pcbnew_Editor_Hokeys_Descr,
+ HK_ADD_MODULE, IS_ACCELERATOR );
+ AddMenuItem( placeMenu, ID_PCB_MODULE_BUTT, text,
+ _( "Add modules" ), KiBitmap( module_xpm ) );
// Track
- text = AddHotkeyName( _( "Track" ), g_Pcbnew_Editor_Hokeys_Descr, HK_ADD_NEW_TRACK, IS_ACCELERATOR );
- item = new wxMenuItem( placeMenu, ID_TRACK_BUTT, text,
- _( "Add tracks and vias" ), wxITEM_NORMAL );
-
- SET_BITMAP( KiBitmap( add_tracks_xpm ) );
- placeMenu->Append( item );
+ text = AddHotkeyName( _( "Track" ), g_Pcbnew_Editor_Hokeys_Descr,
+ HK_ADD_NEW_TRACK, IS_ACCELERATOR );
+ AddMenuItem( placeMenu, ID_TRACK_BUTT, text,
+ _( "Add tracks and vias" ), KiBitmap( add_tracks_xpm ) );
// Zone
- item = new wxMenuItem( placeMenu, ID_PCB_ZONES_BUTT,
- _( "Zone" ),
- _( "Add filled zones" ));
- SET_BITMAP( KiBitmap( add_zone_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_ZONES_BUTT,
+ _( "Zone" ), _( "Add filled zones" ), KiBitmap( add_zone_xpm ) );
// Text
- item = new wxMenuItem( placeMenu, ID_PCB_ADD_TEXT_BUTT,
- _( "Text" ),
- _( "Add text on copper layers or graphic text" ) );
- SET_BITMAP( KiBitmap( add_text_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_ADD_TEXT_BUTT,
+ _( "Text" ), _( "Add text on copper layers or graphic text" ),
+ KiBitmap( add_text_xpm ) );
// Graphic Arc
- item = new wxMenuItem( placeMenu, ID_PCB_ARC_BUTT,
- _( "Arc" ),
- _( "Add graphic arc" ) );
- SET_BITMAP( KiBitmap( add_arc_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_ARC_BUTT,
+ _( "Arc" ), _( "Add graphic arc" ),KiBitmap( add_arc_xpm ) );
// Graphic Circle
- item = new wxMenuItem( placeMenu, ID_PCB_CIRCLE_BUTT,
- _( "Circle" ),
- _( "Add graphic circle" ));
- SET_BITMAP( KiBitmap( add_circle_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_CIRCLE_BUTT,
+ _( "Circle" ), _( "Add graphic circle" ),
+ KiBitmap( add_circle_xpm ) );
// Line or Polygon
- item = new wxMenuItem( placeMenu, ID_PCB_ADD_LINE_BUTT,
- _( "Line or Polygon" ),
- _( "Add graphic line or polygon" ));
- SET_BITMAP( KiBitmap( add_dashed_line_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_ADD_LINE_BUTT,
+ _( "Line or Polygon" ),
+ _( "Add graphic line or polygon" ),
+ KiBitmap( add_dashed_line_xpm ) );
+
placeMenu->AppendSeparator();
// Dimension
- item = new wxMenuItem( placeMenu, ID_PCB_DIMENSION_BUTT,
- _( "Dimension" ),
- _( "Add dimension" ) );
- SET_BITMAP( KiBitmap( add_dimension_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_DIMENSION_BUTT,
+ _( "Dimension" ), _( "Add dimension" ),
+ KiBitmap( add_dimension_xpm ) );
// Layer alignment target
- item = new wxMenuItem( placeMenu, ID_PCB_MIRE_BUTT,
- _( "Layer alignment target" ),
- _( "Add layer alignment target" ));
- SET_BITMAP( KiBitmap( add_mires_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_MIRE_BUTT,
+ _( "Layer alignment target" ), _( "Add layer alignment target" ),
+ KiBitmap( add_mires_xpm ) );
+
placeMenu->AppendSeparator();
// Drill & Place Offset
- item = new wxMenuItem( placeMenu, ID_PCB_PLACE_OFFSET_COORD_BUTT,
- _( "Drill and Place Offset" ),
- _( "Place the origin point for drill and place files" ));
- SET_BITMAP( KiBitmap( pcb_offset_xpm ) );
- placeMenu->Append( item );
+ AddMenuItem( placeMenu, ID_PCB_PLACE_OFFSET_COORD_BUTT,
+ _( "Drill and Place Offset" ),
+ _( "Place the origin point for drill and place files" ),
+ KiBitmap( pcb_offset_xpm ) );
// Grid Origin
- item = new wxMenuItem( placeMenu, ID_PCB_PLACE_GRID_COORD_BUTT,
+ AddMenuItem( placeMenu, ID_PCB_PLACE_GRID_COORD_BUTT,
_( "Grid Origin" ),
- _( "Set the origin point for the grid" ));
- SET_BITMAP( KiBitmap( grid_select_axis_xpm ) );
- placeMenu->Append( item );
+ _( "Set the origin point for the grid" ),
+ KiBitmap( grid_select_axis_xpm ) );
-
-
- /** Create Preferences and configuration menu **/
+ /* Create Preferences and configuration menu */
wxMenu* configmenu = new wxMenu;
// Library
- item = new wxMenuItem( configmenu, ID_CONFIG_REQ,
- _( "&Library" ),
- _( "Setting libraries, directories and others..." ) );
- SET_BITMAP( KiBitmap( library_xpm ) );
- configmenu->Append( item );
+ AddMenuItem( configmenu, ID_CONFIG_REQ,
+ _( "&Library" ), _( "Setting libraries, directories and others..." ),
+ KiBitmap( library_xpm ) );
// Colors and Visibility are also handled by the layers manager toolbar
- item = new wxMenuItem( configmenu, ID_MENU_PCB_SHOW_HIDE_LAYERS_MANAGER_DIALOG,
+ AddMenuItem( configmenu, ID_MENU_PCB_SHOW_HIDE_LAYERS_MANAGER_DIALOG,
m_show_layer_manager_tools ?
_( "Hide &Layers Manager" ) : _("Show &Layers Manager" ),
- HELP_SHOW_HIDE_LAYERMANAGER );
- SET_BITMAP( KiBitmap( layers_manager_xpm ) );
- configmenu->Append( item );
+ HELP_SHOW_HIDE_LAYERMANAGER,
+ KiBitmap( layers_manager_xpm ) );
// General
#ifdef __WXMAC__
configmenu->Append(wxID_PREFERENCES);
#else
- item = new wxMenuItem( configmenu, wxID_PREFERENCES,
- _( "&General" ),
- _( "Select general options for Pcbnew" ) );
-
- SET_BITMAP( KiBitmap( preference_xpm ) );
- configmenu->Append( item );
+ AddMenuItem( configmenu, wxID_PREFERENCES,
+ _( "&General" ), _( "Select general options for Pcbnew" ),
+ KiBitmap( preference_xpm ) );
#endif
// Display
- item = new wxMenuItem( configmenu, ID_PCB_DISPLAY_OPTIONS_SETUP,
- _( "&Display" ),
- _( "Select how items (pads, tracks texts ... ) are displayed" ) );
- SET_BITMAP( KiBitmap( display_options_xpm ) );
- configmenu->Append( item );
+ AddMenuItem( configmenu, ID_PCB_DISPLAY_OPTIONS_SETUP,
+ _( "&Display" ),
+ _( "Select how items (pads, tracks texts ... ) are displayed" ),
+ KiBitmap( display_options_xpm ) );
// Create Dimensions submenu
wxMenu* dimensionsMenu = new wxMenu;
// Grid
- item = new wxMenuItem( dimensionsMenu, ID_PCB_USER_GRID_SETUP,
- _( "Grid" ),
- _( "Adjust user grid dimensions" ) );
- SET_BITMAP( KiBitmap( grid_xpm ) );
- dimensionsMenu->Append( item );
+ AddMenuItem( dimensionsMenu, ID_PCB_USER_GRID_SETUP,
+ _( "Grid" ),_( "Adjust user grid dimensions" ),
+ KiBitmap( grid_xpm ) );
// Text and Drawings
- item = new wxMenuItem( dimensionsMenu, ID_PCB_DRAWINGS_WIDTHS_SETUP,
- _( "Texts and Drawings" ),
- _( "Adjust dimensions for texts and drawings" ) );
- SET_BITMAP( KiBitmap( options_text_xpm ) );
- dimensionsMenu->Append( item );
+ AddMenuItem( dimensionsMenu, ID_PCB_DRAWINGS_WIDTHS_SETUP,
+ _( "Texts and Drawings" ),
+ _( "Adjust dimensions for texts and drawings" ),
+ KiBitmap( options_text_xpm ) );
// Pads
- item = new wxMenuItem( dimensionsMenu, ID_PCB_PAD_SETUP,
- _( "Pads" ),
- _( "Adjust default pad characteristics" ) );
- SET_BITMAP( KiBitmap( pad_xpm ) );
- dimensionsMenu->Append( item );
+ AddMenuItem( dimensionsMenu, ID_PCB_PAD_SETUP,
+ _( "Pads" ), _( "Adjust default pad characteristics" ),
+ KiBitmap( pad_xpm ) );
// Pads Mask Clearance
- item = new wxMenuItem( dimensionsMenu, ID_PCB_MASK_CLEARANCE,
- _( "Pads Mask Clearance" ),
- _( "Adjust the global clearance between pads and the solder resist mask" ) );
- SET_BITMAP( KiBitmap( pads_mask_layers_xpm ) );
- dimensionsMenu->Append( item );
-
+ AddMenuItem( dimensionsMenu, ID_PCB_MASK_CLEARANCE,
+ _( "Pads Mask Clearance" ),
+ _( "Adjust the global clearance between pads and the solder resist mask" ),
+ KiBitmap( pads_mask_layers_xpm ) );
// Save dimension preferences
dimensionsMenu->AppendSeparator();
- item = new wxMenuItem( dimensionsMenu, ID_CONFIG_SAVE,
- _( "&Save" ),
- _( "Save dimension preferences" ) );
- SET_BITMAP( KiBitmap( save_xpm ) );
- dimensionsMenu->Append( item );
+ AddMenuItem( dimensionsMenu, ID_CONFIG_SAVE,
+ _( "&Save" ), _( "Save dimension preferences" ),
+ KiBitmap( save_xpm ) );
// Append dimension menu to config menu
AddMenuItem( configmenu, dimensionsMenu,
@@ -564,37 +477,35 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
// Macros submenu
wxMenu* macrosMenu = new wxMenu;
- item = new wxMenuItem( macrosMenu, ID_PREFRENCES_MACROS_SAVE,
+ AddMenuItem( macrosMenu, ID_PREFRENCES_MACROS_SAVE,
_( "Save macros" ),
- _( "Save macros to file" ) );
- macrosMenu->Append( item );
+ _( "Save macros to file" ),
+ KiBitmap( save_setup_xpm ) );
- item = new wxMenuItem( macrosMenu, ID_PREFRENCES_MACROS_READ,
+ AddMenuItem( macrosMenu, ID_PREFRENCES_MACROS_READ,
_( "Read macros" ),
- _( "Read macros from file" ) );
- macrosMenu->Append( item );
+ _( "Read macros from file" ),
+ KiBitmap( read_setup_xpm ) );
// Append macros menu to config menu
AddMenuItem( configmenu, macrosMenu,
-1, _( "Macros" ),
_( "Macros save/read operations" ),
- KiBitmap( add_dimension_xpm ) );
+ KiBitmap( macros_record_xpm ) );
configmenu->AppendSeparator();
// Save Preferences
- item = new wxMenuItem( configmenu, ID_CONFIG_SAVE,
- _( "&Save Preferences" ),
- _( "Save application preferences" ) );
- SET_BITMAP( KiBitmap( save_setup_xpm ) );
- configmenu->Append( item );
+ AddMenuItem( configmenu, ID_CONFIG_SAVE,
+ _( "&Save Preferences" ),
+ _( "Save application preferences" ),
+ KiBitmap( save_setup_xpm ) );
// Read Preferences
- item = new wxMenuItem( configmenu, ID_CONFIG_READ,
- _( "&Read Preferences" ),
- _( "Read application preferences" ) );
- SET_BITMAP( KiBitmap( read_setup_xpm ) );
- configmenu->Append( item );
+ AddMenuItem( configmenu, ID_CONFIG_READ,
+ _( "&Read Preferences" ),
+ _( "Read application preferences" ),
+ KiBitmap( read_setup_xpm ) );
/**
* Tools menu
@@ -602,50 +513,40 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
wxMenu* toolsMenu = new wxMenu;
/* Netlist */
- item = new wxMenuItem( toolsMenu, ID_GET_NETLIST,
- _( "Netlist" ),
- _( "Read the netlist and update board connectivity" ) );
- SET_BITMAP( KiBitmap( netlist_xpm ) );
- toolsMenu->Append( item );
+ AddMenuItem( toolsMenu, ID_GET_NETLIST,
+ _( "Netlist" ),
+ _( "Read the netlist and update board connectivity" ),
+ KiBitmap( netlist_xpm ) );
/* Layer pair */
AddMenuItem( toolsMenu, ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR,
- _( "Layer Pair" ),
- _( "Change the active layer pair" ),
- KiBitmap( select_layer_pair_xpm ) );
+ _( "Layer Pair" ), _( "Change the active layer pair" ),
+ KiBitmap( select_layer_pair_xpm ) );
/* DRC */
- item = new wxMenuItem( toolsMenu, ID_DRC_CONTROL,
- _( "DRC" ),
- _( "Perform design rules check" ) );
- SET_BITMAP( KiBitmap( erc_xpm ) );
- toolsMenu->Append( item );
+ AddMenuItem( toolsMenu, ID_DRC_CONTROL,
+ _( "DRC" ),
+ _( "Perform design rules check" ), KiBitmap( erc_xpm ) );
/* FreeRoute */
- item = new wxMenuItem( toolsMenu, ID_TOOLBARH_PCB_FREEROUTE_ACCESS,
- _( "FreeRoute" ),
- _( "Fast access to the Web Based FreeROUTE advanced router" ) );
- SET_BITMAP( KiBitmap( web_support_xpm ) );
- toolsMenu->Append( item );
+ AddMenuItem( toolsMenu, ID_TOOLBARH_PCB_FREEROUTE_ACCESS,
+ _( "FreeRoute" ),
+ _( "Fast access to the Web Based FreeROUTE advanced router" ),
+ KiBitmap( web_support_xpm ) );
- /**
- * Design Rules menu
+ /* Design Rules menu
*/
wxMenu* designRulesMenu = new wxMenu;
// Design Rules
- item = new wxMenuItem( designRulesMenu, ID_MENU_PCB_SHOW_DESIGN_RULES_DIALOG,
+ AddMenuItem( designRulesMenu, ID_MENU_PCB_SHOW_DESIGN_RULES_DIALOG,
_( "Design Rules" ),
- _( "Open the design rules editor" ) );
- SET_BITMAP( KiBitmap( hammer_xpm ) );
- designRulesMenu->Append( item );
+ _( "Open the design rules editor" ), KiBitmap( hammer_xpm ) );
// Layers Setup
- item = new wxMenuItem( configmenu, ID_PCB_LAYERS_SETUP,
- _( "&Layers Setup" ),
- _( "Enable and set layer properties" ) );
- SET_BITMAP( KiBitmap( copper_layers_setup_xpm ) );
- designRulesMenu->Append( item );
+ AddMenuItem( configmenu, ID_PCB_LAYERS_SETUP,
+ _( "&Layers Setup" ), _( "Enable and set layer properties" ),
+ KiBitmap( copper_layers_setup_xpm ) );
/**
* Help menu