[Plots] #638 New plot display options
This commit is contained in:
@@ -36,6 +36,7 @@ define([
|
||||
"./src/creation/CreateActionProvider",
|
||||
"./src/creation/CreationService",
|
||||
"./src/windowing/WindowTitler",
|
||||
"./src/TypeRegionDecorator",
|
||||
'legacyRegistry'
|
||||
], function (
|
||||
BrowseController,
|
||||
@@ -52,6 +53,7 @@ define([
|
||||
CreateActionProvider,
|
||||
CreationService,
|
||||
WindowTitler,
|
||||
TypeRegionDecorator,
|
||||
legacyRegistry
|
||||
) {
|
||||
"use strict";
|
||||
@@ -192,6 +194,14 @@ define([
|
||||
"context"
|
||||
],
|
||||
"templateUrl": "templates/back-arrow.html"
|
||||
},
|
||||
{
|
||||
"key": "object-properties",
|
||||
"templateUrl": "templates/browse/object-properties.html"
|
||||
},
|
||||
{
|
||||
"key": "inspector-region",
|
||||
"templateUrl": "templates/browse/inspector-region.html"
|
||||
}
|
||||
],
|
||||
"services": [
|
||||
@@ -280,7 +290,12 @@ define([
|
||||
"$q",
|
||||
"$log"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"provides": "typeService",
|
||||
"type": "decorator",
|
||||
"implementation": TypeRegionDecorator
|
||||
},
|
||||
],
|
||||
"runs": [
|
||||
{
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
<!--
|
||||
Open MCT Web, Copyright (c) 2014-2015, United States Government
|
||||
as represented by the Administrator of the National Aeronautics and Space
|
||||
Administration. All rights reserved.
|
||||
|
||||
Open MCT Web is licensed under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0.
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
License for the specific language governing permissions and limitations
|
||||
under the License.
|
||||
|
||||
Open MCT Web includes source code licensed under additional open source
|
||||
licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||||
this source code distribution or the Licensing information page available
|
||||
at runtime from the About dialog for additional information.
|
||||
-->
|
||||
<div ng-controller="RegionController as regionController">
|
||||
<div ng-repeat="part in regions.inspector.parts">
|
||||
<mct-representation
|
||||
key="part.content.key"
|
||||
mct-object="domainObject"
|
||||
ng-model="ngModel">
|
||||
</mct-representation>
|
||||
</div>
|
||||
</div><!--/ PaneController -->
|
||||
@@ -0,0 +1,61 @@
|
||||
<!--
|
||||
Open MCT Web, Copyright (c) 2014-2015, United States Government
|
||||
as represented by the Administrator of the National Aeronautics and Space
|
||||
Administration. All rights reserved.
|
||||
|
||||
Open MCT Web is licensed under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0.
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
License for the specific language governing permissions and limitations
|
||||
under the License.
|
||||
|
||||
Open MCT Web includes source code licensed under additional open source
|
||||
licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||||
this source code distribution or the Licensing information page available
|
||||
at runtime from the About dialog for additional information.
|
||||
-->
|
||||
<div ng-controller="ObjectInspectorController as controller">
|
||||
<div class="pane-header flex-elem">Inspection</div>
|
||||
<ul class="flex-elem grows vscroll">
|
||||
<li>
|
||||
<em>Properties</em>
|
||||
<div class="inspector-properties"
|
||||
ng-repeat="data in metadata"
|
||||
ng-class="{ first:$index === 0 }">
|
||||
<div class="label">{{ data.name }}</div>
|
||||
<div class="value">{{ data.value }}</div>
|
||||
</div>
|
||||
</li>
|
||||
<li ng-if="contextutalParents.length > 0">
|
||||
<em title="The location of this linked object.">Location</em>
|
||||
<span class="inspector-location"
|
||||
ng-repeat="parent in contextutalParents"
|
||||
ng-class="{ last:($index + 1) === contextualParents.length }">
|
||||
<mct-representation key="'label'"
|
||||
mct-object="parent"
|
||||
ng-model="ngModel"
|
||||
ng-click="ngModel.selectedObject = parent"
|
||||
class="location-item">
|
||||
</mct-representation>
|
||||
</span>
|
||||
</li>
|
||||
<li ng-if="primaryParents.length > 0">
|
||||
<em title="The location of the original object that this was linked from.">Original Location</em>
|
||||
<span class="inspector-location"
|
||||
ng-repeat="parent in primaryParents"
|
||||
ng-class="{ last:($index + 1) === primaryParents.length }">
|
||||
<mct-representation key="'label'"
|
||||
mct-object="parent"
|
||||
ng-model="ngModel"
|
||||
ng-click="ngModel.selectedObject = parent"
|
||||
class="location-item">
|
||||
</mct-representation>
|
||||
</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!--/ holder-inspector -->
|
||||
69
platform/commonUI/browse/src/InspectorRegion.js
Normal file
69
platform/commonUI/browse/src/InspectorRegion.js
Normal file
@@ -0,0 +1,69 @@
|
||||
/*****************************************************************************
|
||||
* Open MCT Web, Copyright (c) 2014-2015, United States Government
|
||||
* as represented by the Administrator of the National Aeronautics and Space
|
||||
* Administration. All rights reserved.
|
||||
*
|
||||
* Open MCT Web is licensed under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
* http://www.apache.org/licenses/LICENSE-2.0.
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
* License for the specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
* Open MCT Web includes source code licensed under additional open source
|
||||
* licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||||
* this source code distribution or the Licensing information page available
|
||||
* at runtime from the About dialog for additional information.
|
||||
*****************************************************************************/
|
||||
/*global define,window*/
|
||||
|
||||
define(
|
||||
[
|
||||
'../../regions/src/Region'
|
||||
],
|
||||
function (Region) {
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Defines the a default Inspector region. Captured in a class to
|
||||
* allow for modular extension and customization of regions based on
|
||||
* the typical case.
|
||||
* @memberOf platform/commonUI/regions
|
||||
* @constructor
|
||||
*/
|
||||
function InspectorRegion() {
|
||||
Region.call(this);
|
||||
|
||||
this.buildRegion();
|
||||
}
|
||||
|
||||
InspectorRegion.prototype = Object.create(Region.prototype);
|
||||
InspectorRegion.prototype.constructor = Region;
|
||||
|
||||
/**
|
||||
* @private
|
||||
*/
|
||||
InspectorRegion.prototype.buildRegion = function() {
|
||||
var metadataPart = {
|
||||
name: 'properties-location',
|
||||
title: 'Properties and Location',
|
||||
// Which modes should the region part be visible in? If
|
||||
// nothing provided here, then assumed that part is visible
|
||||
// in both. The visibility or otherwise of a region part
|
||||
// should be decided by a policy. In this case, 'modes' is a
|
||||
// shortcut that is used by the EditableRegionPolicy.
|
||||
modes: ['browse', 'edit'],
|
||||
content: {
|
||||
key: 'object-properties'
|
||||
}
|
||||
};
|
||||
this.addPart(metadataPart, 0);
|
||||
}
|
||||
|
||||
return InspectorRegion;
|
||||
}
|
||||
);
|
||||
89
platform/commonUI/browse/src/TypeRegionDecorator.js
Normal file
89
platform/commonUI/browse/src/TypeRegionDecorator.js
Normal file
@@ -0,0 +1,89 @@
|
||||
/*****************************************************************************
|
||||
* Open MCT Web, Copyright (c) 2014-2015, United States Government
|
||||
* as represented by the Administrator of the National Aeronautics and Space
|
||||
* Administration. All rights reserved.
|
||||
*
|
||||
* Open MCT Web is licensed under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
* http://www.apache.org/licenses/LICENSE-2.0.
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
* License for the specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
* Open MCT Web includes source code licensed under additional open source
|
||||
* licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||||
* this source code distribution or the Licensing information page available
|
||||
* at runtime from the About dialog for additional information.
|
||||
*****************************************************************************/
|
||||
/*global define,window*/
|
||||
|
||||
define(
|
||||
[
|
||||
'./InspectorRegion'
|
||||
],
|
||||
function (InspectorRegion) {
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Adds default screen regions to Type definitions. Screen regions
|
||||
* are sections of the browse and edit view of an object that can be
|
||||
* customized on a per-type basis. Within {@link Region}s are {@link RegionPart}s.
|
||||
* Policies can be used to decide which parts are visible or not based on object state.
|
||||
* @memberOf platform/commonUI/regions
|
||||
* @see {@link Region}, {@link RegionPart}, {@link EditableRegionPolicy}
|
||||
* @constructor
|
||||
*/
|
||||
function TypeRegionDecorator(typeService) {
|
||||
this.typeService = typeService
|
||||
}
|
||||
|
||||
/**
|
||||
* Read Type bundle definition, and add default region definitions
|
||||
* if none provided.
|
||||
* @private
|
||||
* @param type
|
||||
* @returns {*}
|
||||
*/
|
||||
TypeRegionDecorator.prototype.decorateType = function (type) {
|
||||
var regions = type.getDefinition().regions || {};
|
||||
|
||||
regions.inspector = regions.inspector || new InspectorRegion();
|
||||
|
||||
type.getDefinition().regions = regions;
|
||||
|
||||
return type;
|
||||
};
|
||||
|
||||
/**
|
||||
* Override the provider functions in order to return decorated Type
|
||||
* objects.
|
||||
* @returns {Array|*}
|
||||
*/
|
||||
TypeRegionDecorator.prototype.listTypes = function() {
|
||||
var self = this,
|
||||
types = this.typeService.listTypes();
|
||||
|
||||
return types.map(function (type) {
|
||||
return self.decorateType(type);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Override the provider function in order to return decorated Type
|
||||
* objects.
|
||||
* @param key
|
||||
*/
|
||||
TypeRegionDecorator.prototype.getType = function(key) {
|
||||
var self = this,
|
||||
type = this.typeService.getType(key);
|
||||
|
||||
return self.decorateType(type);
|
||||
};
|
||||
|
||||
return TypeRegionDecorator;
|
||||
}
|
||||
);
|
||||
Reference in New Issue
Block a user