← Back to team overview

kicad-developers team mailing list archive

Re: Question about kifaced globals

 

On 05/02/2014 07:14 PM, Dick Hollenbeck wrote:
> 
>>>
>>> I encourage someone to fix Blair's bug report about new project logic.  Just implement the
>>> logic in the bottom of kiway_player.h into pcbnew's OpenProjectFiles() and in eeschema's
>>> OpenProjectFiles().
>>>
>>> Tom, is this something you can do please?
>>
>> Hi Dick,
>>
>> I've been away for a while (Easter break), could you point me to that 
>> bug report?
>>
>> Cheers,
>> Tom
> 
> 
> Hi Tom,
> 
> Recently, I have begun to feel uneasy about the pseudo code meeting the needs of all three
> milestones, and I don't have good enough visibility yet into all the needs.  So let's
> consider it as something that can wait a little while longer.  I know about the rogue
> noname.pro files being created, I suppose that little bit could get earlier attention.
> 
> 
> I hope to have the lion's share of milestone B) done early next week.  I have a large body
> of uncommitted work now, Friday 2nd-May.
> 
> 
> Here is what I can do in short order for milestone B):
> 
> 1) Footprint Picker.  I am thinking of making the "Show in Browser" button that you see in
> the Part and Component editors turn into a "Pick Footprint" button when the current text
> field is the footprint one.  Others can take this further later, I am mostly concerned
> about bringing cross-KIFACE capabilities, not find the best utilization in every situation.

Done.

> 2) Footprint Editor.  We can simply have an icon on the top toolbar within eeschema for
> that, if !Kiface().IsSingle().  Click on it, and you find yourself in the stock footprint
> editor.  Yes, that code is in a different KIFACE, but the function KIWAY::Player() makes
> this possible, and easy now.

Done.

> 3) Cvpcb assignment/choices.  Is there a reason not to have these flow directly into
> eeschema via KIWAY::ExpressMail(), arriving at KIWAY_PLAYER::KiwayMailIn() in the
> FRAME_SCH player, where they can be stuffed directly into the component footprint fields?

Not Done.

In rev 4851, the footprint libs via the above 2 pathways will only show the global table
entries, not the project specific ones, unless you open the board first.  This is my next
task to fix this.

I came up with this exciting "load data on demand" concept on my walk last night that
mimics our now functional "code loading on demand" that is now about to transition from a
dark tunnel to a bright light.

Dick


> 
> 
> Immediately after that, class KIWAY and KIWAY_MGR get SWIG-ed at the start of milestone
> C).  Then we can play around with various uses of KIWAY.Player() invocations from python
> that will stress the design in ways we have not done yet.  It is at this point when we
> will be in a position to know most of the needs regarding OpenProjectFiles() and PROJECT
> support in general, and how the pseudo code needs to be enhanced.
> 
> Then I will need Jean-Samuel's code if that is the best starting point for a python
> project manager.
> 
> Today I am removing the constraints that the pcbnew and eeschema KIWAY_PLAYERs must be
> children of the FRAME_PCB and FRAME_SCH players.  Instead, the KIWAY_PLAYERs will all be
> direct children of the top frame, be that one from single_top, kicad.exe, or python.
> 
> I have not forgotten about the bug, but have chosen to delay fixing it pending a better
> understanding of all the needs.
> 
> Thanks for your offer to help.
> 
> 
> Dick
> 
> 
> 



References