mirror of
https://github.com/nasa/openmct.git
synced 2024-12-22 22:42:24 +00:00
cecd708dd1
Added ability to show/hide object frames via a toggle button in the edit toolbar. All objects have frames by default except for ‘hyperlinks’. Also, implemented object selection in the layout and added tests for new features. Fixes #1658.
80 lines
3.7 KiB
HTML
80 lines
3.7 KiB
HTML
<!--
|
|
Open MCT, Copyright (c) 2014-2017, United States Government
|
|
as represented by the Administrator of the National Aeronautics and Space
|
|
Administration. All rights reserved.
|
|
|
|
Open MCT 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 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 class="abs l-layout"
|
|
ng-controller="LayoutController as controller"
|
|
ng-click="controller.clearSelection()">
|
|
|
|
<!-- Background grid -->
|
|
<div class="l-grid-holder" ng-click="controller.clearSelection()">
|
|
<div class="l-grid l-grid-x"
|
|
ng-if="!controller.getGridSize()[0] < 3"
|
|
ng-style="{ 'background-size': controller.getGridSize() [0] + 'px 100%' }"></div>
|
|
<div class="l-grid l-grid-y"
|
|
ng-if="!controller.getGridSize()[1] < 3"
|
|
ng-style="{ 'background-size': '100% ' + controller.getGridSize() [1] + 'px' }"></div>
|
|
</div>
|
|
|
|
<div class='abs frame t-frame-outer child-frame panel s-selectable s-moveable s-hover-border'
|
|
ng-class="{ 'no-frame': !controller.hasFrame(childObject), 's-selected':controller.selected(childObject) }"
|
|
ng-repeat="childObject in composition"
|
|
ng-click="controller.select($event, childObject.getId())"
|
|
ng-style="controller.getFrameStyle(childObject.getId())">
|
|
|
|
<mct-representation key="'frame'"
|
|
class="t-rep-frame holder contents abs"
|
|
mct-object="childObject">
|
|
</mct-representation>
|
|
<!-- Drag handles -->
|
|
<span class="abs t-edit-handle-holder s-hover-border" ng-if="controller.selected(childObject)">
|
|
<span class="edit-handle edit-move"
|
|
mct-drag-down="controller.startDrag(childObject.getId(), [1,1], [0,0])"
|
|
mct-drag="controller.continueDrag(delta)"
|
|
mct-drag-up="controller.endDrag()">
|
|
</span>
|
|
|
|
<span class="edit-corner edit-resize-nw"
|
|
mct-drag-down="controller.startDrag(childObject.getId(), [1,1], [-1,-1])"
|
|
mct-drag="controller.continueDrag(delta)"
|
|
mct-drag-up="controller.endDrag()">
|
|
</span>
|
|
<span class="edit-corner edit-resize-ne"
|
|
mct-drag-down="controller.startDrag(childObject.getId(), [0,1], [1,-1])"
|
|
mct-drag="controller.continueDrag(delta)"
|
|
mct-drag-up="controller.endDrag()">
|
|
</span>
|
|
<span class="edit-corner edit-resize-sw"
|
|
mct-drag-down="controller.startDrag(childObject.getId(), [1,0], [-1,1])"
|
|
mct-drag="controller.continueDrag(delta)"
|
|
mct-drag-up="controller.endDrag()">
|
|
</span>
|
|
<span class="edit-corner edit-resize-se"
|
|
mct-drag-down="controller.startDrag(childObject.getId(), [0,0], [1,1])"
|
|
mct-drag="controller.continueDrag(delta)"
|
|
mct-drag-up="controller.endDrag()">
|
|
</span>
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</div>
|