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
430a39d7
Commit
430a39d7
authored
Mar 01, 2011
by
Marco Mattila
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Modify pcbnew plot and zone dialogs. Policy fixes in dialog_copper_zone.
parent
1010601a
Changes
10
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
3766 additions
and
3673 deletions
+3766
-3673
dialog_copper_zones.cpp
pcbnew/dialogs/dialog_copper_zones.cpp
+34
-63
dialog_copper_zones.h
pcbnew/dialogs/dialog_copper_zones.h
+24
-2
dialog_copper_zones_base.cpp
pcbnew/dialogs/dialog_copper_zones_base.cpp
+247
-247
dialog_copper_zones_base.fbp
pcbnew/dialogs/dialog_copper_zones_base.fbp
+3222
-3222
dialog_copper_zones_base.h
pcbnew/dialogs/dialog_copper_zones_base.h
+126
-125
dialog_plot_base.cpp
pcbnew/dialogs/dialog_plot_base.cpp
+4
-0
dialog_plot_base.fbp
pcbnew/dialogs/dialog_plot_base.fbp
+86
-0
dialog_plot_base.h
pcbnew/dialogs/dialog_plot_base.h
+2
-0
pcbplot.cpp
pcbnew/pcbplot.cpp
+19
-12
zones_by_polygon.cpp
pcbnew/zones_by_polygon.cpp
+2
-2
No files found.
pcbnew/dialogs/dialog_copper_zones.cpp
View file @
430a39d7
...
...
@@ -24,24 +24,19 @@
#define LAYER_BITMAP_SIZE_X 20
#define LAYER_BITMAP_SIZE_Y 10
/
* the filter to show nets (default * "*").
* static to keep this pattern for an entire pcbnew session
*/
wxS
tring
dialog_copper_zone
::
m_netNameShowFilter
(
wxT
(
"*"
)
)
;
/
/ Initialize static member variables
wxString
DIALOG_COPPER_ZONE
::
m_netNameShowFilter
(
wxT
(
"*"
)
);
wxPoint
DIALOG_COPPER_ZONE
::
prevPosition
(
-
1
,
-
1
);
wxS
ize
DIALOG_COPPER_ZONE
::
prevSize
;
wxPoint
dialog_copper_zone
::
prevPosition
(
-
1
,
-
1
);
wxSize
dialog_copper_zone
::
prevSize
;
dialog_copper_zone
::
dialog_copper_zone
(
PCB_EDIT_FRAME
*
parent
,
ZONE_SETTING
*
zone_setting
)
:
dialog_copper_zone_base
(
parent
)
DIALOG_COPPER_ZONE
::
DIALOG_COPPER_ZONE
(
PCB_EDIT_FRAME
*
parent
,
ZONE_SETTING
*
zone_setting
)
:
DIALOG_COPPER_ZONE_BASE
(
parent
)
{
m_Parent
=
parent
;
m_Config
=
wxGetApp
().
m_EDA_Config
;
m_Zone_Setting
=
zone_setting
;
m_NetSortingByPadCount
=
true
;
/* false = alphabetic sort.
* true = pad count sort.
*/
m_NetSortingByPadCount
=
true
;
// false = alphabetic sort, true = pad count sort
m_OnExitCode
=
ZONE_ABORT
;
SetReturnCode
(
ZONE_ABORT
);
// Will be changed on buttons click
...
...
@@ -56,22 +51,24 @@ dialog_copper_zone::dialog_copper_zone( PCB_EDIT_FRAME* parent, ZONE_SETTING* zo
m_layerSizer
->
Add
(
m_LayerSelectionCtrl
,
1
,
wxGROW
|
wxLEFT
|
wxRIGHT
|
wxBOTTOM
,
5
);
// Fix static text widget minimum width to a suitable value so that
// resizing the dialog is not necessary when changing the corner smoothing type.
// Depends on the default text in the widget.
m_cornerSmoothingTitle
->
SetMinSize
(
m_cornerSmoothingTitle
->
GetSize
()
);
initDialog
();
GetSizer
()
->
SetSizeHints
(
this
);
Center
();
if
(
prevPosition
.
x
!=
-
1
)
SetSize
(
prevPosition
.
x
,
prevPosition
.
y
,
prevSize
.
x
,
prevSize
.
y
);
else
Center
();
}
/*****************************************************************/
void
dialog_copper_zone
::
initDialog
()
/*****************************************************************/
// Initialise all dialog options and values in wxTextCtrl
void
DIALOG_COPPER_ZONE
::
initDialog
()
{
BOARD
*
board
=
m_Parent
->
GetBoard
();
...
...
@@ -202,15 +199,13 @@ void dialog_copper_zone::initDialog()
}
/********************************************************************/
void
dialog_copper_zone
::
OnButtonCancelClick
(
wxCommandEvent
&
event
)
/********************************************************************/
void
DIALOG_COPPER_ZONE
::
OnButtonCancelClick
(
wxCommandEvent
&
event
)
{
Close
(
true
);
}
void
dialog_copper_zone
::
OnClose
(
wxCloseEvent
&
event
)
void
DIALOG_COPPER_ZONE
::
OnClose
(
wxCloseEvent
&
event
)
{
prevPosition
=
GetPosition
();
prevSize
=
GetSize
();
...
...
@@ -218,7 +213,7 @@ void dialog_copper_zone::OnClose( wxCloseEvent& event )
}
void
dialog_copper_zone
::
OnSize
(
wxSizeEvent
&
event
)
void
DIALOG_COPPER_ZONE
::
OnSize
(
wxSizeEvent
&
event
)
{
Layout
();
...
...
@@ -228,7 +223,7 @@ void dialog_copper_zone::OnSize( wxSizeEvent& event )
}
void
dialog_copper_zone
::
OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
)
void
DIALOG_COPPER_ZONE
::
OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
)
{
int
selection
=
m_cornerSmoothingChoice
->
GetSelection
();
...
...
@@ -254,16 +249,7 @@ void dialog_copper_zone::OnCornerSmoothingModeChoice( wxCommandEvent& event )
}
/********************************************************************************************/
bool
dialog_copper_zone
::
AcceptOptions
(
bool
aPromptForErrors
,
bool
aUseExportableSetupOnly
)
/********************************************************************************************/
/**
* Function AcceptOptions(
* @return false if incorrect options, true if Ok.
* @param aPromptForErrors = true to prompt user on incorrectparams
* @param aUseExportableSetupOnly = true to use exportable parametres only (used to export this setup to other zones)
*/
bool
DIALOG_COPPER_ZONE
::
AcceptOptions
(
bool
aPromptForErrors
,
bool
aUseExportableSetupOnly
)
{
switch
(
m_PadInZoneOpt
->
GetSelection
()
)
{
...
...
@@ -365,8 +351,9 @@ bool dialog_copper_zone::AcceptOptions( bool aPromptForErrors, bool aUseExportab
if
(
aUseExportableSetupOnly
)
return
true
;
/
* Get the layer selection for this zone */
/
/ Get the layer selection for this zone
int
ii
=
m_LayerSelectionCtrl
->
GetFirstSelected
();
if
(
ii
<
0
&&
aPromptForErrors
)
{
DisplayError
(
this
,
_
(
"No layer selected."
)
);
...
...
@@ -375,8 +362,9 @@ bool dialog_copper_zone::AcceptOptions( bool aPromptForErrors, bool aUseExportab
m_Zone_Setting
->
m_CurrentZone_Layer
=
m_LayerId
[
ii
];
/
* Get the net name selection for this zone */
/
/ Get the net name selection for this zone
ii
=
m_ListNetNameSelection
->
GetSelection
();
if
(
ii
<
0
&&
aPromptForErrors
)
{
DisplayError
(
this
,
_
(
"No net selected."
)
);
...
...
@@ -395,7 +383,7 @@ bool dialog_copper_zone::AcceptOptions( bool aPromptForErrors, bool aUseExportab
g_Zone_Default_Setting
.
m_NetcodeSelection
=
0
;
/
* Search net_code for this net, if a net was selected */
/
/ Search net_code for this net, if a net was selected
if
(
m_ListNetNameSelection
->
GetSelection
()
>
0
)
{
NETINFO_ITEM
*
net
=
m_Parent
->
GetBoard
()
->
FindNet
(
net_name
);
...
...
@@ -407,9 +395,7 @@ bool dialog_copper_zone::AcceptOptions( bool aPromptForErrors, bool aUseExportab
}
/***************************************************************************/
void
dialog_copper_zone
::
OnNetSortingOptionSelected
(
wxCommandEvent
&
event
)
/***************************************************************************/
void
DIALOG_COPPER_ZONE
::
OnNetSortingOptionSelected
(
wxCommandEvent
&
event
)
{
initListNetsParams
();
buildAvailableListOfNets
();
...
...
@@ -424,9 +410,7 @@ void dialog_copper_zone::OnNetSortingOptionSelected( wxCommandEvent& event )
}
/*****************************************************************/
void
dialog_copper_zone
::
OnButtonOkClick
(
wxCommandEvent
&
event
)
/*****************************************************************/
void
DIALOG_COPPER_ZONE
::
OnButtonOkClick
(
wxCommandEvent
&
event
)
{
m_netNameShowFilter
=
m_ShowNetNameFilter
->
GetValue
();
prevPosition
=
GetPosition
();
...
...
@@ -437,9 +421,7 @@ void dialog_copper_zone::OnButtonOkClick( wxCommandEvent& event )
}
/******************************************************************************/
void
dialog_copper_zone
::
ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
)
/******************************************************************************/
void
DIALOG_COPPER_ZONE
::
ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
)
{
prevPosition
=
GetPosition
();
prevSize
=
GetSize
();
...
...
@@ -460,9 +442,7 @@ void dialog_copper_zone::ExportSetupToOtherCopperZones( wxCommandEvent& event )
}
/******************************************************************/
void
dialog_copper_zone
::
OnPadsInZoneClick
(
wxCommandEvent
&
event
)
/******************************************************************/
void
DIALOG_COPPER_ZONE
::
OnPadsInZoneClick
(
wxCommandEvent
&
event
)
{
switch
(
m_PadInZoneOpt
->
GetSelection
()
)
{
...
...
@@ -479,10 +459,7 @@ void dialog_copper_zone::OnPadsInZoneClick( wxCommandEvent& event )
}
/** init m_NetSortingByPadCount and m_NetFiltering values
* according to m_NetDisplayOption selection
*/
void
dialog_copper_zone
::
initListNetsParams
()
void
DIALOG_COPPER_ZONE
::
initListNetsParams
()
{
switch
(
m_NetDisplayOption
->
GetSelection
()
)
{
...
...
@@ -509,15 +486,11 @@ void dialog_copper_zone::initListNetsParams()
}
/* Called when clicking on Apply Filter button
* Rebuild the list of nets with the currents filters settings.
* If the net display options is not a filtered option, force this option
*/
void
dialog_copper_zone
::
OnRunFiltersButtonClick
(
wxCommandEvent
&
event
)
void
DIALOG_COPPER_ZONE
::
OnRunFiltersButtonClick
(
wxCommandEvent
&
event
)
{
m_netNameShowFilter
=
m_ShowNetNameFilter
->
GetValue
();
// Ensure filtered option for nets
:
// Ensure filtered option for nets
if
(
m_NetDisplayOption
->
GetSelection
()
==
0
)
m_NetDisplayOption
->
SetSelection
(
2
);
else
if
(
m_NetDisplayOption
->
GetSelection
()
==
1
)
...
...
@@ -527,7 +500,7 @@ void dialog_copper_zone::OnRunFiltersButtonClick( wxCommandEvent& event )
}
void
dialog_copper_zone
::
buildAvailableListOfNets
()
void
DIALOG_COPPER_ZONE
::
buildAvailableListOfNets
()
{
wxArrayString
listNetName
;
...
...
@@ -577,18 +550,16 @@ void dialog_copper_zone::buildAvailableListOfNets()
}
wxBitmap
dialog_copper_zone
::
makeLayerBitmap
(
int
aColor
)
wxBitmap
DIALOG_COPPER_ZONE
::
makeLayerBitmap
(
int
aColor
)
{
wxBitmap
bitmap
(
LAYER_BITMAP_SIZE_X
,
LAYER_BITMAP_SIZE_Y
);
wxBrush
brush
;
wxMemoryDC
iconDC
;
iconDC
.
SelectObject
(
bitmap
);
brush
.
SetColour
(
MakeColour
(
aColor
)
);
brush
.
SetStyle
(
wxSOLID
);
iconDC
.
SetBrush
(
brush
);
iconDC
.
DrawRectangle
(
0
,
0
,
LAYER_BITMAP_SIZE_X
,
LAYER_BITMAP_SIZE_Y
);
return
bitmap
;
...
...
pcbnew/dialogs/dialog_copper_zones.h
View file @
430a39d7
...
...
@@ -9,7 +9,7 @@
/* here is the derivated class from dialog_copper_zone_frame created by wxFormBuilder
*/
class
dialog_copper_zone
:
public
dialog_copper_zone_base
class
DIALOG_COPPER_ZONE
:
public
DIALOG_COPPER_ZONE_BASE
{
private
:
PCB_EDIT_FRAME
*
m_Parent
;
...
...
@@ -35,21 +35,43 @@ private:
static
wxSize
prevSize
;
public
:
dialog_copper_zone
(
PCB_EDIT_FRAME
*
parent
,
ZONE_SETTING
*
zone_setting
);
DIALOG_COPPER_ZONE
(
PCB_EDIT_FRAME
*
parent
,
ZONE_SETTING
*
zone_setting
);
private
:
/** Function initDialog
* fills in the dialog controls using the current settings.
*/
void
initDialog
();
void
OnButtonOkClick
(
wxCommandEvent
&
event
);
void
OnButtonCancelClick
(
wxCommandEvent
&
event
);
void
OnClose
(
wxCloseEvent
&
event
);
void
OnSize
(
wxSizeEvent
&
event
);
void
OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
);
/**
* Function AcceptOptions
* @param aPromptForErrors is true to prompt user on incorrect params.
* @param aUseExportableSetupOnly is true to use exportable parametres only (used to export this setup to other zones).
* @return bool - false if incorrect options, true if ok.
*/
bool
AcceptOptions
(
bool
aPromptForErrors
,
bool
aUseExportableSetupOnly
=
false
);
void
OnNetSortingOptionSelected
(
wxCommandEvent
&
event
);
void
ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
);
void
OnPadsInZoneClick
(
wxCommandEvent
&
event
);
void
OnRunFiltersButtonClick
(
wxCommandEvent
&
event
);
void
buildAvailableListOfNets
();
/** Function initListNetsParams
* initializes m_NetSortingByPadCount and m_NetFiltering values
* according to m_NetDisplayOption selection.
*/
void
initListNetsParams
();
/**
* Function makeLayerBitmap
* creates the colored rectangle bitmaps used in the layer selection widget.
* @param aColor is the color to fill the rectangle with.
*/
wxBitmap
makeLayerBitmap
(
int
aColor
);
};
#endif // #ifndef DIALOG_COPPER_ZONES
pcbnew/dialogs/dialog_copper_zones_base.cpp
View file @
430a39d7
This diff is collapsed.
Click to expand it.
pcbnew/dialogs/dialog_copper_zones_base.fbp
View file @
430a39d7
This diff is collapsed.
Click to expand it.
pcbnew/dialogs/dialog_copper_zones_base.h
View file @
430a39d7
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Nov 17 2010)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
#ifndef __dialog_copper_zones_base__
#define __dialog_copper_zones_base__
#include <wx/intl.h>
#include <wx/string.h>
#include <wx/stattext.h>
#include <wx/gdicmn.h>
#include <wx/font.h>
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/sizer.h>
#include <wx/listbox.h>
#include <wx/choice.h>
#include <wx/textctrl.h>
#include <wx/button.h>
#include <wx/statbox.h>
#include <wx/dialog.h>
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/// Class dialog_copper_zone_base
///////////////////////////////////////////////////////////////////////////////
class
dialog_copper_zone_base
:
public
wxDialog
{
DECLARE_EVENT_TABLE
()
private
:
// Private event handlers
void
_wxFB_OnClose
(
wxCloseEvent
&
event
){
OnClose
(
event
);
}
void
_wxFB_OnSize
(
wxSizeEvent
&
event
){
OnSize
(
event
);
}
void
_wxFB_OnNetSortingOptionSelected
(
wxCommandEvent
&
event
){
OnNetSortingOptionSelected
(
event
);
}
void
_wxFB_OnRunFiltersButtonClick
(
wxCommandEvent
&
event
){
OnRunFiltersButtonClick
(
event
);
}
void
_wxFB_OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
){
OnCornerSmoothingModeChoice
(
event
);
}
void
_wxFB_OnPadsInZoneClick
(
wxCommandEvent
&
event
){
OnPadsInZoneClick
(
event
);
}
void
_wxFB_ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
){
ExportSetupToOtherCopperZones
(
event
);
}
void
_wxFB_OnButtonOkClick
(
wxCommandEvent
&
event
){
OnButtonOkClick
(
event
);
}
void
_wxFB_OnButtonCancelClick
(
wxCommandEvent
&
event
){
OnButtonCancelClick
(
event
);
}
protected
:
enum
{
ID_NETNAME_SELECTION
=
1000
,
ID_M_NETDISPLAYOPTION
,
ID_TEXTCTRL_NETNAMES_FILTER
,
wxID_APPLY_FILTERS
,
ID_CORNER_SMOOTHING
,
ID_M_CORNERSMOOTHINGCTRL
,
ID_M_PADINZONEOPT
,
wxID_ANTIPAD_SIZE
,
wxID_COPPER_BRIDGE_VALUE
,
ID_M_FILLMODECTRL
,
ID_M_ARCAPPROXIMATIONOPT
,
ID_M_ORIENTEDGESOPT
,
ID_M_OUTLINEAPPEARANCECTRL
,
wxID_BUTTON_EXPORT
,
};
wxBoxSizer
*
m_MainBoxSizer
;
wxBoxSizer
*
m_layerSizer
;
wxStaticText
*
m_staticText17
;
wxStaticText
*
m_staticText2
;
wxListBox
*
m_ListNetNameSelection
;
wxStaticText
*
m_staticText16
;
wxChoice
*
m_NetDisplayOption
;
wxStaticText
*
m_staticText5
;
wxTextCtrl
*
m_DoNotShowNetNameFilter
;
wxStaticText
*
m_staticText51
;
wxTextCtrl
*
m_ShowNetNameFilter
;
wxButton
*
m_buttonRunFilter
;
wxStaticText
*
m_ClearanceValueTitle
;
wxTextCtrl
*
m_ZoneClearanceCtrl
;
wxStaticText
*
m_MinThicknessValueTitle
;
wxTextCtrl
*
m_ZoneMinThicknessCtrl
;
wxStaticText
*
m_staticText151
;
wxChoice
*
m_cornerSmoothingChoice
;
wxStaticText
*
m_cornerSmoothingTitle
;
wxTextCtrl
*
m_cornerSmoothingCtrl
;
wxStaticText
*
m_staticText13
;
wxChoice
*
m_PadInZoneOpt
;
wxStaticText
*
m_AntipadSizeText
;
wxTextCtrl
*
m_AntipadSizeValue
;
wxStaticText
*
m_CopperBridgeWidthText
;
wxTextCtrl
*
m_CopperWidthValue
;
wxStaticText
*
m_staticText11
;
wxChoice
*
m_FillModeCtrl
;
wxStaticText
*
m_staticText12
;
wxChoice
*
m_ArcApproximationOpt
;
wxStaticText
*
m_staticText14
;
wxChoice
*
m_OrientEdgesOpt
;
wxStaticText
*
m_staticText15
;
wxChoice
*
m_OutlineAppearanceCtrl
;
wxButton
*
m_ExportSetupButton
;
wxButton
*
m_OkButton
;
wxButton
*
m_ButtonCancel
;
// Virtual event handlers, overide them in your derived class
virtual
void
OnClose
(
wxCloseEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnSize
(
wxSizeEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnNetSortingOptionSelected
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnRunFiltersButtonClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnPadsInZoneClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnButtonOkClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnButtonCancelClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
public
:
dialog_copper_zone_base
(
wxWindow
*
parent
,
wxWindowID
id
=
wxID_ANY
,
const
wxString
&
title
=
_
(
"Zone Properties"
),
const
wxPoint
&
pos
=
wxDefaultPosition
,
const
wxSize
&
size
=
wxSize
(
550
,
500
),
long
style
=
wxDEFAULT_DIALOG_STYLE
|
wxRESIZE_BORDER
);
~
dialog_copper_zone_base
();
};
#endif //__dialog_copper_zones_base__
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Nov 18 2010)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
#ifndef __dialog_copper_zones_base__
#define __dialog_copper_zones_base__
#include <wx/intl.h>
#include <wx/string.h>
#include <wx/stattext.h>
#include <wx/gdicmn.h>
#include <wx/font.h>
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/sizer.h>
#include <wx/listbox.h>
#include <wx/choice.h>
#include <wx/textctrl.h>
#include <wx/button.h>
#include <wx/statbox.h>
#include <wx/dialog.h>
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/// Class DIALOG_COPPER_ZONE_BASE
///////////////////////////////////////////////////////////////////////////////
class
DIALOG_COPPER_ZONE_BASE
:
public
wxDialog
{
DECLARE_EVENT_TABLE
()
private
:
// Private event handlers
void
_wxFB_OnClose
(
wxCloseEvent
&
event
){
OnClose
(
event
);
}
void
_wxFB_OnSize
(
wxSizeEvent
&
event
){
OnSize
(
event
);
}
void
_wxFB_OnNetSortingOptionSelected
(
wxCommandEvent
&
event
){
OnNetSortingOptionSelected
(
event
);
}
void
_wxFB_OnRunFiltersButtonClick
(
wxCommandEvent
&
event
){
OnRunFiltersButtonClick
(
event
);
}
void
_wxFB_OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
){
OnCornerSmoothingModeChoice
(
event
);
}
void
_wxFB_OnPadsInZoneClick
(
wxCommandEvent
&
event
){
OnPadsInZoneClick
(
event
);
}
void
_wxFB_ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
){
ExportSetupToOtherCopperZones
(
event
);
}
void
_wxFB_OnButtonOkClick
(
wxCommandEvent
&
event
){
OnButtonOkClick
(
event
);
}
void
_wxFB_OnButtonCancelClick
(
wxCommandEvent
&
event
){
OnButtonCancelClick
(
event
);
}
protected
:
enum
{
ID_DIALOG_COPPER_ZONE_BASE
=
1000
,
ID_NETNAME_SELECTION
,
ID_M_NETDISPLAYOPTION
,
ID_TEXTCTRL_NETNAMES_FILTER
,
wxID_APPLY_FILTERS
,
ID_CORNER_SMOOTHING
,
ID_M_CORNERSMOOTHINGCTRL
,
ID_M_PADINZONEOPT
,
wxID_ANTIPAD_SIZE
,
wxID_COPPER_BRIDGE_VALUE
,
ID_M_FILLMODECTRL
,
ID_M_ARCAPPROXIMATIONOPT
,
ID_M_ORIENTEDGESOPT
,
ID_M_OUTLINEAPPEARANCECTRL
,
wxID_BUTTON_EXPORT
,
};
wxBoxSizer
*
m_MainBoxSizer
;
wxBoxSizer
*
m_layerSizer
;
wxStaticText
*
m_staticText17
;
wxStaticText
*
m_staticText2
;
wxListBox
*
m_ListNetNameSelection
;
wxStaticText
*
m_staticText16
;
wxChoice
*
m_NetDisplayOption
;
wxStaticText
*
m_staticText5
;
wxTextCtrl
*
m_DoNotShowNetNameFilter
;
wxStaticText
*
m_staticText51
;
wxTextCtrl
*
m_ShowNetNameFilter
;
wxButton
*
m_buttonRunFilter
;
wxStaticText
*
m_ClearanceValueTitle
;
wxTextCtrl
*
m_ZoneClearanceCtrl
;
wxStaticText
*
m_MinThicknessValueTitle
;
wxTextCtrl
*
m_ZoneMinThicknessCtrl
;
wxStaticText
*
m_staticText151
;
wxChoice
*
m_cornerSmoothingChoice
;
wxStaticText
*
m_cornerSmoothingTitle
;
wxTextCtrl
*
m_cornerSmoothingCtrl
;
wxStaticText
*
m_staticText13
;
wxChoice
*
m_PadInZoneOpt
;
wxStaticText
*
m_AntipadSizeText
;
wxTextCtrl
*
m_AntipadSizeValue
;
wxStaticText
*
m_CopperBridgeWidthText
;
wxTextCtrl
*
m_CopperWidthValue
;
wxStaticText
*
m_staticText11
;
wxChoice
*
m_FillModeCtrl
;
wxStaticText
*
m_staticText12
;
wxChoice
*
m_ArcApproximationOpt
;
wxStaticText
*
m_staticText14
;
wxChoice
*
m_OrientEdgesOpt
;
wxStaticText
*
m_staticText15
;
wxChoice
*
m_OutlineAppearanceCtrl
;
wxButton
*
m_ExportSetupButton
;
wxButton
*
m_OkButton
;
wxButton
*
m_ButtonCancel
;
// Virtual event handlers, overide them in your derived class
virtual
void
OnClose
(
wxCloseEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnSize
(
wxSizeEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnNetSortingOptionSelected
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnRunFiltersButtonClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnCornerSmoothingModeChoice
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnPadsInZoneClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
ExportSetupToOtherCopperZones
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnButtonOkClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnButtonCancelClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
public
:
DIALOG_COPPER_ZONE_BASE
(
wxWindow
*
parent
,
wxWindowID
id
=
ID_DIALOG_COPPER_ZONE_BASE
,
const
wxString
&
title
=
_
(
"Zone Properties"
),
const
wxPoint
&
pos
=
wxDefaultPosition
,
const
wxSize
&
size
=
wxSize
(
550
,
500
),
long
style
=
wxDEFAULT_DIALOG_STYLE
|
wxRESIZE_BORDER
);
~
DIALOG_COPPER_ZONE_BASE
();
};
#endif //__dialog_copper_zones_base__
pcbnew/dialogs/dialog_plot_base.cpp
View file @
430a39d7
...
...
@@ -65,6 +65,10 @@ DIALOG_PLOT_BASE::DIALOG_PLOT_BASE( wxWindow* parent, wxWindowID id, const wxStr
m_LayersSizer
=
new
wxStaticBoxSizer
(
new
wxStaticBox
(
this
,
wxID_ANY
,
_
(
"Layers"
)
),
wxHORIZONTAL
);
wxArrayString
m_layerCheckListBoxChoices
;
m_layerCheckListBox
=
new
wxCheckListBox
(
this
,
wxID_ANY
,
wxDefaultPosition
,
wxDefaultSize
,
m_layerCheckListBoxChoices
,
0
);
m_LayersSizer
->
Add
(
m_layerCheckListBox
,
1
,
wxALL
|
wxEXPAND
,
5
);
bUpperSizer
->
Add
(
m_LayersSizer
,
1
,
wxALL
|
wxEXPAND
,
3
);
m_PlotOptionsSizer
=
new
wxBoxSizer
(
wxVERTICAL
);
...
...
pcbnew/dialogs/dialog_plot_base.fbp
View file @
430a39d7
...
...
@@ -612,6 +612,92 @@
<property
name=
"orient"
>
wxHORIZONTAL
</property>
<property
name=
"permission"
>
protected
</property>
<event
name=
"OnUpdateUI"
></event>
<object
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALL|wxEXPAND
</property>
<property
name=
"proportion"
>
1
</property>
<object
class=
"wxCheckListBox"
expanded=
"1"
>
<property
name=
"BottomDockable"
>
1
</property>
<property
name=
"LeftDockable"
>
1
</property>
<property
name=
"RightDockable"
>
1
</property>
<property
name=
"TopDockable"
>
1
</property>
<property
name=
"aui_name"
></property>
<property
name=
"bg"
></property>
<property
name=
"caption"
></property>
<property
name=
"caption_visible"
>
1
</property>
<property
name=
"center_pane"
>
0
</property>
<property
name=
"choices"
></property>
<property
name=
"close_button"
>
1
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"default_pane"
>
0
</property>
<property
name=
"dock"
>
Dock
</property>
<property
name=
"dock_fixed"
>
0
</property>
<property
name=
"docking"
>
Left
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"floatable"
>
1
</property>
<property
name=
"font"
></property>
<property
name=
"gripper"
>
0
</property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"layer"
></property>
<property
name=
"maximize_button"
>
0
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimize_button"
>
0
</property>
<property
name=
"minimum_size"
></property>
<property
name=
"moveable"
>
1
</property>
<property
name=
"name"
>
m_layerCheckListBox
</property>
<property
name=
"pane_border"
>
1
</property>
<property
name=
"pane_position"
></property>
<property
name=
"pane_size"
></property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pin_button"
>
1
</property>
<property
name=
"pos"
></property>
<property
name=
"position"
></property>
<property
name=
"resize"
>
Resizable
</property>
<property
name=
"row"
></property>
<property
name=
"show"
>
1
</property>
<property
name=
"size"
></property>
<property
name=
"style"
></property>
<property
name=
"subclass"
></property>
<property
name=
"toolbar_pane"
>
0
</property>
<property
name=
"tooltip"
></property>
<property
name=
"validator_data_type"
></property>
<property
name=
"validator_style"
>
wxFILTER_NONE
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
></property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
<event
name=
"OnChar"
></event>
<event
name=
"OnCheckListBox"
></event>
<event
name=
"OnCheckListBoxDClick"
></event>
<event
name=
"OnCheckListBoxToggled"
></event>
<event
name=
"OnEnterWindow"
></event>
<event
name=
"OnEraseBackground"
></event>
<event
name=
"OnKeyDown"
></event>
<event
name=
"OnKeyUp"
></event>
<event
name=
"OnKillFocus"
></event>
<event
name=
"OnLeaveWindow"
></event>
<event
name=
"OnLeftDClick"
></event>
<event
name=
"OnLeftDown"
></event>
<event
name=
"OnLeftUp"
></event>
<event
name=
"OnMiddleDClick"
></event>
<event
name=
"OnMiddleDown"
></event>
<event
name=
"OnMiddleUp"
></event>
<event
name=
"OnMotion"
></event>
<event
name=
"OnMouseEvents"
></event>
<event
name=
"OnMouseWheel"
></event>
<event
name=
"OnPaint"
></event>
<event
name=
"OnRightDClick"
></event>
<event
name=
"OnRightDown"
></event>
<event
name=
"OnRightUp"
></event>
<event
name=
"OnSetFocus"
></event>
<event
name=
"OnSize"
></event>
<event
name=
"OnUpdateUI"
></event>
</object>
</object>
</object>
</object>
<object
class=
"sizeritem"
expanded=
"1"
>
...
...
pcbnew/dialogs/dialog_plot_base.h
View file @
430a39d7
...
...
@@ -20,6 +20,7 @@
#include <wx/sizer.h>
#include <wx/textctrl.h>
#include <wx/button.h>
#include <wx/checklst.h>
#include <wx/statbox.h>
#include <wx/checkbox.h>
#include <wx/dialog.h>
...
...
@@ -49,6 +50,7 @@ class DIALOG_PLOT_BASE : public wxDialog
wxTextCtrl
*
m_outputDirectoryName
;
wxButton
*
m_browseButton
;
wxStaticBoxSizer
*
m_LayersSizer
;
wxCheckListBox
*
m_layerCheckListBox
;
wxBoxSizer
*
m_PlotOptionsSizer
;
wxCheckBox
*
m_plotSheetRef
;
wxCheckBox
*
m_plotPads_on_Silkscreen
;
...
...
pcbnew/pcbplot.cpp
View file @
430a39d7
...
...
@@ -54,15 +54,16 @@ static bool setDouble( double* aDouble, double aValue, double aMin, double aMax
class
DIALOG_PLOT
:
public
DIALOG_PLOT_BASE
{
p
ublic
:
p
rivate
:
PCB_EDIT_FRAME
*
m_Parent
;
wxConfig
*
m_Config
;
std
::
vector
<
int
>
layerList
;
// List to hold CheckListBox layer numbers
wxCheckListBox
*
layerCheckListBox
;
double
m_XScaleAdjust
;
double
m_YScaleAdjust
;
public
:
DIALOG_PLOT
(
PCB_EDIT_FRAME
*
parent
);
static
wxPoint
prevPosition
;
// Dialog position & size
static
wxSize
prevSize
;
public
:
DIALOG_PLOT
(
PCB_EDIT_FRAME
*
parent
);
private
:
void
Init_Dialog
();
void
Plot
(
wxCommandEvent
&
event
);
...
...
@@ -75,6 +76,9 @@ private:
void
CreateDrillFile
(
wxCommandEvent
&
event
);
};
wxPoint
DIALOG_PLOT
::
prevPosition
(
-
1
,
-
1
);
wxSize
DIALOG_PLOT
::
prevSize
;
const
int
UNITS_MILS
=
1000
;
...
...
@@ -84,15 +88,16 @@ DIALOG_PLOT::DIALOG_PLOT( PCB_EDIT_FRAME* parent ) :
m_Parent
=
parent
;
m_Config
=
wxGetApp
().
m_EDA_Config
;
layerCheckListBox
=
new
wxCheckListBox
(
this
,
wxID_ANY
);
m_LayersSizer
->
Add
(
layerCheckListBox
,
0
,
wxGROW
|
wxALL
,
1
);
Init_Dialog
();
GetSizer
()
->
Fit
(
this
);
GetSizer
()
->
SetSizeHints
(
this
);
Centre
();
if
(
prevPosition
.
x
!=
-
1
)
SetSize
(
prevPosition
.
x
,
prevPosition
.
y
,
prevSize
.
x
,
prevSize
.
y
);
else
Center
();
}
...
...
@@ -157,10 +162,10 @@ void DIALOG_PLOT::Init_Dialog()
continue
;
layerList
.
push_back
(
layer
);
checkIndex
=
layerCheckListBox
->
Append
(
board
->
GetLayerName
(
layer
)
);
checkIndex
=
m_
layerCheckListBox
->
Append
(
board
->
GetLayerName
(
layer
)
);
if
(
g_PcbPlotOptions
.
GetLayerSelection
()
&
(
1
<<
layer
)
)
layerCheckListBox
->
Check
(
checkIndex
);
m_
layerCheckListBox
->
Check
(
checkIndex
);
}
// Option for using proper Gerber extensions
...
...
@@ -227,6 +232,8 @@ void DIALOG_PLOT::OnQuit( wxCommandEvent& event )
void
DIALOG_PLOT
::
OnClose
(
wxCloseEvent
&
event
)
{
prevPosition
=
GetPosition
();
prevSize
=
GetSize
();
applyPlotSettings
();
EndModal
(
0
);
}
...
...
@@ -509,7 +516,7 @@ void DIALOG_PLOT::applyPlotSettings()
unsigned
int
i
;
for
(
i
=
0
;
i
<
layerList
.
size
();
i
++
)
{
if
(
layerCheckListBox
->
IsChecked
(
i
)
)
if
(
m_
layerCheckListBox
->
IsChecked
(
i
)
)
selectedLayers
|=
(
1
<<
layerList
[
i
]);
}
tempOptions
.
SetLayerSelection
(
selectedLayers
);
...
...
pcbnew/zones_by_polygon.cpp
View file @
430a39d7
...
...
@@ -520,7 +520,7 @@ int PCB_EDIT_FRAME::Begin_Zone( wxDC* DC )
&
g_Zone_Default_Setting
.
m_ThermalReliefCopperBridgeValue
);
g_Zone_Default_Setting
.
m_CurrentZone_Layer
=
zone
->
GetLayer
();
dialog_copper_zone
*
frame
=
new
dialog_copper_zone
(
this
,
&
g_Zone_Default_Setting
);
DIALOG_COPPER_ZONE
*
frame
=
new
DIALOG_COPPER_ZONE
(
this
,
&
g_Zone_Default_Setting
);
diag
=
frame
->
ShowModal
();
frame
->
Destroy
();
}
...
...
@@ -780,7 +780,7 @@ void PCB_EDIT_FRAME::Edit_Zone_Params( wxDC* DC, ZONE_CONTAINER* zone_container
if
(
zone_container
->
GetLayer
()
<
FIRST_NO_COPPER_LAYER
)
{
// edit a zone on a copper layer
g_Zone_Default_Setting
.
ImportSetting
(
*
zone_container
);
dialog_copper_zone
*
frame
=
new
dialog_copper_zone
(
this
,
&
g_Zone_Default_Setting
);
DIALOG_COPPER_ZONE
*
frame
=
new
DIALOG_COPPER_ZONE
(
this
,
&
g_Zone_Default_Setting
);
diag
=
frame
->
ShowModal
();
frame
->
Destroy
();
}
...
...
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