kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #28494
Re: Update on component chooser
I wonder whether it is worth making this a policy that no new
components can use wxTreeListCtrl as the performance on OSX is abysmal
and there are alternatives, granted they are slightly more complicated
but a much better long term solution (not only in osx performance) but
in code structure as well.
On 6 March 2017 at 17:00, Chris Pavlina <pavlina.chris@xxxxxxxxx> wrote:
> Ready for testing, I'll merge tomorrow since it mostly only touches my
> parts. This is a pretty significant improvement, and solves some
> wxTreeListCtrl quirks as well.
>
>
> On Sun, Mar 05, 2017 at 05:02:10PM +0100, Nick Østergaard wrote:
>> Please report back when it is ready for testing...
>>
>> 2017-03-05 15:04 GMT+01:00 Chris Pavlina <pavlina.chris@xxxxxxxxx>:
>> > Ongoing refactor of COMPONENT_TREE_SEARCH_CONTAINER into a
>> > model-view-adapter architecture is at [1] (componentchooser branch of my
>> > dev repo). The code is seriously cleaner now and significantly faster.
>> > Should be done later today.
>> >
>> > [1] https://github.com/cpavlina/kicad/tree/componentchooser
>> >
>> >
>> > On Sat, Mar 04, 2017 at 01:38:37PM -0500, Chris Pavlina wrote:
>> >> Hi,
>> >>
>> >> Just thought I'd provide a quick update on what's going on with the
>> >> component chooser. Things have been pretty delayed - I've had more
>> >> issues than expected, and I'm trying to work around my school schedule
>> >> too - but I'm still moving along (and I have almost a full week off now,
>> >> most of which will be spent on this).
>> >>
>> >> Currently, I'm working on resolving a macOS performance issue that
>> >> causes updates to cost about 0.5s per keystroke for large library sets.
>> >> I'm looking at two possible solutions:
>> >>
>> >> - Implement my own wxDataViewModel, reimplementing most or all of
>> >> COMPONENT_TREE_SEARCH_CONTAINER in the process and making the
>> >> component tree a model/view architecture. This is very much
>> >> preferable, but I'm not 100% sure if this will give the desired
>> >> performance boost. I'll do this first as it's a useful refactoring
>> >> anyway.
>> >>
>> >> - Implement an optimizing adapter that wraps TWO_COLUMN_TREE_LIST. This
>> >> would populate the underlying list only with visible items,
>> >> intercepting "expand" events and populating the parents with their
>> >> children on demand. This is an ugly hack and I'd like not to resort
>> >> to this.
>> >>
>> >> When I'm done with this, I want to make a couple more changes before
>> >> proceeding, based on user feedback:
>> >>
>> >> - Make the component info box collapsible.
>> >> - Also display component info in a rich tooltip
>> >> - Add a resizable splitter between footprint and symbol display
>> >>
>> >> Once all of this is done, the next steps are:
>> >>
>> >> - Add footprint filtering and selection
>> >> - Add 3D preview
>> >>
>> >> Please, feel free to file bug reports even on minor UI quirks - I don't
>> >> always notice or remember them.
>> >>
>> >> --
>> >> Chris
>> >
>> > _______________________________________________
>> > 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
Follow ups
References