These are chat archives for AvaloniaUI/Avalonia

8th
Jun 2017
soerendd
@soerendd
Jun 08 2017 13:56
@mterwoord i'm interested
do you use skia with avalonia on the rpi?
what do you use underneath skia? X11 or fb?
Sergey Khabibullin
@x2bool
Jun 08 2017 17:32
Hey guys! I have another question for you. I suspect that it might be a hard one. So if it's too complicated please just give me a high-level answer (some direction to go) and I'll write a full answer on Stack Overflow myself later: https://stackoverflow.com/questions/44442084/implementing-drag-and-drop-for-treeview-nodes-in-avalonia
Nikita Tsukanov
@kekekeks
Jun 08 2017 17:42
We don't have proper drag-n-drop support yet
Nikita Tsukanov
@kekekeks
Jun 08 2017 17:51
I've sent you a description of something similar that I have implemented previously with WPF
I hope that helps
Sergey Khabibullin
@x2bool
Jun 08 2017 18:17
Thanks Nikita! I'll try that.
Steven Kirk
@grokys
Jun 08 2017 21:58
i remember why i implemented LayoutManager the way i implemented it - by walking up the tree when doing the layout rather than adding the control to an ordered list
because there's no collection in .net that does what i want
tempted to write my own dual-linked red black tree, pls talk me out of it
interestingly WPF does a linear search of the to measure/to arrange lists for each control in there
Steven Kirk
@grokys
Jun 08 2017 22:49
actually the deferred renderer needs the same collection - i have a (very unoptimized) collection i can take from there
Jeremy Koritzinsky
@jkoritzinsky
Jun 08 2017 22:51
If we need our own collection type, lets make it instead of avoiding the problem IMO.
Steven Kirk
@grokys
Jun 08 2017 23:58
yeah i've been thinking about it but I'm not even sure which data structure would be appropriate - we need a combination of a hash set for finding if a control is already present in the collection and an ordered list by distance to root for iteration
i was thinking a red black tree, but 1) how would that be used to see if a control is already present and 2) the ordered list must allow duplicate distances to root