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
814f4e43
Commit
814f4e43
authored
Nov 21, 2010
by
jean-pierre charras
Browse files
Options
Browse Files
Download
Plain Diff
Code cleaning. Also fix gcc 4.5 compil warnings.
parents
4451dd3a
f01653fc
Changes
20
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
1676 additions
and
2314 deletions
+1676
-2314
eda_doc.cpp
common/eda_doc.cpp
+2
-2
class_libentry.cpp
eeschema/class_libentry.cpp
+2
-2
sch_field.cpp
eeschema/sch_field.cpp
+1
-2
sch_sheet.cpp
eeschema/sch_sheet.cpp
+2
-2
draw_gerber_screen.cpp
gerbview/draw_gerber_screen.cpp
+1
-1
wxPcbStruct.h
include/wxPcbStruct.h
+1
-2
CMakeLists.txt
pcbnew/CMakeLists.txt
+2
-1
class_pad_draw_functions.cpp
pcbnew/class_pad_draw_functions.cpp
+1
-2
clean.cpp
pcbnew/clean.cpp
+106
-284
cleaningoptions_dialog.cpp
pcbnew/cleaningoptions_dialog.cpp
+0
-255
cleaningoptions_dialog.h
pcbnew/cleaningoptions_dialog.h
+0
-122
cleaningoptions_dialog.pjd
pcbnew/cleaningoptions_dialog.pjd
+0
-703
dialog_drc_base.fbp
pcbnew/dialog_drc_base.fbp
+933
-933
dialog_cleaning_options.cpp
pcbnew/dialogs/dialog_cleaning_options.cpp
+28
-0
dialog_cleaning_options.h
pcbnew/dialogs/dialog_cleaning_options.h
+52
-0
dialog_cleaning_options_base.cpp
pcbnew/dialogs/dialog_cleaning_options_base.cpp
+73
-0
dialog_cleaning_options_base.fbp
pcbnew/dialogs/dialog_cleaning_options_base.fbp
+409
-0
dialog_cleaning_options_base.h
pcbnew/dialogs/dialog_cleaning_options_base.h
+61
-0
librairi.cpp
pcbnew/librairi.cpp
+1
-2
netlist.cpp
pcbnew/netlist.cpp
+1
-1
No files found.
common/eda_doc.cpp
View file @
814f4e43
...
@@ -54,14 +54,14 @@ static const wxFileTypeInfo EDAfallbacks[] =
...
@@ -54,14 +54,14 @@ static const wxFileTypeInfo EDAfallbacks[] =
wxT
(
"wxhtml %s"
),
wxT
(
"wxhtml %s"
),
wxT
(
"html document (from Kicad)"
),
wxT
(
"html document (from Kicad)"
),
wxT
(
"htm"
),
wxT
(
"htm"
),
wxT
(
"html"
),
NULL
),
wxT
(
"html"
),
wxNullPtr
),
wxFileTypeInfo
(
wxT
(
"application/sch"
),
wxFileTypeInfo
(
wxT
(
"application/sch"
),
wxT
(
"eeschema %s"
),
wxT
(
"eeschema %s"
),
wxT
(
"eeschema -p %s"
),
wxT
(
"eeschema -p %s"
),
wxT
(
"sch document (from Kicad)"
),
wxT
(
"sch document (from Kicad)"
),
wxT
(
"sch"
),
wxT
(
"sch"
),
wxT
(
"SCH"
),
NULL
),
wxT
(
"SCH"
),
wxNullPtr
),
// must terminate the table with this!
// must terminate the table with this!
wxFileTypeInfo
()
wxFileTypeInfo
()
...
...
eeschema/class_libentry.cpp
View file @
814f4e43
...
@@ -318,12 +318,12 @@ void LIB_COMPONENT::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDc, const wxPoint& aO
...
@@ -318,12 +318,12 @@ void LIB_COMPONENT::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDc, const wxPoint& aO
if
(
drawItem
.
Type
()
==
COMPONENT_FIELD_DRAW_TYPE
)
if
(
drawItem
.
Type
()
==
COMPONENT_FIELD_DRAW_TYPE
)
{
{
drawItem
.
Draw
(
aPanel
,
aDc
,
aOffset
,
aColor
,
aDrawMode
,
NULL
,
aTransform
);
drawItem
.
Draw
(
aPanel
,
aDc
,
aOffset
,
aColor
,
aDrawMode
,
(
void
*
)
NULL
,
aTransform
);
}
}
// Now, draw only the background for items with
// Now, draw only the background for items with
// m_Fill == FILLED_WITH_BG_BODYCOLOR:
// m_Fill == FILLED_WITH_BG_BODYCOLOR:
drawItem
.
Draw
(
aPanel
,
aDc
,
aOffset
,
aColor
,
aDrawMode
,
false
,
aTransform
);
drawItem
.
Draw
(
aPanel
,
aDc
,
aOffset
,
aColor
,
aDrawMode
,
(
void
*
)
false
,
aTransform
);
}
}
}
}
...
...
eeschema/sch_field.cpp
View file @
814f4e43
...
@@ -151,8 +151,7 @@ void SCH_FIELD::Draw( WinEDA_DrawPanel* panel, wxDC* DC,
...
@@ -151,8 +151,7 @@ void SCH_FIELD::Draw( WinEDA_DrawPanel* panel, wxDC* DC,
DrawGraphicText
(
panel
,
DC
,
textpos
,
color
,
fulltext
,
DrawGraphicText
(
panel
,
DC
,
textpos
,
color
,
fulltext
,
orient
,
orient
,
m_Size
,
hjustify
,
vjustify
,
m_Size
,
hjustify
,
vjustify
,
LineWidth
,
m_Italic
,
LineWidth
,
m_Italic
,
m_Bold
);
m_Bold
,
false
);
}
}
/* Enable this to draw the bounding box around the text field to validate
/* Enable this to draw the bounding box around the text field to validate
...
...
eeschema/sch_sheet.cpp
View file @
814f4e43
...
@@ -584,7 +584,7 @@ void SCH_SHEET::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDC,
...
@@ -584,7 +584,7 @@ void SCH_SHEET::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDC,
(
EDA_Colors
)
txtcolor
,
Text
,
name_orientation
,
(
EDA_Colors
)
txtcolor
,
Text
,
name_orientation
,
wxSize
(
m_SheetNameSize
,
m_SheetNameSize
),
wxSize
(
m_SheetNameSize
,
m_SheetNameSize
),
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_BOTTOM
,
LineWidth
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_BOTTOM
,
LineWidth
,
false
,
false
,
false
);
false
,
false
);
/* Draw text : FileName */
/* Draw text : FileName */
if
(
aColor
>=
0
)
if
(
aColor
>=
0
)
...
@@ -596,7 +596,7 @@ void SCH_SHEET::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDC,
...
@@ -596,7 +596,7 @@ void SCH_SHEET::Draw( WinEDA_DrawPanel* aPanel, wxDC* aDC,
(
EDA_Colors
)
txtcolor
,
Text
,
name_orientation
,
(
EDA_Colors
)
txtcolor
,
Text
,
name_orientation
,
wxSize
(
m_FileNameSize
,
m_FileNameSize
),
wxSize
(
m_FileNameSize
,
m_FileNameSize
),
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_TOP
,
LineWidth
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_TOP
,
LineWidth
,
false
,
false
,
false
);
false
,
false
);
/* Draw text : SheetLabel */
/* Draw text : SheetLabel */
...
...
gerbview/draw_gerber_screen.cpp
View file @
814f4e43
...
@@ -205,7 +205,7 @@ void Show_Items_DCode_Value( WinEDA_DrawPanel* aPanel, wxDC* aDC, BOARD* aPcb, i
...
@@ -205,7 +205,7 @@ void Show_Items_DCode_Value( WinEDA_DrawPanel* aPanel, wxDC* aDC, BOARD* aPcb, i
pos
,
(
EDA_Colors
)
color
,
Line
,
pos
,
(
EDA_Colors
)
color
,
Line
,
orient
,
wxSize
(
width
,
width
),
orient
,
wxSize
(
width
,
width
),
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
,
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
,
0
,
false
,
false
,
false
);
0
,
false
,
false
);
}
}
}
}
...
...
include/wxPcbStruct.h
View file @
814f4e43
...
@@ -1088,10 +1088,9 @@ public:
...
@@ -1088,10 +1088,9 @@ public:
* When such a bad segment is found, mark it as needing to be removed.
* When such a bad segment is found, mark it as needing to be removed.
* and remove all tracks having at least one flagged segment.
* and remove all tracks having at least one flagged segment.
* @param aDC = the current device context (can be NULL)
* @param aDC = the current device context (can be NULL)
* @param aDisplayActivity = true to display activity on the frame status bar and message panel
* @return true if any change is made
* @return true if any change is made
*/
*/
bool
RemoveMisConnectedTracks
(
wxDC
*
aDC
,
bool
aDisplayActivity
);
bool
RemoveMisConnectedTracks
(
wxDC
*
aDC
);
// Autoplacement:
// Autoplacement:
...
...
pcbnew/CMakeLists.txt
View file @
814f4e43
...
@@ -35,7 +35,6 @@ set(PCBNEW_SRCS
...
@@ -35,7 +35,6 @@ set(PCBNEW_SRCS
build_BOM_from_board.cpp
build_BOM_from_board.cpp
class_pcb_layer_widget.cpp
class_pcb_layer_widget.cpp
clean.cpp
clean.cpp
# cleaningoptions_dialog.cpp
connect.cpp
connect.cpp
controle.cpp
controle.cpp
dimension.cpp
dimension.cpp
...
@@ -43,6 +42,8 @@ set(PCBNEW_SRCS
...
@@ -43,6 +42,8 @@ set(PCBNEW_SRCS
debug_kbool_key_file_fct.cpp
debug_kbool_key_file_fct.cpp
deltrack.cpp
deltrack.cpp
dialogs/dialog_block_options_base.cpp
dialogs/dialog_block_options_base.cpp
dialogs/dialog_cleaning_options_base.cpp
dialogs/dialog_cleaning_options.cpp
dialog_copper_zones.cpp
dialog_copper_zones.cpp
dialog_copper_zones_base.cpp
dialog_copper_zones_base.cpp
dialog_design_rules.cpp
dialog_design_rules.cpp
...
...
pcbnew/class_pad_draw_functions.cpp
View file @
814f4e43
...
@@ -590,8 +590,7 @@ void D_PAD::DrawShape( EDA_Rect* aClipBox, wxDC* aDC, PAD_DRAWINFO& aDrawInfo )
...
@@ -590,8 +590,7 @@ void D_PAD::DrawShape( EDA_Rect* aClipBox, wxDC* aDC, PAD_DRAWINFO& aDrawInfo )
tsize
=
(
int
)
(
tsize
*
0.8
);
tsize
=
(
int
)
(
tsize
*
0.8
);
DrawGraphicText
(
aDrawInfo
.
m_DrawPanel
,
aDC
,
tpos
,
WHITE
,
buffer
,
t_angle
,
DrawGraphicText
(
aDrawInfo
.
m_DrawPanel
,
aDC
,
tpos
,
WHITE
,
buffer
,
t_angle
,
wxSize
(
tsize
,
tsize
),
GR_TEXT_HJUSTIFY_CENTER
,
wxSize
(
tsize
,
tsize
),
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
,
tsize
/
7
,
false
,
false
,
GR_TEXT_VJUSTIFY_CENTER
,
tsize
/
7
,
false
,
false
);
false
);
}
}
}
}
...
...
pcbnew/clean.cpp
View file @
814f4e43
/**
****************************************************/
/**
/* editeur de PCB PCBNEW */
* @file clean.cpp
/* Fonctions de Nettoyage et reorganisation de Pistes */
* functions to clean tracks: remove null and redundant segments
/*****************************************************
*/
*/
/* Fichier CLEAN.CPP */
#include "fctsys.h"
#include "fctsys.h"
#include "gr_basic.h"
#include "common.h"
#include "common.h"
#include "class_drawpanel.h"
#include "class_drawpanel.h"
#include "pcbnew.h"
#include "pcbnew.h"
#include "wxPcbStruct.h"
#include "wxPcbStruct.h"
#include "autorout.h"
#include "protos.h"
#include "protos.h"
/* Position of messages on the bottom display */
#define AFFICHE 1
#define POS_AFF_PASSE 40
#define POS_AFF_VAR 50
#define POS_AFF_MAX 60
#define POS_AFF_NUMSEGM 70
/* local functions : */
/* local functions : */
static
int
clean_segments
(
WinEDA_PcbFrame
*
frame
);
static
void
clean_segments
(
WinEDA_PcbFrame
*
frame
);
static
void
clean_vias
(
BOARD
*
aPcb
);
static
void
DeleteUnconnectedTracks
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
);
static
void
DeleteUnconnectedTracks
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
);
static
TRACK
*
AlignSegment
(
BOARD
*
Pcb
,
TRACK
*
pt_ref
,
TRACK
*
pt_segm
,
int
extremite
);
static
TRACK
*
AlignSegment
(
BOARD
*
Pcb
,
TRACK
*
pt_ref
,
TRACK
*
pt_segm
,
int
extremite
);
static
void
Clean_Pcb_Items
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
);
static
void
Clean_Pcb_Items
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
,
bool
aCleanVias
,
bool
aMergeSegments
,
bool
aDeleteUnconnectedSegm
,
bool
aConnectToPads
);
/* Local Variables: */
#include "dialog_cleaning_options.h"
static
int
a_color
;
/* message color */
static
bool
s_CleanVias
=
true
;
static
bool
s_MergeSegments
=
true
;
static
bool
s_DeleteUnconnectedSegm
=
true
;
static
bool
s_ConnectToPads
=
false
;
#include "cleaningoptions_dialog.cpp"
#define CONN2PAD_ENBL
#define CONN2PAD_ENBL
...
@@ -52,17 +38,15 @@ void WinEDA_PcbFrame::Clean_Pcb( wxDC* DC )
...
@@ -52,17 +38,15 @@ void WinEDA_PcbFrame::Clean_Pcb( wxDC* DC )
/* Install the track operation dialog frame
/* Install the track operation dialog frame
*/
*/
{
{
s_ConnectToPads
=
false
;
DIALOG_CLEANING_OPTIONS
::
connectToPads
=
false
;
WinEDA_CleaningOptionsFrame
*
frame
=
new
WinEDA_CleaningOptionsFrame
(
this
,
DC
);
DIALOG_CLEANING_OPTIONS
dlg
(
this
);
frame
->
ShowModal
();
if
(
dlg
.
ShowModal
()
==
wxID_OK
)
frame
->
Destroy
();
Clean_Pcb_Items
(
this
,
DC
,
dlg
.
cleanVias
,
dlg
.
mergeSegments
,
dlg
.
deleteUnconnectedSegm
,
dlg
.
connectToPads
);
DrawPanel
->
Refresh
(
true
);
DrawPanel
->
Refresh
(
true
);
}
}
/************************************************************/
void
Clean_Pcb_Items
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
)
/************************************************************/
/* Main cleaning function.
/* Main cleaning function.
* Delete
* Delete
* - Redundant points on tracks (merge aligned segments)
* - Redundant points on tracks (merge aligned segments)
...
@@ -72,7 +56,12 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -72,7 +56,12 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
* Create segments when track ends are incorrecty connected:
* Create segments when track ends are incorrecty connected:
* i.e. when a track end covers a pad or a via but is not exactly on the pad or the via center
* i.e. when a track end covers a pad or a via but is not exactly on the pad or the via center
*/
*/
void
Clean_Pcb_Items
(
WinEDA_PcbFrame
*
frame
,
wxDC
*
DC
,
bool
aCleanVias
,
bool
aMergeSegments
,
bool
aDeleteUnconnectedSegm
,
bool
aConnectToPads
)
{
{
wxBusyCursor
(
dummy
);
frame
->
MsgPanel
->
EraseMsgBox
();
frame
->
MsgPanel
->
EraseMsgBox
();
frame
->
GetBoard
()
->
GetNumSegmTrack
();
// update the count
frame
->
GetBoard
()
->
GetNumSegmTrack
();
// update the count
...
@@ -83,11 +72,56 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -83,11 +72,56 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
frame
->
GetBoard
()
->
m_Status_Pcb
=
0
;
frame
->
GetBoard
()
->
m_Status_Pcb
=
0
;
frame
->
GetBoard
()
->
m_NetInfo
->
BuildListOfNets
();
frame
->
GetBoard
()
->
m_NetInfo
->
BuildListOfNets
();
if
(
s_CleanVias
)
// delete redundant vias
if
(
aCleanVias
)
// delete redundant vias
{
frame
->
Affiche_Message
(
_
(
"Clean vias"
)
);
clean_vias
(
frame
->
GetBoard
()
);
}
#ifdef CONN2PAD_ENBL
/* Create missing segments when a track end covers a pad or a via,
but is not on the pad or the via center */
if
(
aConnectToPads
)
{
frame
->
Affiche_Message
(
_
(
"Reconnect pads"
)
);
/* Create missing segments when a track end covers a pad, but is not on the pad center */
ConnectDanglingEndToPad
(
frame
,
DC
);
// creation of points of connections at the intersection of tracks
// Gen_Raccord_Track(frame, DC);
/* Create missing segments when a track end covers a via, but is not on the via center */
ConnectDanglingEndToVia
(
frame
->
GetBoard
()
);
}
#endif
/* Remove null segments and intermediate points on aligned segments */
if
(
aMergeSegments
)
{
{
frame
->
Affiche_Message
(
_
(
"Merge track segments"
)
);
clean_segments
(
frame
);
}
/* Delete dangling tracks */
if
(
aDeleteUnconnectedSegm
)
{
frame
->
Affiche_Message
(
_
(
"Delete unconnected tracks"
)
);
DeleteUnconnectedTracks
(
frame
,
DC
);
}
frame
->
Affiche_Message
(
_
(
"Cleanup finished"
)
);
frame
->
Compile_Ratsnest
(
DC
,
true
);
frame
->
OnModify
();
}
void
clean_vias
(
BOARD
*
aPcb
)
{
TRACK
*
track
;
TRACK
*
track
;
TRACK
*
next_track
;
TRACK
*
next_track
;
for
(
track
=
frame
->
GetBoard
()
->
m_Track
;
track
;
track
=
track
->
Next
()
)
for
(
track
=
aPcb
->
m_Track
;
track
;
track
=
track
->
Next
()
)
{
{
if
(
track
->
Shape
()
!=
VIA_THROUGH
)
if
(
track
->
Shape
()
!=
VIA_THROUGH
)
continue
;
continue
;
...
@@ -110,13 +144,13 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -110,13 +144,13 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
}
}
/* Delete Via on pads at same location */
/* Delete Via on pads at same location */
for
(
track
=
frame
->
GetBoard
()
->
m_Track
;
track
!=
NULL
;
track
=
next_track
)
for
(
track
=
aPcb
->
m_Track
;
track
!=
NULL
;
track
=
next_track
)
{
{
next_track
=
track
->
Next
();
next_track
=
track
->
Next
();
if
(
track
->
m_Shape
!=
VIA_THROUGH
)
if
(
track
->
m_Shape
!=
VIA_THROUGH
)
continue
;
continue
;
D_PAD
*
pad
=
Fast_Locate_Pad_Connecte
(
frame
->
GetBoard
()
,
track
->
m_Start
,
ALL_CU_LAYERS
);
D_PAD
*
pad
=
Fast_Locate_Pad_Connecte
(
aPcb
,
track
->
m_Start
,
ALL_CU_LAYERS
);
if
(
pad
&&
(
pad
->
m_Masque_Layer
&
EXTERNAL_LAYERS
)
==
EXTERNAL_LAYERS
)
// redundant Via
if
(
pad
&&
(
pad
->
m_Masque_Layer
&
EXTERNAL_LAYERS
)
==
EXTERNAL_LAYERS
)
// redundant Via
{
{
/* delete via */
/* delete via */
...
@@ -124,37 +158,6 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -124,37 +158,6 @@ void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC )
delete
track
;
delete
track
;
}
}
}
}
}
#ifdef CONN2PAD_ENBL
/* Create missing segments when a track end covers a pad or a via,
but is not on the pad or the via center */
if
(
s_ConnectToPads
)
{
/* Create missing segments when a track end covers a pad, but is not on the pad center */
if
(
s_ConnectToPads
)
ConnectDanglingEndToPad
(
frame
,
DC
);
// creation of points of connections at the intersection of tracks
// Gen_Raccord_Track(frame, DC);
/* Create missing segments when a track end covers a via, but is not on the via center */
if
(
s_ConnectToPads
)
ConnectDanglingEndToVia
(
frame
->
GetBoard
()
);
}
#endif
/* Remove null segments and intermediate points on aligned segments */
if
(
s_MergeSegments
)
clean_segments
(
frame
);
/* Delete dangling tracks */
if
(
s_DeleteUnconnectedSegm
)
DeleteUnconnectedTracks
(
frame
,
DC
);
frame
->
Compile_Ratsnest
(
DC
,
AFFICHE
);
frame
->
OnModify
();
}
}
...
@@ -173,18 +176,15 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -173,18 +176,15 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
TRACK
*
startNetcode
;
TRACK
*
startNetcode
;
TRACK
*
next
;
TRACK
*
next
;
ZONE_CONTAINER
*
zone
;
ZONE_CONTAINER
*
zone
;
int
nbpoints_supprimes
=
0
;
int
masklayer
,
oldnetcode
;
int
masklayer
,
oldnetcode
;
int
type_end
,
flag_erase
;
int
type_end
,
flag_erase
;
int
ii
,
percent
,
oldpercent
;
wxString
msg
;
frame
->
Affiche_Message
(
_
(
"Delete unconnected tracks:"
)
);
if
(
frame
->
GetBoard
()
->
m_Track
==
NULL
)
return
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
// correct via m_End defects
// correct via m_End defects
ii
=
0
;
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
next
)
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
next
)
{
{
next
=
segment
->
Next
();
next
=
segment
->
Next
();
...
@@ -192,41 +192,18 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -192,41 +192,18 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
if
(
segment
->
Type
()
==
TYPE_VIA
)
if
(
segment
->
Type
()
==
TYPE_VIA
)
{
{
if
(
segment
->
m_Start
!=
segment
->
m_End
)
if
(
segment
->
m_Start
!=
segment
->
m_End
)
{
segment
->
m_End
=
segment
->
m_Start
;
segment
->
m_End
=
segment
->
m_Start
;
ii
++
;
msg
.
Printf
(
wxT
(
"%d "
),
ii
);
Affiche_1_Parametre
(
frame
,
POS_AFF_PASSE
,
_
(
"ViaDef"
),
msg
,
LIGHTRED
);
}
continue
;
continue
;
}
}
}
}
// removal of unconnected tracks
// removal of unconnected tracks
percent
=
0
;
oldpercent
=
-
1
;
oldnetcode
=
0
;
segment
=
startNetcode
=
frame
->
GetBoard
()
->
m_Track
;
segment
=
startNetcode
=
frame
->
GetBoard
()
->
m_Track
;
for
(
ii
=
0
;
segment
;
segment
=
next
,
ii
++
)
oldnetcode
=
segment
->
GetNet
();
for
(
int
ii
=
0
;
segment
;
segment
=
next
,
ii
++
)
{
{
next
=
segment
->
Next
();
next
=
segment
->
Next
();
// display activity
percent
=
(
100
*
ii
)
/
frame
->
GetBoard
()
->
m_Track
.
GetCount
();
if
(
percent
!=
oldpercent
)
{
oldpercent
=
percent
;
frame
->
DisplayActivity
(
percent
,
wxT
(
"No Conn: "
)
);
msg
.
Printf
(
wxT
(
"%d "
),
frame
->
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
frame
,
POS_AFF_MAX
,
wxT
(
"Max"
),
msg
,
GREEN
);
msg
.
Printf
(
wxT
(
"%d "
),
ii
);
Affiche_1_Parametre
(
frame
,
POS_AFF_NUMSEGM
,
wxT
(
"Segm"
),
msg
,
CYAN
);
}
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
break
;
break
;
...
@@ -363,14 +340,6 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -363,14 +340,6 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
if
(
flag_erase
)
if
(
flag_erase
)
{
{
oldpercent
=
-
1
;
// force dispay activity
nbpoints_supprimes
++
;
ii
--
;
msg
.
Printf
(
wxT
(
"%d "
),
nbpoints_supprimes
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxT
(
"NoConn."
),
msg
,
LIGHTRED
);
// update the pointer to start of the contiguous netcode group
// update the pointer to start of the contiguous netcode group
if
(
segment
==
startNetcode
)
if
(
segment
==
startNetcode
)
{
{
...
@@ -392,32 +361,19 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -392,32 +361,19 @@ static void DeleteUnconnectedTracks( WinEDA_PcbFrame* frame, wxDC* DC )
/************************************************************/
/************************************************************/
static
int
clean_segments
(
WinEDA_PcbFrame
*
frame
)
static
void
clean_segments
(
WinEDA_PcbFrame
*
frame
)
/************************************************************/
/************************************************************/
/* Delete null lenght segments, and intermediate points .. */
/* Delete null lenght segments, and intermediate points .. */
{
{
TRACK
*
segment
,
*
nextsegment
;
TRACK
*
segment
,
*
nextsegment
;
TRACK
*
other
;
TRACK
*
other
;
int
ii
,
nbpoints_supprimes
=
0
;
int
ii
;
int
flag
,
no_inc
,
percent
,
oldpercent
;
int
flag
,
no_inc
;
wxString
msg
;
wxString
msg
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
/**********************************************/
// Delete null segments
/* Delete null segments */
/**********************************************/
a_color
=
GREEN
;
nbpoints_supprimes
=
0
;
percent
=
0
;
oldpercent
=
-
1
;
frame
->
MsgPanel
->
EraseMsgBox
();
frame
->
Affiche_Message
(
_
(
"Clean Null Segments"
)
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxT
(
"NullSeg"
),
wxT
(
"0"
),
a_color
);
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
nextsegment
)
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
nextsegment
)
{
{
nextsegment
=
segment
->
Next
();
nextsegment
=
segment
->
Next
();
...
@@ -426,40 +382,11 @@ static int clean_segments( WinEDA_PcbFrame* frame )
...
@@ -426,40 +382,11 @@ static int clean_segments( WinEDA_PcbFrame* frame )
/* Length segment = 0; delete it */
/* Length segment = 0; delete it */
segment
->
DeleteStructure
();
segment
->
DeleteStructure
();
nbpoints_supprimes
++
;
msg
.
Printf
(
wxT
(
" %d"
),
nbpoints_supprimes
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxEmptyString
,
msg
,
a_color
);
}
}
/**************************************/
/* Delete redundant segments */
/* Delete redundant segments */
/**************************************/
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxT
(
"Ident"
),
wxT
(
"0"
),
a_color
);
percent
=
0
;
oldpercent
=
-
1
;
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
,
ii
=
0
;
segment
;
segment
=
segment
->
Next
(),
ii
++
)
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
,
ii
=
0
;
segment
;
segment
=
segment
->
Next
(),
ii
++
)
{
{
/* Display activity */
percent
=
(
100
*
ii
)
/
frame
->
GetBoard
()
->
m_Track
.
GetCount
();
if
(
percent
!=
oldpercent
)
{
frame
->
DisplayActivity
(
percent
,
wxT
(
"Id segm: "
)
);
oldpercent
=
percent
;
msg
.
Printf
(
wxT
(
"%d"
),
frame
->
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
frame
,
POS_AFF_MAX
,
wxT
(
"Max"
),
msg
,
GREEN
);
msg
.
Printf
(
wxT
(
"%d"
),
ii
);
Affiche_1_Parametre
(
frame
,
POS_AFF_NUMSEGM
,
wxT
(
"Segm"
),
msg
,
CYAN
);
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
return
-
1
;
}
for
(
other
=
segment
->
Next
();
other
;
other
=
nextsegment
)
for
(
other
=
segment
->
Next
();
other
;
other
=
nextsegment
)
{
{
nextsegment
=
other
->
Next
();
nextsegment
=
other
->
Next
();
...
@@ -491,25 +418,11 @@ static int clean_segments( WinEDA_PcbFrame* frame )
...
@@ -491,25 +418,11 @@ static int clean_segments( WinEDA_PcbFrame* frame )
{
{
ii
--
;
ii
--
;
other
->
DeleteStructure
();
other
->
DeleteStructure
();
nbpoints_supprimes
++
;
msg
.
Printf
(
wxT
(
" %d"
),
nbpoints_supprimes
);
Affiche_1_Parametre
(
frame
,
50
,
wxEmptyString
,
msg
,
a_color
);
}
}
}
}
}
}
/*******************************/
/* delete intermediate points */
/* delete intermediate points */
/*******************************/
nbpoints_supprimes
=
0
;
percent
=
0
;
oldpercent
=
-
1
;
frame
->
Affiche_Message
(
_
(
"Merging Segments:"
)
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
_
(
"Merge"
),
_
(
"0"
),
a_color
);
ii
=
0
;
ii
=
0
;
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
nextsegment
)
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
nextsegment
)
{
{
...
@@ -518,23 +431,8 @@ static int clean_segments( WinEDA_PcbFrame* frame )
...
@@ -518,23 +431,8 @@ static int clean_segments( WinEDA_PcbFrame* frame )
TRACK
*
segDelete
;
TRACK
*
segDelete
;
nextsegment
=
segment
->
Next
();
nextsegment
=
segment
->
Next
();
ii
++
;
percent
=
(
100
*
ii
)
/
frame
->
GetBoard
()
->
m_Track
.
GetCount
();
if
(
percent
!=
oldpercent
)
{
frame
->
DisplayActivity
(
percent
,
_
(
"Merge: "
)
);
oldpercent
=
percent
;
msg
.
Printf
(
wxT
(
"%d"
),
frame
->
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
frame
,
POS_AFF_MAX
,
wxT
(
"Max"
),
msg
,
GREEN
);
msg
.
Printf
(
wxT
(
"%d"
),
ii
);
Affiche_1_Parametre
(
frame
,
POS_AFF_NUMSEGM
,
wxT
(
"Segm"
),
msg
,
CYAN
);
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
return
-
1
;
return
;
}
if
(
segment
->
Type
()
!=
TYPE_TRACK
)
if
(
segment
->
Type
()
!=
TYPE_TRACK
)
continue
;
continue
;
...
@@ -575,7 +473,7 @@ static int clean_segments( WinEDA_PcbFrame* frame )
...
@@ -575,7 +473,7 @@ static int clean_segments( WinEDA_PcbFrame* frame )
segDelete
=
AlignSegment
(
frame
->
GetBoard
(),
segment
,
segStart
,
START
);
segDelete
=
AlignSegment
(
frame
->
GetBoard
(),
segment
,
segStart
,
START
);
if
(
segDelete
)
if
(
segDelete
)
{
{
n
bpoints_supprimes
++
;
n
o_inc
=
1
;
no_inc
=
1
;
segDelete
->
DeleteStructure
();
segDelete
->
DeleteStructure
();
}
}
}
}
...
@@ -612,22 +510,16 @@ static int clean_segments( WinEDA_PcbFrame* frame )
...
@@ -612,22 +510,16 @@ static int clean_segments( WinEDA_PcbFrame* frame )
segDelete
=
AlignSegment
(
frame
->
GetBoard
(),
segment
,
segEnd
,
END
);
segDelete
=
AlignSegment
(
frame
->
GetBoard
(),
segment
,
segEnd
,
END
);
if
(
segDelete
)
if
(
segDelete
)
{
{
nbpoints_supprimes
++
;
no_inc
=
1
;
no_inc
=
1
;
segDelete
->
DeleteStructure
();
segDelete
->
DeleteStructure
();
}
}
}
}
if
(
no_inc
)
/* The current segment was modified, retry to merge it */
if
(
no_inc
)
/* The current segment was modified, retry to merge it */
{
msg
.
Printf
(
wxT
(
"%d "
),
nbpoints_supprimes
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxEmptyString
,
msg
,
a_color
);
nextsegment
=
segment
->
Next
();
nextsegment
=
segment
->
Next
();
}
}
}
return
0
;
return
;
}
}
...
@@ -740,51 +632,16 @@ static TRACK* AlignSegment( BOARD* Pcb, TRACK* pt_ref, TRACK* pt_segm, int extre
...
@@ -740,51 +632,16 @@ static TRACK* AlignSegment( BOARD* Pcb, TRACK* pt_ref, TRACK* pt_segm, int extre
* @param aDisplayActivity = true to display activity on the frame status bar and message panel
* @param aDisplayActivity = true to display activity on the frame status bar and message panel
* @return true if any change is made
* @return true if any change is made
*/
*/
bool
WinEDA_PcbFrame
::
RemoveMisConnectedTracks
(
wxDC
*
aDC
,
bool
aDisplayActivity
)
bool
WinEDA_PcbFrame
::
RemoveMisConnectedTracks
(
wxDC
*
aDC
)
{
{
TRACK
*
segment
;
TRACK
*
segment
;
TRACK
*
other
;
TRACK
*
other
;
TRACK
*
next
;
TRACK
*
next
;
int
net_code_s
,
net_code_e
;
int
net_code_s
,
net_code_e
;
int
nbpoints_modifies
=
0
;
bool
isModified
=
false
;
bool
flag
=
false
;
wxString
msg
;
int
percent
=
0
;
int
oldpercent
=
-
1
;
a_color
=
RED
;
if
(
aDisplayActivity
)
Affiche_Message
(
_
(
"DRC Control:"
)
);
DrawPanel
->
m_AbortRequest
=
FALSE
;
if
(
aDisplayActivity
)
Affiche_1_Parametre
(
this
,
POS_AFF_VAR
,
_
(
"NetCtr"
),
wxT
(
"0 "
),
a_color
);
int
ii
=
0
;
for
(
segment
=
GetBoard
()
->
m_Track
;
segment
;
segment
=
(
TRACK
*
)
segment
->
Next
()
)
for
(
segment
=
GetBoard
()
->
m_Track
;
segment
;
segment
=
(
TRACK
*
)
segment
->
Next
()
)
{
{
ii
++
;
if
(
aDisplayActivity
)
// display activity
{
percent
=
(
100
*
ii
)
/
GetBoard
()
->
m_Track
.
GetCount
();
if
(
percent
!=
oldpercent
)
{
DisplayActivity
(
percent
,
wxT
(
"Drc: "
)
);
oldpercent
=
percent
;
msg
.
Printf
(
wxT
(
"%d"
),
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
this
,
POS_AFF_MAX
,
wxT
(
"Max"
),
msg
,
GREEN
);
msg
.
Printf
(
wxT
(
"%d"
),
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
this
,
POS_AFF_NUMSEGM
,
wxT
(
"Segm"
),
msg
,
CYAN
);
if
(
DrawPanel
->
m_AbortRequest
)
return
flag
;
}
}
segment
->
SetState
(
FLAG0
,
OFF
);
segment
->
SetState
(
FLAG0
,
OFF
);
// find the netcode for segment using anything connected to the "start" of "segment"
// find the netcode for segment using anything connected to the "start" of "segment"
...
@@ -822,39 +679,30 @@ bool WinEDA_PcbFrame::RemoveMisConnectedTracks( wxDC* aDC, bool aDisplayActivity
...
@@ -822,39 +679,30 @@ bool WinEDA_PcbFrame::RemoveMisConnectedTracks( wxDC* aDC, bool aDisplayActivity
if
(
net_code_e
<
0
)
if
(
net_code_e
<
0
)
continue
;
// the "end" of segment is not connected
continue
;
// the "end" of segment is not connected
//
the obtained netcodes do not agree, mark the segment as needing
to be removed
//
Netcodes do not agree, so mark the segment as needed
to be removed
if
(
net_code_s
!=
net_code_e
)
if
(
net_code_s
!=
net_code_e
)
{
{
segment
->
SetState
(
FLAG0
,
ON
);
segment
->
SetState
(
FLAG0
,
ON
);
}
}
}
}
// Remov
al of
flagged segments
// Remov
e
flagged segments
for
(
segment
=
GetBoard
()
->
m_Track
;
segment
;
segment
=
next
)
for
(
segment
=
GetBoard
()
->
m_Track
;
segment
;
segment
=
next
)
{
{
next
=
(
TRACK
*
)
segment
->
Next
();
next
=
(
TRACK
*
)
segment
->
Next
();
if
(
segment
->
GetState
(
FLAG0
)
)
//
* if segment is marked as needing
to be removed
if
(
segment
->
GetState
(
FLAG0
)
)
//
Ssegment is flagged
to be removed
{
{
segment
->
SetState
(
FLAG0
,
OFF
);
segment
->
SetState
(
FLAG0
,
OFF
);
isModified
=
true
;
flag
=
true
;
oldpercent
=
-
1
;
GetBoard
()
->
m_Status_Pcb
=
0
;
GetBoard
()
->
m_Status_Pcb
=
0
;
Remove_One_Track
(
aDC
,
segment
);
Remove_One_Track
(
aDC
,
segment
);
// the current segment could be deleted, so restart to the beginning
next
=
GetBoard
()
->
m_Track
;
/* the current segment can be deleted, so restart to the beginning */
next
=
GetBoard
()
->
m_Track
;
if
(
aDisplayActivity
)
{
nbpoints_modifies
++
;
msg
.
Printf
(
wxT
(
"%d "
),
nbpoints_modifies
);
Affiche_1_Parametre
(
this
,
POS_AFF_VAR
,
wxEmptyString
,
msg
,
a_color
);
}
}
}
}
}
return
flag
;
return
isModified
;
}
}
...
@@ -1100,36 +948,15 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -1100,36 +948,15 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
TRACK
*
segment
;
TRACK
*
segment
;
int
nb_new_piste
=
0
;
int
nb_new_piste
=
0
;
wxString
msg
;
wxString
msg
;
int
percent
=
0
;
int
oldpercent
=
-
1
;
a_color
=
GREEN
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
frame
->
DrawPanel
->
m_AbortRequest
=
FALSE
;
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
_
(
"Centre"
),
_
(
"0 "
),
a_color
);
int
ii
=
0
;
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
segment
->
Next
()
)
for
(
segment
=
frame
->
GetBoard
()
->
m_Track
;
segment
;
segment
=
segment
->
Next
()
)
{
{
D_PAD
*
pad
;
D_PAD
*
pad
;
ii
++
;
percent
=
(
100
*
ii
)
/
frame
->
GetBoard
()
->
m_Track
.
GetCount
();
if
(
percent
!=
oldpercent
)
{
frame
->
DisplayActivity
(
percent
,
_
(
"Pads: "
)
);
oldpercent
=
percent
;
msg
.
Printf
(
wxT
(
"%d"
),
frame
->
GetBoard
()
->
m_Track
.
GetCount
()
);
Affiche_1_Parametre
(
frame
,
POS_AFF_MAX
,
_
(
"Max"
),
msg
,
GREEN
);
msg
.
Printf
(
wxT
(
"%d"
),
ii
);
Affiche_1_Parametre
(
frame
,
POS_AFF_NUMSEGM
,
_
(
"Segm"
),
msg
,
CYAN
);
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
if
(
frame
->
DrawPanel
->
m_AbortRequest
)
return
;
return
;
}
pad
=
Locate_Pad_Connecte
(
frame
->
GetBoard
(),
segment
,
START
);
pad
=
Locate_Pad_Connecte
(
frame
->
GetBoard
(),
segment
,
START
);
if
(
pad
)
if
(
pad
)
...
@@ -1152,7 +979,6 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -1152,7 +979,6 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
nb_new_piste
++
;
nb_new_piste
++
;
newTrack
->
Draw
(
frame
->
DrawPanel
,
DC
,
GR_OR
);
newTrack
->
Draw
(
frame
->
DrawPanel
,
DC
,
GR_OR
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxEmptyString
,
msg
,
a_color
);
}
}
}
}
}
}
...
@@ -1174,11 +1000,7 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
...
@@ -1174,11 +1000,7 @@ void ConnectDanglingEndToPad( WinEDA_PcbFrame* frame, wxDC* DC )
newTrack
->
start
=
pad
;
newTrack
->
start
=
pad
;
newTrack
->
end
=
segment
;
newTrack
->
end
=
segment
;
nb_new_piste
++
;
nb_new_piste
++
;
msg
.
Printf
(
wxT
(
"e %d"
),
nb_new_piste
);
Affiche_1_Parametre
(
frame
,
POS_AFF_VAR
,
wxEmptyString
,
msg
,
a_color
);
}
}
}
}
}
}
...
...
pcbnew/cleaningoptions_dialog.cpp
deleted
100644 → 0
View file @
4451dd3a
/////////////////////////////////////////////////////////////////////////////
// Name: cleaningoptions_dialog.cpp
// Purpose:
// Author: jean-pierre Charras
// Modified by:
// Created: 25/05/2007 14:24:54
// RCS-ID:
// Copyright: GNU License
// Licence:
/////////////////////////////////////////////////////////////////////////////
// Generated by DialogBlocks (unregistered), 25/05/2007 14:24:54
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "cleaningoptions_dialog.h"
#endif
// For compilers that support precompilation, includes "wx/wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
////@begin includes
////@end includes
#include "cleaningoptions_dialog.h"
////@begin XPM images
////@end XPM images
/*!
* WinEDA_CleaningOptionsFrame type definition
*/
IMPLEMENT_DYNAMIC_CLASS
(
WinEDA_CleaningOptionsFrame
,
wxDialog
)
/*!
* WinEDA_CleaningOptionsFrame event table definition
*/
BEGIN_EVENT_TABLE
(
WinEDA_CleaningOptionsFrame
,
wxDialog
)
////@begin WinEDA_CleaningOptionsFrame event table entries
EVT_CLOSE
(
WinEDA_CleaningOptionsFrame
::
OnCloseWindow
)
EVT_BUTTON
(
ID_BUTTON_EXECUTE
,
WinEDA_CleaningOptionsFrame
::
OnButtonExecuteClick
)
////@end WinEDA_CleaningOptionsFrame event table entries
END_EVENT_TABLE
()
/*!
* WinEDA_CleaningOptionsFrame constructors
*/
WinEDA_CleaningOptionsFrame
::
WinEDA_CleaningOptionsFrame
()
{
Init
();
}
WinEDA_CleaningOptionsFrame
::
WinEDA_CleaningOptionsFrame
(
WinEDA_PcbFrame
*
parent
,
wxDC
*
DC
,
wxWindowID
id
,
const
wxString
&
caption
,
const
wxPoint
&
pos
,
const
wxSize
&
size
,
long
style
)
{
Init
();
m_Parent
=
parent
;
m_DC
=
DC
;
Create
(
parent
,
id
,
caption
,
pos
,
size
,
style
);
}
/*!
* WinEDA_CleaningOptionsFrame creator
*/
bool
WinEDA_CleaningOptionsFrame
::
Create
(
wxWindow
*
parent
,
wxWindowID
id
,
const
wxString
&
caption
,
const
wxPoint
&
pos
,
const
wxSize
&
size
,
long
style
)
{
////@begin WinEDA_CleaningOptionsFrame creation
SetExtraStyle
(
wxWS_EX_BLOCK_EVENTS
);
wxDialog
::
Create
(
parent
,
id
,
caption
,
pos
,
size
,
style
);
CreateControls
();
if
(
GetSizer
())
{
GetSizer
()
->
SetSizeHints
(
this
);
}
Centre
();
////@end WinEDA_CleaningOptionsFrame creation
return
true
;
}
/*!
* WinEDA_CleaningOptionsFrame destructor
*/
WinEDA_CleaningOptionsFrame
::~
WinEDA_CleaningOptionsFrame
()
{
////@begin WinEDA_CleaningOptionsFrame destruction
////@end WinEDA_CleaningOptionsFrame destruction
}
/*!
* Member initialisation
*/
void
WinEDA_CleaningOptionsFrame
::
Init
()
{
m_Parent
=
NULL
;
////@begin WinEDA_CleaningOptionsFrame member initialisation
m_CleanViasOpt
=
NULL
;
m_MergetSegmOpt
=
NULL
;
m_DeleteunconnectedOpt
=
NULL
;
m_ConnectToPadsOpt
=
NULL
;
////@end WinEDA_CleaningOptionsFrame member initialisation
}
/*!
* Control creation for WinEDA_CleaningOptionsFrame
*/
void
WinEDA_CleaningOptionsFrame
::
CreateControls
()
{
////@begin WinEDA_CleaningOptionsFrame content construction
// Generated by DialogBlocks, 21/10/2007 19:42:47 (unregistered)
WinEDA_CleaningOptionsFrame
*
itemDialog1
=
this
;
wxBoxSizer
*
itemBoxSizer2
=
new
wxBoxSizer
(
wxVERTICAL
);
itemDialog1
->
SetSizer
(
itemBoxSizer2
);
wxBoxSizer
*
itemBoxSizer3
=
new
wxBoxSizer
(
wxHORIZONTAL
);
itemBoxSizer2
->
Add
(
itemBoxSizer3
,
0
,
wxALIGN_CENTER_HORIZONTAL
|
wxALL
,
5
);
wxStaticBox
*
itemStaticBoxSizer4Static
=
new
wxStaticBox
(
itemDialog1
,
wxID_ANY
,
_
(
"Static"
));
wxStaticBoxSizer
*
itemStaticBoxSizer4
=
new
wxStaticBoxSizer
(
itemStaticBoxSizer4Static
,
wxVERTICAL
);
itemBoxSizer3
->
Add
(
itemStaticBoxSizer4
,
0
,
wxALIGN_CENTER_VERTICAL
|
wxALL
,
5
);
m_CleanViasOpt
=
new
wxCheckBox
(
itemDialog1
,
ID_CHECKBOX_CLEAN_VIAS
,
_
(
"Delete redundant vias"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_CleanViasOpt
->
SetValue
(
false
);
if
(
ShowToolTips
())
m_CleanViasOpt
->
SetToolTip
(
_
(
"remove vias on pads with a through hole"
));
itemStaticBoxSizer4
->
Add
(
m_CleanViasOpt
,
0
,
wxALIGN_LEFT
|
wxALL
,
5
);
m_MergetSegmOpt
=
new
wxCheckBox
(
itemDialog1
,
ID_CHECKBOX_MERGE_SEGMENTS
,
_
(
"Merge segments"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_MergetSegmOpt
->
SetValue
(
false
);
if
(
ShowToolTips
())
m_MergetSegmOpt
->
SetToolTip
(
_
(
"merge aligned track segments, and remove null segments"
));
itemStaticBoxSizer4
->
Add
(
m_MergetSegmOpt
,
0
,
wxALIGN_LEFT
|
wxALL
,
5
);
m_DeleteunconnectedOpt
=
new
wxCheckBox
(
itemDialog1
,
ID_CHECKBOX1
,
_
(
"Delete unconnected tracks"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_DeleteunconnectedOpt
->
SetValue
(
false
);
if
(
ShowToolTips
())
m_DeleteunconnectedOpt
->
SetToolTip
(
_
(
"delete track segment having a dangling end"
));
itemStaticBoxSizer4
->
Add
(
m_DeleteunconnectedOpt
,
0
,
wxALIGN_LEFT
|
wxALL
,
5
);
m_ConnectToPadsOpt
=
new
wxCheckBox
(
itemDialog1
,
ID_CHECKBOX
,
_
(
"Connect to Pads"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_ConnectToPadsOpt
->
SetValue
(
false
);
if
(
ShowToolTips
())
m_ConnectToPadsOpt
->
SetToolTip
(
_
(
"Extend dangling tracks which partially cover a pad or via, all the way to pad or via center"
));
itemStaticBoxSizer4
->
Add
(
m_ConnectToPadsOpt
,
0
,
wxALIGN_LEFT
|
wxALL
,
5
);
wxBoxSizer
*
itemBoxSizer9
=
new
wxBoxSizer
(
wxVERTICAL
);
itemBoxSizer3
->
Add
(
itemBoxSizer9
,
0
,
wxALIGN_CENTER_VERTICAL
|
wxALL
,
5
);
wxButton
*
itemButton10
=
new
wxButton
(
itemDialog1
,
ID_BUTTON_EXECUTE
,
_
(
"Clean pcb"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
itemButton10
->
SetDefault
();
itemBoxSizer9
->
Add
(
itemButton10
,
0
,
wxALIGN_CENTER_HORIZONTAL
|
wxALL
,
5
);
// Set validators
m_CleanViasOpt
->
SetValidator
(
wxGenericValidator
(
&
s_CleanVias
)
);
m_MergetSegmOpt
->
SetValidator
(
wxGenericValidator
(
&
s_MergeSegments
)
);
m_DeleteunconnectedOpt
->
SetValidator
(
wxGenericValidator
(
&
s_DeleteUnconnectedSegm
)
);
////@end WinEDA_CleaningOptionsFrame content construction
}
/*!
* Should we show tooltips?
*/
bool
WinEDA_CleaningOptionsFrame
::
ShowToolTips
()
{
return
true
;
}
/*!
* Get bitmap resources
*/
wxBitmap
WinEDA_CleaningOptionsFrame
::
GetBitmapResource
(
const
wxString
&
name
)
{
// Bitmap retrieval
////@begin WinEDA_CleaningOptionsFrame bitmap retrieval
wxUnusedVar
(
name
);
return
wxNullBitmap
;
////@end WinEDA_CleaningOptionsFrame bitmap retrieval
}
/*!
* Get icon resources
*/
wxIcon
WinEDA_CleaningOptionsFrame
::
GetIconResource
(
const
wxString
&
name
)
{
// Icon retrieval
////@begin WinEDA_CleaningOptionsFrame icon retrieval
wxUnusedVar
(
name
);
return
wxNullIcon
;
////@end WinEDA_CleaningOptionsFrame icon retrieval
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON_EXECUTE
*/
void
WinEDA_CleaningOptionsFrame
::
OnButtonExecuteClick
(
wxCommandEvent
&
event
)
{
s_CleanVias
=
m_CleanViasOpt
->
GetValue
();
s_MergeSegments
=
m_MergetSegmOpt
->
GetValue
();
s_DeleteUnconnectedSegm
=
m_DeleteunconnectedOpt
->
GetValue
();
s_ConnectToPads
=
m_ConnectToPadsOpt
->
GetValue
();
Clean_Pcb_Items
(
m_Parent
,
m_DC
);
Close
(
TRUE
);
}
/*!
* wxEVT_CLOSE_WINDOW event handler for ID_WIN_EDA_CLEANINGOPTIONSFRAME
*/
void
WinEDA_CleaningOptionsFrame
::
OnCloseWindow
(
wxCloseEvent
&
event
)
{
s_CleanVias
=
m_CleanViasOpt
->
GetValue
();
s_MergeSegments
=
m_MergetSegmOpt
->
GetValue
();
s_DeleteUnconnectedSegm
=
m_DeleteunconnectedOpt
->
GetValue
();
s_ConnectToPads
=
m_ConnectToPadsOpt
->
GetValue
();
event
.
Skip
();
}
pcbnew/cleaningoptions_dialog.h
deleted
100644 → 0
View file @
4451dd3a
/////////////////////////////////////////////////////////////////////////////
// Name: cleaningoptions_dialog.h
// Purpose:
// Author: jean-pierre Charras
// Modified by:
// Created: 25/05/2007 14:24:54
// RCS-ID:
// Copyright: GNU License
// Licence:
/////////////////////////////////////////////////////////////////////////////
// Generated by DialogBlocks (unregistered), 25/05/2007 14:24:54
#ifndef _CLEANINGOPTIONS_DIALOG_H_
#define _CLEANINGOPTIONS_DIALOG_H_
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "cleaningoptions_dialog.h"
#endif
/*!
* Includes
*/
////@begin includes
#include "wx/valgen.h"
////@end includes
/*!
* Forward declarations
*/
////@begin forward declarations
////@end forward declarations
/*!
* Control identifiers
*/
////@begin control identifiers
#define ID_WIN_EDA_CLEANINGOPTIONSFRAME 10000
#define ID_CHECKBOX_CLEAN_VIAS 10001
#define ID_CHECKBOX_MERGE_SEGMENTS 10003
#define ID_CHECKBOX1 10005
#define ID_CHECKBOX 10004
#define ID_BUTTON_EXECUTE 10006
#define SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_STYLE wxCAPTION|wxSYSTEM_MENU|wxCLOSE_BOX|MAYBE_RESIZE_BORDER
#define SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_TITLE _("Cleaning options")
#define SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_IDNAME ID_WIN_EDA_CLEANINGOPTIONSFRAME
#define SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_SIZE wxSize(400, 300)
#define SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_POSITION wxDefaultPosition
////@end control identifiers
class
WinEDA_PcbFrame
;
/*declared in clean.cpp:
extern static bool s_CleanVias;
extern static bool s_MergeSegments;
extern static bool s_DeleteUnconnectedSegm;
void Clean_Pcb_Items( WinEDA_PcbFrame* frame, wxDC* DC );
//end clean.cpp */
/*!
* WinEDA_CleaningOptionsFrame class declaration
*/
class
WinEDA_CleaningOptionsFrame
:
public
wxDialog
{
DECLARE_DYNAMIC_CLASS
(
WinEDA_CleaningOptionsFrame
)
DECLARE_EVENT_TABLE
()
public
:
/// Constructors
WinEDA_CleaningOptionsFrame
();
WinEDA_CleaningOptionsFrame
(
WinEDA_PcbFrame
*
parent
,
wxDC
*
DC
,
wxWindowID
id
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_IDNAME
,
const
wxString
&
caption
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_TITLE
,
const
wxPoint
&
pos
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_POSITION
,
const
wxSize
&
size
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_SIZE
,
long
style
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_STYLE
);
/// Creation
bool
Create
(
wxWindow
*
parent
,
wxWindowID
id
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_IDNAME
,
const
wxString
&
caption
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_TITLE
,
const
wxPoint
&
pos
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_POSITION
,
const
wxSize
&
size
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_SIZE
,
long
style
=
SYMBOL_WINEDA_CLEANINGOPTIONSFRAME_STYLE
);
/// Destructor
~
WinEDA_CleaningOptionsFrame
();
/// Initialises member variables
void
Init
();
/// Creates the controls and sizers
void
CreateControls
();
////@begin WinEDA_CleaningOptionsFrame event handler declarations
/// wxEVT_CLOSE_WINDOW event handler for ID_WIN_EDA_CLEANINGOPTIONSFRAME
void
OnCloseWindow
(
wxCloseEvent
&
event
);
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON_EXECUTE
void
OnButtonExecuteClick
(
wxCommandEvent
&
event
);
////@end WinEDA_CleaningOptionsFrame event handler declarations
////@begin WinEDA_CleaningOptionsFrame member function declarations
/// Retrieves bitmap resources
wxBitmap
GetBitmapResource
(
const
wxString
&
name
);
/// Retrieves icon resources
wxIcon
GetIconResource
(
const
wxString
&
name
);
////@end WinEDA_CleaningOptionsFrame member function declarations
/// Should we show tooltips?
static
bool
ShowToolTips
();
////@begin WinEDA_CleaningOptionsFrame member variables
wxCheckBox
*
m_CleanViasOpt
;
wxCheckBox
*
m_MergetSegmOpt
;
wxCheckBox
*
m_DeleteunconnectedOpt
;
wxCheckBox
*
m_ConnectToPadsOpt
;
////@end WinEDA_CleaningOptionsFrame member variables
WinEDA_PcbFrame
*
m_Parent
;
wxDC
*
m_DC
;
};
#endif
// _CLEANINGOPTIONS_DIALOG_H_
pcbnew/cleaningoptions_dialog.pjd
deleted
100644 → 0
View file @
4451dd3a
<?xml version="1.0" encoding="UTF-8"?>
<anthemion-project
version=
"1.0.0.0"
xmlns=
"http://www.anthemion.co.uk"
>
<header>
<long
name=
"name_counter"
>
0
</long>
<string
name=
"html_path"
>
""
</string>
<string
name=
"title"
>
""
</string>
<string
name=
"author"
>
""
</string>
<string
name=
"description"
>
""
</string>
<string
name=
"xrc_filename"
>
""
</string>
<bool
name=
"convert_images_to_xpm"
>
0
</bool>
<bool
name=
"inline_images"
>
0
</bool>
<bool
name=
"generate_cpp_for_xrc"
>
0
</bool>
<bool
name=
"use_help_text_for_tooltips"
>
1
</bool>
<bool
name=
"translate_strings"
>
1
</bool>
<bool
name=
"extract_strings"
>
0
</bool>
<string
name=
"user_name"
>
"jean-pierre Charras"
</string>
<string
name=
"copyright_string"
>
"GNU License"
</string>
<string
name=
"resource_prefix"
>
""
</string>
<bool
name=
"use_two_step_construction"
>
0
</bool>
<bool
name=
"use_enums"
>
0
</bool>
<string
name=
"current_platform"
>
"
<
All platforms
>
"
</string>
<string
name=
"target_wx_version"
>
"2.8.3"
</string>
<string
name=
"cpp_header_comment"
>
"/////////////////////////////////////////////////////////////////////////////
// Name: %HEADER-FILENAME%
// Purpose:
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"
</string>
<string
name=
"cpp_implementation_comment"
>
"/////////////////////////////////////////////////////////////////////////////
// Name: %SOURCE-FILENAME%
// Purpose:
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"
</string>
<string
name=
"cpp_symbols_file_comment"
>
"/////////////////////////////////////////////////////////////////////////////
// Name: %SYMBOLS-FILENAME%
// Purpose: Symbols file
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"
</string>
<string
name=
"cpp_header_preamble"
>
"#if defined(__GNUG__)
&&
!defined(NO_GCC_PRAGMA)
#pragma interface
"
%HEADER-FILENAME%
"
#endif
"
</string>
<string
name=
"cpp_implementation_preamble"
>
"#if defined(__GNUG__)
&&
!defined(NO_GCC_PRAGMA)
#pragma implementation
"
%HEADER-FILENAME%
"
#endif
// For compilers that support precompilation, includes
"
wx/wx.h
"
.
#include
"
wx/wxprec.h
"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include
"
wx/wx.h
"
#endif
"
</string>
<string
name=
"cpp_function_declaration_comment"
>
" /// %BODY%
"
</string>
<string
name=
"cpp_function_implementation_comment"
>
"
/*!
* %BODY%
*/
"
</string>
<string
name=
"resource_file_header"
>
"app_resources.h"
</string>
<string
name=
"resource_file_implementation"
>
"app_resources.cpp"
</string>
<string
name=
"resource_class_name"
>
"AppResources"
</string>
<string
name=
"app_file_header"
>
"app.h"
</string>
<string
name=
"app_file_implementation"
>
"app.cpp"
</string>
<string
name=
"app_class_name"
>
"Application"
</string>
<bool
name=
"generate_app_class"
>
0
</bool>
<string
name=
"external_symbol_filenames"
>
""
</string>
<string
name=
"configuration"
>
"
<
None
>
"
</string>
<string
name=
"source_encoding"
>
"iso-8859-1"
</string>
<string
name=
"xrc_encoding"
>
"utf-8"
</string>
<string
name=
"project_encoding"
>
"utf-8"
</string>
<string
name=
"resource_archive"
>
""
</string>
<long
name=
"text_file_type"
>
0
</long>
<bool
name=
"use_tabs"
>
0
</bool>
<long
name=
"indent_size"
>
4
</long>
<string
name=
"whitespace_after_return_type"
>
" "
</string>
<string
name=
"resource_xrc_cpp"
>
""
</string>
<bool
name=
"use_resource_archive"
>
0
</bool>
<bool
name=
"use_generated_xrc_cpp"
>
0
</bool>
<bool
name=
"always_generate_xrc"
>
1
</bool>
<bool
name=
"archive_xrc_files"
>
1
</bool>
<bool
name=
"archive_image_files"
>
1
</bool>
<bool
name=
"archive_all_image_files"
>
0
</bool>
<bool
name=
"xrc_retain_relative_paths"
>
1
</bool>
</header>
<data>
<document>
<string
name=
"title"
>
""
</string>
<string
name=
"type"
>
"data-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
""
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<document>
<string
name=
"title"
>
"Configurations"
</string>
<string
name=
"type"
>
"config-data-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
""
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"template-name"
>
""
</string>
<bool
name=
"dirty"
>
1
</bool>
<string
name=
"Compiler name"
>
""
</string>
<string
name=
"Build mode"
>
"Debug"
</string>
<string
name=
"Unicode mode"
>
"ANSI"
</string>
<string
name=
"Shared mode"
>
"Static"
</string>
<string
name=
"Modularity"
>
"Modular"
</string>
<string
name=
"GUI mode"
>
"GUI"
</string>
<string
name=
"Toolkit"
>
"wxMSW"
</string>
<string
name=
"Runtime linking"
>
"Dynamic"
</string>
<string
name=
"Use exceptions"
>
"Yes"
</string>
<string
name=
"Use ODBC"
>
"No"
</string>
<string
name=
"Use OpenGL"
>
"No"
</string>
<string
name=
"wxWidgets version"
>
"%WXVERSION%"
</string>
<string
name=
"Executable name"
>
"%EXECUTABLE%"
</string>
<string
name=
"Program arguments"
>
""
</string>
<string
name=
"Working path"
>
"%AUTO%"
</string>
<string
name=
"Output path"
>
"%AUTO%"
</string>
<string
name=
"Objects path"
>
"%AUTO%"
</string>
<string
name=
"Compiler location"
>
"%AUTO%"
</string>
<string
name=
"wxWidgets location"
>
"%AUTO%"
</string>
<string
name=
"C++ command"
>
"%AUTO%"
</string>
<string
name=
"Resource compiler"
>
"%AUTO%"
</string>
<string
name=
"Make command"
>
"%AUTO%"
</string>
<string
name=
"Project makefile"
>
"%AUTO%"
</string>
<string
name=
"wxWidgets makefile"
>
"%AUTO%"
</string>
<string
name=
"Compiler bin path"
>
"%AUTO%"
</string>
<string
name=
"Compiler include path"
>
"%AUTO%"
</string>
<string
name=
"Compiler lib path"
>
"%AUTO%"
</string>
<string
name=
"Preprocessor flags"
>
"%AUTO%"
</string>
<string
name=
"Optimizations"
>
"%AUTO%"
</string>
<string
name=
"Warnings"
>
"%AUTO%"
</string>
<string
name=
"Debug flags"
>
"%AUTO%"
</string>
<string
name=
"Libraries"
>
"%AUTO%"
</string>
<string
name=
"Library path"
>
"%AUTO%"
</string>
<string
name=
"Linker flags"
>
"%AUTO%"
</string>
<string
name=
"Include path"
>
"%AUTO%"
</string>
<string
name=
"Resource flags"
>
"%AUTO%"
</string>
<string
name=
"Resource path"
>
"%AUTO%"
</string>
<string
name=
"wxWidgets build path"
>
"%AUTO%"
</string>
<string
name=
"wxWidgets build command"
>
"%AUTO%"
</string>
<string
name=
"wxWidgets clean command"
>
"%AUTO%"
</string>
<string
name=
"PATH variable"
>
"%AUTO%"
</string>
</document>
</document>
</data>
<documents>
<document>
<string
name=
"title"
>
"Projects"
</string>
<string
name=
"type"
>
"root-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"project"
</string>
<long
name=
"is-transient"
>
1
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
1
</long>
<document>
<string
name=
"title"
>
"Windows"
</string>
<string
name=
"type"
>
"html-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"dialogsfolder"
</string>
<long
name=
"is-transient"
>
1
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
1
</long>
<document>
<string
name=
"title"
>
"Cleaning options"
</string>
<string
name=
"type"
>
"dialog-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"dialog"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbDialogProxy"
</string>
<long
name=
"base-id"
>
10000
</long>
<bool
name=
"use-id-prefix"
>
0
</bool>
<string
name=
"id-prefix"
>
""
</string>
<bool
name=
"use-id-suffix"
>
0
</bool>
<string
name=
"id-suffix"
>
""
</string>
<long
name=
"use-xrc"
>
0
</long>
<string
name=
"event-handler-0"
>
"wxEVT_CLOSE_WINDOW|OnCloseWindow|NONE||"
</string>
<string
name=
"proxy-Id name"
>
"ID_WIN_EDA_CLEANINGOPTIONSFRAME"
</string>
<long
name=
"proxy-Id value"
>
10000
</long>
<string
name=
"proxy-Class"
>
"WinEDA_CleaningOptionsFrame"
</string>
<string
name=
"proxy-Base class"
>
"wxDialog"
</string>
<string
name=
"proxy-Window kind"
>
"wxDialog"
</string>
<string
name=
"proxy-Implementation filename"
>
"cleaningoptions_dialog.cpp"
</string>
<string
name=
"proxy-Header filename"
>
"cleaningoptions_dialog.h"
</string>
<string
name=
"proxy-XRC filename"
>
""
</string>
<string
name=
"proxy-Title"
>
"Cleaning options"
</string>
<bool
name=
"proxy-Centre"
>
1
</bool>
<string
name=
"proxy-Icon"
>
""
</string>
<bool
name=
"proxy-Dialog units"
>
0
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
""
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxDEFAULT_DIALOG_STYLE"
>
0
</bool>
<bool
name=
"proxy-wxCAPTION"
>
1
</bool>
<bool
name=
"proxy-wxRESIZE_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxTHICK_FRAME"
>
0
</bool>
<bool
name=
"proxy-wxSYSTEM_MENU"
>
1
</bool>
<bool
name=
"proxy-wxSTAY_ON_TOP"
>
0
</bool>
<bool
name=
"proxy-wxDIALOG_NO_PARENT"
>
0
</bool>
<bool
name=
"proxy-wxCLOSE_BOX"
>
1
</bool>
<bool
name=
"proxy-wxMAXIMIZE_BOX"
>
0
</bool>
<bool
name=
"proxy-wxMINIMIZE_BOX"
>
0
</bool>
<bool
name=
"proxy-wxDIALOG_MODAL"
>
1
</bool>
<bool
name=
"proxy-wxNO_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxSIMPLE_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxDOUBLE_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxSUNKEN_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxRAISED_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxSTATIC_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxCLIP_CHILDREN"
>
0
</bool>
<bool
name=
"proxy-wxTAB_TRAVERSAL"
>
0
</bool>
<bool
name=
"proxy-wxWS_EX_VALIDATE_RECURSIVELY"
>
0
</bool>
<bool
name=
"proxy-wxWS_EX_BLOCK_EVENTS"
>
1
</bool>
<bool
name=
"proxy-wxWS_EX_TRANSIENT"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
"MAYBE_RESIZE_BORDER"
</string>
<bool
name=
"proxy-wxDIALOG_EX_CONTEXTHELP"
>
0
</bool>
<bool
name=
"proxy-Fit to content"
>
1
</bool>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
400
</long>
<long
name=
"proxy-Height"
>
300
</long>
<bool
name=
"proxy-AUI manager"
>
0
</bool>
<string
name=
"proxy-Event sources"
>
""
</string>
<document>
<string
name=
"title"
>
"wxBoxSizer V"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"sizer"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"proxy-type"
>
"wbBoxSizerProxy"
</string>
<string
name=
"proxy-Orientation"
>
"Vertical"
</string>
<string
name=
"proxy-Member variable name"
>
""
</string>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<document>
<string
name=
"title"
>
"wxBoxSizer H"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"sizer"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbBoxSizerProxy"
</string>
<string
name=
"proxy-Orientation"
>
"Horizontal"
</string>
<string
name=
"proxy-Member variable name"
>
""
</string>
<string
name=
"proxy-AlignH"
>
"Centre"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<document>
<string
name=
"title"
>
"wxStaticBoxSizer V"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"sizer"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbStaticBoxSizerProxy"
</string>
<string
name=
"proxy-Id name"
>
"wxID_ANY"
</string>
<long
name=
"proxy-Id value"
>
-1
</long>
<string
name=
"proxy-Label"
>
"Static"
</string>
<string
name=
"proxy-Member variable name"
>
""
</string>
<string
name=
"proxy-Sizer member variable name"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Static box class"
>
"wxStaticBox"
</string>
<string
name=
"proxy-Orientation"
>
"Vertical"
</string>
<string
name=
"proxy-AlignH"
>
"Centre"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<document>
<string
name=
"title"
>
"wxCheckBox: ID_CHECKBOX_CLEAN_VIAS"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"checkbox"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbCheckBoxProxy"
</string>
<string
name=
"proxy-Id name"
>
"ID_CHECKBOX_CLEAN_VIAS"
</string>
<long
name=
"proxy-Id value"
>
10001
</long>
<string
name=
"proxy-Class"
>
"wxCheckBox"
</string>
<string
name=
"proxy-Base class"
>
"wxCheckBox"
</string>
<bool
name=
"proxy-External implementation"
>
1
</bool>
<bool
name=
"proxy-Separate files"
>
0
</bool>
<string
name=
"proxy-Implementation filename"
>
""
</string>
<string
name=
"proxy-Header filename"
>
""
</string>
<string
name=
"proxy-Member variable name"
>
"m_CleanViasOpt"
</string>
<string
name=
"proxy-Label"
>
"Delete redundant vias"
</string>
<bool
name=
"proxy-Initial value"
>
0
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
"remove vias on pads with a through hole"
</string>
<string
name=
"proxy-Data variable"
>
"s_CleanVias"
</string>
<string
name=
"proxy-Data validator"
>
"wxGenericValidator(
&
%VARIABLE%)"
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxALIGN_RIGHT"
>
0
</bool>
<bool
name=
"proxy-wxCHK_2STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_3STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_ALLOW_3RD_STATE_FOR_USER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
""
</string>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
-1
</long>
<long
name=
"proxy-Height"
>
-1
</long>
<string
name=
"proxy-AlignH"
>
"Left"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Custom arguments"
>
""
</string>
<string
name=
"proxy-Custom ctor arguments"
>
""
</string>
</document>
<document>
<string
name=
"title"
>
"wxCheckBox: ID_CHECKBOX_MERGE_SEGMENTS"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"checkbox"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbCheckBoxProxy"
</string>
<string
name=
"proxy-Id name"
>
"ID_CHECKBOX_MERGE_SEGMENTS"
</string>
<long
name=
"proxy-Id value"
>
10003
</long>
<string
name=
"proxy-Class"
>
"wxCheckBox"
</string>
<string
name=
"proxy-Base class"
>
"wxCheckBox"
</string>
<bool
name=
"proxy-External implementation"
>
1
</bool>
<bool
name=
"proxy-Separate files"
>
0
</bool>
<string
name=
"proxy-Implementation filename"
>
""
</string>
<string
name=
"proxy-Header filename"
>
""
</string>
<string
name=
"proxy-Member variable name"
>
"m_MergetSegmOpt"
</string>
<string
name=
"proxy-Label"
>
"Merge segments"
</string>
<bool
name=
"proxy-Initial value"
>
0
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
"merge aligned track segments, and remove null segments"
</string>
<string
name=
"proxy-Data variable"
>
"s_MergeSegments"
</string>
<string
name=
"proxy-Data validator"
>
"wxGenericValidator(
&
%VARIABLE%)"
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxALIGN_RIGHT"
>
0
</bool>
<bool
name=
"proxy-wxCHK_2STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_3STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_ALLOW_3RD_STATE_FOR_USER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
""
</string>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
-1
</long>
<long
name=
"proxy-Height"
>
-1
</long>
<string
name=
"proxy-AlignH"
>
"Left"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Custom arguments"
>
""
</string>
<string
name=
"proxy-Custom ctor arguments"
>
""
</string>
</document>
<document>
<string
name=
"title"
>
"wxCheckBox: ID_CHECKBOX1"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"checkbox"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbCheckBoxProxy"
</string>
<string
name=
"proxy-Id name"
>
"ID_CHECKBOX1"
</string>
<long
name=
"proxy-Id value"
>
10005
</long>
<string
name=
"proxy-Class"
>
"wxCheckBox"
</string>
<string
name=
"proxy-Base class"
>
"wxCheckBox"
</string>
<bool
name=
"proxy-External implementation"
>
1
</bool>
<bool
name=
"proxy-Separate files"
>
0
</bool>
<string
name=
"proxy-Implementation filename"
>
""
</string>
<string
name=
"proxy-Header filename"
>
""
</string>
<string
name=
"proxy-Member variable name"
>
"m_DeleteunconnectedOpt"
</string>
<string
name=
"proxy-Label"
>
"Delete unconnected tracks"
</string>
<bool
name=
"proxy-Initial value"
>
0
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
"delete track segment having a dangling end"
</string>
<string
name=
"proxy-Data variable"
>
"s_DeleteUnconnectedSegm"
</string>
<string
name=
"proxy-Data validator"
>
"wxGenericValidator(
&
%VARIABLE%)"
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxALIGN_RIGHT"
>
0
</bool>
<bool
name=
"proxy-wxCHK_2STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_3STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_ALLOW_3RD_STATE_FOR_USER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
""
</string>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
-1
</long>
<long
name=
"proxy-Height"
>
-1
</long>
<string
name=
"proxy-AlignH"
>
"Left"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Custom arguments"
>
""
</string>
<string
name=
"proxy-Custom ctor arguments"
>
""
</string>
</document>
<document>
<string
name=
"title"
>
"wxCheckBox: ID_CHECKBOX"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"checkbox"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbCheckBoxProxy"
</string>
<string
name=
"proxy-Id name"
>
"ID_CHECKBOX"
</string>
<long
name=
"proxy-Id value"
>
10004
</long>
<string
name=
"proxy-Class"
>
"wxCheckBox"
</string>
<string
name=
"proxy-Base class"
>
"wxCheckBox"
</string>
<bool
name=
"proxy-External implementation"
>
1
</bool>
<bool
name=
"proxy-Separate files"
>
0
</bool>
<string
name=
"proxy-Implementation filename"
>
""
</string>
<string
name=
"proxy-Header filename"
>
""
</string>
<string
name=
"proxy-Member variable name"
>
"m_ConnectToPadsOpt"
</string>
<string
name=
"proxy-Label"
>
"Connect to Pads"
</string>
<bool
name=
"proxy-Initial value"
>
0
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
"Extend dangling tracks which partially cover a pad or via, all the way to pad or via center"
</string>
<string
name=
"proxy-Data variable"
>
""
</string>
<string
name=
"proxy-Data validator"
>
""
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxALIGN_RIGHT"
>
0
</bool>
<bool
name=
"proxy-wxCHK_2STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_3STATE"
>
0
</bool>
<bool
name=
"proxy-wxCHK_ALLOW_3RD_STATE_FOR_USER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
""
</string>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
-1
</long>
<long
name=
"proxy-Height"
>
-1
</long>
<string
name=
"proxy-AlignH"
>
"Left"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Custom arguments"
>
""
</string>
<string
name=
"proxy-Custom ctor arguments"
>
""
</string>
</document>
</document>
<document>
<string
name=
"title"
>
"wxBoxSizer V"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"sizer"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbBoxSizerProxy"
</string>
<string
name=
"proxy-Orientation"
>
"Vertical"
</string>
<string
name=
"proxy-Member variable name"
>
""
</string>
<string
name=
"proxy-AlignH"
>
"Centre"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<document>
<string
name=
"title"
>
"wxButton: ID_BUTTON_EXECUTE"
</string>
<string
name=
"type"
>
"dialog-control-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"dialogcontrol"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"proxy-type"
>
"wbButtonProxy"
</string>
<string
name=
"event-handler-0"
>
"wxEVT_COMMAND_BUTTON_CLICKED|OnButtonExecuteClick|NONE||"
</string>
<string
name=
"proxy-Id name"
>
"ID_BUTTON_EXECUTE"
</string>
<long
name=
"proxy-Id value"
>
10006
</long>
<string
name=
"proxy-Class"
>
"wxButton"
</string>
<string
name=
"proxy-Base class"
>
"wxButton"
</string>
<bool
name=
"proxy-External implementation"
>
1
</bool>
<bool
name=
"proxy-Separate files"
>
0
</bool>
<string
name=
"proxy-Implementation filename"
>
""
</string>
<string
name=
"proxy-Header filename"
>
""
</string>
<string
name=
"proxy-Member variable name"
>
""
</string>
<string
name=
"proxy-Label"
>
"Clean pcb"
</string>
<bool
name=
"proxy-Default"
>
1
</bool>
<string
name=
"proxy-Help text"
>
""
</string>
<string
name=
"proxy-Tooltip text"
>
""
</string>
<string
name=
"proxy-Background colour"
>
""
</string>
<string
name=
"proxy-Foreground colour"
>
""
</string>
<string
name=
"proxy-Font"
>
""
</string>
<bool
name=
"proxy-Hidden"
>
0
</bool>
<bool
name=
"proxy-Enabled"
>
1
</bool>
<string
name=
"proxy-Platform"
>
"
<
Any platform
>
"
</string>
<bool
name=
"proxy-wxBU_LEFT"
>
0
</bool>
<bool
name=
"proxy-wxBU_RIGHT"
>
0
</bool>
<bool
name=
"proxy-wxBU_TOP"
>
0
</bool>
<bool
name=
"proxy-wxBU_BOTTOM"
>
0
</bool>
<bool
name=
"proxy-wxBU_EXACTFIT"
>
0
</bool>
<bool
name=
"proxy-wxNO_BORDER"
>
0
</bool>
<bool
name=
"proxy-wxWANTS_CHARS"
>
0
</bool>
<bool
name=
"proxy-wxNO_FULL_REPAINT_ON_RESIZE"
>
0
</bool>
<bool
name=
"proxy-wxFULL_REPAINT_ON_RESIZE"
>
0
</bool>
<string
name=
"proxy-Custom styles"
>
""
</string>
<long
name=
"proxy-X"
>
-1
</long>
<long
name=
"proxy-Y"
>
-1
</long>
<long
name=
"proxy-Width"
>
-1
</long>
<long
name=
"proxy-Height"
>
-1
</long>
<string
name=
"proxy-AlignH"
>
"Centre"
</string>
<string
name=
"proxy-AlignV"
>
"Centre"
</string>
<long
name=
"proxy-Stretch factor"
>
0
</long>
<long
name=
"proxy-Border"
>
5
</long>
<bool
name=
"proxy-wxLEFT"
>
1
</bool>
<bool
name=
"proxy-wxRIGHT"
>
1
</bool>
<bool
name=
"proxy-wxTOP"
>
1
</bool>
<bool
name=
"proxy-wxBOTTOM"
>
1
</bool>
<bool
name=
"proxy-wxSHAPED"
>
0
</bool>
<bool
name=
"proxy-wxADJUST_MINSIZE"
>
0
</bool>
<bool
name=
"proxy-wxFIXED_MINSIZE"
>
0
</bool>
<string
name=
"proxy-Custom arguments"
>
""
</string>
<string
name=
"proxy-Custom ctor arguments"
>
""
</string>
</document>
</document>
</document>
</document>
</document>
</document>
<document>
<string
name=
"title"
>
"Sources"
</string>
<string
name=
"type"
>
"html-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"sourcesfolder"
</string>
<long
name=
"is-transient"
>
1
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
1
</long>
<document>
<string
name=
"title"
>
"cleaningoptions_dialog.rc"
</string>
<string
name=
"type"
>
"source-editor-document"
</string>
<string
name=
"filename"
>
"cleaningoptions_dialog.rc"
</string>
<string
name=
"icon-name"
>
"source-editor"
</string>
<long
name=
"is-transient"
>
0
</long>
<long
name=
"owns-file"
>
0
</long>
<long
name=
"title-mode"
>
1
</long>
<long
name=
"locked"
>
0
</long>
<string
name=
"created"
>
"25/5/2007"
</string>
<string
name=
"language"
>
""
</string>
</document>
</document>
<document>
<string
name=
"title"
>
"Images"
</string>
<string
name=
"type"
>
"html-document"
</string>
<string
name=
"filename"
>
""
</string>
<string
name=
"icon-name"
>
"bitmapsfolder"
</string>
<long
name=
"is-transient"
>
1
</long>
<long
name=
"owns-file"
>
1
</long>
<long
name=
"title-mode"
>
0
</long>
<long
name=
"locked"
>
1
</long>
</document>
</document>
</documents>
</anthemion-project>
pcbnew/dialog_drc_base.fbp
View file @
814f4e43
This source diff could not be displayed because it is too large. You can
view the blob
instead.
pcbnew/dialogs/dialog_cleaning_options.cpp
0 → 100644
View file @
814f4e43
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_cleaning_options.cpp
// Author: jean-pierre Charras
/////////////////////////////////////////////////////////////////////////////
#include "wx/wx.h"
#include "dialog_cleaning_options.h"
DIALOG_CLEANING_OPTIONS
::
DIALOG_CLEANING_OPTIONS
(
wxWindow
*
parent
)
:
DIALOG_CLEANING_OPTIONS_BASE
(
parent
)
{
m_cleanViasOpt
->
SetValue
(
cleanVias
);
m_mergeSegmOpt
->
SetValue
(
mergeSegments
);
m_deleteUnconnectedOpt
->
SetValue
(
deleteUnconnectedSegm
);
m_reconnectToPadsOpt
->
SetValue
(
connectToPads
);
GetSizer
()
->
SetSizeHints
(
this
);
Centre
();
}
// Static members of DIALOG_CLEANING_OPTIONS
bool
DIALOG_CLEANING_OPTIONS
::
cleanVias
=
true
;
bool
DIALOG_CLEANING_OPTIONS
::
mergeSegments
=
true
;
bool
DIALOG_CLEANING_OPTIONS
::
deleteUnconnectedSegm
=
true
;
bool
DIALOG_CLEANING_OPTIONS
::
connectToPads
=
false
;
pcbnew/dialogs/dialog_cleaning_options.h
0 → 100644
View file @
814f4e43
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_cleaning_options.h
// Author: jean-pierre Charras
/////////////////////////////////////////////////////////////////////////////
#ifndef DIALOG_CLEANING_OPTIONS_H_
#define DIALOG_CLEANING_OPTIONS_H_
#include "dialog_cleaning_options_base.h"
class
DIALOG_CLEANING_OPTIONS
:
public
DIALOG_CLEANING_OPTIONS_BASE
{
public
:
static
bool
cleanVias
;
static
bool
mergeSegments
;
static
bool
deleteUnconnectedSegm
;
static
bool
connectToPads
;
public
:
DIALOG_CLEANING_OPTIONS
(
wxWindow
*
parent
);
~
DIALOG_CLEANING_OPTIONS
()
{
}
private
:
void
OnCancelClick
(
wxCommandEvent
&
event
)
{
EndModal
(
wxID_CANCEL
);
}
void
OnOKClick
(
wxCommandEvent
&
event
)
{
GetOpts
(
);
EndModal
(
wxID_OK
);
}
void
OnCloseWindow
(
wxCloseEvent
&
event
)
{
GetOpts
(
);
}
void
GetOpts
(
)
{
cleanVias
=
m_cleanViasOpt
->
GetValue
(
);
mergeSegments
=
m_mergeSegmOpt
->
GetValue
(
);
deleteUnconnectedSegm
=
m_deleteUnconnectedOpt
->
GetValue
(
);
connectToPads
=
m_reconnectToPadsOpt
->
GetValue
(
);
}
};
#endif
// DIALOG_CLEANING_OPTIONS_H_
pcbnew/dialogs/dialog_cleaning_options_base.cpp
0 → 100644
View file @
814f4e43
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Sep 8 2010)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
#include "dialog_cleaning_options_base.h"
///////////////////////////////////////////////////////////////////////////
DIALOG_CLEANING_OPTIONS_BASE
::
DIALOG_CLEANING_OPTIONS_BASE
(
wxWindow
*
parent
,
wxWindowID
id
,
const
wxString
&
title
,
const
wxPoint
&
pos
,
const
wxSize
&
size
,
long
style
)
:
wxDialog
(
parent
,
id
,
title
,
pos
,
size
,
style
)
{
this
->
SetSizeHints
(
wxDefaultSize
,
wxDefaultSize
);
wxBoxSizer
*
bSizerMain
;
bSizerMain
=
new
wxBoxSizer
(
wxVERTICAL
);
wxBoxSizer
*
bSizerUpper
;
bSizerUpper
=
new
wxBoxSizer
(
wxVERTICAL
);
m_cleanViasOpt
=
new
wxCheckBox
(
this
,
wxID_ANY
,
_
(
"Delete redundant vias"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_cleanViasOpt
->
SetToolTip
(
_
(
"remove vias on pads with a through hole"
)
);
bSizerUpper
->
Add
(
m_cleanViasOpt
,
0
,
wxALL
,
5
);
m_mergeSegmOpt
=
new
wxCheckBox
(
this
,
wxID_ANY
,
_
(
"Merge segments"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_mergeSegmOpt
->
SetToolTip
(
_
(
"merge aligned track segments, and remove null segments"
)
);
bSizerUpper
->
Add
(
m_mergeSegmOpt
,
0
,
wxALL
,
5
);
m_deleteUnconnectedOpt
=
new
wxCheckBox
(
this
,
wxID_ANY
,
_
(
"Delete unconnected tracks"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_deleteUnconnectedOpt
->
SetToolTip
(
_
(
"delete track segment having a dangling end"
)
);
bSizerUpper
->
Add
(
m_deleteUnconnectedOpt
,
0
,
wxALL
,
5
);
m_reconnectToPadsOpt
=
new
wxCheckBox
(
this
,
wxID_ANY
,
_
(
"Connect to pads"
),
wxDefaultPosition
,
wxDefaultSize
,
0
);
m_reconnectToPadsOpt
->
SetToolTip
(
_
(
"Extend dangling tracks which partially cover a pad or via, all the way to pad or via center"
)
);
bSizerUpper
->
Add
(
m_reconnectToPadsOpt
,
0
,
wxALL
,
5
);
bSizerMain
->
Add
(
bSizerUpper
,
1
,
wxEXPAND
|
wxALL
,
5
);
m_staticline
=
new
wxStaticLine
(
this
,
wxID_ANY
,
wxDefaultPosition
,
wxDefaultSize
,
wxLI_HORIZONTAL
);
bSizerMain
->
Add
(
m_staticline
,
0
,
wxEXPAND
|
wxALL
,
5
);
m_sdbSizer
=
new
wxStdDialogButtonSizer
();
m_sdbSizerOK
=
new
wxButton
(
this
,
wxID_OK
);
m_sdbSizer
->
AddButton
(
m_sdbSizerOK
);
m_sdbSizerCancel
=
new
wxButton
(
this
,
wxID_CANCEL
);
m_sdbSizer
->
AddButton
(
m_sdbSizerCancel
);
m_sdbSizer
->
Realize
();
bSizerMain
->
Add
(
m_sdbSizer
,
0
,
wxALIGN_RIGHT
|
wxALL
,
5
);
this
->
SetSizer
(
bSizerMain
);
this
->
Layout
();
this
->
Centre
(
wxBOTH
);
// Connect Events
this
->
Connect
(
wxEVT_CLOSE_WINDOW
,
wxCloseEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnCloseWindow
)
);
m_sdbSizerCancel
->
Connect
(
wxEVT_COMMAND_BUTTON_CLICKED
,
wxCommandEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnCancelClick
),
NULL
,
this
);
m_sdbSizerOK
->
Connect
(
wxEVT_COMMAND_BUTTON_CLICKED
,
wxCommandEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnOKClick
),
NULL
,
this
);
}
DIALOG_CLEANING_OPTIONS_BASE
::~
DIALOG_CLEANING_OPTIONS_BASE
()
{
// Disconnect Events
this
->
Disconnect
(
wxEVT_CLOSE_WINDOW
,
wxCloseEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnCloseWindow
)
);
m_sdbSizerCancel
->
Disconnect
(
wxEVT_COMMAND_BUTTON_CLICKED
,
wxCommandEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnCancelClick
),
NULL
,
this
);
m_sdbSizerOK
->
Disconnect
(
wxEVT_COMMAND_BUTTON_CLICKED
,
wxCommandEventHandler
(
DIALOG_CLEANING_OPTIONS_BASE
::
OnOKClick
),
NULL
,
this
);
}
pcbnew/dialogs/dialog_cleaning_options_base.fbp
0 → 100644
View file @
814f4e43
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<wxFormBuilder_Project>
<FileVersion
major=
"1"
minor=
"10"
/>
<object
class=
"Project"
expanded=
"1"
>
<property
name=
"class_decoration"
></property>
<property
name=
"code_generation"
>
C++
</property>
<property
name=
"disconnect_events"
>
1
</property>
<property
name=
"disconnect_mode"
>
source_name
</property>
<property
name=
"disconnect_python_events"
>
0
</property>
<property
name=
"encoding"
>
UTF-8
</property>
<property
name=
"event_generation"
>
connect
</property>
<property
name=
"file"
>
dialog_cleaning_options_base
</property>
<property
name=
"first_id"
>
1000
</property>
<property
name=
"help_provider"
>
none
</property>
<property
name=
"internationalize"
>
1
</property>
<property
name=
"name"
>
dialog_cleaning_options
</property>
<property
name=
"namespace"
></property>
<property
name=
"path"
>
.
</property>
<property
name=
"precompiled_header"
></property>
<property
name=
"relative_path"
>
1
</property>
<property
name=
"skip_python_events"
>
1
</property>
<property
name=
"use_enum"
>
0
</property>
<property
name=
"use_microsoft_bom"
>
0
</property>
<object
class=
"Dialog"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"center"
>
wxBOTH
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"event_handler"
>
impl_virtual
</property>
<property
name=
"extra_style"
></property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
DIALOG_CLEANING_OPTIONS_BASE
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
>
243,181
</property>
<property
name=
"style"
>
wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER
</property>
<property
name=
"subclass"
></property>
<property
name=
"title"
>
Cleaning options
</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=
"OnActivate"
></event>
<event
name=
"OnActivateApp"
></event>
<event
name=
"OnChar"
></event>
<event
name=
"OnClose"
>
OnCloseWindow
</event>
<event
name=
"OnEnterWindow"
></event>
<event
name=
"OnEraseBackground"
></event>
<event
name=
"OnHibernate"
></event>
<event
name=
"OnIconize"
></event>
<event
name=
"OnIdle"
></event>
<event
name=
"OnInitDialog"
></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
class=
"wxBoxSizer"
expanded=
"1"
>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
bSizerMain
</property>
<property
name=
"orient"
>
wxVERTICAL
</property>
<property
name=
"permission"
>
none
</property>
<object
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxEXPAND|wxALL
</property>
<property
name=
"proportion"
>
1
</property>
<object
class=
"wxBoxSizer"
expanded=
"1"
>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
bSizerUpper
</property>
<property
name=
"orient"
>
wxVERTICAL
</property>
<property
name=
"permission"
>
none
</property>
<object
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxCheckBox"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"checked"
>
0
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"label"
>
Delete redundant vias
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_cleanViasOpt
</property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
></property>
<property
name=
"style"
></property>
<property
name=
"subclass"
></property>
<property
name=
"tooltip"
>
remove vias on pads with a through hole
</property>
<property
name=
"validator_data_type"
>
bool
</property>
<property
name=
"validator_style"
>
wxFILTER_NUMERIC
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
>
cleanVias
</property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
<event
name=
"OnChar"
></event>
<event
name=
"OnCheckBox"
></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
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxCheckBox"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"checked"
>
0
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"label"
>
Merge segments
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_mergeSegmOpt
</property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
></property>
<property
name=
"style"
></property>
<property
name=
"subclass"
></property>
<property
name=
"tooltip"
>
merge aligned track segments, and remove null segments
</property>
<property
name=
"validator_data_type"
>
bool
</property>
<property
name=
"validator_style"
>
wxFILTER_NUMERIC
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
>
mergeSegments
</property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
<event
name=
"OnChar"
></event>
<event
name=
"OnCheckBox"
></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
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxCheckBox"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"checked"
>
0
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"label"
>
Delete unconnected tracks
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_deleteUnconnectedOpt
</property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
></property>
<property
name=
"style"
></property>
<property
name=
"subclass"
></property>
<property
name=
"tooltip"
>
delete track segment having a dangling end
</property>
<property
name=
"validator_data_type"
>
bool
</property>
<property
name=
"validator_style"
>
wxFILTER_NUMERIC
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
>
deleteUnconnectedSegm
</property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
<event
name=
"OnChar"
></event>
<event
name=
"OnCheckBox"
></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
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxCheckBox"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"checked"
>
0
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"label"
>
Connect to pads
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_reconnectToPadsOpt
</property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
></property>
<property
name=
"style"
></property>
<property
name=
"subclass"
></property>
<property
name=
"tooltip"
>
Extend dangling tracks which partially cover a pad or via, all the way to pad or via center
</property>
<property
name=
"validator_data_type"
>
bool
</property>
<property
name=
"validator_style"
>
wxFILTER_NUMERIC
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
>
connectToPads
</property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
<event
name=
"OnChar"
></event>
<event
name=
"OnCheckBox"
></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"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxEXPAND | wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxStaticLine"
expanded=
"1"
>
<property
name=
"bg"
></property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"fg"
></property>
<property
name=
"font"
></property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_staticline
</property>
<property
name=
"permission"
>
protected
</property>
<property
name=
"pos"
></property>
<property
name=
"size"
></property>
<property
name=
"style"
>
wxLI_HORIZONTAL
</property>
<property
name=
"subclass"
></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=
"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
class=
"sizeritem"
expanded=
"1"
>
<property
name=
"border"
>
5
</property>
<property
name=
"flag"
>
wxALIGN_RIGHT|wxALL
</property>
<property
name=
"proportion"
>
0
</property>
<object
class=
"wxStdDialogButtonSizer"
expanded=
"1"
>
<property
name=
"Apply"
>
0
</property>
<property
name=
"Cancel"
>
1
</property>
<property
name=
"ContextHelp"
>
0
</property>
<property
name=
"Help"
>
0
</property>
<property
name=
"No"
>
0
</property>
<property
name=
"OK"
>
1
</property>
<property
name=
"Save"
>
0
</property>
<property
name=
"Yes"
>
0
</property>
<property
name=
"minimum_size"
></property>
<property
name=
"name"
>
m_sdbSizer
</property>
<property
name=
"permission"
>
protected
</property>
<event
name=
"OnApplyButtonClick"
></event>
<event
name=
"OnCancelButtonClick"
>
OnCancelClick
</event>
<event
name=
"OnContextHelpButtonClick"
></event>
<event
name=
"OnHelpButtonClick"
></event>
<event
name=
"OnNoButtonClick"
></event>
<event
name=
"OnOKButtonClick"
>
OnOKClick
</event>
<event
name=
"OnSaveButtonClick"
></event>
<event
name=
"OnYesButtonClick"
></event>
</object>
</object>
</object>
</object>
</object>
</wxFormBuilder_Project>
pcbnew/dialogs/dialog_cleaning_options_base.h
0 → 100644
View file @
814f4e43
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Sep 8 2010)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
#ifndef __dialog_cleaning_options_base__
#define __dialog_cleaning_options_base__
#include <wx/intl.h>
#include <wx/string.h>
#include <wx/checkbox.h>
#include <wx/gdicmn.h>
#include <wx/font.h>
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/sizer.h>
#include <wx/statline.h>
#include <wx/button.h>
#include <wx/dialog.h>
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/// Class DIALOG_CLEANING_OPTIONS_BASE
///////////////////////////////////////////////////////////////////////////////
class
DIALOG_CLEANING_OPTIONS_BASE
:
public
wxDialog
{
private
:
protected
:
wxCheckBox
*
m_cleanViasOpt
;
wxCheckBox
*
m_mergeSegmOpt
;
wxCheckBox
*
m_deleteUnconnectedOpt
;
wxCheckBox
*
m_reconnectToPadsOpt
;
wxStaticLine
*
m_staticline
;
wxStdDialogButtonSizer
*
m_sdbSizer
;
wxButton
*
m_sdbSizerOK
;
wxButton
*
m_sdbSizerCancel
;
// Virtual event handlers, overide them in your derived class
virtual
void
OnCloseWindow
(
wxCloseEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnCancelClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
virtual
void
OnOKClick
(
wxCommandEvent
&
event
)
{
event
.
Skip
();
}
public
:
bool
cleanVias
;
bool
mergeSegments
;
bool
deleteUnconnectedSegm
;
bool
connectToPads
;
DIALOG_CLEANING_OPTIONS_BASE
(
wxWindow
*
parent
,
wxWindowID
id
=
wxID_ANY
,
const
wxString
&
title
=
_
(
"Cleaning options"
),
const
wxPoint
&
pos
=
wxDefaultPosition
,
const
wxSize
&
size
=
wxSize
(
243
,
181
),
long
style
=
wxDEFAULT_DIALOG_STYLE
|
wxRESIZE_BORDER
);
~
DIALOG_CLEANING_OPTIONS_BASE
();
};
#endif //__dialog_cleaning_options_base__
pcbnew/librairi.cpp
View file @
814f4e43
...
@@ -217,8 +217,7 @@ void WinEDA_ModuleEditFrame::Export_Module( MODULE* ptmod, bool createlib )
...
@@ -217,8 +217,7 @@ void WinEDA_ModuleEditFrame::Export_Module( MODULE* ptmod, bool createlib )
}
}
void
WinEDA_ModuleEditFrame
::
Delete_Module_In_Library
(
void
WinEDA_ModuleEditFrame
::
Delete_Module_In_Library
(
const
wxString
&
aLibname
)
const
wxString
&
aLibname
)
{
{
wxFileName
newFileName
;
wxFileName
newFileName
;
wxFileName
oldFileName
;
wxFileName
oldFileName
;
...
...
pcbnew/netlist.cpp
View file @
814f4e43
...
@@ -367,7 +367,7 @@ bool WinEDA_PcbFrame::ReadPcbNetlist( const wxString& aNetlistFullFilename,
...
@@ -367,7 +367,7 @@ bool WinEDA_PcbFrame::ReadPcbNetlist( const wxString& aNetlistFullFilename,
{
{
if
(
aDeleteBadTracks
)
// Remove erroneous tracks
if
(
aDeleteBadTracks
)
// Remove erroneous tracks
{
{
RemoveMisConnectedTracks
(
NULL
,
true
);
RemoveMisConnectedTracks
(
NULL
);
Compile_Ratsnest
(
NULL
,
true
);
Compile_Ratsnest
(
NULL
,
true
);
}
}
}
}
...
...
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