mirror of
https://github.com/nasa/openmct.git
synced 2025-06-16 06:08:11 +00:00
Markup / scss refactor WIP
- Add collapse buttons to splitter;
This commit is contained in:
@ -239,6 +239,7 @@ $splitterDSm: 10px; // Smaller splitter, used inside elements like a Timeline vi
|
|||||||
$splitterHandleD: 4px;
|
$splitterHandleD: 4px;
|
||||||
$colorSplitterBaseBg: $colorBodyBg;
|
$colorSplitterBaseBg: $colorBodyBg;
|
||||||
$colorSplitterBg: pullForward($colorSplitterBaseBg, 15%);
|
$colorSplitterBg: pullForward($colorSplitterBaseBg, 15%);
|
||||||
|
$colorSplitterFg: $colorBodyBg;
|
||||||
$splitterShdw: none;
|
$splitterShdw: none;
|
||||||
$splitterEndCr: none;
|
$splitterEndCr: none;
|
||||||
$colorSplitterHover: pullForward($colorSplitterBg, $hoverRatioPercent * 2);
|
$colorSplitterHover: pullForward($colorSplitterBg, $hoverRatioPercent * 2);
|
||||||
@ -274,3 +275,7 @@ $colorAboutLink: #84b3ff;
|
|||||||
// Loading
|
// Loading
|
||||||
$colorLoadingFg: $colorAlt1;
|
$colorLoadingFg: $colorAlt1;
|
||||||
$colorLoadingBg: rgba($colorLoadingFg, 0.1);
|
$colorLoadingBg: rgba($colorLoadingFg, 0.1);
|
||||||
|
|
||||||
|
// Transitions
|
||||||
|
$transIn: all 50ms ease-in;
|
||||||
|
$transOut: all 250ms ease-out;
|
||||||
|
@ -80,4 +80,8 @@
|
|||||||
@include ellipsize();
|
@include ellipsize();
|
||||||
direction: rtl;
|
direction: rtl;
|
||||||
unicode-bidi:bidi-override;
|
unicode-bidi:bidi-override;
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin test($c: #ffcc00, $a: 0.2) {
|
||||||
|
background-color: rgba($c, $a) !important;
|
||||||
}
|
}
|
@ -1,5 +1,5 @@
|
|||||||
@import "vendor/normalize.min.css";
|
@import "vendor/normalize.min.css";
|
||||||
@import "constants";
|
@import "constants";
|
||||||
@import "constants-snow";
|
@import "constants-snow";
|
||||||
@import "global";
|
@import "glyphs";
|
||||||
@import "glyphs";
|
@import "global";
|
@ -1,28 +1,45 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="c-splitter" :class="{
|
<div class="c-splitter" :class="{
|
||||||
'c-splitter-vertical' : align === 'vertical',
|
'c-splitter-vertical' : align === 'vertical',
|
||||||
'c-splitter-horizontal' : align === 'horizontal'
|
'c-splitter-horizontal' : align === 'horizontal',
|
||||||
}"></div>
|
'c-splitter-collapse-left' : collapse === 'to-left',
|
||||||
|
'c-splitter-collapse-right' : collapse === 'to-right',
|
||||||
|
}">
|
||||||
|
<a class="c-splitter__btn"></a>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "~styles/constants";
|
@import "~styles/constants";
|
||||||
@import "~styles/constants-snow";
|
@import "~styles/constants-snow";
|
||||||
|
@import "~styles/mixins";
|
||||||
|
@import "~styles/glyphs";
|
||||||
|
|
||||||
|
$c: #06f;
|
||||||
|
$size: $splitterHandleD;
|
||||||
|
$margin: 0px;
|
||||||
|
$hitMargin: 4px;
|
||||||
|
|
||||||
|
|
||||||
.c-splitter {
|
.c-splitter {
|
||||||
$c: #06f;
|
|
||||||
$size: $splitterHandleD;
|
|
||||||
$margin: 0px;
|
|
||||||
$hitMargin: 7px;
|
|
||||||
|
|
||||||
background: $colorSplitterBg;
|
background: $colorSplitterBg;
|
||||||
|
transition: $transOut;
|
||||||
|
|
||||||
&:before {
|
&:before {
|
||||||
// Bigger hit area
|
// Bigger hit area
|
||||||
|
//@include test();
|
||||||
content: '';
|
content: '';
|
||||||
display: block;
|
display: block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 2;
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active, &:hover {
|
||||||
|
transition: $transIn;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
background: $colorSplitterActive;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@ -34,7 +51,10 @@
|
|||||||
width: $size;
|
width: $size;
|
||||||
margin: 0 $margin;
|
margin: 0 $margin;
|
||||||
&:before {
|
&:before {
|
||||||
top: 0; right: $hitMargin * -1; bottom: 0; left: $hitMargin * -1;
|
top: 0;
|
||||||
|
right: $hitMargin * -1;
|
||||||
|
bottom: 0;
|
||||||
|
left: $hitMargin * -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,16 +63,73 @@
|
|||||||
height: $size;
|
height: $size;
|
||||||
margin: $margin 0;
|
margin: $margin 0;
|
||||||
&:before {
|
&:before {
|
||||||
top: $hitMargin * -1; right: 0; bottom: $hitMargin * -1; left: 0;
|
top: $hitMargin * -1;
|
||||||
|
right: 0;
|
||||||
|
bottom: $hitMargin * -1;
|
||||||
|
left: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.c-splitter__btn {
|
||||||
|
// Collapse button
|
||||||
|
background: $colorSplitterBg;
|
||||||
|
display: none; // Only display if splitter is collapsible, see below
|
||||||
|
width: $size * 3;
|
||||||
|
height: 40px;
|
||||||
|
transition: $transOut;
|
||||||
|
|
||||||
|
&:active, &:hover {
|
||||||
|
transition: $transIn;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: $colorSplitterHover;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
background: $colorSplitterActive;
|
||||||
|
}
|
||||||
|
|
||||||
|
[class*="collapse"] & {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 3;
|
||||||
|
&:before {
|
||||||
|
color: $colorSplitterFg;
|
||||||
|
display: block;
|
||||||
|
font-size: 0.8em;
|
||||||
|
font-family: symbolsfont;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[class*="collapse-left"] & {
|
||||||
|
border-bottom-left-radius: $controlCr;
|
||||||
|
right: 0;
|
||||||
|
&:before {
|
||||||
|
content: $glyph-icon-arrow-left;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[class*="collapse-right"] & {
|
||||||
|
border-bottom-right-radius: $controlCr;
|
||||||
|
left: 0;
|
||||||
|
&:before {
|
||||||
|
content: $glyph-icon-arrow-right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
align: String
|
align: String,
|
||||||
|
collapse: String
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
@ -10,12 +10,12 @@
|
|||||||
<MctTree ref="shell-tree"></MctTree>
|
<MctTree ref="shell-tree"></MctTree>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<splitter align="vertical" target="shell-pane-tree"></splitter>
|
<splitter align="vertical" target="shell-pane-tree" collapse="to-left"></splitter>
|
||||||
<div class="l-pane l-shell__pane-main" ref="shell-pane-main">
|
<div class="l-pane l-shell__pane-main" ref="shell-pane-main">
|
||||||
<div class="l-shell__object-view">c-object-view</div>
|
<div class="l-shell__object-view">c-object-view</div>
|
||||||
<div class="l-shell__time-conductor">c-time-conductor</div>
|
<div class="l-shell__time-conductor">c-time-conductor</div>
|
||||||
</div>
|
</div>
|
||||||
<splitter align="vertical" target="shell-pane-main"></splitter>
|
<splitter align="vertical" target="shell-pane-main" collapse="to-right"></splitter>
|
||||||
<div class="l-pane l-shell__pane-inspector">
|
<div class="l-pane l-shell__pane-inspector">
|
||||||
<MctInspector ref="shell-inspector"></MctInspector>
|
<MctInspector ref="shell-inspector"></MctInspector>
|
||||||
</div>
|
</div>
|
||||||
|
Reference in New Issue
Block a user