Commit 1df31338 authored by Nick Østergaard's avatar Nick Østergaard Committed by Maciej Suminski

Shortcut for fill all and unfill all zones for GAL.

parent 834d5441
...@@ -308,13 +308,17 @@ TOOL_ACTION COMMON_ACTIONS::zoneFill( "pcbnew.EditorControl.zoneFill", ...@@ -308,13 +308,17 @@ TOOL_ACTION COMMON_ACTIONS::zoneFill( "pcbnew.EditorControl.zoneFill",
"Fill", "Fill zone(s)" ); "Fill", "Fill zone(s)" );
TOOL_ACTION COMMON_ACTIONS::zoneFillAll( "pcbnew.EditorControl.zoneFillAll", TOOL_ACTION COMMON_ACTIONS::zoneFillAll( "pcbnew.EditorControl.zoneFillAll",
AS_GLOBAL, 0, AS_GLOBAL, int( 'B' ),
"Fill all", "Fill all zones" ); "Fill all", "Fill all zones" );
TOOL_ACTION COMMON_ACTIONS::zoneUnfill( "pcbnew.EditorControl.zoneUnfill", TOOL_ACTION COMMON_ACTIONS::zoneUnfill( "pcbnew.EditorControl.zoneUnfill",
AS_GLOBAL, 0, AS_GLOBAL, 0,
"Unfill", "Unfill zone(s)" ); "Unfill", "Unfill zone(s)" );
TOOL_ACTION COMMON_ACTIONS::zoneUnfillAll( "pcbnew.EditorControl.zoneUnfillAll",
AS_GLOBAL, int( 'N' ),
"Unfill all", "Unfill all zones" );
// Module editor tools // Module editor tools
TOOL_ACTION COMMON_ACTIONS::placePad( "pcbnew.ModuleEditor.placePad", TOOL_ACTION COMMON_ACTIONS::placePad( "pcbnew.ModuleEditor.placePad",
......
...@@ -195,6 +195,7 @@ public: ...@@ -195,6 +195,7 @@ public:
static TOOL_ACTION zoneFill; static TOOL_ACTION zoneFill;
static TOOL_ACTION zoneFillAll; static TOOL_ACTION zoneFillAll;
static TOOL_ACTION zoneUnfill; static TOOL_ACTION zoneUnfill;
static TOOL_ACTION zoneUnfillAll;
// Module editor tools // Module editor tools
/// Activation of the drawing tool (placing a PAD) /// Activation of the drawing tool (placing a PAD)
......
...@@ -41,6 +41,7 @@ public: ...@@ -41,6 +41,7 @@ public:
Add( COMMON_ACTIONS::zoneFill ); Add( COMMON_ACTIONS::zoneFill );
Add( COMMON_ACTIONS::zoneFillAll ); Add( COMMON_ACTIONS::zoneFillAll );
Add( COMMON_ACTIONS::zoneUnfill ); Add( COMMON_ACTIONS::zoneUnfill );
Add( COMMON_ACTIONS::zoneUnfillAll );
} }
}; };
...@@ -219,6 +220,24 @@ int PCB_EDITOR_CONTROL::ZoneUnfill( TOOL_EVENT& aEvent ) ...@@ -219,6 +220,24 @@ int PCB_EDITOR_CONTROL::ZoneUnfill( TOOL_EVENT& aEvent )
} }
int PCB_EDITOR_CONTROL::ZoneUnfillAll( TOOL_EVENT& aEvent )
{
BOARD* board = getModel<BOARD>();
for( int i = 0; i < board->GetAreaCount(); ++i )
{
ZONE_CONTAINER* zone = board->GetArea( i );
zone->SetIsFilled( false );
zone->ClearFilledPolysList();
zone->ViewUpdate();
}
setTransitions();
return 0;
}
void PCB_EDITOR_CONTROL::setTransitions() void PCB_EDITOR_CONTROL::setTransitions()
{ {
// Track & via size control // Track & via size control
...@@ -231,4 +250,5 @@ void PCB_EDITOR_CONTROL::setTransitions() ...@@ -231,4 +250,5 @@ void PCB_EDITOR_CONTROL::setTransitions()
Go( &PCB_EDITOR_CONTROL::ZoneFill, COMMON_ACTIONS::zoneFill.MakeEvent() ); Go( &PCB_EDITOR_CONTROL::ZoneFill, COMMON_ACTIONS::zoneFill.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneFillAll, COMMON_ACTIONS::zoneFillAll.MakeEvent() ); Go( &PCB_EDITOR_CONTROL::ZoneFillAll, COMMON_ACTIONS::zoneFillAll.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneUnfill, COMMON_ACTIONS::zoneUnfill.MakeEvent() ); Go( &PCB_EDITOR_CONTROL::ZoneUnfill, COMMON_ACTIONS::zoneUnfill.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneUnfillAll, COMMON_ACTIONS::zoneUnfillAll.MakeEvent() );
} }
...@@ -55,6 +55,7 @@ public: ...@@ -55,6 +55,7 @@ public:
int ZoneFill( TOOL_EVENT& aEvent ); int ZoneFill( TOOL_EVENT& aEvent );
int ZoneFillAll( TOOL_EVENT& aEvent ); int ZoneFillAll( TOOL_EVENT& aEvent );
int ZoneUnfill( TOOL_EVENT& aEvent ); int ZoneUnfill( TOOL_EVENT& aEvent );
int ZoneUnfillAll( TOOL_EVENT& aEvent );
private: private:
///> Sets up handlers for various events. ///> Sets up handlers for various events.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment