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

Method getTextToRoot

Engine/source/gui/controls/guiTreeViewCtrl.cpp:4742–4780  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4740//-----------------------------------------------------------------------------
4741
4742StringTableEntry GuiTreeViewCtrl::getTextToRoot( S32 itemId, const char * delimiter )
4743{
4744 Item * item = getItem(itemId);
4745
4746 if(!item)
4747 {
4748 Con::errorf(ConsoleLogEntry::General, "GuiTreeViewCtrl::getTextToRoot: invalid start item id!");
4749 return StringTable->EmptyString();
4750 }
4751
4752 if(item->isInspectorData())
4753 {
4754 Con::errorf(ConsoleLogEntry::General, "GuiTreeViewCtrl::getTextToRoot: cannot get text to root of inspector data items");
4755 return StringTable->EmptyString();
4756 }
4757
4758 char bufferOne[1024];
4759 char bufferTwo[1024];
4760 char bufferNodeText[128];
4761
4762 dMemset( bufferOne, 0, sizeof(bufferOne) );
4763 dMemset( bufferTwo, 0, sizeof(bufferTwo) );
4764
4765 dStrcpy( bufferOne, item->getText() );
4766
4767 Item *prevNode = item->mParent;
4768 while ( prevNode )
4769 {
4770 dMemset( bufferNodeText, 0, sizeof(bufferNodeText) );
4771 dStrcpy( bufferNodeText, prevNode->getText() );
4772 dSprintf( bufferTwo, 1024, "%s%s%s",bufferNodeText, delimiter, bufferOne );
4773 dStrcpy( bufferOne, bufferTwo );
4774 dMemset( bufferTwo, 0, sizeof(bufferTwo) );
4775 prevNode = prevNode->mParent;
4776 }
4777
4778 // Return the result, StringTable-ized.
4779 return StringTable->insert( bufferOne, true );
4780}
4781
4782//-----------------------------------------------------------------------------
4783

Callers 1

Calls 8

errorfFunction · 0.85
dStrcpyFunction · 0.85
dSprintfFunction · 0.85
EmptyStringMethod · 0.80
isInspectorDataMethod · 0.80
dMemsetFunction · 0.50
getTextMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected