Ejemplo n.º 1
0
var CtrlrValueTreeEditorItem::getDragSourceDescription ()
{
	Array <ValueTree> selectedTreeItems;
	String returnValue;

	if (getOwnerView())
	{
		for (int i=0; i<getOwnerView()->getNumSelectedItems(); i++)
		{
			CtrlrValueTreeEditorItem *item = dynamic_cast<CtrlrValueTreeEditorItem*>(getOwnerView()->getSelectedItem(i));
			selectedTreeItems.add (item->getTree());
		}
	}

	if ((returnValue = provider.getDragSourceDescription(selectedTreeItems)) != String::empty)
	{
		return (returnValue);
	}
	else
	{
		for (int i=0; i<selectedTreeItems.size(); i++)
		{
			returnValue << selectedTreeItems[i].getType().toString() + ";";
		}
	}

	return (returnValue);
}
Ejemplo n.º 2
0
var CtrlrLuaMethodEditor::getDragSourceDescription(Array <ValueTree> &selectedTreeItems)
{
	String returnValue;

	for (int i=0; i<methodTree->getNumSelectedItems(); i++)
	{
		CtrlrValueTreeEditorItem *item = dynamic_cast<CtrlrValueTreeEditorItem*>(methodTree->getSelectedItem(i));

		if (item != nullptr)
		{
			returnValue << item->getItemIdentifierString() + ";";
		}
	}

	return (returnValue);
}
Ejemplo n.º 3
0
//=========================================================================================================
bool CtrlrValueTreeEditorTree::keyPressed (const KeyPress &key)
{
	if (getNumSelectedItems() == 1)
	{
		if (getSelectedItem(0))
		{
			CtrlrValueTreeEditorItem *item = dynamic_cast<CtrlrValueTreeEditorItem*>(getSelectedItem(0));

			if (item != nullptr)
			{
				item->keyPressed(key);
			}
		}
	}

	return (TreeView::keyPressed(key));
}
Ejemplo n.º 4
0
void CtrlrLuaMethodEditor::itemDropped (ValueTree &targetItem, const DragAndDropTarget::SourceDetails &dragSourceDetails, int insertIndex)
{
	if ( (targetItem.hasType(Ids::luaMethodGroup) || targetItem.hasType(Ids::luaManagerMethods)) && insertIndex == 0 )
	{
		StringArray ar;
		ar.addTokens (dragSourceDetails.description.toString(), ";", "\"'");

		for (int i=0; i<ar.size(); i++)
		{
			CtrlrValueTreeEditorItem *sourceItem = dynamic_cast<CtrlrValueTreeEditorItem*>(methodTree->findItemFromIdentifierString (ar[i]));
			if (sourceItem != nullptr)
			{
				ValueTree child		= sourceItem->getTree();
				ValueTree parent	= child.getParent();
				parent.removeChild (child, nullptr);
				targetItem.addChild (child, -1, nullptr);
			}
		}

		triggerAsyncUpdate();
	}
}