← Back to team overview

kicad-developers team mailing list archive



Thanks Jon,

I was playing around with the idea of allowing keepout zones to exist on
multiple layers. I have the following functions working:

- Select multiple layers for a keepout zone in KEEPOUT_PROPERTIES_DIALOG
- Multi-layer only available if zone is specified as keepout
- Save / load multiple layers
- Display correctly in Legacy and GAL
- Implement DRC on multiple layers

However, I've just now realised that selection doesn't work! I had to
implement a layerset for the keepout, but the selection process (click
select or drag select) use GetLayer() which doesn't work correctly for a
zone on multiple layers.

Do you know where the code is that determines if an item is "selectable"
both in Legacy and GAL ?


On Fri, Sep 22, 2017 at 1:32 PM, Jon Evans <jon@xxxxxxxxxxxxx> wrote:

> pcb_painter.cpp:1085
> void PCB_PAINTER::draw( const ZONE_CONTAINER* aZone )
> On Thu, Sep 21, 2017 at 11:27 PM, Oliver Walters <
> oliver.henry.walters@xxxxxxxxx> wrote:
>> I'm looking for where ZONE_CONTAINER is drawn in GAL? In legacy it is
>> handled in class_zone.cpp but I can't find where it's being drawn under
>> Cairo / OpenGL
>> Anyone have info on this?
>> Thanks,
>> Oliver
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp

Follow ups