[Developer Feedback] Poll: layer manager

I would expect layer color to be configurable elsewhere instead of having it happen whenever I click this button

I have seen several full time PCB designers changing colours frequently when working on multilayer boards on Protel, Orcad and Visula. They would not have wanted to go diving off into menus to do this

I will chime in and offer that there are has been a great deal of evolution of UI for layer management over the years. I really do not see the need to go in a different direction and in fact would prefer that the methods others have refined over the years are carefully considered to be used here. Not doing so leads to user frustration when things do not work as expected. A huge problem with Kicad in its present form is lack of adherence to common UI standards. Even a simple copy and paste operation is difficult to do.

I highly recommend looking at the layer controls used in other applications such as Adobe Illustrator, Photoshop and/or Affinity Designer and Affinity Photo. These companies have invested significant time and effort to develop and refine the layer UI over many years to make them understandable and to improve workflow. I think these apps would be good roadmaps to consider to generate a fluid and comprehensible Kicad UI that is consistent with user expectations. Not only that but I think these layer managers may provide some inspiration for other things that could be managed with layers. Things like layer hierarchy, grouping layers, layer effects, etc.

Someone mentioned an “eyeball” to show a visible layer. That is a good idea and I think I recall Adobe apps use an eyeball. The checkbox is fine as well. I would recommend the user should have the ability to lock a layer and use a padlock to visualize that. I like the idea of being able to change the layer colour without having to go to a special preference pane or multiple clicks. The obvious solution discussed here is clicking the swatch would bring up a panel to change the colour.

Opacity would be another helpful option.

As for highlighting the active layer, i really do not see much of a problem with the existing arrow. Another possibility would be to highlight the entire line with say something like a blue background.

I have attached a copy of the Affinity Designer layer UI below and a shot of the Adobe CS5 Photoshop layer panel.

1 Like

Here is a shot of the Adobe panel.

If the function of that would be that the layer wouldn’t be select-able with actions - how many are there in KiCAD with it’s layer-bound tools?
If it means to lock the layer and to prohibit changes… footprints have stuff on a lot of layers and the usefulness would be limited here as well.

As a new user to kicad, I would like to emphasise steve’s point; I am a regular user of several programs (including Blender, Illustrator and InDesign) that use layers, and it would be really good to see kicad not try to reinvent the wheel, but use an appropriate mod of existing tools.

I can definitely see the point of being able to save and quickly apply arbitrary subsets of layer selections, as devbisme suggested. Again, the Adobe tools do this extensively.

I can also see the point in swapping the colour swatch to the rhs, as several people suggest.

I would like to add that given that layers are not interchangeable – they have implied properties – it would be handy to be able to show some of these properties in the layer pane as a new column. For example, indicate media type: Copper / Screen / Mask / PCB. Then perhaps be able to sort by that column to group together.

You don’t have that much screen space. Also the function is included in the layer name anyway. (And they are always grouped.)
There is also a tooltip if you hover over the layer name that gives a bit more detail.
So if someone adds this, it must be configurable.

It would a useful feature. I found just yesterday that I needed to do just this.

But, I would prioritize this lower than bugs and requirements. Better handling of stitch throughs and no crashes would be my #1 suggestions.