197 lines
4.3 KiB
SCSS
197 lines
4.3 KiB
SCSS
$windowBG: #C0C0C0;
|
|
$highlight: #0000BF;
|
|
$disabled: #808080;
|
|
|
|
$w95Font: 'MS PGothic', Verdana, Arial, Helvetica, sans-serif;
|
|
$imageScale: 1;
|
|
|
|
@mixin border95($thickness) {
|
|
border: (3px * $thickness) solid black;
|
|
border-image-source: url('./../images/95/'+($thickness * $imageScale)+'x/95window.png');
|
|
border-image-slice: 3 * $thickness;
|
|
}
|
|
|
|
@mixin button95($thickness) {
|
|
border: (2px * $thickness) solid black;
|
|
border-image-source: url('./../images/95/'+($thickness * $imageScale)+'x/95button.png');
|
|
border-image-slice: 2 * $thickness;
|
|
display: inline-block;
|
|
color: black;
|
|
background-image: url('./../images/95/'+($thickness * $imageScale)+'x/95button_icons.png');
|
|
background-color: $windowBG;
|
|
background-position: 0px 0px;
|
|
background-size: 48px*$thickness 20px*$thickness;
|
|
|
|
&:active {
|
|
border-image-source: url('./../images/95/'+($thickness * $imageScale)+'x/95button_inverted.png');
|
|
}
|
|
|
|
&.disabled {
|
|
background-position-y: 10px*$thickness;
|
|
&:active {
|
|
border-image-source: url('./../images/95/'+($thickness * $imageScale)+'x/95button.png');
|
|
}
|
|
}
|
|
}
|
|
|
|
@mixin frame95($thickness) {
|
|
border: (2px * $thickness) solid black;
|
|
border-image-source: url('./../images/95/'+($thickness * $imageScale)+'x/95frame.png');
|
|
border-image-slice: 2 * $thickness;
|
|
}
|
|
|
|
@mixin window95($scale) {
|
|
@extend %no-select;
|
|
@include border95($scale);
|
|
background: $windowBG;
|
|
font-family: $w95Font;
|
|
font-size: 12px*$scale;
|
|
display: inline-block;
|
|
|
|
> .load_me_stuff {
|
|
position: fixed;
|
|
left: -1000vmax;
|
|
top: -1000vmax;
|
|
border-image-source: url('./../images/95/'+($scale * $imageScale)+'x/95button_inverted.png');
|
|
}
|
|
|
|
> .title {
|
|
width: 100%;
|
|
color: white;
|
|
background: #000080;
|
|
padding: 2px * $scale;
|
|
font-weight: bold;
|
|
margin-bottom: 1px * $scale;
|
|
|
|
> .icon {
|
|
|
|
}
|
|
|
|
> .buttons {
|
|
height: 100%;
|
|
float: right;
|
|
font-size: 0;
|
|
|
|
> .btn {
|
|
@include button95($scale);
|
|
width: 16px*$scale;
|
|
height: 14px*$scale;
|
|
font-size: 12px*$scale;
|
|
|
|
&.close {
|
|
margin-left: 2px*$scale;
|
|
background-position-x: 0px*$scale;
|
|
}
|
|
|
|
&.help {
|
|
background-position-x: 36px*$scale;
|
|
}
|
|
|
|
&.minimize {
|
|
background-position-x: 24px*$scale;
|
|
}
|
|
|
|
&.maximize {
|
|
background-position-x: 12px*$scale;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
> .context-menu {
|
|
width: 100%;
|
|
overflow: visible;
|
|
|
|
> .btn {
|
|
padding: (1px*$scale) (5px*$scale);
|
|
border: 1px*$scale solid transparent;
|
|
display: inline-block;
|
|
position: relative;
|
|
|
|
&::first-letter {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
&:hover {
|
|
border-bottom-color: #868686;
|
|
border-right-color: #868686;
|
|
border-top-color: #FFFFFF;
|
|
border-left-color: #FFFFFF;
|
|
}
|
|
|
|
&.active {
|
|
border-right-color: #FFFFFF;
|
|
border-bottom-color: #FFFFFF;
|
|
border-top-color: #868686;
|
|
border-left-color: #868686;
|
|
|
|
> .menu {
|
|
display: block;
|
|
}
|
|
}
|
|
|
|
&.disabled {
|
|
color: $disabled;
|
|
&:hover,.active {
|
|
border-right-color: transparent;
|
|
border-bottom-color: transparent;
|
|
border-top-color: transparent;
|
|
border-left-color: transparent;
|
|
}
|
|
}
|
|
|
|
> .menu {
|
|
@include border95($scale);
|
|
border-top-width: 2px*$scale;
|
|
position: absolute;
|
|
display: none;
|
|
background: $windowBG;
|
|
left: -1px*$scale;
|
|
margin-top: 2px*$scale;
|
|
width: auto;
|
|
|
|
> .menu-option {
|
|
padding-left: 22px*$scale;
|
|
padding-right: 22px*$scale;
|
|
padding-bottom: 3px*$scale;
|
|
padding-top: 1px*$scale;
|
|
white-space: nowrap;
|
|
|
|
&:hover {
|
|
background: $highlight;
|
|
color: white;
|
|
}
|
|
|
|
&:first-child {font-weight: bold;}
|
|
|
|
&::first-letter {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
&.disabled {
|
|
color: $disabled;
|
|
&:hover {background: inherit;color: $disabled;}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
&.inactive {
|
|
> .title {
|
|
background-color: $disabled;
|
|
}
|
|
}
|
|
|
|
> .textarea {
|
|
@include frame95($scale);
|
|
background: white;
|
|
color: black;
|
|
cursor: text;
|
|
}
|
|
}
|
|
|
|
.window {
|
|
@include window95(2);
|
|
}
|