Ejemplo n.º 1
0
NodesPropertyControl * PropertyControlCreator::CreateControlForNode(DataNode * dataNode, const Rect & rect, bool createNodeProperties)
{
    Material * material = dynamic_cast<Material *>(dataNode);
	if(material)
	{
        return CreateControlForNode(EPCID_MATERIAL, rect, createNodeProperties);
	}
    
	return CreateControlForNode(EPCID_DATANODE, rect, createNodeProperties);
}
Ejemplo n.º 2
0
NodesPropertyControl * PropertyControlCreator::CreateControlForLandscapeEditor(SceneNode * sceneNode, const Rect & rect, LandscapeEditorPropertyControl::eEditorMode mode)
{
    if(LandscapeEditorPropertyControl::MASK_EDITOR_MODE == mode)
    {
        return CreateControlForNode(EPCID_LANDSCAPE_EDITOR_MASK, rect, false);
    }
    else if(LandscapeEditorPropertyControl::HEIGHT_EDITOR_MODE == mode)
    {
        return CreateControlForNode(EPCID_LANDSCAPE_EDITOR_HEIGHT, rect, false);
    }

    return NULL;
}
Ejemplo n.º 3
0
NodesPropertyControl * PropertyControlCreator::CreateControlForNode(SceneNode * sceneNode, const Rect & rect, bool createNodeProperties)
{
	LightNode * light = dynamic_cast<LightNode *>(sceneNode);
	if(light)
	{
        return CreateControlForNode(EPCID_LIGHT, rect, createNodeProperties);
	}
    
    CubeNode *cube = dynamic_cast<CubeNode *> (sceneNode);
    if(cube)
    {
        return CreateControlForNode(EPCID_CUBE, rect, createNodeProperties);
    }

    SphereNode *sphere = dynamic_cast<SphereNode *> (sceneNode);
    if(sphere)
    {
        return CreateControlForNode(EPCID_SPHERE, rect, createNodeProperties);
    }

    Camera *camera = dynamic_cast<Camera *> (sceneNode);
    if(camera)
    {
        return CreateControlForNode(EPCID_CAMERA, rect, createNodeProperties);
    }

    LandscapeNode *landscape = dynamic_cast<LandscapeNode *> (sceneNode);
    if(landscape)
    {
        return CreateControlForNode(EPCID_LANDSCAPE, rect, createNodeProperties);
    }
    
    MeshInstanceNode *mesh = dynamic_cast<MeshInstanceNode *>(sceneNode); //must be later children of MeshInstanceNode
    if(mesh)
    {
        return CreateControlForNode(EPCID_MESH, rect, createNodeProperties);
    }
    
    LodNode *lodNode = dynamic_cast<LodNode*>(sceneNode);
    if(lodNode)
    {
        return CreateControlForNode(EPCID_LODNODE, rect, createNodeProperties);
    }

	ParticleEmitterNode * particleEmitterNode = dynamic_cast<ParticleEmitterNode *>(sceneNode);
	if(particleEmitterNode)
	{
		return CreateControlForNode(EPCID_PARTICLE_EMITTER, rect, createNodeProperties);
	}

	return CreateControlForNode(EPCID_NODE, rect, createNodeProperties);
}
NodesPropertyControl * PropertyControlCreator::CreateControlForNode(SceneNode * sceneNode, const Rect & rect, bool createNodeProperties)
{
	return CreateControlForNode(DetectNodeType(sceneNode), rect, createNodeProperties);
    
}