← Back to team overview

kicad-developers team mailing list archive

Re: [FEATURE] Partial selection in pcbnew

 

Is there a way do draw a zoom-independent dashed line in GAL?

I have an updated idea on selection box rendering that I think would be
better.

1. Blue interior shows normal selection
2. Green interior shows additive selection
3. Red interior shows subtractive selection
4. Solid border shows bounding box selection
5. Dashed border shows partial selection mode.

This way all the selection options are presented to the user in a fairly
obvious manner.

On 9 May 2017 08:40, "José Ignacio" <jose.cyborg@xxxxxxxxx> wrote:

Or switching between object and grid snap :)

On Mon, May 8, 2017 at 5:34 PM, Wayne Stambaugh <stambaughw@xxxxxxxxx>
wrote:

> I tend to lean toward Oliver's approach.  Most CAD tools I've used have
> this type of includes vs intersects selection paradigm.  I don't see the
> need to tie up the modifier key if we don't have to.  I would prefer
> that we keep a modifier key open for something like orthogonal move.
>
> On 5/8/2017 5:51 PM, Oliver Walters wrote:
> > I was approaching this from having used mechanical CAD tools where the
> > direction of selection is the standard approach. Whatever function is
> > chosen, it will still be required that the users adjust to the new
> > style, manuals updated, etc.
> >
> > Is assigning what is essentially the last remaining modifier key worth
> > it for this?
> >
> > On 8 May 2017 23:55, "Nick Østergaard" <oe.nick@xxxxxxxxx
> > <mailto:oe.nick@xxxxxxxxx>> wrote:
> >
> >     2017-05-08 14:59 GMT+02:00 Maciej Sumiński <maciej.suminski@xxxxxxx
> >     <mailto:maciej.suminski@xxxxxxx>>:
> >     > Hi Oliver,
> >     >
> >     > I took your set of patches for a test drive. I am glad that you
> >     thought
> >     > about the subtractive mode in the selection tool, it really fits
> >     there.
> >     > Regarding different selection modes - I like the idea, but I think
> the
> >     > two modes should be more distinct, changing the selection direction
> >     > might be not enough.
> >     >
> >
> >     I personally prefer modifier keys as we are used to in Gimp and
> >     Inkscape.
> >
> >     > I observed another user trying out the tool and he could not tell
> how
> >     > does it work, but noticed it is a bit different than the old tool.
> >     >
> >     > Perhaps one of the following would work:
> >     >
> >     > - change the selection box colors so they are easier to tell apart
> (my
> >     > mate was surprised to find out there were two colors for the
> >     selection box)
> >     >
> >     > - change the mode using a key modifier (I think only Alt is left
> free)
> >     > or mouse button
> >     >
> >     > - add an option to select the default mode (though I do not really
> >     like
> >     > having too many options to set)
> >     >
> >     > I agree with Tom about the geometry library. IIRC currently it is
> only
> >     > used by the PNS router, but ultimately we would like to use it in
> the
> >     > primary model. The library already provides methods to check for
> >     > collisions between basic shapes, yet we still need a few more.
> >     > It would be a pity to drop your code now, so perhaps we could
> >     merge the
> >     > code as is and fix the methods during the model refactor.
> >     >
> >     > Just to let you know, there are a few code formatting violations
> >     (mostly
> >     > not keeping two empty lines between method definitions in .cpp
> files),
> >     > but as they are infrequent - I can handle them myself.
> >     >
> >     > Regards,
> >     > Orson
> >     >
> >     > On 05/07/2017 02:11 AM, Oliver Walters wrote:
> >     >> Maciej,
> >     >>
> >     >> That was it! Thanks for the hint.
> >     >>
> >     >> #0016 attached, which fixes both issues:
> >     >>
> >     >> a) No more double-selection of module and module-items (pads /
> >     lines / etc)
> >     >> in PCBNEW
> >     >> b) Disable selection of entire module in MODEDIT
> >     >>
> >     >> As far as I can tell this patchset is now working very well.
> >     >>
> >     >> Regards,
> >     >> Oliver
> >     >>
> >     >> On Sat, May 6, 2017 at 10:21 PM, Oliver Walters <
> >     >> oliver.henry.walters@xxxxxxxxx
> >     <mailto:oliver.henry.walters@xxxxxxxxx>> wrote:
> >     >>
> >     >>> Maciej,
> >     >>>
> >     >>> Thanks, I'll look into that. If you have a chance to look over
> >     what I've
> >     >>> done, I'd appreciate that :)
> >     >>>
> >     >>> On Sat, May 6, 2017 at 10:17 PM, Maciej Suminski
> >     <maciej.suminski@xxxxxxx <mailto:maciej.suminski@xxxxxxx>>
> >     >>> wrote:
> >     >>>
> >     >>>> Hi Oliver,
> >     >>>>
> >     >>>> I have not tested the patches yet, but my gut feeling says that
> >     you miss
> >     >>>> calling SELECTION_TOOL::selectable() to filter out redundant
> items.
> >     >>>>
> >     >>>> Regards,
> >     >>>> Orson
> >     >>>>
> >     >>>> On 05/06/2017 09:21 AM, Oliver Walters wrote:
> >     >>>>> Three further patch files attached:
> >     >>>>>
> >     >>>>> - Different color select box based on direction
> >     >>>>> - Fixed HitTest for EDA_TEXT
> >     >>>>> - Control modifier unselects anything in rectangle.
> >     >>>>>
> >     >>>>> The major piece of feedback I need right now is how to perfect
> the
> >     >>>>> behaviour of the tool in PCBNEW and MODEDIT:
> >     >>>>>
> >     >>>>> a) PCBNEW
> >     >>>>>
> >     >>>>> Selecting part of a MODULE (right to left) will select both
> >     the entire
> >     >>>>> module and also any parts of the module that you touched
> >     (lines, pads,
> >     >>>>> etc). Then, when you move the module, the doubly-selected
> >     items are
> >     >>>> moved
> >     >>>>> twice! It is hard to describe properly but if you try this you
> >     will see
> >     >>>>> what I mean.
> >     >>>>>
> >     >>>>> b) MODEDIT
> >     >>>>>
> >     >>>>> Selecting any item in the footprint selects the entire
> >     footprint, which
> >     >>>> is
> >     >>>>> highly undesirable. In this case I think the best approach is
> >     to filter
> >     >>>> the
> >     >>>>> MODULE from the selection entirely. But I am not sure how to
> >     do this.
> >     >>>>>
> >     >>>>> Feedback welcome :)
> >     >>>>>
> >     >>>>> Regards,
> >     >>>>> Oliver
> >     >>>>>
> >     >>>>> On Tue, May 2, 2017 at 5:25 PM, Oliver Walters <
> >     >>>>> oliver.henry.walters@xxxxxxxxx
> >     <mailto:oliver.henry.walters@xxxxxxxxx>> wrote:
> >     >>>>>
> >     >>>>>> I have attached a patch-set that implements "partial
> >     selection" of
> >     >>>> objects
> >     >>>>>> when the selection box is dragged right-to-left.
> >     >>>>>>
> >     >>>>>> L -> R = Objects must be completely enclosed to be selected
> >     >>>>>> R -> L = Objects that intersect the selection rectangle will
> be
> >     >>>> selected.
> >     >>>>>>
> >     >>>>>> To achieve this I had to fix a lot of the HitTest
> >     implementations as
> >     >>>> this
> >     >>>>>> was broken for most shapes, under a variety of edge cases
> >     (some HitTest
> >     >>>>>> code did not work at all).
> >     >>>>>>
> >     >>>>>> There are two issues I see as outstanding, and am unsure how
> to
> >     >>>> proceed:
> >     >>>>>>
> >     >>>>>> 1. When editing a PCB, selecting part of a footprint (e.g. a
> >     line of
> >     >>>> the
> >     >>>>>> courtyard) selects both that line and the entire footprint.
> >     This causes
> >     >>>>>> some issues when the footprint is dragged around the PCB. I
> >     believe
> >     >>>> that
> >     >>>>>> the line should not be selected separately, but the entire
> >     footprint
> >     >>>> should.
> >     >>>>>>
> >     >>>>>> 2. The inverse of 1. In the footprint editor, selecting a
> single
> >     >>>> graphical
> >     >>>>>> item selects the entire footprint. Somehow I would like to
> >     filter the
> >     >>>>>> selection such that individual items are selected but NOT the
> >     entire
> >     >>>>>> footprint.
> >     >>>>>>
> >     >>>>>> Feedback please! :)
> >     >>>>>>
> >     >>>>>> I have fixed hit testing (both for wxPoint and EDA_RECT
> >     comparison)
> >     >>>> for:
> >     >>>>>>
> >     >>>>>> - Pads (all shapes)
> >     >>>>>> - Lines
> >     >>>>>> - Circles
> >     >>>>>> - Arcs
> >     >>>>>> - Text items
> >     >>>>>> - Zones
> >     >>>>>> - Footprints
> >     >>>>>>
> >     >>>>>> Cheers,
> >     >>>>>> Oliver
> >     >>>>>>
> >     >>>>>>
> >     >>>>>>
> >     >>>>>
> >     >>>>>
> >     >>>>>
> >     >>>>> _______________________________________________
> >     >>>>> Mailing list: https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     >>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> >     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> >     >>>>> Unsubscribe : https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     >>>>> More help   : https://help.launchpad.net/ListHelp
> >     <https://help.launchpad.net/ListHelp>
> >     >>>>>
> >     >>>>
> >     >>>> _______________________________________________
> >     >>>> Mailing list: https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     >>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> >     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> >     >>>> Unsubscribe : https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     >>>> More help   : https://help.launchpad.net/ListHelp
> >     <https://help.launchpad.net/ListHelp>
> >     >>>>
> >     >>>
> >     >>>
> >     >>
> >     >
> >     >
> >     >
> >     > _______________________________________________
> >     > Mailing list: https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     > Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> >     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> >     > Unsubscribe : https://launchpad.net/~kicad-developers
> >     <https://launchpad.net/~kicad-developers>
> >     > More help   : https://help.launchpad.net/ListHelp
> >     <https://help.launchpad.net/ListHelp>
> >     >
> >
> >
> >
> >
> > _______________________________________________
> > 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
> >
>
>
> _______________________________________________
> 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
>


_______________________________________________
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

References