mirror of
https://github.com/nasa/openmct.git
synced 2025-06-21 16:49:42 +00:00
Virtual panels working again with refactored code
This commit is contained in:
@ -50,7 +50,7 @@ define(
|
|||||||
((domainObject && domainObject.useCapability('view')) || [])
|
((domainObject && domainObject.useCapability('view')) || [])
|
||||||
.forEach(selectViewIfMatching);
|
.forEach(selectViewIfMatching);
|
||||||
}
|
}
|
||||||
$scope.editMode = domainObject.getDomainObject ? true : false;
|
$scope.editMode = domainObject.hasCapability('editor') ? true : false;
|
||||||
navigatedObject = domainObject;
|
navigatedObject = domainObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
{
|
{
|
||||||
"key": "edit",
|
"key": "edit",
|
||||||
"implementation": "actions/EditAction.js",
|
"implementation": "actions/EditAction.js",
|
||||||
"depends": [ "$location", "navigationService", "$log" ],
|
"depends": [ "$location", "navigationService", "$log", "$q" ],
|
||||||
"description": "Edit this object.",
|
"description": "Edit this object.",
|
||||||
"category": "view-control",
|
"category": "view-control",
|
||||||
"glyph": "p"
|
"glyph": "p"
|
||||||
@ -78,7 +78,7 @@
|
|||||||
"implementation": "actions/CancelAction.js",
|
"implementation": "actions/CancelAction.js",
|
||||||
"name": "Cancel",
|
"name": "Cancel",
|
||||||
"description": "Discard changes made to these objects.",
|
"description": "Discard changes made to these objects.",
|
||||||
"depends": [ "$location", "urlService", "navigationService" ]
|
"depends": ["$injector", "navigationService"]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"policies": [
|
"policies": [
|
||||||
|
@ -33,11 +33,10 @@ define(
|
|||||||
* @memberof platform/commonUI/edit
|
* @memberof platform/commonUI/edit
|
||||||
* @implements {Action}
|
* @implements {Action}
|
||||||
*/
|
*/
|
||||||
function CancelAction($location, urlService, navigationService, context) {
|
function CancelAction($injector, navigationService, context) {
|
||||||
this.domainObject = context.domainObject;
|
this.domainObject = context.domainObject;
|
||||||
this.$location = $location;
|
|
||||||
this.urlService = urlService;
|
|
||||||
this.navigationService = navigationService;
|
this.navigationService = navigationService;
|
||||||
|
this.objectService = $injector.get('objectService');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -48,8 +47,6 @@ define(
|
|||||||
*/
|
*/
|
||||||
CancelAction.prototype.perform = function () {
|
CancelAction.prototype.perform = function () {
|
||||||
var domainObject = this.domainObject,
|
var domainObject = this.domainObject,
|
||||||
$location = this.$location,
|
|
||||||
urlService = this.urlService,
|
|
||||||
self = this;
|
self = this;
|
||||||
|
|
||||||
// Look up the object's "editor.completion" capability;
|
// Look up the object's "editor.completion" capability;
|
||||||
@ -69,11 +66,11 @@ define(
|
|||||||
// Discard the current root view (which will be the editing
|
// Discard the current root view (which will be the editing
|
||||||
// UI, which will have been pushed atop the Browise UI.)
|
// UI, which will have been pushed atop the Browise UI.)
|
||||||
function returnToBrowse() {
|
function returnToBrowse() {
|
||||||
return self.navigationService.setNavigation(self.domainObject.getDomainObject());
|
self.objectService.getObjects([self.domainObject.getId()]).then(function(objects){
|
||||||
/*$location.path($location.path(urlService.urlForLocation(
|
return self.navigationService.setNavigation(objects[self.domainObject.getId()]);
|
||||||
"browse",
|
})
|
||||||
domainObject
|
//return
|
||||||
)));*/
|
// self.navigationService.setNavigation(self.domainObject.getDomainObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
return doCancel(getEditorCapability())
|
return doCancel(getEditorCapability())
|
||||||
|
@ -46,7 +46,7 @@ define(
|
|||||||
* @constructor
|
* @constructor
|
||||||
* @implements {Action}
|
* @implements {Action}
|
||||||
*/
|
*/
|
||||||
function EditAction($location, navigationService, $log, context) {
|
function EditAction($location, navigationService, $log, $q, context) {
|
||||||
var domainObject = (context || {}).domainObject;
|
var domainObject = (context || {}).domainObject;
|
||||||
|
|
||||||
// We cannot enter Edit mode if we have no domain object to
|
// We cannot enter Edit mode if we have no domain object to
|
||||||
@ -65,6 +65,7 @@ define(
|
|||||||
this.domainObject = domainObject;
|
this.domainObject = domainObject;
|
||||||
this.$location = $location;
|
this.$location = $location;
|
||||||
this.navigationService = navigationService;
|
this.navigationService = navigationService;
|
||||||
|
this.$q = $q;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -72,7 +73,7 @@ define(
|
|||||||
*/
|
*/
|
||||||
EditAction.prototype.perform = function () {
|
EditAction.prototype.perform = function () {
|
||||||
if (!this.domainObject.getDomainObject) {
|
if (!this.domainObject.getDomainObject) {
|
||||||
this.navigationService.setNavigation(new EditableDomainObject(this.domainObject));
|
this.navigationService.setNavigation(new EditableDomainObject(this.domainObject, this.$q));
|
||||||
}
|
}
|
||||||
//this.$location.path("/edit");
|
//this.$location.path("/edit");
|
||||||
};
|
};
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
"key": "drop",
|
"key": "drop",
|
||||||
"implementation": "gestures/DropGesture.js",
|
"implementation": "gestures/DropGesture.js",
|
||||||
"depends": [ "dndService", "$q", "navigationService",
|
"depends": [ "dndService", "$q", "navigationService",
|
||||||
"objectService" ]
|
"objectService", "instantiate" ]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "menu",
|
"key": "menu",
|
||||||
|
@ -42,7 +42,7 @@ define(
|
|||||||
* @param {DomainObject} domainObject the domain object whose
|
* @param {DomainObject} domainObject the domain object whose
|
||||||
* composition should be modified as a result of the drop.
|
* composition should be modified as a result of the drop.
|
||||||
*/
|
*/
|
||||||
function DropGesture(dndService, $q, navigationService, objectService, element, domainObject) {
|
function DropGesture(dndService, $q, navigationService, objectService, instantiate, element, domainObject) {
|
||||||
var actionCapability = domainObject.getCapability('action'),
|
var actionCapability = domainObject.getCapability('action'),
|
||||||
editableDomainObject,
|
editableDomainObject,
|
||||||
action; // Action for the drop, when it occurs
|
action; // Action for the drop, when it occurs
|
||||||
@ -73,15 +73,15 @@ define(
|
|||||||
function shouldCreateVirtualPanel(domainObject){
|
function shouldCreateVirtualPanel(domainObject){
|
||||||
//
|
//
|
||||||
return domainObject.useCapability('view').filter(function (view){
|
return domainObject.useCapability('view').filter(function (view){
|
||||||
return view.key==='plot' && domainObject.getModel().type!== 'telemetry.panel'
|
return view.key==='plot' && domainObject.getModel().type!== 'telemetry.panel'
|
||||||
}).length > 0;
|
}).length > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
function dragOver(e) {
|
function dragOver(e) {
|
||||||
//Refresh domain object on each dragOver to catch external
|
//Refresh domain object on each dragOver to catch external
|
||||||
// updates to the model
|
// updates to the model
|
||||||
//Don't use EditableDomainObject for folders, allow immediate persistence
|
//Don't use EditableDomainObject for folders, allow immediate persistence
|
||||||
editableDomainObject = domainObject.getDomainObject || domainObject.getModel().type==='folder' ? domainObject : new EditableDomainObject(domainObject, $q);
|
editableDomainObject = domainObject.hasCapability('editor') || domainObject.getModel().type==='folder' ? domainObject : new EditableDomainObject(domainObject, $q);
|
||||||
actionCapability = editableDomainObject.getCapability('action');
|
actionCapability = editableDomainObject.getCapability('action');
|
||||||
|
|
||||||
var event = (e || {}).originalEvent || e,
|
var event = (e || {}).originalEvent || e,
|
||||||
@ -117,7 +117,7 @@ define(
|
|||||||
id = uuid();
|
id = uuid();
|
||||||
//ObjectService is wrapped by a decorator which is obscuring
|
//ObjectService is wrapped by a decorator which is obscuring
|
||||||
// the newObject method.
|
// the newObject method.
|
||||||
return objectService.objectService.newObject(id, model);
|
return instantiate(model, id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user