7 from sys
import version_info
as _swig_python_version_info
8 if _swig_python_version_info < (2, 7, 0):
9 raise RuntimeError(
"Python 2.7 or later required")
12 if __package__
or "." in __name__:
13 from .
import _Pltk_init
18 import builtins
as __builtin__
24 strthis =
"proxy of " + self.this.__repr__()
25 except __builtin__.Exception:
27 return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
31 def set_instance_attr(self, name, value):
35 set(self, name, value)
36 elif hasattr(self, name)
and isinstance(getattr(type(self), name), property):
37 set(self, name, value)
39 raise AttributeError(
"You cannot add instance attributes to %s" % self)
40 return set_instance_attr
44 def set_class_attr(cls, name, value):
45 if hasattr(cls, name)
and not isinstance(getattr(cls, name), property):
48 raise AttributeError(
"You cannot add class attributes to %s" % cls)
53 """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
55 return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
60 """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
66 return _Pltk_init.Pltk_init(x)