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

Method onAdd

Engine/source/gui/editor/inspector/dynamicField.cpp:211–270  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

209}
210
211bool GuiInspectorDynamicField::onAdd()
212{
213 if( !Parent::onAdd() )
214 return false;
215
216 //pushObjectToBack(mEdit);
217
218 // Create our renaming field
219 mRenameCtrl = new GuiTextEditCtrl();
220 mRenameCtrl->setDataField( StringTable->insert("profile"), NULL, "GuiInspectorDynamicFieldProfile" );
221
222 char szName[512];
223 dSprintf( szName, 512, "IE_%s_%d_%s_Rename", mRenameCtrl->getClassName(), mInspector->getInspectObject()->getId(), getFieldName() );
224 mRenameCtrl->registerObject( szName );
225
226 // Our command will evaluate to :
227 //
228 // if( (editCtrl).getText() !$= "" )
229 // (field).renameField((editCtrl).getText());
230 //
231 char szBuffer[1024];
232 dSprintf( szBuffer, sizeof( szBuffer ), "if( %d.getText() !$= \"\" ) %d.renameField(%d.getText());", mRenameCtrl->getId(), getId(), mRenameCtrl->getId() );
233 mRenameCtrl->setText( getFieldName() );
234 mRenameCtrl->setField("Validate", szBuffer );
235 addObject( mRenameCtrl );
236
237 // Resize the name control to fit in our caption rect
238 mRenameCtrl->resize( mCaptionRect.point, mCaptionRect.extent );
239
240 // Resize the value control to leave space for the delete button
241 mEdit->resize( mValueRect.point, mValueRect.extent);
242
243 // Clear out any caption set from Parent::onAdd
244 // since we are rendering the fieldname with our 'rename' control.
245 mCaption = StringTable->insert( "" );
246
247 // Create delete button control
248 mDeleteButton = new GuiBitmapButtonCtrl();
249
250 SimObject* profilePtr = Sim::findObject("InspectorDynamicFieldButton");
251 if( profilePtr != NULL )
252 mDeleteButton->setControlProfile( dynamic_cast<GuiControlProfile*>(profilePtr) );
253
254 dSprintf( szBuffer, sizeof( szBuffer ),
255 "%d.apply(\"\");%d.schedule(1,\"inspectGroup\");",
256 getId(),
257 mParent->getId() );
258
259 // FIXME Hardcoded image
260 mDeleteButton->setField( "Bitmap", "ToolsModule:iconDelete_image" );
261 mDeleteButton->setField( "Text", "X" );
262 mDeleteButton->setField( "Command", szBuffer );
263 mDeleteButton->setSizing( horizResizeLeft, vertResizeCenter );
264 mDeleteButton->resize(Point2I(getWidth() - 20,2), Point2I(16, 16));
265 mDeleteButton->registerObject();
266
267 addObject(mDeleteButton);
268

Callers

nothing calls this directly

Calls 14

dSprintfFunction · 0.85
getWidthFunction · 0.85
setFieldMethod · 0.80
setControlProfileMethod · 0.80
setSizingMethod · 0.80
getIdMethod · 0.65
findObjectFunction · 0.50
Point2IClass · 0.50
setDataFieldMethod · 0.45
insertMethod · 0.45
getClassNameMethod · 0.45
registerObjectMethod · 0.45

Tested by

no test coverage detected