← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] More aggressive sheet-selection

 

Kristoffer,

I sincerely apologize for the delay. Finally I have managed to review
and commit the patches. Thank you very much for your contribution.

Regards,
Orson

On 09/04/2017 10:01 AM, Kristoffer Ödmark wrote:
> I beleive the two latest patches will benefit most people. the automatic
> select from same sheet will actaully hang kicad for a brief moment. This
> is very noticeable on larger PCBs, not so much on smaller. Adding the
> select feature as a context menu is more correct.
> 
> The more aggressive selection behaviour is really just an improvement to
> the current sheet selection.
> 
> I kindly ask that someone commit this before v5.
> 
> - Kristoffer
> 
> On 08/19/2017 04:10 PM, Kristoffer Ödmark wrote:
>> bump
>>
>> On 08/07/2017 05:19 PM, Kristoffer Ödmark wrote:
>>> I added a logo for the context menu. This context menu also has the
>>> added benefit of making the "select on same sheet" feature more
>>> visible to a user, also it doesnt freeze kicad when you happen to
>>> click on a sub-schematic
>>>
>>> I attach both patches in this mail.
>>>
>>> - Kristoffer
>>>
>>> On 07/24/2017 10:03 PM, Kristoffer Ödmark wrote:
>>>> After suggestions from chris, I deactivated the "select all items on
>>>> sheet" on left-click inside eeschema, and instead added a context
>>>> menu for it when rightclicking on a sheet in eeschema.
>>>>
>>>> This is a separate patch to the sheet-selection improvement. I do
>>>> not know how to generate a icon for this menu entry, so right now I
>>>> am reusing an already existing one.
>>>>
>>>> - Kristoffer
>>>>
>>>> On 07/24/2017 10:19 AM, Kristoffer Ödmark wrote:
>>>>> Hmm, I was planning to send that mail to the ML. will resend it there.
>>>>>
>>>>> I am unsure about the separate tool. Most circuits I am using this
>>>>> on is instant, but I guess that doing both could be a viable
>>>>> option. The tool is available as a separate tool from pcbnew.
>>>>>
>>>>> On 07/24/2017 04:50 AM, Chris Pavlina wrote:
>>>>>> What about a slightly different approach? Don't do this on a
>>>>>> single-click on sheet, make it a separate tool. That way it just
>>>>>> doesn't
>>>>>> happen accidentally. And give some feedback when it does run by
>>>>>> displaying a progress dialog.
>>>>>>
>>>>>> On Mon, Jul 24, 2017 at 12:53:43AM +0200, Kristoffer Ödmark wrote:
>>>>>>> Thank you for testing this!
>>>>>>>
>>>>>>> I was not aware of the large pcb problem, and this actually raises a
>>>>>>> question of having a large "demo" project to test stuff on. Since
>>>>>>> I guess
>>>>>>> many do like me and actually do many of the tests on the demo
>>>>>>> projects.
>>>>>>>
>>>>>>> Also, I am thinking of adding a setting to be able to disable the
>>>>>>> automatic
>>>>>>> cross-probing for this since I think that getting the speed up
>>>>>>> will not
>>>>>>> really be easy without some major refactor. Any tips and thoughts
>>>>>>> for that?
>>>>>>>
>>>>>>> - Kristoffer
>>>>>>>
>>>>>>>
>>>>>>> On 07/24/2017 12:19 AM, Chris Pavlina wrote:
>>>>>>>> I like this change, and I was about to push it and suggest we
>>>>>>>> can add
>>>>>>>> any suggested changes others have later, when I decided to test
>>>>>>>> it on a
>>>>>>>> large project.
>>>>>>>>
>>>>>>>> It's REALLY slow now. If I click on a sheet, KiCad freezes for a
>>>>>>>> solid
>>>>>>>> ten seconds in my larger test project. IMO that isn't
>>>>>>>> acceptable, it's
>>>>>>>> too easy to do accidentally and way too annoying when it happens.
>>>>>>>>
>>>>>>>> On Mon, Jul 17, 2017 at 03:00:58PM +0200, Kristoffer Ödmark wrote:
>>>>>>>>> I fixed up some of the code violations I could see, and applied
>>>>>>>>> the patch to
>>>>>>>>> current master, where the sheet selection is working once again.
>>>>>>>>>
>>>>>>>>> - Kristoffer
>>>>>>>>>
>>>>>>>>> On 07/12/2017 10:01 PM, Kristoffer Ödmark wrote:
>>>>>>>>>> The last working revision I copuld test was:
>>>>>>>>>> 2c21c70f46dd3ef444ac4a909434697cce972f4a
>>>>>>>>>>
>>>>>>>>>> Right before the new connectivty algorithm.
>>>>>>>>>>
>>>>>>>>>> After that the sheet-selection is not working anymore. So It
>>>>>>>>>> would be
>>>>>>>>>> nice if you could file a bug report on it :)
>>>>>>>>>>
>>>>>>>>>>     - Kristoffer
>>>>>>>>>>
>>>>>>>>>> On 2017-07-12 13:33, Kristoffer Ödmark wrote:
>>>>>>>>>>> No worries!
>>>>>>>>>>>
>>>>>>>>>>> As an example, If i layout a group of components, all which
>>>>>>>>>>> require
>>>>>>>>>>> the powerpaths as in they need acess to 3v3 lines that are
>>>>>>>>>>> used in
>>>>>>>>>>> other areas of the board as well. These 3v3 lines might be a bit
>>>>>>>>>>> annoying to route for certain cases.
>>>>>>>>>>>
>>>>>>>>>>> As the code is now, since these 3v3 lines are used as an outside
>>>>>>>>>>> connection of the sheet, they will be ignored, even if they only
>>>>>>>>>>> connect
>>>>>>>>>>> between pads on the same subschematic. Say that the
>>>>>>>>>>> connection to
>>>>>>>>>>> the global 3v3 net is handled later with a via or something like
>>>>>>>>>>> that.
>>>>>>>>>>>
>>>>>>>>>>> The same logic applies to all pins that connect outside the
>>>>>>>>>>> block,
>>>>>>>>>>> and in some cases the layout of the blocks have a non-trivial
>>>>>>>>>>> routing to get the signal out of the block "area", which is
>>>>>>>>>>> what i
>>>>>>>>>>> noticed when using these. Hope this explanation made it more
>>>>>>>>>>> clear
>>>>>>>>>>>
>>>>>>>>>>> With this more aggressive change. It is also more visible
>>>>>>>>>>> from the
>>>>>>>>>>> pcb side to where this "block" has dependencies, I also find it
>>>>>>>>>>> easier to deselect segments manually, than to select them if the
>>>>>>>>>>> block is not very trivial.
>>>>>>>>>>>
>>>>>>>>>>> Regarding the code violations, I will have a look later when
>>>>>>>>>>> I get
>>>>>>>>>>> the time as well.
>>>>>>>>>>>
>>>>>>>>>>> the GND thing must indeed be a bug, which I will look into as
>>>>>>>>>>> well.
>>>>>>>>>>>
>>>>>>>>>>> On 07/12/2017 10:30 AM, Maciej Sumiński wrote:
>>>>>>>>>>>> Hi Kristoffer,
>>>>>>>>>>>>
>>>>>>>>>>>> I apologize for such a long delay. Finally I had to time to
>>>>>>>>>>>> look at the
>>>>>>>>>>>> patch. I tried it out with a few boards, but I could not
>>>>>>>>>>>> really notice a
>>>>>>>>>>>> difference. I read the code and I think I understand what
>>>>>>>>>>>> are you trying
>>>>>>>>>>>> to do, but are you sure it is the right way to go?
>>>>>>>>>>>> Hierarchical sheets
>>>>>>>>>>>> are frequently used as rooms/channels/duplicated blocks and
>>>>>>>>>>>> in my
>>>>>>>>>>>> opinion selecting items belonging to a sheet should be
>>>>>>>>>>>> restricted to
>>>>>>>>>>>> items unique to the sheet. Would you give a use case where
>>>>>>>>>>>> the new
>>>>>>>>>>>> behavior gives benefits?
>>>>>>>>>>>>
>>>>>>>>>>>> Please pay attention to the code formatting, I see a number of
>>>>>>>>>>>> violations there.
>>>>>>>>>>>>
>>>>>>>>>>>> Also, I observed a bug when selecting items belonging to the
>>>>>>>>>>>> same sheet.
>>>>>>>>>>>> If you open complex_hierarchy demo and use the select action
>>>>>>>>>>>> on P3 or
>>>>>>>>>>>> P5, you will notice that all components with a pad connected
>>>>>>>>>>>> to GND are
>>>>>>>>>>>> also selected. I can create a bug report if necessary.
>>>>>>>>>>>>
>>>>>>>>>>>> Regards,
>>>>>>>>>>>> Orson
>>>>>>>>>>>>
>>>>>>>>>>>> On 07/11/2017 05:36 PM, Kristoffer Ödmark wrote:
>>>>>>>>>>>>> Well, the sheet-selection code was all submitted by me in
>>>>>>>>>>>>> the first
>>>>>>>>>>>>> place, It doesnt exist in legacy, so this change to how it
>>>>>>>>>>>>> works is
>>>>>>>>>>>>> according to me more inline with what I wanted in the
>>>>>>>>>>>>> beginning :)
>>>>>>>>>>>>>
>>>>>>>>>>>>> - Kristoffer
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 2017-07-10 21:06, Wayne Stambaugh wrote:
>>>>>>>>>>>>>> Kristoffer,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> This appears to only effect the GAL canvases.  Would one
>>>>>>>>>>>>>> of our resident
>>>>>>>>>>>>>> tool framework experts please take a look at this an see
>>>>>>>>>>>>>> if it makes
>>>>>>>>>>>>>> sense?  If no one has time, I will try to get to it by
>>>>>>>>>>>>>> this weekend.  It
>>>>>>>>>>>>>> will take most of the week for me to recover from
>>>>>>>>>>>>>> vacation before I can
>>>>>>>>>>>>>> take a look at it.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Wayne
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 7/10/2017 11:21 AM, Kristoffer Ödmark wrote:
>>>>>>>>>>>>>>> Hello!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Second bump, I guess I might be the only one who uses the
>>>>>>>>>>>>>>> sheet-selection then :) My suggestion is to merge this
>>>>>>>>>>>>>>> patch in, It
>>>>>>>>>>>>>>> makes the selection more much more useful!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> - Kristoffer
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 2017-06-06 13:44, Kristoffer Ödmark wrote:
>>>>>>>>>>>>>>>> Hello again!
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I understand that everyone is pretty busy, but I would
>>>>>>>>>>>>>>>> appreciate if
>>>>>>>>>>>>>>>> someone took a quick glance at this and said what they
>>>>>>>>>>>>>>>> think.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> - Kristoffer
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On 2017-05-03 15:51, Kristoffer Ödmark wrote:
>>>>>>>>>>>>>>>>> Hello everyone!
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I made a small change to the "select
>>>>>>>>>>>>>>>>> hierarchical sheet" function. I
>>>>>>>>>>>>>>>>> would love if someone tried this and gave some feedback.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Before the function only selected segments belonging to
>>>>>>>>>>>>>>>>> a netlist
>>>>>>>>>>>>>>>>> unique to that hierarchical sheet. Now it will use the
>>>>>>>>>>>>>>>>> "select
>>>>>>>>>>>>>>>>> logical connection" to every segment connected to
>>>>>>>>>>>>>>>>> module from the
>>>>>>>>>>>>>>>>> subsheet as well. presonally I think it is more useful
>>>>>>>>>>>>>>>>> now, but I
>>>>>>>>>>>>>>>>> want confirmation if possible :)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> - Kristoffer
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>> 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
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> 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
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>>    -Kristoffer
>>>>>>>>
>>>>>
> 


Attachment: signature.asc
Description: OpenPGP digital signature


References