mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
make ConfigVariable look like a native Python object
This commit is contained in:
parent
1328a4d9ba
commit
c4670505ab
47
direct/src/extensions/ConfigVariable-extensions.py
Normal file
47
direct/src/extensions/ConfigVariable-extensions.py
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.getStringValue()
|
||||||
|
|
||||||
|
def __hash__(self):
|
||||||
|
raise AttributeError, "ConfigVariables are not immutable."
|
||||||
|
|
||||||
|
def ls(self):
|
||||||
|
from pandac.Notify import Notify
|
||||||
|
self.write(Notify.out())
|
||||||
|
|
||||||
|
def __int__(self):
|
||||||
|
return int(self.getValue())
|
||||||
|
|
||||||
|
def __long__(self):
|
||||||
|
return long(self.getValue())
|
||||||
|
|
||||||
|
def __float__(self):
|
||||||
|
return float(self.getValue())
|
||||||
|
|
||||||
|
def __nonzero__(self):
|
||||||
|
return bool(self.getValue())
|
||||||
|
|
||||||
|
def __oct__(self):
|
||||||
|
return oct(self.getValue())
|
||||||
|
|
||||||
|
def __hex__(self):
|
||||||
|
return hex(self.getValue())
|
||||||
|
|
||||||
|
def __cmp__(self, other):
|
||||||
|
return self.getValue().__cmp__(other)
|
||||||
|
|
||||||
|
def __coerce__(self, other):
|
||||||
|
return (self.getValue(), other)
|
||||||
|
|
||||||
|
def __len__(self):
|
||||||
|
return self.getNumWords()
|
||||||
|
|
||||||
|
def __getitem__(self, n):
|
||||||
|
if n < 0 or n >= self.getNumWords():
|
||||||
|
raise IndexError
|
||||||
|
return self.getWord(n)
|
||||||
|
|
||||||
|
def __setitem__(self, n, value):
|
||||||
|
if n < 0 or n > self.getNumWords():
|
||||||
|
raise IndexError
|
||||||
|
self.setWord(n, value)
|
5
direct/src/extensions/ConfigVariableBool-extensions.py
Normal file
5
direct/src/extensions/ConfigVariableBool-extensions.py
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
def __getitem__(self, n):
|
||||||
|
if n < 0 or n >= self.getNumWords():
|
||||||
|
raise IndexError
|
||||||
|
return self.getWord(n)
|
5
direct/src/extensions/ConfigVariableDouble-extensions.py
Normal file
5
direct/src/extensions/ConfigVariableDouble-extensions.py
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
def __getitem__(self, n):
|
||||||
|
if n < 0 or n >= self.getNumWords():
|
||||||
|
raise IndexError
|
||||||
|
return self.getWord(n)
|
5
direct/src/extensions/ConfigVariableInt-extensions.py
Normal file
5
direct/src/extensions/ConfigVariableInt-extensions.py
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
def __getitem__(self, n):
|
||||||
|
if n < 0 or n >= self.getNumWords():
|
||||||
|
raise IndexError
|
||||||
|
return self.getWord(n)
|
11
direct/src/extensions/ConfigVariableString-extensions.py
Normal file
11
direct/src/extensions/ConfigVariableString-extensions.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
|
||||||
|
def __len__(self):
|
||||||
|
return self.getValue().__len__()
|
||||||
|
|
||||||
|
def __getitem__(self, n):
|
||||||
|
return self.getValue().__getitem__(n)
|
||||||
|
|
||||||
|
def __setitem__(self, n):
|
||||||
|
value = self.getValue()
|
||||||
|
value.__setitem__(n)
|
||||||
|
self.assign(value)
|
Loading…
x
Reference in New Issue
Block a user