K2LL33D SHELL

 Apache/2.4.7 (Ubuntu)
 Linux sman1baleendah 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64
 uid=33(www-data) gid=33(www-data) groups=33(www-data)
 safemode : OFF
 MySQL: ON | Perl: ON | cURL: OFF | WGet: ON
  >  / usr / lib / python2.7 / dist-packages / twisted / internet /
server ip : 172.67.156.115

your ip : 172.69.130.154

H O M E


Filename/usr/lib/python2.7/dist-packages/twisted/internet/gtk3reactor.py
Size2.2 kb
Permissionrw-r--r--
Ownerroot : root
Create time27-Apr-2025 09:56
Last modified05-Dec-2012 03:22
Last accessed27-Apr-2025 09:57
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.

"""
This module provides support for Twisted to interact with the gtk3 mainloop
via Gobject introspection. This is like gi, but slightly slower and requires a
working $DISPLAY.

In order to use this support, simply do the following::

from twisted.internet import gtk3reactor
gtk3reactor.install()

If you wish to use a GApplication, register it with the reactor::

from twisted.internet import reactor
reactor.registerGApplication(app)

Then use twisted.internet APIs as usual.
"""

from __future__ import division, absolute_import

import os

from twisted.internet import gireactor
from twisted.python import runtime

# Newer versions of gtk3/pygoject raise a RuntimeError, or just break in a
# confusing manner, if the program is not running under X11. We therefore try
# to fail in a more reasonable manner, and check for $DISPLAY as a reasonable
# approximation of availability of X11. This is somewhat over-aggressive,
# since some older versions of gtk3/pygobject do work with missing $DISPLAY,
# but it's too hard to figure out which, so we always require it.
if (runtime.platform.getType() == 'posix' and
not runtime.platform.isMacOSX() and not os.environ.get("DISPLAY")):
raise ImportError(
"Gtk3 requires X11, and no DISPLAY environment variable is set")


class Gtk3Reactor(gireactor.GIReactor):
"""
A reactor using the gtk3+ event loop.
"""

def __init__(self):
"""
Override init to set the C{useGtk} flag.
"""
gireactor.GIReactor.__init__(self, useGtk=True)



class PortableGtk3Reactor(gireactor.PortableGIReactor):
"""
Portable GTK+ 3.x reactor.
"""
def __init__(self):
"""
Override init to set the C{useGtk} flag.
"""
gireactor.PortableGIReactor.__init__(self, useGtk=True)



def install():
"""
Configure the Twisted mainloop to be run inside the gtk3+ mainloop.
"""
if runtime.platform.getType() == 'posix':
reactor = Gtk3Reactor()
else:
reactor = PortableGtk3Reactor()

from twisted.internet.main import installReactor
installReactor(reactor)
return reactor


__all__ = ['install']