On Fri, Sep 14, 2012 at 9:54 PM, Edward K. Ream <[email protected]> wrote:

> On Wednesday, September 12, 2012 10:57:35 PM UTC-5, Edward K. Ream wrote:
>
>     test.leo contains the node, "Prototype of screencast script".  It took
> many hours of happy experimentation to get the script to work, but the
> results are worth all the futzing.
>
> Rev  5434 packages this into the new screencast plugin.  Yesterdays work,
> in screencast.py and the node "@command screencast @key=Alt-9" in test.leo
> taught me several things.  In the notes below, m is an instance of
> ScreenCastController.  m stands for "movie" :-)
>
> 1. It's probably best to not to open a new Leo window for screencasts.
> This avoid problems with w.repaint occurring in a another repaint
> operation, thereby freezing Leo.  This is not a major constraint: we
> typically will want to have screencasts operate on the local .leo file.
>
> 2. I spent a lot of time trying to adjust the delay between
> "transitions".  The arguments to m.wait specify the range of waiting
> allowed.  The plugin multiplies these nominal factors by a **speed
> factor**, initially 1.0.  m.set_speed sets this factor. To double the
> presentation speed, set the factor to 0.5.
>

This seems strange. In my intuition, if you want to double the speed, the
factor should be 2.0. (use new_factor = 1.0/old_factor instead?)


>
> The m.log call writes a message to the log pane, with calls to m.wait(1)
> before and after inserting the text.  Both waits are important.  The
> "opening" wait allows the user to see the effect of the previous operation;
> the "closing" wait allows the user to read the new comment in the log pane
> before the next operation happens.
>
> 3. The futzing with speed and waits convinces me that specifying waits "by
> hand" isn't good enough.  Pre-specified waits will be useful only for an
> **unattended mode** that just plays the screencast from start to finish.
> But for most presentations we want the presenter to switch from one
> **scene** of the movie to the next by hitting the RightArrow key.  The
> LeftArrow key will go back to the previous scene. Thus, in **attended
> mode**, most calls to m.wait will have no effect.  (An exception will be
> the calls to m.wait in the code the simulates a person typing in headline
> or body text.  Thus calls should always have effect, so we will have a
> "force" arg to m.wait.)
>
> It will be relatively straightforward to do the first draft of attended
> mode.  At the programming level, it will work like any minibuffer command
> that prompts for user input.  That is, the plugin will create a so-called
> state handler for the slideshow.
>
> At the design level,  the main idea is to treat every node under the main
> @screencast node as a scene.  This natural division allows the screencast
> to organize the material using all of Leo's organizational capabilities.
>
> The state handler will, when seeing the RightArrow key, "play" the next
> scene merely by moving to the next node and then executing the script in
> it's body text.  This script could contain *any* Leo script, but most often
> it will call ScreenCastController methods.   Moving to the previous scene
> can be done by Leo's undo command, automatically managed by the
> ScreenCastController.  This will be a bit tricky, but not hugely so.
>
> 4. Putting comments in the log pane is ok for a prototype, but it's pretty
> lame.  Instead, I'd like to use some kind of popup that can be associated
> with individual items on the screen and located with precision relative to
> those items. The popup should be able to contain both text and graphics.
> Does anyone have a suggestion for what Qt widget to use?
>
> Your comments please, Amigos.
>
> Edward
>
> --
> You received this message because you are subscribed to the Google Groups
> "leo-editor" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/leo-editor/-/U5KpYjWzb6MJ.
>
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/leo-editor?hl=en.
>



-- 
--
Sincerely,

HaveF

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.

Reply via email to