← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] Component and module search displays in which library they live


Hi all,

I have made a patch for one of the TODOs in the "Common" part, which reads
as follows:

* Component and module search displays in which library the module or
> component lives.

 I just want to mention that it's my first ever contribution to open-source
software, and so if I did something wrong, please kindly let me know and I
will fix what needs to. :) I followed the steps in the
"HOW_TO_CONTRIBUTE.txt" file, thus I provide you with a .patch file. BTW, I
branched from revision 3962.

Ok, on to the actual code.

The most important change is that I transformed the member m_listBox of
EDA_LIST_DIALOG_BASE in a wxListCtrl. This allows us to have more than one
column in there, so that we can display the component names and their
libraries. The EDA_LIST_DIALOG_BASE class has been edited through
wxFormsBuilder, which is what I believe had been done before, so the .cpp
and .h have been generated accordingly.

The EDA_LIST_DIALOG_BASE class is used throughout kicad, therefore I made
it so that we can still push items in a single column to it. However, I
changed the type of that item list to a std::vector<wxArrayString>& so that
it's 2D. Vector elements are components, for which every wxString in the
array is a distinct column. I did the needed few conversions from
wxArrayString& to std::vector<wxArrayString>& here and there.

Also, the sorting methods have been changed to work on a vector and a
wxListCtrl. I also activated the sorting when the user searches for a
component in eeschema. Finally, I corrected a few typos in comments when I
happened to see them.

This is it, so please let me know how it works out!

Carl Poirier

P.S. I first send this email earlier this week but I did not join the
developer team beforehand, so I believe it has been blocked. Sorry if this
is not the case.

Attachment: cmp_and_mod_display_library.patch
Description: Binary data

Follow ups