Welcome to Bike!
Use Bike to record and process your ideas. You'll need to spend a little time learning Bike to get the most out of it.
Watch intro movie
Browse the User's Guide
Learn the keyboard shortcuts
Learn Bike's innovative rich text editing
Feel free to delete this text. Uncheck "Show Welcome in new documents" in Bike's preferences to stop including this text in new outlines.
Thanks,
Jesse
However, if I run the same code on this focused outline:
Not sure if this is what you are talking about, but …
The hoisted row is a bit confusing at the root level, because it doesn’t change when you focus on a top level row. For example if you have this outline:
hidden root
one
a
a.1
b
two
By default the hidden root is the hoisted row and the focus row is null.
If you focus on “one” then the hoisted row is STILL the hidden root, while the focus row becomes “one”
If you focus on “a” THEN the hoisted row becomes “one” and the focus row becomes “a”.
It’s a bit confusing and actually in Bike 2 I have removed this distinction between hoisted and focused. What this current design allows is that you have two options when “focusing” into a row:
You can mark it hoisted, in which case you don’t see the row, you only see it’s children
Or you can focus it, in which case you will see the row and it’s children.
Exactly. That’s what I found in my tests. At first, I expected hoistedRow to respect focus state. I focused on one, and rows() property returned every parent row. However, when I focused “a”, then I got expected results
It sounds as if the underlying question might be the relationship between:
The model of the outline, and
the model of the editor state (visibility of particular rows in the outline)
Rows that are folded or focused out of view clearly can’t vanish from the outline model itself – or we wouldn’t be able to bring them back into view – but the “row” object does have properties which reveal its current status in an editor view:
visible (boolean, r/o) : True if this row is visible in the window (may require scolling).
selected (boolean, r/o) : True if this row is selected in the window.
expanded (boolean, r/o) : True if this row is expanded in the window.
collapsed (boolean, r/o) : True if this row is collapsed in the window.