Thank you both for your work on this.  I wasn't trying to get free labor,
but I do appreciate it.  I'll get to work on number 2 as time allows
(unfortunately fleeting at the moment).

An addition of commands that I think would be beneficial, would be:

swap-X-with-Y

Where X and Y are names of panes -- it would simply swap those panes'
locations, within one of these standard layouts.  That combination (these
four basic frameworks and pane-swapping commands) would give me about 95%
of what I used previously, and I think would be a reasonable addition.  But
again, this might require a 'registration' API to register new panes by
name to generate these commands.

Thanks,
Jake

On Thu, Jul 18, 2024 at 5:27 PM Thomas Passin <[email protected]> wrote:

> And here's a script to create Jacob's Layout #3 "render-focused".  This
> script will work for either VR or VR3 if you just change the module
> imported at the top.
>
> """Change layout to Gates # 3 "render-focused"."""
> # ref:
> https://gist.github.com/gatesphere/82c9f67ca7b65d09e85208e0b2f7eca1#file-render-focused
>
> from leo.core.leoQt import Orientation
> import leo.plugins.viewrendered3 as v3
> cmd = 'vr3-show' if 'ed3' in v3.__name__ else 'vr-toggle'
>
> gui = g.app.gui
>
> ms = gui.find_widget_by_name(c, 'main_splitter')
> ss = gui.find_widget_by_name(c, 'secondary_splitter')
> lf = gui.find_widget_by_name(c, 'logFrame')
> of = gui.find_widget_by_name(c, 'outlineFrame')
> edf = gui.find_widget_by_name(c, 'bodyFrame')
>
> init_orientation = ms.orientation()
> g.es(init_orientation)
> if init_orientation != Orientation.Horizontal:
>     ms.setOrientation(Orientation.Horizontal)
>     ss.setOrientation(Orientation.Vertical)
>
> ms.addWidget(lf)  # Temporarily to get body to be second
> ss.addWidget(edf)
> ss.addWidget(lf)
>
> h = c.hash()
> vr3 = v3.controllers.get(h)
>
> if not vr3:
>     v3.controllers[h] = vr3 = v3.ViewRenderedController3(c)
>
> if not vr3.isVisible():
>     ms = g.app.gui.find_widget_by_name(c, 'main_splitter')
>     ms.addWidget(vr3)
>     ms.setSizes([100_000] * len(ms.sizes()))
>     c.doCommandByName(cmd)
>
> ss.setSizes([100_000] * len(ss.sizes()))
> ms.setSizes([100_000] * len(ms.sizes()))
>
> --
> 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 [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/leo-editor/525e9a45-2e34-4040-a9ec-f0e656f3da2fn%40googlegroups.com
> <https://groups.google.com/d/msgid/leo-editor/525e9a45-2e34-4040-a9ec-f0e656f3da2fn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/leo-editor/CAJ1i%2BSaGr5VwpzEXBTPG%2BfaS6ijiXk9xkzk0ThJZ_epz6Eknpg%40mail.gmail.com.

Reply via email to