I wonder, though, is the entire screen rendered and drawn when the UI's "draw_screen" is called? So, if the wait is set to .25 is that drawing too much to the terminal?
Leif Theden On Wed, Jan 21, 2009 at 1:33 PM, Leif Theden <[email protected]> wrote: > Ah ha! Thanks for the info. The invalidate() was just what I was looking > for! > > On Wed, Jan 21, 2009 at 12:00 AM, Ian Ward <[email protected]> wrote: >> Leif Theden wrote: >>> Greetings! I am a first time user of urwid. I was wondering if >>> anyone has attempted animation of widgets before? >>> >>> I have looked at the graph.py example, and I don't think that that is >>> what exactly I am looking for. >>> >>> I have an individual widget that displays a dungeon map from a game, >>> and I would like to have the rendering function animated, and possibly >>> animated characters while the widget is being viewed. >>> >>> My current implimentation simply diables caching and renders the >>> canvas over and over, creating animation. It works, but since it is >>> grossly ineffecient, I wanted to ask people who may know a better way. >> >> Animation is just changing the contents widgets at regular intervals. >> If you have a widget that changes say, every 0.5 seconds, you could set >> max_wait to 0.25 with screen.set_input_timeouts() and each time through >> your loop you calculate which state the widget should be in based on the >> current time. If the widget is changed make sure it calls its >> self._invalidate() method. >> >> This way the widget will still use its cache and not update when it >> doesn't need to, and you can easily have many widgets animating at >> different rates. >> >> Ian >> >> >> >> _______________________________________________ >> Urwid mailing list >> [email protected] >> http://lists.excess.org/mailman/listinfo/urwid >> >> > _______________________________________________ Urwid mailing list [email protected] http://lists.excess.org/mailman/listinfo/urwid
