Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
kicad-source-mirror
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
kicad-source-mirror
Commits
67feced1
Commit
67feced1
authored
Nov 05, 2007
by
g_harland
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update "Swap Layers:" and "Layer selection" dialog boxes again
parent
82d17cc2
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
444 additions
and
393 deletions
+444
-393
change_log.txt
change_log.txt
+20
-0
netlist_control.cpp
eeschema/netlist_control.cpp
+393
-383
select_layers_to_pcb.cpp
gerbview/select_layers_to_pcb.cpp
+15
-5
swap_layers.cpp
pcbnew/swap_layers.cpp
+16
-5
No files found.
change_log.txt
View file @
67feced1
...
...
@@ -4,6 +4,26 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with
email address.
2007-Nov-05 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
================================================================================
+ eeschema
* The previously provided "Close" button within the "Netlist" dialog box has
now been replaced with a "Cancel" button, and this dialog can now (otherwise)
be cancelled by pressing the "Esc" key. General cleanup and beautification of
eeschema/netlist_control.cpp.
+ pcbnew
* The color of each text string provided within the "Swap Layers:" dialog box is
now set to blue for each string specifying that the associated layer is *not*
being swapped with any other layer, or to fushia for each string specifying that
the associated layer *is* being swapped with another layer. (This change was
made after being suggested by Dick Hollenbeck.)
+ gerbview
* The color of each text string provided within the "Layer selection" dialog box
is similarly now set to blue for each string specifying that the associated
Gerber layer is *not* being exported to any pcbnew layer, or to fushia for each
string specifying that the associated Gerber layer *is* being exported to a
pcbnew layer.
2007-Nov-2 UPDATE Dick Hollenbeck <dick@softplc.com>
================================================================================
...
...
eeschema/netlist_control.cpp
View file @
67feced1
/**********************************/
/* Dila
og box for netlist outputs */
/**********************************/
/**********************************/
/* Dial
og box for netlist outputs */
/**********************************/
#include "fctsys.h"
//#include "gr_basic.h"
//
#include "gr_basic.h"
#include "common.h"
#include "program.h"
#include "libcmp.h"
...
...
@@ -25,7 +25,6 @@
enum
id_netlist
{
ID_CREATE_NETLIST
=
1550
,
ID_CURRENT_FORMAT_IS_DEFAULT
,
ID_CLOSE_NETLIST
,
ID_RUN_SIMULATOR
,
ID_SETUP_PLUGIN
,
ID_NETLIST_NOTEBOOK
...
...
@@ -39,8 +38,9 @@ enum panel_netlist_index {
PANELCUSTOMBASE
// Start auxiliary panels (custom netlists)
};
/* wxPanels for creating the NoteBook pages for each netlist format:
*/
*/
class
EDA_NoteBookPage
:
public
wxPanel
{
public
:
...
...
@@ -65,8 +65,8 @@ EDA_NoteBookPage::EDA_NoteBookPage(wxNotebook* parent, const wxString & title,
wxPanel
(
parent
,
-
1
)
/*****************************************************************************/
/* Contructor to create a setup page for one netlist format.
Used in Netlist format Dialog box creation
*/
*
Used in Netlist format Dialog box creation
*/
{
SetFont
(
*
g_DialogFont
);
m_IdNetType
=
id_NetType
;
...
...
@@ -89,44 +89,36 @@ EDA_NoteBookPage::EDA_NoteBookPage(wxNotebook* parent, const wxString & title,
UpperBoxSizer
->
Add
(
m_LeftBoxSizer
,
0
,
wxGROW
|
wxALL
,
5
);
UpperBoxSizer
->
Add
(
m_RightBoxSizer
,
0
,
wxALIGN_CENTER_VERTICAL
|
wxALL
,
5
);
if
(
idCheckBox
)
if
(
idCheckBox
)
{
wxStaticText
*
text
=
new
wxStaticText
(
this
,
-
1
,
_
(
"Options:"
));
m_LeftBoxSizer
->
Add
(
text
,
0
,
wxGROW
|
wxALL
,
5
);
m_IsCurrentFormat
=
new
wxCheckBox
(
this
,
idCheckBox
,
_
(
"Default format"
));
m_IsCurrentFormat
=
new
wxCheckBox
(
this
,
idCheckBox
,
_
(
"Default format"
));
m_LeftBoxSizer
->
Add
(
m_IsCurrentFormat
,
0
,
wxGROW
|
wxALL
,
5
);
if
(
g_NetFormat
==
m_IdNetType
)
if
(
g_NetFormat
==
m_IdNetType
)
m_IsCurrentFormat
->
SetValue
(
TRUE
);
}
if
(
idCreateFile
)
// Create the 2 standard buttons: Create File ans
Cancel
if
(
idCreateFile
)
// Create the 2 standard buttons: Create File and
Cancel
{
wxButton
*
Button
;
if
(
idCreateFile
==
ID_SETUP_PLUGIN
)
{
Button
=
new
wxButton
(
this
,
idCreateFile
,
_
(
"&Browse Plugin"
));
}
if
(
idCreateFile
==
ID_SETUP_PLUGIN
)
Button
=
new
wxButton
(
this
,
idCreateFile
,
_
(
"&Browse Plugin"
));
else
{
Button
=
new
wxButton
(
this
,
idCreateFile
,
_
(
"&Netlist"
));
}
Button
=
new
wxButton
(
this
,
idCreateFile
,
_
(
"&Netlist"
));
Button
->
SetForegroundColour
(
*
wxRED
);
m_RightBoxSizer
->
Add
(
Button
,
0
,
wxGROW
|
wxALL
,
5
);
m_ButtonCancel
=
Button
=
new
wxButton
(
this
,
ID_CLOSE_NETLIST
,
_
(
"&Close"
));
Button
=
new
wxButton
(
this
,
wxID_CANCEL
,
_
(
"&Cancel"
));
Button
->
SetForegroundColour
(
*
wxBLUE
);
m_RightBoxSizer
->
Add
(
Button
,
0
,
wxGROW
|
wxALL
,
5
);
}
}
#define CUSTOMPANEL_COUNTMAX 8
/* Dialog frame for creating netlists */
class
WinEDA_NetlistFrame
:
public
wxDialog
...
...
@@ -134,7 +126,7 @@ class WinEDA_NetlistFrame: public wxDialog
public
:
WinEDA_SchematicFrame
*
m_Parent
;
wxNotebook
*
m_NoteBook
;
EDA_NoteBookPage
*
m_PanelNetType
[
4
+
CUSTOMPANEL_COUNTMAX
];
EDA_NoteBookPage
*
m_PanelNetType
[
4
+
CUSTOMPANEL_COUNTMAX
];
wxRadioBox
*
m_UseNetNamesInNetlist
;
...
...
@@ -149,13 +141,13 @@ private:
void
GenNetlist
(
wxCommandEvent
&
event
);
void
RunSimulator
(
wxCommandEvent
&
event
);
void
NetlistUpdateOpt
();
void
NetlistExit
(
wxCommandEvent
&
event
);
void
OnCancelClick
(
wxCommandEvent
&
event
);
void
SelectNetlistType
(
wxCommandEvent
&
event
);
void
SetupPlugin
(
wxCommandEvent
&
event
);
DECLARE_EVENT_TABLE
()};
BEGIN_EVENT_TABLE
(
WinEDA_NetlistFrame
,
wxDialog
)
EVT_BUTTON
(
ID_CLOSE_NETLIST
,
WinEDA_NetlistFrame
::
NetlistExit
)
EVT_BUTTON
(
wxID_CANCEL
,
WinEDA_NetlistFrame
::
OnCancelClick
)
EVT_BUTTON
(
ID_CREATE_NETLIST
,
WinEDA_NetlistFrame
::
GenNetlist
)
EVT_BUTTON
(
ID_SETUP_PLUGIN
,
WinEDA_NetlistFrame
::
SetupPlugin
)
EVT_CHECKBOX
(
ID_CURRENT_FORMAT_IS_DEFAULT
,
WinEDA_NetlistFrame
::
SelectNetlistType
)
...
...
@@ -170,38 +162,41 @@ void InstallNetlistFrame(WinEDA_SchematicFrame *parent, wxPoint & pos)
*/
{
WinEDA_NetlistFrame
*
frame
=
new
WinEDA_NetlistFrame
(
parent
,
pos
);
frame
->
ShowModal
();
frame
->
Destroy
();
frame
->
ShowModal
();
frame
->
Destroy
();
}
#define H_SIZE 370
#define V_SIZE 300
/*************************************************************************************/
WinEDA_NetlistFrame
::
WinEDA_NetlistFrame
(
WinEDA_SchematicFrame
*
parent
,
wxPoint
&
framepos
)
:
wxDialog
(
parent
,
-
1
,
_
(
"Netlist"
),
framepos
,
wxSize
(
H_SIZE
,
V_SIZE
),
DIALOG_STYLE
|
MAYBE_RESIZE_BORDER
)
/*************************************************************************************/
/* Constructor for the netlist generation dialog box
*/
*/
{
int
ii
;
m_Parent
=
parent
;
SetFont
(
*
g_DialogFont
);
if
(
g_NetFormat
==
NET_TYPE_NOT_INIT
)
if
(
g_NetFormat
==
NET_TYPE_NOT_INIT
)
g_NetFormat
=
NET_TYPE_PCBNEW
;
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
{
m_PanelNetType
[
ii
]
=
NULL
;
}
if
(
(
framepos
.
x
==
-
1
)
&&
(
framepos
.
x
==
-
1
)
)
Centre
();
if
(
(
framepos
.
x
==
-
1
)
&&
(
framepos
.
y
==
-
1
)
)
Centre
();
wxBoxSizer
*
GeneralBoxSizer
=
new
wxBoxSizer
(
wxVERTICAL
);
SetSizer
(
GeneralBoxSizer
);
m_NoteBook
=
new
wxNotebook
(
this
,
ID_NETLIST_NOTEBOOK
,
wxDefaultPosition
,
wxSize
(
H_SIZE
-
6
,
V_SIZE
-
28
)
);
m_NoteBook
=
new
wxNotebook
(
this
,
ID_NETLIST_NOTEBOOK
,
wxDefaultPosition
,
wxSize
(
H_SIZE
-
6
,
V_SIZE
-
28
)
);
m_NoteBook
->
SetFont
(
*
g_DialogFont
);
GeneralBoxSizer
->
Add
(
m_NoteBook
,
0
,
wxGROW
|
wxALL
,
5
);
...
...
@@ -230,7 +225,6 @@ int ii;
m_PanelNetType
[
PANELPCBNEW
]
->
GetSizer
()
->
Fit
(
this
);
m_PanelNetType
[
PANELPCBNEW
]
->
GetSizer
()
->
SetSizeHints
(
this
);
GetSizer
()
->
Fit
(
this
);
GetSizer
()
->
SetSizeHints
(
this
);
}
...
...
@@ -240,47 +234,48 @@ int ii;
void
WinEDA_NetlistFrame
::
InstallPageSpice
()
/*************************************************/
/* Create the spice page
*/
*/
{
wxButton
*
Button
;
EDA_NoteBookPage
*
page
;
page
=
m_PanelNetType
[
PANELSPICE
]
=
new
EDA_NoteBookPage
(
m_NoteBook
,
wxT
(
"Spice"
),
NET_TYPE_SPICE
,
0
,
0
);
page
->
m_IsCurrentFormat
=
new
wxCheckBox
(
page
,
ID_CURRENT_FORMAT_IS_DEFAULT
,
_
(
"Default format"
));
page
->
m_IsCurrentFormat
->
SetValue
(
g_NetFormat
==
NET_TYPE_SPICE
);
page
->
m_IsCurrentFormat
=
new
wxCheckBox
(
page
,
ID_CURRENT_FORMAT_IS_DEFAULT
,
_
(
"Default format"
));
page
->
m_IsCurrentFormat
->
SetValue
(
g_NetFormat
==
NET_TYPE_SPICE
);
page
->
m_LeftBoxSizer
->
Add
(
page
->
m_IsCurrentFormat
,
0
,
wxGROW
|
wxALL
,
5
);
wxString
netlist_opt
[
2
]
=
{
_
(
"Use Net Names"
),
_
(
"Use Net Numbers"
)
};
m_UseNetNamesInNetlist
=
new
wxRadioBox
(
page
,
-
1
,
_
(
"Netlist Options:"
),
m_UseNetNamesInNetlist
=
new
wxRadioBox
(
page
,
-
1
,
_
(
"Netlist Options:"
),
wxDefaultPosition
,
wxDefaultSize
,
2
,
netlist_opt
,
1
,
wxRA_SPECIFY_COLS
);
if
(
!
g_OptNetListUseNames
)
m_UseNetNamesInNetlist
->
SetSelection
(
1
);
if
(
!
g_OptNetListUseNames
)
m_UseNetNamesInNetlist
->
SetSelection
(
1
);
page
->
m_LeftBoxSizer
->
Add
(
m_UseNetNamesInNetlist
,
0
,
wxGROW
|
wxALL
,
5
);
page
->
m_CommandStringCtrl
=
new
WinEDA_EnterText
(
page
,
page
->
m_CommandStringCtrl
=
new
WinEDA_EnterText
(
page
,
_
(
"Simulator command:"
),
g_SimulatorCommandLine
,
page
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
page
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
// Add buttons
Button
=
new
wxButton
(
page
,
ID_CREATE_NETLIST
,
_
(
"Netlist"
)
);
Button
=
new
wxButton
(
page
,
ID_CREATE_NETLIST
,
_
(
"Netlist"
)
);
Button
->
SetForegroundColour
(
*
wxRED
);
page
->
m_RightBoxSizer
->
Add
(
Button
,
0
,
wxGROW
|
wxALL
,
5
);
Button
=
new
wxButton
(
page
,
ID_RUN_SIMULATOR
,
_
(
"&Run Simulator"
));
Button
->
SetForegroundColour
(
wxColour
(
0
,
100
,
0
)
);
Button
->
SetForegroundColour
(
wxColour
(
0
,
100
,
0
)
);
page
->
m_RightBoxSizer
->
Add
(
Button
,
0
,
wxGROW
|
wxALL
,
5
);
Button
=
new
wxButton
(
page
,
ID_CLOSE_NETLIST
,
_
(
"&Close
"
));
Button
=
new
wxButton
(
page
,
wxID_CANCEL
,
_
(
"&Cancel
"
));
Button
->
SetForegroundColour
(
*
wxBLUE
);
page
->
m_RightBoxSizer
->
Add
(
Button
,
0
,
wxGROW
|
wxALL
,
5
);
}
/*************************************************/
void
WinEDA_NetlistFrame
::
InstallCustomPages
()
/*************************************************/
/* create the pages for custom netlist format selection:
*/
*/
{
int
ii
,
CustomCount
;
wxString
title
,
previoustitle
,
msg
;
...
...
@@ -288,35 +283,38 @@ EDA_NoteBookPage * CurrPage;
CustomCount
=
CUSTOMPANEL_COUNTMAX
;
previoustitle
=
wxT
(
"dummy_title"
);
for
(
ii
=
0
;
ii
<
CustomCount
;
ii
++
)
for
(
ii
=
0
;
ii
<
CustomCount
;
ii
++
)
{
msg
=
CUSTOM_NETLIST_TITLE
;
msg
<<
ii
+
1
;
msg
=
CUSTOM_NETLIST_TITLE
;
msg
<<
ii
+
1
;
title
=
m_Parent
->
m_Parent
->
m_EDA_Config
->
Read
(
msg
);
// Install the panel only if it is the first panel not initialised
if
(
(
title
.
IsEmpty
())
&&
(
previoustitle
.
IsEmpty
()
)
)
break
;
if
(
title
.
IsEmpty
()
&&
previoustitle
.
IsEmpty
()
)
break
;
previoustitle
=
title
;
if
(
title
.
IsEmpty
()
)
if
(
title
.
IsEmpty
()
)
CurrPage
=
m_PanelNetType
[
PANELCUSTOMBASE
+
ii
]
=
new
EDA_NoteBookPage
(
m_NoteBook
,
_
(
"Add Plugin"
),
NET_TYPE_CUSTOM1
+
ii
,
ID_CURRENT_FORMAT_IS_DEFAULT
,
ID_SETUP_PLUGIN
);
ID_CURRENT_FORMAT_IS_DEFAULT
,
ID_SETUP_PLUGIN
);
else
CurrPage
=
m_PanelNetType
[
PANELCUSTOMBASE
+
ii
]
=
new
EDA_NoteBookPage
(
m_NoteBook
,
title
,
NET_TYPE_CUSTOM1
+
ii
,
ID_CURRENT_FORMAT_IS_DEFAULT
,
ID_CREATE_NETLIST
);
ID_CURRENT_FORMAT_IS_DEFAULT
,
ID_CREATE_NETLIST
);
msg
=
CUSTOM_NETLIST_COMMAND
;
msg
<<
ii
+
1
;
msg
=
CUSTOM_NETLIST_COMMAND
;
msg
<<
ii
+
1
;
wxString
Command
=
m_Parent
->
m_Parent
->
m_EDA_Config
->
Read
(
msg
);
CurrPage
->
m_CommandStringCtrl
=
new
WinEDA_EnterText
(
CurrPage
,
CurrPage
->
m_CommandStringCtrl
=
new
WinEDA_EnterText
(
CurrPage
,
_
(
"Netlist command:"
),
Command
,
CurrPage
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
CurrPage
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
CurrPage
->
m_TitleStringCtrl
=
new
WinEDA_EnterText
(
CurrPage
,
CurrPage
->
m_TitleStringCtrl
=
new
WinEDA_EnterText
(
CurrPage
,
_
(
"Title:"
),
title
,
CurrPage
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
CurrPage
->
m_LowBoxSizer
,
wxSize
(
H_SIZE
-
10
,
-
1
)
);
}
}
...
...
@@ -325,7 +323,7 @@ EDA_NoteBookPage * CurrPage;
void
WinEDA_NetlistFrame
::
SetupPlugin
(
wxCommandEvent
&
event
)
/***********************************************************/
/* Browse the plugin files and set the m_CommandStringCtrl field
*/
*/
{
wxString
FullFileName
,
Mask
,
Path
;
Mask
=
wxT
(
"*"
);
...
...
@@ -339,17 +337,19 @@ wxString FullFileName, Mask, Path;
wxFD_OPEN
,
TRUE
);
if
(
FullFileName
.
IsEmpty
()
)
return
;
if
(
FullFileName
.
IsEmpty
()
)
return
;
EDA_NoteBookPage
*
CurrPage
;
CurrPage
=
(
EDA_NoteBookPage
*
)
m_NoteBook
->
GetCurrentPage
();
if
(
CurrPage
==
NULL
)
return
;
if
(
CurrPage
==
NULL
)
return
;
CurrPage
->
m_CommandStringCtrl
->
SetValue
(
FullFileName
);
/* Get a title for thg
is page */
/* Get a title for th
is page */
wxString
title
=
CurrPage
->
m_TitleStringCtrl
->
GetValue
();
if
(
title
.
IsEmpty
()
)
if
(
title
.
IsEmpty
()
)
DisplayInfo
(
this
,
_
(
"Now, you must choose a title for this netlist control page
\n
and close the dialog box"
));
}
...
...
@@ -362,18 +362,19 @@ void WinEDA_NetlistFrame::SelectNetlistType(wxCommandEvent& event)
int
ii
;
EDA_NoteBookPage
*
CurrPage
;
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
if
(
m_PanelNetType
[
ii
]
)
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
if
(
m_PanelNetType
[
ii
]
)
m_PanelNetType
[
ii
]
->
m_IsCurrentFormat
->
SetValue
(
FALSE
);
CurrPage
=
(
EDA_NoteBookPage
*
)
m_NoteBook
->
GetCurrentPage
();
if
(
CurrPage
==
NULL
)
return
;
if
(
CurrPage
==
NULL
)
return
;
g_NetFormat
=
CurrPage
->
m_IdNetType
;
CurrPage
->
m_IsCurrentFormat
->
SetValue
(
TRUE
);
}
/***********************************************/
void
WinEDA_NetlistFrame
::
NetlistUpdateOpt
()
/***********************************************/
...
...
@@ -384,23 +385,26 @@ int ii;
m_PanelNetType
[
PANELSPICE
]
->
m_CommandStringCtrl
->
GetValue
();
g_NetFormat
=
NET_TYPE_PCBNEW
;
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
for
(
ii
=
0
;
ii
<
PANELCUSTOMBASE
+
CUSTOMPANEL_COUNTMAX
;
ii
++
)
{
if
(
m_PanelNetType
[
ii
]
==
NULL
)
break
;
if
(
m_PanelNetType
[
ii
]
->
m_IsCurrentFormat
->
GetValue
()
==
TRUE
)
if
(
m_PanelNetType
[
ii
]
==
NULL
)
break
;
if
(
m_PanelNetType
[
ii
]
->
m_IsCurrentFormat
->
GetValue
()
==
TRUE
)
g_NetFormat
=
m_PanelNetType
[
ii
]
->
m_IdNetType
;
}
g_OptNetListUseNames
=
TRUE
;
// Used for pspice, gnucap
if
(
m_UseNetNamesInNetlist
->
GetSelection
()
==
1
)
if
(
m_UseNetNamesInNetlist
->
GetSelection
()
==
1
)
g_OptNetListUseNames
=
FALSE
;
}
/**********************************************************/
void
WinEDA_NetlistFrame
::
GenNetlist
(
wxCommandEvent
&
event
)
/**********************************************************/
{
wxString
FullFileName
,
FileExt
,
Mask
;
wxString
msg
,
Command
;
int
netformat_tmp
=
g_NetFormat
;
NetlistUpdateOpt
();
...
...
@@ -413,14 +417,16 @@ EDA_NoteBookPage * CurrPage;
/* Calcul du nom du fichier netlist */
FullFileName
=
ScreenSch
->
m_FileName
;
switch
(
g_NetFormat
)
switch
(
g_NetFormat
)
{
case
NET_TYPE_SPICE
:
FileExt
=
wxT
(
".cir"
);
break
;
case
NET_TYPE_CADSTAR
:
FileExt
=
wxT
(
".frp"
);
break
;
default
:
FileExt
=
g_NetExtBuffer
;
break
;
...
...
@@ -438,35 +444,37 @@ EDA_NoteBookPage * CurrPage;
wxFD_SAVE
,
TRUE
);
if
(
FullFileName
.
IsEmpty
()
)
return
;
if
(
FullFileName
.
IsEmpty
()
)
return
;
m_Parent
->
MsgPanel
->
EraseMsgBox
();
ReAnnotatePowerSymbolsOnly
();
if
(
CheckAnnotate
(
m_Parent
,
0
)
)
{
if
(
!
IsOK
(
this
,
_
(
"Must be Annotated, Continue ?"
))
)
if
(
!
IsOK
(
this
,
_
(
"Must be Annotated, Continue ?"
)
)
)
return
;
}
/* Cleanup the entire hierarchy */
EDA_ScreenList
ScreenList
(
NULL
);
for
(
SCH_SCREEN
*
screen
=
ScreenList
.
GetFirst
();
screen
!=
NULL
;
screen
=
ScreenList
.
GetNext
()
)
for
(
SCH_SCREEN
*
screen
=
ScreenList
.
GetFirst
();
screen
!=
NULL
;
screen
=
ScreenList
.
GetNext
()
)
{
bool
ModifyWires
;
ModifyWires
=
screen
->
SchematicCleanUp
(
NULL
);
/*
if wire list has changed, delete the Undo Redo list to avoid
pointer problems with deleted data */
if
(
ModifyWires
)
//
if wire list has changed, delete the Undo Redo list to avoid
// pointer problems with deleted data
if
(
ModifyWires
)
screen
->
ClearUndoRedoList
();
}
m_Parent
->
BuildNetListBase
();
if
(
CurrPage
->
m_CommandStringCtrl
)
if
(
CurrPage
->
m_CommandStringCtrl
)
g_NetListerCommandLine
=
CurrPage
->
m_CommandStringCtrl
->
GetValue
();
else
g_NetListerCommandLine
.
Empty
();
else
g_NetListerCommandLine
.
Empty
();
switch
(
g_NetFormat
)
switch
(
g_NetFormat
)
{
default
:
WriteNetList
(
m_Parent
,
FullFileName
,
TRUE
);
...
...
@@ -478,48 +486,51 @@ EDA_NoteBookPage * CurrPage;
case
NET_TYPE_SPICE
:
g_OptNetListUseNames
=
TRUE
;
// Used for pspice, gnucap
if
(
m_UseNetNamesInNetlist
->
GetSelection
()
==
1
)
if
(
m_UseNetNamesInNetlist
->
GetSelection
()
==
1
)
g_OptNetListUseNames
=
FALSE
;
WriteNetList
(
m_Parent
,
FullFileName
,
g_OptNetListUseNames
);
break
;
}
FreeTabNetList
(
g_TabObjNet
,
g_NbrObjNet
);
FreeTabNetList
(
g_TabObjNet
,
g_NbrObjNet
);
g_NetFormat
=
netformat_tmp
;
NetlistExit
(
event
);
}
/***********************************************************/
void
WinEDA_NetlistFrame
::
NetlistExit
(
wxCommandEvent
&
event
)
/***********************************************************/
{
wxString
msg
,
Command
;
NetlistUpdateOpt
();
// Update the new titles
for
(
int
ii
=
0
;
ii
<
CUSTOMPANEL_COUNTMAX
;
ii
++
)
for
(
int
ii
=
0
;
ii
<
CUSTOMPANEL_COUNTMAX
;
ii
++
)
{
EDA_NoteBookPage
*
CurrPage
=
m_PanelNetType
[
ii
+
PANELCUSTOMBASE
];
if
(
CurrPage
==
NULL
)
break
;
msg
=
wxT
(
"Custom"
);
msg
<<
ii
+
1
;
if
(
CurrPage
->
m_TitleStringCtrl
)
if
(
CurrPage
==
NULL
)
break
;
msg
=
wxT
(
"Custom"
);
msg
<<
ii
+
1
;
if
(
CurrPage
->
m_TitleStringCtrl
)
{
wxString
title
=
CurrPage
->
m_TitleStringCtrl
->
GetValue
();
if
(
msg
!=
title
)
// Title has changed, Update config
if
(
msg
!=
title
)
// Title has changed, Update config
{
msg
=
CUSTOM_NETLIST_TITLE
;
msg
<<
ii
+
1
;
msg
=
CUSTOM_NETLIST_TITLE
;
msg
<<
ii
+
1
;
m_Parent
->
m_Parent
->
m_EDA_Config
->
Write
(
msg
,
title
);
}
}
if
(
CurrPage
->
m_CommandStringCtrl
)
if
(
CurrPage
->
m_CommandStringCtrl
)
{
Command
=
CurrPage
->
m_CommandStringCtrl
->
GetValue
();
msg
=
CUSTOM_NETLIST_COMMAND
;
msg
<<
ii
+
1
;
msg
=
CUSTOM_NETLIST_COMMAND
;
msg
<<
ii
+
1
;
m_Parent
->
m_Parent
->
m_EDA_Config
->
Write
(
msg
,
Command
);
}
}
Close
();
EndModal
(
0
);
}
/***********************************************************/
void
WinEDA_NetlistFrame
::
OnCancelClick
(
wxCommandEvent
&
event
)
/***********************************************************/
{
EndModal
(
-
1
);
}
...
...
@@ -545,4 +556,3 @@ wxString NetlistFullFileName, ExecFile, CommandLine;
ExecuteFile
(
this
,
ExecFile
,
CommandLine
);
}
gerbview/select_layers_to_pcb.cpp
View file @
67feced1
...
...
@@ -176,8 +176,8 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame(WinEDA_GerberFrame *parent) :
// pcbnew layer that the Gerber layer has been mapped to). Each of those items are
// placed into the left hand column, middle column, and right hand column
// (respectively) of the Flexgrid sizer, and the color of the second text string
// is set to
blue (to indicate that the actual text changes depending upon which
//
pcbnew layer has been selected by the child dialog box
).
// is set to
fushia or blue (to respectively indicate whether the Gerber layer has
//
been mapped to a pcbnew layer or is not being exported at all
).
// (Experimentation has shown that if a text control is used to depict which
// pcbnew layer that each Gerber layer is mapped to (instead of a static text
// string), then those controls do not behave in a fully satisfactory manner in
...
...
@@ -224,7 +224,7 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame(WinEDA_GerberFrame *parent) :
// Provide another text string to specify which pcbnew layer that this
// Gerber layer is initially mapped to, and set the initial text to
// specify the appropriate pcbnew layer, and set the foreground color
// of the text to
blue (to indicate that the text can be chang
ed).
// of the text to
fushia (to indicate that the layer is being export
ed).
item_ID
=
ID_TEXT_0
+
ii
;
// When the first of these text strings is being added, determine what size is necessary to
...
...
@@ -252,7 +252,7 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame(WinEDA_GerberFrame *parent) :
text
=
new
wxStaticText
(
this
,
item_ID
,
msg
,
wxDefaultPosition
,
wxDefaultSize
,
0
);
}
text
->
SetMinSize
(
goodSize
);
text
->
SetForegroundColour
(
*
wxBLUE
);
text
->
SetForegroundColour
(
wxColour
(
255
,
0
,
128
)
);
FlexColumnBoxSizer
->
Add
(
text
,
1
,
wxALIGN_LEFT
|
wxALIGN_CENTER_VERTICAL
|
wxLEFT
|
wxRIGHT
|
wxBOTTOM
,
5
);
layer_list
[
ii
]
=
text
;
...
...
@@ -278,7 +278,7 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame(WinEDA_GerberFrame *parent) :
// using that type of sizer results in those buttons being automatically
// located in positions appropriate for each (OS) version of KiCad.
StdDialogButtonSizer
=
new
wxStdDialogButtonSizer
;
OuterBoxSizer
->
Add
(
StdDialogButtonSizer
,
0
,
wx
ALIGN_RIGHT
|
wxALL
,
10
);
OuterBoxSizer
->
Add
(
StdDialogButtonSizer
,
0
,
wx
GROW
|
wxALL
,
10
);
Button
=
new
wxButton
(
this
,
wxID_OK
,
_
(
"&OK"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
Button
->
SetForegroundColour
(
*
wxRED
);
...
...
@@ -323,9 +323,19 @@ void WinEDA_SwapLayerFrame::Sel_Layer(wxCommandEvent& event)
{
LayerLookUpTable
[
ButtonTable
[
ii
]]
=
jj
;
if
(
jj
==
NB_LAYERS
)
{
layer_list
[
ii
]
->
SetLabel
(
_
(
"Do not export"
)
);
// Change the text color to blue (to highlight
// that this layer is *not* being exported)
layer_list
[
ii
]
->
SetForegroundColour
(
*
wxBLUE
);
}
else
{
layer_list
[
ii
]
->
SetLabel
(
ReturnPcbLayerName
(
jj
)
);
// Change the text color to fushia (to highlight
// that this layer *is* being exported)
layer_list
[
ii
]
->
SetForegroundColour
(
wxColour
(
255
,
0
,
128
)
);
}
}
}
...
...
pcbnew/swap_layers.cpp
View file @
67feced1
...
...
@@ -125,9 +125,9 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame( WinEDA_BasePcbFrame* parent ) :
// layer is mapped to), and a second static text string (to depict which layer
// that the layer has been mapped to). Each of those items are placed into
// the left hand column, middle column, and right hand column (respectively)
// of the Flexgrid sizer, and the color of the second text string is set to
blue
//
(to indicate that the actual text changes depending upon which
layer has been
// s
elected by the child dialog box
).
// of the Flexgrid sizer, and the color of the second text string is set to
//
fushia or blue (to respectively indicate whether the
layer has been
// s
wapped to another layer or is not being swapped at all
).
// (Experimentation has shown that if a text control is used to depict which
// layer that each layer is mapped to (instead of a static text string), then
// those controls do not behave in a fully satisfactory manner in the Linux
...
...
@@ -165,7 +165,8 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame( WinEDA_BasePcbFrame* parent ) :
// Provide another text string to specify which layer that this layer is
// mapped to, set the initial text to "No Change" (to indicate that this
// layer is currently unmapped to any other layer), and set the foreground
// color of the text to blue (to indicate that the text can be changed).
// color of the text to blue (which also indicates that the layer is
// currently unmapped to any other layer).
item_ID
=
ID_TEXT_0
+
ii
;
// When the first of these text strings is being added, determine what size is necessary to
...
...
@@ -213,7 +214,7 @@ WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame( WinEDA_BasePcbFrame* parent ) :
// using that type of sizer results in those buttons being automatically
// located in positions appropriate for each (OS) version of KiCad.
StdDialogButtonSizer
=
new
wxStdDialogButtonSizer
;
OuterBoxSizer
->
Add
(
StdDialogButtonSizer
,
0
,
wx
ALIGN_RIGHT
|
wxALL
,
10
);
OuterBoxSizer
->
Add
(
StdDialogButtonSizer
,
0
,
wx
GROW
|
wxALL
,
10
);
Button
=
new
wxButton
(
this
,
wxID_OK
,
_
(
"&OK"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
Button
->
SetForegroundColour
(
*
wxRED
);
...
...
@@ -270,9 +271,19 @@ void WinEDA_SwapLayerFrame::Sel_Layer( wxCommandEvent& event )
{
New_Layer
[
ii
]
=
jj
;
if
(
jj
==
NB_LAYERS
)
{
layer_list
[
ii
]
->
SetLabel
(
_
(
"No Change"
)
);
// Change the text color to blue (to highlight
// that this layer is *not* being swapped)
layer_list
[
ii
]
->
SetForegroundColour
(
*
wxBLUE
);
}
else
{
layer_list
[
ii
]
->
SetLabel
(
ReturnPcbLayerName
(
jj
)
);
// Change the text color to fushia (to highlight
// that this layer *is* being swapped)
layer_list
[
ii
]
->
SetForegroundColour
(
wxColour
(
255
,
0
,
128
)
);
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment