public void Remove() { var model = TodoUtils.GetScriptableObject <TodoModel>(); model.RemoveTodo(Id); DestroyImmediate(this); }
public void Select() { var model = TodoUtils.GetScriptableObject <TodoModel>(); var item = model.Todos.FirstOrDefault(x => x.Prefab == (Object)gameObject); if (item != null) { Selection.activeGameObject = (GameObject)item.Prefab; } }
private static void SelectPrefab(Todo todo) { var model = TodoUtils.GetScriptableObject <TodoModel>(); var item = model.Todos.FirstOrDefault(x => x.Prefab == (Object)todo.Prefab); if (item != null) { // Load prefab Selection.activeGameObject = (GameObject)item.Prefab; } }
private void UpdateChanges(Object source, Object sceneAsset = null) { var model = TodoUtils.GetScriptableObject <TodoModel>(); if (Id == 0) { Id = model.AddTodo(Message, source, sceneAsset); } else if (string.IsNullOrEmpty(Message)) { // Remove todo model.RemoveTodo(Id); } else { // Update todo model.UpdateTodo(Id, Message); } TodoUtils.SaveScene(); }
private void LoadModel() { t = TodoUtils.GetScriptableObject <TodoModel>(); if (t != null) { GetTarget = new SerializedObject(t); ThisList = GetTarget.FindProperty("Todos"); // Find the List in our script and create a refrence of it if (!listenerRegistered) { t.OnChange += () => { GetTarget = new SerializedObject(t); ThisList = GetTarget.FindProperty("Todos"); LoadView(); }; listenerRegistered = true; } } else { listenerRegistered = false; } }