Files
openmct/platform/commonUI/general/res/sass/controls/_buttons.scss
Charles Hacskaylo 536d5616d4 [Frontend] Manual re-do of collapse/expand panes
open #90
Major work on new .mini-tab elements, used
as controls to expand/collapse panes;
Cleaned up splitter hover behavior;
Changed mixin controlGrippy to not be tied
to :before;
2015-10-22 18:28:25 -07:00

200 lines
4.7 KiB
SCSS

/*****************************************************************************
* 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.
*****************************************************************************/
$baseRatio: 1.5;
$pad: $interiorMargin * $baseRatio;
.s-btn,
.s-icon-btn {
@include user-select(none);
cursor: pointer;
text-decoration: none;
height: $btnStdH;
line-height: $btnStdH;
}
.s-btn {
@include box-sizing(border-box);
padding: 0 $pad;
font-size: 0.7rem;
.icon {
font-size: 0.8rem;
color: $colorKey;
}
.title-label {
vertical-align: top;
}
&.lg {
font-size: 1rem;
}
&.sm {
padding: 0 $pad / $baseRatio;
}
&.vsm {
padding: 0 ($pad / $baseRatio) / 2;
}
&.major {
$bg: $colorBtnMajorBg;
$hc: lighten($bg, 10%);
@include btnSubtle($bg, $hc, $colorBtnMajorFg, $colorBtnMajorFg);
}
&:not(.major) {
// bg, bgHov, fg, ic
@include btnSubtle($colorBtnBg, $colorKey, $colorBtnFg, $colorBtnIcon);
}
&.pause-play {
}
&.pause-play {
.icon:before {
content: "\0000F1";
}
&.paused {
@include btnSubtle($colorPausedBg, pushBack($colorPausedBg, 10%), $colorPausedFg, $colorPausedFg);
.icon {
@include pulse(1000ms);
:before {
content: "\0000EF";
}
}
}
}
&.show-thumbs {
.icon:before {
content: "\000039";
}
}
}
.s-icon-btn {
@extend .ui-symbol;
color: $colorBtnIcon;
&:hover {
color: lighten($colorBtnIcon, $ltGamma);
}
}
.mini-tab {
// Meant to be used as pane hide/show control elements in concert with mct-splitter
@extend .ui-symbol;
@include trans-prop-nice(left, 150ms);
//@include test(green);
$iconD: 12px;
$arwD: 7px;
$c: pullForward($colorBodyBg, 15%);
color: $c;
cursor: pointer;
display: block;
position: absolute;
font-size: $iconD;
line-height: $iconD;
height: $iconD; width: $iconD;
&:hover {
color: pullForward($c, 20%);
&:after {
color: $colorKey;
}
}
&:before,
&:after {
@include trans-prop-nice(color, 200ms);
display: block;
position: absolute;
}
&:before {
// Always the arrow icon
@include trans-prop-nice(left, 150ms);
//@include test(green);
font-size: $arwD;
height: 100%; width: $arwD;
}
&:after {
// Representative icon
//@include test(red);
width: 100%;
height: 100%;
}
&.anchor-left {
// < []
$xpos: (1px + $arwD) * -1;
&:before {
content:'\3c';
left: $xpos;
}
&:hover:before { left: $xpos - 3; }
}
&.anchor-right {
// [] >
$xpos: $iconD + 2px;
&:before {
content:'\3e';
left: $xpos;
}
&:hover:before { left: $xpos + 3; }
}
}
.l-btn-set {
// Buttons that have a very tight conceptual grouping - no internal space between them.
// Structure: .btn-set > mct-representation class=first|last > .s-btn
//@include test(red);
font-size: 0; // Remove space between s-btn elements due to white space in markup
.s-btn {
@include border-radius(0);
margin-left: 1px;
}
.first {
.s-btn {
@include border-left-radius($controlCr);
margin-left: 0;
}
}
.last {
.s-btn {
@include border-right-radius($controlCr);
}
}
}
.paused {
&:not(.s-btn) {
border-color: $colorPausedBg !important;
color: $colorPausedBg !important;
}
}