From 7990bc0d3126408e2728e3f41745e1332182de5b Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Thu, 17 Aug 2006 08:32:59 +0000 Subject: Get activity bar and activity creation to work --- (limited to 'sugar/util.py') diff --git a/sugar/util.py b/sugar/util.py index bfddf32..9cb7d55 100644 --- a/sugar/util.py +++ b/sugar/util.py @@ -4,6 +4,20 @@ import random import binascii import string +import gobject + +class GObjectSingletonMeta(gobject.GObjectMeta): + """GObject Singleton Metaclass""" + + def __init__(klass, name, bases, dict): + gobject.GObjectMeta.__init__(klass, name, bases, dict) + klass.__instance = None + + def __call__(klass, *args, **kwargs): + if klass.__instance is None: + klass.__instance = gobject.GObjectMeta.__call__(klass, *args, **kwargs) + return klass.__instance + def _stringify_sha(sha_hash): """Convert binary sha1 hash data into printable characters.""" print_sha = "" -- cgit v0.9.1