MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / writeField

Method writeField

Engine/source/console/simObject.cpp:259–302  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

257//-----------------------------------------------------------------------------
258
259bool SimObject::writeField(StringTableEntry fieldname, const char* value)
260{
261 // Don't write empty fields.
262 if (!value || !*value)
263 return false;
264
265 // Don't write owner field for components
266 static StringTableEntry sOwner = StringTable->insert( "owner" );
267 if( fieldname == sOwner )
268 return false;
269
270 // Don't write ParentGroup
271 static StringTableEntry sParentGroup = StringTable->insert( "parentGroup" );
272 if( fieldname == sParentGroup )
273 return false;
274
275 // Don't write name, is within the parenthesis already
276 static StringTableEntry sName = StringTable->insert( "name" );
277 if( fieldname == sName )
278 return false;
279
280 // Don't write className, it is read for legacy support but we
281 // write it out as class.
282 static StringTableEntry sClassName = StringTable->insert( "className" );
283 if( fieldname == sClassName )
284 return false;
285
286 // Write persistent ID only if present.
287 static StringTableEntry sPersistentId = StringTable->insert( "persistentId" );
288 if( fieldname == sPersistentId && ( !value || !value[ 0 ] ) )
289 return false;
290
291 // Don't write hidden and locked flags if they are at their default value.
292
293 static StringTableEntry sHidden = StringTable->insert( "hidden" );
294 static StringTableEntry sLocked = StringTable->insert( "locked" );
295
296 if( fieldname == sHidden && !dAtob( value ) )
297 return false;
298 if( fieldname == sLocked && !dAtob( value ) )
299 return false;
300
301 return true;
302}
303
304//-----------------------------------------------------------------------------
305

Callers 3

updateObjectMethod · 0.45
setObjectAttributesMethod · 0.45
writeFieldsMethod · 0.45

Calls 2

dAtobFunction · 0.85
insertMethod · 0.45

Tested by

no test coverage detected