 8b275b206b
			
		
	
	8b275b206b
	
	
	
		
			
			* add a function to change selection of deleted item in remove action, and update flexlayouts * resize when item is deleted * fix for resize handles not showing after object is dropped * fix isAlias logic for folder views * remove uneccesary console log * move selection logic to flexible layouts * only update inspector views if selection has changed to a new context * force a digest in the plot options controller once the series are added * conditionally show snapshot button only if notebook is installed
		
			
				
	
	
		
			91 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
| /*****************************************************************************
 | |
|  * Open MCT, Copyright (c) 2014-2018, 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.
 | |
|  *****************************************************************************/
 | |
| 
 | |
| <template>
 | |
|     <div class="c-fl-frame__resize-handle"
 | |
|          :class="[orientation]"
 | |
|          v-show="isEditing && !isDragging"
 | |
|          @mousedown="mousedown">
 | |
|     </div>
 | |
| </template>
 | |
| 
 | |
| <script>
 | |
| export default {
 | |
|     props: ['orientation', 'index', 'isEditing'],
 | |
|     data() {
 | |
|         return {
 | |
|             initialPos: 0,
 | |
|             isDragging: false,
 | |
|         }
 | |
|     },
 | |
|     methods: {
 | |
|         mousedown(event) {
 | |
|             event.preventDefault();
 | |
| 
 | |
|             this.$emit('init-move', this.index);
 | |
| 
 | |
|             document.body.addEventListener('mousemove', this.mousemove);
 | |
|             document.body.addEventListener('mouseup', this.mouseup);
 | |
|         },
 | |
|         mousemove(event) {
 | |
|             event.preventDefault();
 | |
| 
 | |
|             let elSize, mousePos, delta;
 | |
| 
 | |
|             if (this.orientation === 'horizontal') {
 | |
|                 elSize = this.$el.getBoundingClientRect().x;
 | |
|                 mousePos = event.clientX;
 | |
|             } else {
 | |
|                 elSize = this.$el.getBoundingClientRect().y;
 | |
|                 mousePos = event.clientY;
 | |
|             }
 | |
| 
 | |
|             delta = mousePos - elSize;
 | |
| 
 | |
|             this.$emit('move', this.index, delta, event);
 | |
|         },
 | |
|         mouseup(event) {
 | |
|             this.$emit('end-move', event);
 | |
| 
 | |
|             document.body.removeEventListener('mousemove', this.mousemove);
 | |
|             document.body.removeEventListener('mouseup', this.mouseup);
 | |
|         },
 | |
|         setDragging(event) {
 | |
|             this.isDragging = true;
 | |
|         },
 | |
|         unsetDragging(event) {
 | |
|             this.isDragging = false;
 | |
|         }
 | |
|     },
 | |
|     mounted() {
 | |
|         document.addEventListener('dragstart', this.setDragging);
 | |
|         document.addEventListener('dragend', this.unsetDragging);
 | |
|         document.addEventListener('drop', this.unsetDragging);
 | |
|     },
 | |
|     destroyed() {
 | |
|         document.removeEventListener('dragstart', this.setDragging);
 | |
|         document.removeEventListener('dragend', this.unsetDragging);
 | |
|         document.removeEventListener('drop', this.unsetDragging);
 | |
|     }
 | |
| }
 | |
| </script>
 |