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
99ab2dca
Commit
99ab2dca
authored
Apr 17, 2010
by
jean-pierre charras
Browse files
Options
Browse Files
Download
Plain Diff
minor bug 564619 fixed and minor enhancements (mainly for Cvpcb)
parents
d64410b1
d4c811fc
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
39 additions
and
39 deletions
+39
-39
class_drawsheet.cpp
eeschema/class_drawsheet.cpp
+8
-1
class_drawsheet.h
eeschema/class_drawsheet.h
+4
-2
schedit.cpp
eeschema/schedit.cpp
+1
-1
class_board.cpp
pcbnew/class_board.cpp
+7
-22
class_module.cpp
pcbnew/class_module.cpp
+8
-10
moduleframe.cpp
pcbnew/moduleframe.cpp
+6
-3
toolbars_update_user_interface.cpp
pcbnew/toolbars_update_user_interface.cpp
+5
-0
No files found.
eeschema/class_drawsheet.cpp
View file @
99ab2dca
...
...
@@ -239,9 +239,11 @@ void SCH_SHEET::Place( WinEDA_SchematicFrame* frame, wxDC* DC )
* @param aFrame = the schematic frame
*/
void
SCH_SHEET
::
CleanupSheet
(
WinEDA_SchematicFrame
*
aFrame
,
bool
aRedraw
)
bool
aRedraw
,
bool
aSaveForUndoRedo
)
{
SCH_SHEET_PIN
*
Pinsheet
,
*
NextPinsheet
;
bool
isSaved
=
false
;
if
(
!
IsOK
(
aFrame
,
_
(
"Ok to cleanup this sheet"
)
)
)
return
;
...
...
@@ -268,6 +270,11 @@ void SCH_SHEET::CleanupSheet( WinEDA_SchematicFrame* aFrame,
NextPinsheet
=
Pinsheet
->
Next
();
if
(
HLabel
==
NULL
)
// Hlabel not found: delete pinsheet
{
if
(
aSaveForUndoRedo
&&
!
isSaved
)
{
isSaved
=
true
;
aFrame
->
SaveCopyInUndoList
(
this
,
UR_CHANGED
);
}
aFrame
->
OnModify
(
);
aFrame
->
DeleteSheetLabel
(
false
,
Pinsheet
);
}
...
...
eeschema/class_drawsheet.h
View file @
99ab2dca
...
...
@@ -178,10 +178,12 @@ public:
/** Function CleanupSheet
* Delete pinsheets which are not corresponding to a hierarchical label
* @param aRedraw = true to redraw Sheet
* @param aFrame = the schematic frame
* @param aRedraw = true to redraw Sheet
* @param aSaveForUndoRedo = true to put this sheet in UndoRedo list,
* if it is modified.
*/
void
CleanupSheet
(
WinEDA_SchematicFrame
*
frame
,
bool
aRedraw
);
void
CleanupSheet
(
WinEDA_SchematicFrame
*
frame
,
bool
aRedraw
,
bool
aSaveForUndoRedo
);
/** Function GetPenSize
* @return the size of the "pen" that be used to draw or plot this item
...
...
eeschema/schedit.cpp
View file @
99ab2dca
...
...
@@ -383,7 +383,7 @@ void WinEDA_SchematicFrame::Process_Special_Functions( wxCommandEvent& event )
case
ID_POPUP_SCH_CLEANUP_SHEET
:
if
(
screen
->
GetCurItem
()
&&
screen
->
GetCurItem
()
->
Type
()
==
DRAW_SHEET_STRUCT_TYPE
)
(
(
SCH_SHEET
*
)
screen
->
GetCurItem
()
)
->
CleanupSheet
(
this
,
true
);
(
(
SCH_SHEET
*
)
screen
->
GetCurItem
()
)
->
CleanupSheet
(
this
,
true
,
true
);
break
;
case
ID_POPUP_SCH_EDIT_PINSHEET
:
...
...
pcbnew/class_board.cpp
View file @
99ab2dca
...
...
@@ -791,34 +791,19 @@ bool BOARD::ComputeBoundaryBox()
}
}
/* Anal
is
e footprints */
/* Anal
yz
e footprints */
for
(
MODULE
*
module
=
m_Modules
;
module
;
module
=
module
->
Next
()
)
{
hasItems
=
TRUE
;
xmin
=
MIN
(
xmin
,
(
module
->
m_Pos
.
x
+
module
->
m_BoundaryBox
.
GetX
()
)
);
ymin
=
MIN
(
ymin
,
(
module
->
m_Pos
.
y
+
module
->
m_BoundaryBox
.
GetY
()
)
);
xmax
=
MAX
(
xmax
,
module
->
m_Pos
.
x
+
module
->
m_BoundaryBox
.
GetRight
()
);
ymax
=
MAX
(
ymax
,
module
->
m_Pos
.
y
+
module
->
m_BoundaryBox
.
GetBottom
()
);
for
(
D_PAD
*
pt_pad
=
module
->
m_Pads
;
pt_pad
;
pt_pad
=
pt_pad
->
Next
()
)
{
const
wxPoint
&
pos
=
pt_pad
->
GetPosition
();
d
=
pt_pad
->
m_Rayon
;
xmin
=
MIN
(
xmin
,
pos
.
x
-
d
);
ymin
=
MIN
(
ymin
,
pos
.
y
-
d
);
xmax
=
MAX
(
xmax
,
pos
.
x
+
d
);
ymax
=
MAX
(
ymax
,
pos
.
y
+
d
);
}
EDA_Rect
box
=
module
->
GetBoundingBox
();
xmin
=
MIN
(
xmin
,
box
.
GetX
()
);
ymin
=
MIN
(
ymin
,
box
.
GetY
()
);
xmax
=
MAX
(
xmax
,
box
.
GetRight
()
);
ymax
=
MAX
(
ymax
,
box
.
GetBottom
()
);
}
/* Anali
s
e track and zones */
/* Anali
z
e track and zones */
for
(
TRACK
*
track
=
m_Track
;
track
;
track
=
track
->
Next
()
)
{
d
=
(
track
->
m_Width
/
2
)
+
1
;
...
...
pcbnew/class_module.cpp
View file @
99ab2dca
...
...
@@ -623,11 +623,10 @@ int MODULE::ReadDescr( FILE* File, int* LineNum )
/* Update the bounding rectangle of the module
*
* The rectangle is the rectangle with the contours and
* Pads.
* The rectangle is calculated:
* For East 0
* Coord in on / anchor position
* The bounding box includes outlines and pads, but not the fields.
* The rectangle is:
* for orientation 0
* coordinates relative to the module anchor.
*/
void
MODULE
::
Set_Rectangle_Encadrement
()
{
...
...
@@ -702,10 +701,9 @@ void MODULE::Set_Rectangle_Encadrement()
}
/* Equivalent to Module:: Set_Rectangle_Encadrement() coord but real:
* Updating the rectangle real module PCB cad in ord
* Entree: pointer module
* The rectangle is the rectangle with the contours and pads.
/* Equivalent to Module::Set_Rectangle_Encadrement() but in board coordinates:
* Updates the module bounding box on the board
* The rectangle is the rectangle with outlines and pads, but not the fields
* Also updates the surface (.M_Surface) module.
*/
void
MODULE
::
SetRectangleExinscrit
()
...
...
@@ -785,7 +783,7 @@ void MODULE::SetRectangleExinscrit()
/**
* Function GetBoundingBox
* returns the full bounding box of this Footprint, including
text
s
* returns the full bounding box of this Footprint, including
field
s
* Mainly used to redraw the screen area occupied by the footprint
*/
EDA_Rect
MODULE
::
GetBoundingBox
()
...
...
pcbnew/moduleframe.cpp
View file @
99ab2dca
...
...
@@ -288,7 +288,6 @@ void WinEDA_ModuleEditFrame::SetToolbars()
m_HToolBar
->
EnableTool
(
ID_MODEDIT_SAVE_LIBMODULE
,
active
&&
islib
);
MODULE
*
module_in_edit
=
GetBoard
()
->
m_Modules
;
if
(
module_in_edit
&&
module_in_edit
->
m_Link
)
// this is not a new module
// ...
{
BOARD
*
mainpcb
=
frame
->
GetBoard
();
MODULE
*
source_module
=
mainpcb
->
m_Modules
;
...
...
@@ -334,7 +333,7 @@ void WinEDA_ModuleEditFrame::SetToolbars()
{
m_HToolBar
->
EnableTool
(
ID_MODEDIT_LOAD_MODULE_FROM_BOARD
,
false
);
}
m_HToolBar
->
Refresh
();
if
(
m_VToolBar
)
{
...
...
@@ -345,6 +344,7 @@ void WinEDA_ModuleEditFrame::SetToolbars()
m_VToolBar
->
EnableTool
(
ID_PCB_ADD_TEXT_BUTT
,
active
);
m_VToolBar
->
EnableTool
(
ID_MODEDIT_PLACE_ANCHOR
,
active
);
m_VToolBar
->
EnableTool
(
ID_PCB_DELETE_ITEM_BUTT
,
active
);
m_VToolBar
->
Refresh
();
}
if
(
m_OptionsToolBar
)
...
...
@@ -382,6 +382,7 @@ void WinEDA_ModuleEditFrame::SetToolbars()
m_DisplayPadFill
?
_
(
"Show pads in sketch mode"
)
:
_
(
"Show pads in filled mode"
)
);
m_OptionsToolBar
->
Refresh
();
}
if
(
m_AuxiliaryToolBar
)
...
...
@@ -406,6 +407,8 @@ void WinEDA_ModuleEditFrame::SetToolbars()
if
(
m_SelGridBox
)
m_SelGridBox
->
SetSelection
(
m_LastGridSizeId
);
m_AuxiliaryToolBar
->
Refresh
();
}
DisplayUnitsMsg
();
...
...
pcbnew/toolbars_update_user_interface.cpp
View file @
99ab2dca
...
...
@@ -141,6 +141,9 @@ void WinEDA_PcbFrame::AuxiliaryToolBar_Update_UI()
m_SelGridBox
->
SetSelection
(
m_LastGridSizeId
);
m_TrackAndViasSizesList_Changed
=
false
;
m_AuxiliaryToolBar
->
Refresh
();
}
...
...
@@ -181,6 +184,7 @@ void WinEDA_PcbFrame::SetToolbars()
state
=
GetScreen
()
->
GetRedoCommandCount
()
>
0
;
m_HToolBar
->
EnableTool
(
wxID_REDO
,
state
);
m_HToolBar
->
Refresh
();
if
(
m_OptionsToolBar
)
{
...
...
@@ -267,6 +271,7 @@ void WinEDA_PcbFrame::SetToolbars()
m_OptionsToolBar
->
ToggleTool
(
ID_TB_OPTIONS_SHOW_EXTRA_VERTICAL_TOOLBAR1
,
m_auimgr
.
GetPane
(
wxT
(
"m_AuxVToolBar"
)).
IsShown
()
);
m_OptionsToolBar
->
Refresh
();
}
if
(
m_AuxiliaryToolBar
)
...
...
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