kicad-developers team mailing list archive
Mailing list archive
Re: Patch to fix a boundary box bug
Brian Sidebotham <brian.sidebotham@...>
Tue, 17 Nov 2009 23:03:03 +0000
2009/11/17 Dick Hollenbeck <dick@...>:
> Brian Sidebotham wrote:
>> 2009/11/17 Rob Frohne <rob.frohne@...>:
>>> Thanks Brian,
>>> This behavior has bothered me a lot as well. I think your patches will
>>> improve things.
>>> How do you make the boundary boxes visible? I have had a lot of trouble
>>> selecting things with the present method because I would have to guess
>>> what things might be in the selection box and I was usually wrong.
>>> Seeing the box helps a lot.
>>> Also, I took a look at the code to see if we could have a control left
>>> click keep selecting items and add them to the selected list. I got
>>> sidetracked on this task, but I still think it would be a big help as
>>> well. It appears your skills are better than mine. You might want to
>>> look at it too. :-)
>> Hi Rob,
>> Look at the Draw method in class_sch_component.cpp under the eeschema
>> source directory. In current SVN line 235 is where you want to look.
>> You can remove the #if(0) and corresponding #endif directives in the
>> code to see the boundary boxes. It is very useful when you're trying
>> to work out what is going on!
>> Multiple selection would be nice to have with Ctrl+Click, especially
>> if common properties could then be edited for the selection. I am
>> trying to fit in bug fixes at the moment as and when I trip over them.
>> I'm under pressure to get a PCB design into production though so my
>> time is extremely limited.
>> Best Regards,
> Of the two use cases:
> 1) apply the same operation to multiple objects
> 2) tell the app which of multiple objects under the cursor you are
> talking about
> I think 2) wins in frequency.
> We have (or had) in our to do list the desire to add the Collector
> support to eeschema. This is a feature that I added to PCBNEW very
> early on after I joined the team. The result of the collector then
> drives a "Selection Clarification" menu which I'm sure you have all
> seen. This serves us well in PCBNEW, why not stick with this plan,
> which is already in place? With such support it is not essential to
> know the bounds of a box, because when you have multiple mouse hits at a
> given coordinate, the menu tells you what was collected. If only one
> object was HitTest()ed, then the menu is skipped.
This patch simply fixes a bug in the component boundary calculations
where invisible fields are included in the boundary calculations. In
some cases this can mean that it's currently impossible to select some
other schematic items because component boundaries are much larger
than their drawn items.