On 04/01/2019 18:51, Brian Piccioni wrote: > I am still keen to attempt to incorporate geographical component annotation > into KiCad. In general, it is preferable for component annotation to be done > relative to the PCB and in some logical order (left/right, top to bottom, > etc). Thereafter this information is imported to the schematic. I wrote a > standalone utility (RenumKicadPCB) which does this but ideally, we’d want the > function built into Kicad. > > I understand this would be viewed as a “rogue effort” but lack of > geographical component annotation is a major missing feature and my hope is > that if my code works the developers might consider adding it or something > like it into the project. Otherwise I’ll just maintain my own variant of the > two affected applications for limited use. > > I am not used to working in c++ or working on large projects. Nevertheless, I > figured I’d give it a try. I have been studying the source for a few weeks > and have developed a strategy which would be very simple to implement if I > had more skill/experience. > > The first thing I want to do is to add the ability for eeSchema to import a > “was/is” file to update schematic annotation. Since renumbering the PCB can > be done manually or with a plugin this seems like a good first step. Since an > annotation function already exists in eeSchema, all I would have to do it > provide an option for replacing annotation with a was/is rather than the > annotation generated by eeSchema’s annotate function. > > I see a clear path to doing so however, the scope of Kicad and my limited > experience with c++ and large projects mean it is not going to be easy for > me. I am not that adept at navigating Doxygen files so I have a few questions > regarding the source code (these are limited to eeSchema at the moment). > > 1) Where are the file IO functions? I have searched for (for example) > LoadProjectFIle and find the prototype but not the actual function. Similarly > I find the prototype for SaveEEFile() but not the actual function. > > 2) I would like to copy as much of the existing code and dialogs as > possible (i.e. make new dialog based off another dialog) but when I open, for > example, dialog_annotate_base.h I see > > > /////////////////////////////////////////////////////////////////////////// > // C++ code generated with wxFormBuilder (version Jun 5 2018) > // http://www.wxformbuilder.org/ > // > // PLEASE DO *NOT* EDIT THIS FILE! > > /////////////////////////////////////////////////////////////////////////// > > But I can’t find the “source” from which this file is generated. Where is it? > > 3) There is a guide on the Kicad documentation “Tool framework” which > describes adding a tool to PCBNew. Is there a similar guide to adding a > tool/function to eeSchema? How do I go about this? >
Hi Brian, Others have already answered to your questions so here's my offer: I believe geographical annotation is a very useful feature so I can offer a bit of my help. Point me to: - the latest sources of your tool, - a sketch of the user interface (dialogs), can be a hand-made drawing - a brief description of how you want all this to work (in terms of user experience). Once I have this information, I'll try making a basic port of your code to Kicad codebase to the stage where you could take it over and contribute further features/fixes on your own. Tom _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

