sugar-toolkit-gtk3/sugar/session/LogWriter.py
2006-06-13 15:18:04 -04:00

24 lines
560 B
Python

import os
import sys
import dbus
import gobject
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
def write(self, s):
gobject.idle_add(self._write, s)
def _write(self, s):
self._logger.log(self._application, s)
return False