I could use some input from VM PI users.
I've figured out how to save and apply splitter on/off, splitter location, shown/hidden columns and columns sizes in right hand pane. Sort order is applied as before(*).
It became complex when I started thinking about different possible use cases and configuration options.
Which of the following would you find useful?
- Everything View - Apply/save state/location of splitter, left columns/sizes, right columns/sizes and sort. Save what you see, apply it again later.
- Left Only View - Apply/save only left pane view, leaving splitter as is--either shown or not. (Same as VM is doing now.)
- Right Only View - Apply/save state/location of splitter and only right pane columns/sizes.
- Sort Only View - Apply/save sort separate from other options.
- Views without Sort - Option to disable sort on other types of views.
Actually
doing all these is fairly straightforward. What's complex is coming up with ways to
configure them that are intuitive for the user.
My first thought was to add another list of columns to show/hide and order for the right pane and call it a day. "Everything View" all the time.
My second thought was, typically for me, about how to allow more customization instead. Which soon spun out of control.
Feel free at this point to suggest other ideas for consideration.
(*) - Calibre limits how many sort columns it applies to 4 by default when apply_state() is called and at Calibre startup--not sure how I never noticed that before. But we can pass in a bigger value. Also, it looks like Calibre forces timestamp into the sort order if not already included, either adding it or replacing the last(least precedence) sort item.