File: //lib/python3/dist-packages/twisted/internet/__pycache__/gtk3reactor.cpython-38.pyc
U
W[� � @ s� d Z ddlmZmZ ddlZddlmZ ddlmZ ej �
� dkr`ej �� s`ej�
d�s`ed��G d d
� d
ej�ZG dd� dej�Zd
d� ZdgZdS )a�
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.
� )�division�absolute_importN)� gireactor)�runtime�posixZDISPLAYz=Gtk3 requires X11, and no DISPLAY environment variable is setc @ s e Zd ZdZdd� ZdS )�Gtk3Reactorz/
A reactor using the gtk3+ event loop.
c C s t jj| dd� dS �z:
Override init to set the C{useGtk} flag.
T)ZuseGtkN)r � GIReactor�__init__��self� r
�>/usr/lib/python3/dist-packages/twisted/internet/gtk3reactor.pyr
. s zGtk3Reactor.__init__N��__name__�
__module__�__qualname__�__doc__r
r
r
r
r r ) s r c @ s e Zd ZdZdd� ZdS )�PortableGtk3Reactorz$
Portable GTK+ 3.x reactor.
c C s t jj| dd� dS r )r �PortableGIReactorr
r r
r
r r
: s zPortableGtk3Reactor.__init__Nr r
r
r
r r 6 s r c C s4 t j�� dkrt� } nt� } ddlm} || � | S )zM
Configure the Twisted mainloop to be run inside the gtk3+ mainloop.
r r )�installReactor)r �platform�getTyper r Ztwisted.internet.mainr )Zreactorr r
r
r �installB s r )r Z
__future__r r �osZtwisted.internetr Ztwisted.pythonr r r ZisMacOSX�environ�get�ImportErrorr r r r r �__all__r
r
r
r �<module> s �
��