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",
"Fill", "Fill zone(s)" );
TOOL_ACTION COMMON_ACTIONS::zoneFillAll( "pcbnew.EditorControl.zoneFillAll",
AS_GLOBAL, 0,
AS_GLOBAL, int( 'B' ),
"Fill all", "Fill all zones" );
TOOL_ACTION COMMON_ACTIONS::zoneUnfill( "pcbnew.EditorControl.zoneUnfill",
AS_GLOBAL, 0,
"Unfill", "Unfill zone(s)" );
TOOL_ACTION COMMON_ACTIONS::zoneUnfillAll( "pcbnew.EditorControl.zoneUnfillAll",
AS_GLOBAL, int( 'N' ),
"Unfill all", "Unfill all zones" );
// Module editor tools
TOOL_ACTION COMMON_ACTIONS::placePad( "pcbnew.ModuleEditor.placePad",
......
......@@ -195,6 +195,7 @@ public:
static TOOL_ACTION zoneFill;
static TOOL_ACTION zoneFillAll;
static TOOL_ACTION zoneUnfill;
static TOOL_ACTION zoneUnfillAll;
// Module editor tools
/// Activation of the drawing tool (placing a PAD)
......
......@@ -41,6 +41,7 @@ public:
Add( COMMON_ACTIONS::zoneFill );
Add( COMMON_ACTIONS::zoneFillAll );
Add( COMMON_ACTIONS::zoneUnfill );
Add( COMMON_ACTIONS::zoneUnfillAll );
}
};
......@@ -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()
{
// Track & via size control
......@@ -231,4 +250,5 @@ void PCB_EDITOR_CONTROL::setTransitions()
Go( &PCB_EDITOR_CONTROL::ZoneFill, COMMON_ACTIONS::zoneFill.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneFillAll, COMMON_ACTIONS::zoneFillAll.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneUnfill, COMMON_ACTIONS::zoneUnfill.MakeEvent() );
Go( &PCB_EDITOR_CONTROL::ZoneUnfillAll, COMMON_ACTIONS::zoneUnfillAll.MakeEvent() );
}
......@@ -55,6 +55,7 @@ public:
int ZoneFill( TOOL_EVENT& aEvent );
int ZoneFillAll( TOOL_EVENT& aEvent );
int ZoneUnfill( TOOL_EVENT& aEvent );
int ZoneUnfillAll( TOOL_EVENT& aEvent );
private:
///> 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