sugar-toolkit-gtk3/sugar/session/LogWriter.py

24 lines
560 B
Python
Raw Normal View History

import os
import sys
2006-05-17 01:23:42 +02:00
import dbus
import gobject
2006-05-17 01:23:42 +02:00
class LogWriter:
def __init__(self, application):
self._application = application
bus = dbus.SessionBus()
proxy_obj = bus.get_object('com.redhat.Sugar.Logger', '/com/redhat/Sugar/Logger')
self._logger = dbus.Interface(proxy_obj, 'com.redhat.Sugar.Logger')
def start(self):
if os.environ.has_key('SUGAR_USE_CONSOLE'):
sys.stdout = self
sys.stderr = self
2006-05-17 01:23:42 +02:00
def write(self, s):
gobject.idle_add(self._write, s)
def _write(self, s):
self._logger.log(self._application, s)
return False