~justin-fathomdb/nova/justinsb-openstack-api-volumes

« back to all changes in this revision

Viewing changes to vendor/Twisted-10.0.0/twisted/internet/pyuisupport.py

  • Committer: Jesse Andrews
  • Date: 2010-05-28 06:05:26 UTC
  • Revision ID: git-v1:bf6e6e718cdc7488e2da87b21e258ccc065fe499
initial commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Copyright (c) 2001-2004 Twisted Matrix Laboratories.
 
2
# See LICENSE for details.
 
3
 
 
4
 
 
5
"""
 
6
This module integrates PyUI with twisted.internet's mainloop.
 
7
 
 
8
Maintainer: Jp Calderone
 
9
 
 
10
See doc/examples/pyuidemo.py for example usage.
 
11
"""
 
12
 
 
13
# System imports
 
14
import pyui
 
15
 
 
16
def _guiUpdate(reactor, delay):
 
17
    pyui.draw()
 
18
    if pyui.update() == 0:
 
19
        pyui.quit()
 
20
        reactor.stop()
 
21
    else:
 
22
        reactor.callLater(delay, _guiUpdate, reactor, delay)
 
23
 
 
24
 
 
25
def install(ms=10, reactor=None, args=(), kw={}):
 
26
    """
 
27
    Schedule PyUI's display to be updated approximately every C{ms}
 
28
    milliseconds, and initialize PyUI with the specified arguments.
 
29
    """
 
30
    d = pyui.init(*args, **kw)
 
31
 
 
32
    if reactor is None:
 
33
        from twisted.internet import reactor
 
34
    _guiUpdate(reactor, ms / 1000.0)
 
35
    return d
 
36
 
 
37
__all__ = ["install"]