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