New branch 768-new-tree 
<https://github.com/leo-editor/leo-editor/tree/768-new-tree>, related to 
issue #768 is ready for testing.

All but 2 unit tests pass. Those two that fail are not related to the new 
tree code (something about docutils and script controller).

All commands that I can think of that are related to tree seem functional. 
Please report any error. Be careful to save often because code still 
contains lot of assert statements that are meant to hard crash any time 
when something is wrong with the outline data. Lot of them I trust is safe 
to remove, but I'd rather leave them on while testing so that bugs can be 
quicker fixed.
If everything goes well, those assertions should be replaced just with 
warning in log.

Lot of code from leo/plugins/qt_tree has been removed. Hoisting, 
de-hoisting, chapters are functional and new tree handles them very easy. 
Probably lot of code in leoChapters can be simplified by delegating work to 
new tree. 

What I have noticed also is that there are quite a lot of 
c.selectPosition(p) calls in places that I would never expect to see them. 
Some of these calls are duplicated. I believe that the reason for this 
calls was to cause redrawing the outline. However, with the new tree code, 
lot of these calls become unnecessary and even danger. New tree expects 
that after any change in the underlying outline structure (*vnodes), it 
needs to synchronize data and only after synchronization to allow selecting 
position.

Browsing LeoPyRef.leo outline with more than 10.000 nodes is breeze.

There may be still something that is not functional in new-tree branch, 
some command that doesn't properly update tree, but I don't expect anything 
that can't be fixed in a day or so.

Please test and report errors.

Vitalije

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to leo-editor+unsubscr...@googlegroups.com.
To post to this group, send email to leo-editor@googlegroups.com.
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to