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

Method writeField

Engine/source/console/simObject.cpp:222–265  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

220//-----------------------------------------------------------------------------
221
222bool SimObject::writeField(StringTableEntry fieldname, const char* value)
223{
224 // Don't write empty fields.
225 if (!value || !*value)
226 return false;
227
228 // Don't write owner field for components
229 static StringTableEntry sOwner = StringTable->insert( "owner" );
230 if( fieldname == sOwner )
231 return false;
232
233 // Don't write ParentGroup
234 static StringTableEntry sParentGroup = StringTable->insert( "parentGroup" );
235 if( fieldname == sParentGroup )
236 return false;
237
238 // Don't write name, is within the parenthesis already
239 static StringTableEntry sName = StringTable->insert( "name" );
240 if( fieldname == sName )
241 return false;
242
243 // Don't write className, it is read for legacy support but we
244 // write it out as class.
245 static StringTableEntry sClassName = StringTable->insert( "className" );
246 if( fieldname == sClassName )
247 return false;
248
249 // Write persistent ID only if present.
250 static StringTableEntry sPersistentId = StringTable->insert( "persistentId" );
251 if( fieldname == sPersistentId && ( !value || !value[ 0 ] ) )
252 return false;
253
254 // Don't write hidden and locked flags if they are at their default value.
255
256 static StringTableEntry sHidden = StringTable->insert( "hidden" );
257 static StringTableEntry sLocked = StringTable->insert( "locked" );
258
259 if( fieldname == sHidden && !dAtob( value ) )
260 return false;
261 if( fieldname == sLocked && !dAtob( value ) )
262 return false;
263
264 return true;
265}
266
267//-----------------------------------------------------------------------------
268

Callers 3

updateObjectMethod · 0.45
setObjectAttributesMethod · 0.45
writeFieldsMethod · 0.45

Calls 2

dAtobFunction · 0.70
insertMethod · 0.45

Tested by

no test coverage detected