mirror of
https://github.com/nasa/openmct.git
synced 2025-06-13 12:48:14 +00:00
[API] Update todo tutorial
...to expect new domain object API (instead of explicitly wrapping it.)
This commit is contained in:
@ -48,22 +48,20 @@ define([
|
|||||||
var self = this;
|
var self = this;
|
||||||
this.destroy();
|
this.destroy();
|
||||||
|
|
||||||
mct.Objects.get(utils.parseKeyString(self.domainObject.getId())).then(function (object) {
|
self.$els = $(todoTemplate);
|
||||||
self.$els = $(todoTemplate);
|
self.$buttons = {
|
||||||
self.$buttons = {
|
all: self.$els.find('.example-todo-button-all'),
|
||||||
all: self.$els.find('.example-todo-button-all'),
|
incomplete: self.$els.find('.example-todo-button-incomplete'),
|
||||||
incomplete: self.$els.find('.example-todo-button-incomplete'),
|
complete: self.$els.find('.example-todo-button-complete')
|
||||||
complete: self.$els.find('.example-todo-button-complete')
|
};
|
||||||
};
|
|
||||||
|
|
||||||
$(container).empty().append(self.$els);
|
$(container).empty().append(self.$els);
|
||||||
|
|
||||||
|
|
||||||
self.initialize();
|
self.initialize();
|
||||||
self.objectChanged(object);
|
self.objectChanged(this.domainObject);
|
||||||
|
|
||||||
mct.selection.on('change', self.render);
|
mct.selection.on('change', self.render);
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
TodoView.prototype.destroy = function () {
|
TodoView.prototype.destroy = function () {
|
||||||
@ -148,47 +146,44 @@ define([
|
|||||||
var self = this;
|
var self = this;
|
||||||
this.destroy();
|
this.destroy();
|
||||||
|
|
||||||
mct.Objects.get(utils.parseKeyString(this.domainObject.getId())).then(function (wrappedObject){
|
self.mutableObject = mct.Objects.getMutable(this.domainObject);
|
||||||
|
|
||||||
self.mutableObject = mct.Objects.getMutable(wrappedObject);
|
var $els = $(toolbarTemplate);
|
||||||
|
var $add = $els.find('a.example-add');
|
||||||
|
var $remove = $els.find('a.example-remove');
|
||||||
|
|
||||||
var $els = $(toolbarTemplate);
|
$(container).append($els);
|
||||||
var $add = $els.find('a.example-add');
|
|
||||||
var $remove = $els.find('a.example-remove');
|
|
||||||
|
|
||||||
$(container).append($els);
|
$add.on('click', function () {
|
||||||
|
var $dialog = $(dialogTemplate),
|
||||||
|
view = {
|
||||||
|
show: function (container) {
|
||||||
|
$(container).append($dialog);
|
||||||
|
},
|
||||||
|
destroy: function () {}
|
||||||
|
};
|
||||||
|
|
||||||
$add.on('click', function () {
|
mct.dialog(view, "Add a Task").then(function () {
|
||||||
var $dialog = $(dialogTemplate),
|
var description = $dialog.find('input').val();
|
||||||
view = {
|
var tasks = self.mutableObject.get('tasks');
|
||||||
show: function (container) {
|
tasks.push({ description: description });
|
||||||
$(container).append($dialog);
|
self.mutableObject.set('tasks', tasks);
|
||||||
},
|
|
||||||
destroy: function () {}
|
|
||||||
};
|
|
||||||
|
|
||||||
mct.dialog(view, "Add a Task").then(function () {
|
|
||||||
var description = $dialog.find('input').val();
|
|
||||||
var tasks = self.mutableObject.get('tasks');
|
|
||||||
tasks.push({ description: description });
|
|
||||||
self.mutableObject.set('tasks', tasks);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
$remove.on('click', function () {
|
|
||||||
var index = mct.selection.selected()[0].index;
|
|
||||||
if (index !== undefined) {
|
|
||||||
var tasks = self.mutableObject.get('tasks').filter(function (t, i) {
|
|
||||||
return i !== index;
|
|
||||||
});
|
|
||||||
self.mutableObject.set("tasks", tasks);
|
|
||||||
self.mutableObject.set("selected", undefined);
|
|
||||||
mct.selection.clear();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
self.$remove = $remove;
|
|
||||||
self.handleSelectionChange();
|
|
||||||
mct.selection.on('change', self.handleSelectionChange);
|
|
||||||
});
|
});
|
||||||
|
$remove.on('click', function () {
|
||||||
|
var index = mct.selection.selected()[0].index;
|
||||||
|
if (index !== undefined) {
|
||||||
|
var tasks = self.mutableObject.get('tasks').filter(function (t, i) {
|
||||||
|
return i !== index;
|
||||||
|
});
|
||||||
|
self.mutableObject.set("tasks", tasks);
|
||||||
|
self.mutableObject.set("selected", undefined);
|
||||||
|
mct.selection.clear();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
self.$remove = $remove;
|
||||||
|
self.handleSelectionChange();
|
||||||
|
mct.selection.on('change', self.handleSelectionChange);
|
||||||
};
|
};
|
||||||
|
|
||||||
TodoToolbarView.prototype.handleSelectionChange = function () {
|
TodoToolbarView.prototype.handleSelectionChange = function () {
|
||||||
|
Reference in New Issue
Block a user