← Back to team overview

kicad-developers team mailing list archive

Re: Eeschema annotate block / specific component types proposal


Hello James

I had been working on this for some time and ran into a brick wall so I set it aside.

There seems to be an issue with the structures used within eeSchema (sheets, screens, etc.) which don't seem to consistently track UUIDs, etc. I suspect that this may be because eeSchema started as a single page app then added hierarchies. Currently, annotate has an essentially binary approach (whole schematic or single page) and, in theory it should be possible to add those functions but you end up with bad pointers, display not refreshing, etc..

I put out several requests for the devs for help but, given the lock down got no replies.

I implemented similar functionality for PCBNew. My gitlab is https://gitlab.com/bjpiccioni/kicad and the branch is annotate if you want to take a look. It is out of date because I got really frustrated trying to unnscramble it. All the menus, etc., are done, the problem is just that the result doesn't work.

If you want to collaborate, let me know. And I'll try bring it up to date with the current dev branch of Kicad. Alas I find git to be a  nightmare.


On 2020-05-07 9:19 a.m., James Jackson wrote:
Hi all,

Firstly thanks Wayne for adding me to the list - long time KiCad user for hobby stuff, but I've got a background (partially) in fast real-time mixed-signal electronics.

Working on a fairly large personal project recently, with many nested and shared schematics, I would really have liked the ability to only automatically annotate either a selected block of components, and/or only a subset of the component types. I haven't done an KiCad UI-facing dev work (or, frankly, much at all bar poking around in the code a little bit) but I'd be happy to have a bash at implementing it - but would welcome others' thoughts. I can't find any mention of it in roadmaps etc.

*Proposal*: Add the ability to annotate only a selected block and / or only specific component types *UI Flow: *Two changes required, as detailed below. As described, they do not change the current default UI flow, but offer up more options for users should they wish to use them:

   1. Add a new menu item to the block selection context menu, with text 'Annotate block...'. On clicking, takes the user to the current 'Annotate Schematic' dialog.
   2. Modify the 'Annotate Schematic' dialog to include:
       a. Within the 'Scope' radio button selection list, add 'Use the current selected block' (not enabled if the dialog is entered the existing way through the Tools menu) - autoselected if dialog entered through the block context menu        b. Add a checklist containing the prefixes of component types available for annotation (i.e. 'R', 'C', 'U', whatever...). Default to all being selected.

I'd welcome thoughts on this proposal, and also, if people think it's worth looking at, any pointers to a quick guide to KiCad dev wrt branch handling. I.e., do developers work to the head of the repository or the last stable release, etc etc? I couldn't find anything on this hiding in the dev docs. I can figure the rest out (internationalisation, code structures, etc etc).


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