remember componentS
parent
540700deb5
commit
4f9fe1169e
|
@ -212,6 +212,8 @@ use Cake\Utility\Inflector;
|
|||
|
||||
var project = R3.GetCurrentProject();
|
||||
|
||||
R3.projectInfo[project.id].component = data.component;
|
||||
|
||||
if (data.component instanceof R3.Entity) {
|
||||
|
||||
R3.projectInfo[project.id].entity = data.component;
|
||||
|
@ -263,6 +265,14 @@ use Cake\Utility\Inflector;
|
|||
|
||||
};
|
||||
|
||||
R3.ClearEntityList = function() {
|
||||
R3.selectEntity.innerHTML = '';
|
||||
|
||||
option = document.createElement('option');
|
||||
option.appendChild(document.createTextNode('Select Entity'));
|
||||
R3.selectEntity.appendChild(option);
|
||||
};
|
||||
|
||||
/**
|
||||
* Builds entity list for the project
|
||||
* @param project
|
||||
|
@ -270,11 +280,7 @@ use Cake\Utility\Inflector;
|
|||
*/
|
||||
R3.BuildEntityList = function(project) {
|
||||
|
||||
R3.selectEntity.innerHTML = '';
|
||||
|
||||
option = document.createElement('option');
|
||||
option.appendChild(document.createTextNode('Select Entity'));
|
||||
R3.selectEntity.appendChild(option);
|
||||
R3.ClearEntityList();
|
||||
|
||||
Object.keys(project.idToObject).map(
|
||||
function(id) {
|
||||
|
@ -295,6 +301,14 @@ use Cake\Utility\Inflector;
|
|||
|
||||
};
|
||||
|
||||
R3.ClearComponentList = function() {
|
||||
R3.selectComponent.innerHTML = '';
|
||||
|
||||
var option = document.createElement('option');
|
||||
option.appendChild(document.createTextNode('Select Component'));
|
||||
R3.selectComponent.appendChild(option);
|
||||
};
|
||||
|
||||
/**
|
||||
* Builds component list, and if entity specified, only components for this entity
|
||||
* @param project
|
||||
|
@ -307,11 +321,7 @@ use Cake\Utility\Inflector;
|
|||
entity = null;
|
||||
}
|
||||
|
||||
R3.selectComponent.innerHTML = '';
|
||||
|
||||
var option = document.createElement('option');
|
||||
option.appendChild(document.createTextNode('Select Component'));
|
||||
R3.selectComponent.appendChild(option);
|
||||
R3.ClearComponentList();
|
||||
|
||||
Object.keys(project.idToObject).map(
|
||||
function(id) {
|
||||
|
@ -328,6 +338,10 @@ use Cake\Utility\Inflector;
|
|||
|
||||
R3.Utils.SortSelect(R3.selectComponent);
|
||||
|
||||
if (R3.projectInfo[project.id].component) {
|
||||
R3.Utils.SetSelectIndex(R3.selectComponent, R3.projectInfo[project.id].component.id);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
R3.SetCurrentProject = function(project) {
|
||||
|
@ -358,7 +372,12 @@ use Cake\Utility\Inflector;
|
|||
|
||||
var project = R3.GetCurrentProject();
|
||||
|
||||
R3.SetCurrentProject(project);
|
||||
if (project) {
|
||||
R3.SetCurrentProject(project);
|
||||
} else {
|
||||
R3.ClearEntityList();
|
||||
R3.ClearComponentList();
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
@ -371,6 +390,8 @@ use Cake\Utility\Inflector;
|
|||
throw new Error('todo - no project');
|
||||
}
|
||||
|
||||
R3.projectInfo[project.id].component = null;
|
||||
|
||||
if (entity) {
|
||||
|
||||
R3.projectInfo[project.id].entity = entity;
|
||||
|
@ -384,7 +405,20 @@ use Cake\Utility\Inflector;
|
|||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
R3.ComponentChange = function() {
|
||||
|
||||
var project = R3.GetCurrentProject();
|
||||
var component = R3.GetCurrentComponent();
|
||||
|
||||
if (!project) {
|
||||
throw new Error('todo - no project');
|
||||
}
|
||||
|
||||
R3.projectInfo[project.id].component = component;
|
||||
|
||||
};
|
||||
|
||||
R3.GetCurrentProject = function() {
|
||||
return R3.EntityManager.Instance.findComponentById(R3.selectProject.options[R3.selectProject.selectedIndex].value);
|
||||
};
|
||||
|
@ -393,6 +427,10 @@ use Cake\Utility\Inflector;
|
|||
return R3.EntityManager.Instance.findComponentById(R3.selectEntity.options[R3.selectEntity.selectedIndex].value);
|
||||
};
|
||||
|
||||
R3.GetCurrentComponent = function() {
|
||||
return R3.EntityManager.Instance.findComponentById(R3.selectComponent.options[R3.selectComponent.selectedIndex].value);
|
||||
};
|
||||
|
||||
R3.AddComponentToSelect = function(select, id) {
|
||||
|
||||
var component = R3.EntityManager.Instance.findComponentById(id);
|
||||
|
@ -530,7 +568,8 @@ use Cake\Utility\Inflector;
|
|||
var project = R3.GetCurrentProject();
|
||||
|
||||
R3.projectInfo[project.id] = {
|
||||
entity : null
|
||||
entity : null,
|
||||
component : null
|
||||
};
|
||||
|
||||
R3.SetCurrentProject(project);
|
||||
|
@ -575,8 +614,8 @@ use Cake\Utility\Inflector;
|
|||
R3.selectEntity = document.getElementById('selectEntity');
|
||||
R3.selectEntity.addEventListener('change', R3.EntityChange);
|
||||
|
||||
|
||||
R3.selectComponent = document.getElementById('selectComponent');
|
||||
R3.selectComponent.addEventListener('change', R3.ComponentChange);
|
||||
|
||||
R3.selectMode = document.getElementById('selectMode');
|
||||
R3.selectMode.addEventListener("change", R3.ApplicationModeChange);
|
||||
|
|
Loading…
Reference in New Issue