@mixin reindeer-select($primaryStyleName : v-filterselect) { $select-button-width : 25px; $select-button-negative-width : -25px; .#{$primaryStyleName} { height: 24px; background-repeat: no-repeat; background-image: url(img/left.png); /** sprite-ref: verticals; sprite-margin-bottom: 1px */ padding-left: 2px; padding-right: $select-button-width; /* Space for the button */ } &.v-app .#{$primaryStyleName}-input, .v-window .#{$primaryStyleName}-input, .v-popupview-popup .#{$primaryStyleName}-input { background: transparent repeat-x; background-image: url(img/center.png); /** sprite-ref: verticals; sprite-alignment: repeat; sprite-margin-bottom: 1px */ border: none; height: 24px; } /* More specific selector to override padding */ &.v-app input.#{$primaryStyleName}-input, .v-window input.#{$primaryStyleName}-input, .v-popupview-popup input.#{$primaryStyleName}-input { padding: 4px 0 4px 2px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .#{$primaryStyleName}-prompt .#{$primaryStyleName}-input { font-style: normal; } .#{$primaryStyleName}-input:focus { outline: none; } .#{$primaryStyleName}-focus { background-image: url(img/left-focus.png); /** sprite-ref: verticals; sprite-margin-bottom: 1px */ } .#{$primaryStyleName}-focus .#{$primaryStyleName}-input { background-image: url(img/center-focus.png); /** sprite-ref: verticals; sprite-alignment: repeat */ } .#{$primaryStyleName}-button { overflow: hidden; width: $select-button-width; height: 24px; background-position: 0 0; background-image: url(img/right.png); /** sprite-ref: verticals ; sprite-margin-bottom: 1px */ cursor: default; margin-right: $select-button-negative-width; } .#{$primaryStyleName}-button:hover { background-image: url(img/right-hover.png); /** sprite-ref: verticals */ } .#{$primaryStyleName}-button:active { background-image: url(img/right-pressed.png); /** sprite-ref: verticals */ } .#{$primaryStyleName}-focus .#{$primaryStyleName}-button { background-image: url(img/right-focus.png); /** sprite-ref: verticals */ } .#{$primaryStyleName}-focus .#{$primaryStyleName}-button:hover { background-image: url(img/right-focus-hover.png); /** sprite-ref: verticals */ } .#{$primaryStyleName}-focus .#{$primaryStyleName}-button:active { background-image: url(img/right-focus-pressed.png); /** sprite-ref: verticals */ } .v-disabled .#{$primaryStyleName}-button:hover, .v-readonly .#{$primaryStyleName}-button:hover { background-image: url(img/right.png); /** sprite-ref: verticals */ } .#{$primaryStyleName}-suggestpopup { background: #f8f8f9; border: none; border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; -o-border-radius: 3px; overflow: hidden; } .#{$primaryStyleName}-suggestmenu { margin: 4px 0; } .#{$primaryStyleName}-suggestmenu .gwt-MenuItem { padding: 1px 8px; height: 16px; user-select: none; -moz-user-select: none; -webkit-user-select: none; cursor: default; } .#{$primaryStyleName}-suggestmenu .gwt-MenuItem .v-icon { margin-right: 3px; } .#{$primaryStyleName}-suggestmenu .gwt-MenuItem-selected { background: transparent repeat-x; background-image: url(../common/img/sel-bg.png); /** sprite-ref: verticals; sprite-alignment: repeat */ color: #fff; text-shadow: #3b5a7a 0 1px 0; } .#{$primaryStyleName}-nextpage, .#{$primaryStyleName}-nextpage-off, .#{$primaryStyleName}-prevpage-off, .#{$primaryStyleName}-prevpage { height: 11px; width: 100%; background: transparent; margin-bottom: -4px; } .#{$primaryStyleName}-nextpage, .#{$primaryStyleName}-nextpage-off { margin: -4px 0 0; } .#{$primaryStyleName}-nextpage:hover { background-repeat: repeat-x; background-image: url(img/page-down-hover.png); /** sprite-ref: verticals; sprite-alignment: repeat */ } .#{$primaryStyleName}-prevpage:hover { background-repeat: repeat-x; background-image: url(img/page-up-hover.png); /** sprite-ref: verticals; sprite-alignment: repeat */ } .#{$primaryStyleName}-nextpage:active { background-repeat: repeat-x; background-image: url(img/page-down-pressed.png); /** sprite-ref: verticals; sprite-alignment: repeat */ } .#{$primaryStyleName}-prevpage:active { background-repeat: repeat-x; background-image: url(img/page-up-pressed.png); /** sprite-ref: verticals; sprite-alignment: repeat */ } .#{$primaryStyleName}-nextpage-off span, .#{$primaryStyleName}-prevpage-off span { display: none; } .#{$primaryStyleName}-nextpage span, .#{$primaryStyleName}-prevpage span { display: block; height: 11px; width: 100%; overflow: hidden; text-indent: -99999px; background: transparent no-repeat center 3px; background-image: url(img/arrow-down.png); /** sprite-ref: verticals; sprite-margin-top: 3px; sprite-margin-bottom: 3px; sprite-alignment: center */ user-select: none; -moz-user-select: none; -webkit-user-select: none; } .#{$primaryStyleName}-prevpage span { background-image: url(img/arrow-up.png); /** sprite-ref: verticals; sprite-margin-top: 3px; sprite-margin-bottom: 3px; sprite-alignment: center */ } .#{$primaryStyleName}-nextpage:hover span { background-image: url(img/arrow-down-hover.png); /** sprite-ref: verticals; sprite-margin-top: 3px; sprite-margin-bottom: 3px; sprite-alignment: center */ } .#{$primaryStyleName}-prevpage:hover span { background-image: url(img/arrow-up-hover.png); /** sprite-ref: verticals; sprite-margin-top: 3px; sprite-margin-bottom: 3px; sprite-alignment: center */ } .#{$primaryStyleName}-status { text-shadow: #e9eaeb 0 1px 0; font-size: 11px; line-height: normal; width: 100%; padding: 3px 0; height: 11px; overflow: hidden; background-repeat: repeat-x; background-image: url(img/status-bg.png); /** sprite-ref: verticals; sprite-alignment: repeat */ -moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px; user-select: none; -moz-user-select: none; -webkit-user-select: none; } /* IE fails to position background images properly inside table elements */ .v-ie & .#{$primaryStyleName}-suggestmenu .gwt-MenuItem-selected { background: transparent url(../common/img/sel-bg.png) repeat-x; } .v-ie & .#{$primaryStyleName}-nextpage:hover { background: transparent url(img/page-down-hover.png) repeat-x; } .v-ie & .#{$primaryStyleName}-prevpage:hover { background: transparent url(img/page-up-hover.png) repeat-x; } .v-ie & .#{$primaryStyleName}-prevpage span { background: transparent url(img/arrow-up.png) no-repeat center 3px; } .v-ie & .#{$primaryStyleName}-nextpage span { background: transparent url(img/arrow-down.png) no-repeat center 3px; } .v-ie & .#{$primaryStyleName}-prevpage:hover span { background: transparent url(img/arrow-up-hover.png) no-repeat center 3px; } .v-ie & .#{$primaryStyleName}-nextpage:hover span { background: transparent url(img/arrow-down-hover.png) no-repeat center 3px; } .v-ie & .#{$primaryStyleName}-status { background: transparent url(img/status-bg.png) repeat-x; } /* Filterselect with icon needs a similar fix than in buttons */ .#{$primaryStyleName} .v-icon { width: 16px; position: relative; } .#{$primaryStyleName} .v-icon + .#{$primaryStyleName}-input { margin-left: -16px; padding-left: 18px; } /* Combobox on black background */ .black .#{$primaryStyleName} { background-image: url(img/black/left-black.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } &.v-app .black .#{$primaryStyleName}-input, .v-window .black .#{$primaryStyleName}-input, .v-window-black .#{$primaryStyleName}-input, .v-popupview-popup .black .#{$primaryStyleName}-input { color: #c9ccce; background-image: url(img/black/center-black.png); /** sprite-ref: black-verticals; sprite-alignment: repeat; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-focus { background-image: url(img/black/left-black-focus.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-focus .#{$primaryStyleName}-input { background-image: url(img/black/center-black-focus.png); /** sprite-ref: black-verticals; sprite-alignment: repeat; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-button { background-image: url(img/black/right-black.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-button:hover { background-image: url(img/black/right-black-hover.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-button:active { background-image: url(img/black/right-black-pressed.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-focus .#{$primaryStyleName}-button { background-image: url(img/black/right-black-focus.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-focus .#{$primaryStyleName}-button:hover { background-image: url(img/black/right-black-focus-hover.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-focus .#{$primaryStyleName}-button:active { background-image: url(img/black/right-black-focus-pressed.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .v-disabled .#{$primaryStyleName}-button:hover, .black .v-readonly .#{$primaryStyleName}-button:hover { background-image: url(img/black/right-black.png); /** sprite-ref: black-verticals; sprite-margin-bottom: 1px */ } .black .#{$primaryStyleName}-prompt .#{$primaryStyleName}-input { color: #5f6366; } /* Native selects on black background */ .black .v-select select, .black .v-select-twincol select { border-color: #38393a; border-top-color: #2c2d2e; border-bottom-color: #3e3f3f; background: #151717; color: #c9ccce; } }