← Back to team overview

kicad-developers team mailing list archive

Re: Calling PCB_DRAW_PANEL_GAL::SyncLayersVisibility from python?

 

Le 27/08/2017 à 23:24, Greg Smith a écrit :
> Tested: kicad-r8452.e3c64f1f0-x86_64.exe
> <http://downloads.kicad-pcb.org/windows/nightly/kicad-r8452.e3c64f1f0-x86_64.exe>
> 
> Great job!
> 
> LayerViewSet now works without having to manually change the canvas type.
> 
> It has gone back to function similar to 4.0.6 stable, requiring the cursor
> to enter the GLCanvas window to see the layer updates.
> 
> In the case of LayerViewSet, pcbnew.UpdateUserInterface() must be called 
> within the script after pcbnew.GetBoard().SetVisibleLayers(). And when I
> do so, the interface flickers (particularly the top tool box "F.Cu (PgUp)"
> layer indicator). Ideally, there'd be a visually cleaner way to do this, but it is
> very functional at the moment.
> 
> When the cursor enters the GLCanvas window, the layers are redrawn. I suspect
> the issue requires a call to SwapBuffers, but it is a common issue with 4.0.6 stable.
> 
> 
> 
> On Sunday, August 27, 2017 1:32 AM, jp charras <jp.charras@xxxxxxxxxx> wrote:
> 

Hi Greg,

I tested your script, but if does not work for me.
- first issue:
  It uses 'F.cu' to find a widgets. However the copper layers names are user defined.
  the actual name is board.GetLayerName( pcbnew.F_Cu )
- second issue: it looks for 'Grid'.
  but Kicad is internationalized, so this keyword is not found in non English countries (consider
using wxGetTranslation())
- third issue: see attached image.

Thanks.


-- 
Jean-Pierre CHARRAS

Attachment: error.png
Description: PNG image


Follow ups

References