11 from builtins
import object
12 from builtins
import str
51 self.
__ctx__ctx = context
63 def _logInfo (self, message):
64 mevis.MLAB.log(message)
68 def _logError (self, message):
69 mevis.MLAB.logError(message)
82 field = self.
__ctx__ctx.field(fieldName)
85 self.
_logError_logError(
"Field (%s) not found in the used context!" % (fieldName))
88 fieldType = field.type
89 if (fieldType
in (
'Trigger'))
or fieldValue
is None:
91 self.
_logInfo_logInfo(
"Touched field %s" % (fieldName))
99 self.
__changeDict__changeDict.setdefault(fieldName, oldFieldValue)
102 self.
_logInfo_logInfo(
"Set field %s to value %s" % (fieldName, fieldValue))
113 field = self.
__ctx__ctx.field(fieldName)
116 self.
_logError_logError(
"Field (%s) not found in the used context!" % (fieldName))
135 field = self.
__ctx__ctx.field(fieldName)
148 if 'Vector6' in field.type:
149 return field.stringValue()
150 elif 'MLBase' in field.type:
151 return field.object()
156 if 'Vector6' in field.type:
157 if isinstance(fieldValue, (str, bytes)):
158 field.setStringValue(fieldValue)
160 field.setVectorValue(fieldValue)
161 elif 'MLBase' in field.type:
162 field.setObject(fieldValue)
164 field.value = fieldValue
Class to handle field changes and make them revertable.
def revert(self)
Revert all changes made.
def _logError(self, message)
def __init__(self, context)
The default constructor.
def enableAutoRevert(self, enable)
def _logInfo(self, message)
def __del__(self)
The default destructor.
def addField(self, fieldName, verbose=False)
Add a field and its value without setting it.
def autoRevert(self)
Revert all changes made if auto-revert is enabled.
def setFieldValue(self, fieldName, fieldValue, verbose=False)
Set the value of a field.
def setFieldValue(field, fieldValue)