24#ifndef TOOLS_ZONE_CREATE_HELPER__H_
25#define TOOLS_ZONE_CREATE_HELPER__H_
117 void commitZone( std::unique_ptr<ZONE> aZone );
A preview item which shows an in-progress polygon, which can be used for zone outlines,...
Hold a (potentially large) number of VIEW_ITEMs and renders them on a graphics device provided by the...
"Listener" interface for a class that wants to be updated about polygon geometry changes
Class that handles the drawing of a polygon, including management of last corner deletion and drawing...
LEADER_MODE
The kind of the leader line.
An adjunct helper to the DRAWING_TOOL interactive tool, which handles incoming geometry changes from ...
void commitZone(std::unique_ptr< ZONE > aZone)
Commit the current zone-in-progress to the BOARD.
PARAMS & m_params
The preview item to display.
bool OnFirstPoint(POLYGON_GEOM_MANAGER &aMgr) override
Called before the first point is added - clients can do initialization here, and can veto the start o...
std::unique_ptr< ZONE > createNewZone(bool aKeepout)
Prompt the user for new zone settings, and create a new zone with those settings.
void performZoneCutout(ZONE &aZone, const ZONE &aCutout)
Cut one zone out of another one (i.e.
virtual ~ZONE_CREATE_HELPER()
void setUniquePriority(ZONE_SETTINGS &aZoneInfo)
Choose a new priority for @aZoneInfo.
void OnGeometryChange(const POLYGON_GEOM_MANAGER &aMgr) override
Called when the polygon is complete.
std::unique_ptr< ZONE > m_zone
std::unique_ptr< ZONE > createZoneFromExisting(const ZONE &aSrcZone)
Create a new zone with the settings from an existing zone.
KIGFX::PREVIEW::POLYGON_ITEM m_previewItem
view that show the preview item
void OnComplete(const POLYGON_GEOM_MANAGER &aMgr) override
KIGFX::VIEW & m_parentView
The zone-in-progress.
DRAWING_TOOL & m_tool
Parameters of the zone to be drawn.
ZONE_SETTINGS handles zones parameters.
Handle a list of polygons defining a copper zone.
PCB_LAYER_ID
A quick note on layer IDs:
The Cairo implementation of the graphics abstraction layer.
Parameters used to fully describe a zone creation process.
ZONE_MODE m_mode
Zone settings source (for similar and cutout zones)
POLYGON_GEOM_MANAGER::LEADER_MODE m_leaderMode
bool m_keepout
< Should create a keepout zone?
ZONE * m_sourceZone
Zone leader mode.
PCB_LAYER_ID m_layer
The zone mode to operate in.