.#{$prefix}grid-body {
background: $grid-body-background-color;
border-width: $grid-body-border-width;
border-style: $grid-body-border-style;
border-color: $grid-body-border-color;
}
.#{$prefix}grid-empty {
padding: $grid-empty-padding;
color: $grid-empty-color;
background-color: $grid-empty-background-color;
font: $grid-empty-font-weight $grid-empty-font-size $grid-empty-font-family;
}
.#{$prefix}grid-cell {
@if $grid-row-cell-color {
color: $grid-row-cell-color;
}
font: $grid-row-cell-font;
background-color: $grid-row-cell-background-color;
border-color: $grid-row-cell-border-color;
border-style: $grid-row-cell-border-style;
}
.#{$prefix}grid-td {
.#{$prefix}grid-row-alt & {
background-color: $grid-row-cell-alt-background-color;
}
.#{$prefix}grid-row-before-over & {
border-bottom-style: $grid-row-cell-over-border-style;
border-bottom-color: $grid-row-cell-over-border-color;
}
.#{$prefix}grid-row-over & {
border-bottom-style: $grid-row-cell-over-border-style;
border-bottom-color: $grid-row-cell-over-border-color;
}
.#{$prefix}grid-row-before-selected & {
border-bottom-style: $grid-row-cell-selected-border-style;
border-bottom-color: $grid-row-cell-selected-border-color;
}
.#{$prefix}grid-row-selected & {
border-bottom-style: $grid-row-cell-selected-border-style;
border-bottom-color: $grid-row-cell-selected-border-color;
}
.#{$prefix}grid-row-before-focused & {
border-bottom-style: $grid-row-cell-focus-border-style;
border-bottom-color: $grid-row-cell-focus-border-color;
@if $grid-no-row-lines-show-focus-border {
border-bottom-width: $grid-row-cell-border-width
}
}
.#{$prefix}grid-row-focused & {
@if $grid-row-cell-focus-color != $grid-row-cell-color {
color: $grid-row-cell-focus-color;
}
background-color: $grid-row-cell-focus-background-color;
}
.#{$prefix}grid-row-over & {
@if $grid-row-cell-over-color != $grid-row-cell-color or
$grid-row-cell-over-color != $grid-row-cell-focus-color {
color: $grid-row-cell-over-color;
}
background-color: $grid-row-cell-over-background-color;
}
.#{$prefix}grid-row-selected & {
@if $grid-row-cell-selected-color != $grid-row-cell-color or
$grid-row-cell-selected-color != $grid-row-cell-focus-color or
$grid-row-cell-selected-color != $grid-row-cell-over-color {
color: $grid-row-cell-selected-color;
}
background-color: $grid-row-cell-selected-background-color;
}
.#{$prefix}grid-row-focused & {
border-bottom-style: $grid-row-cell-focus-border-style;
border-bottom-color: $grid-row-cell-focus-border-color;
@if $grid-no-row-lines-show-focus-border {
border-bottom-width: $grid-row-cell-border-width
}
}
@if $grid-no-row-lines-show-focus-border {
// use x-grid-table to increase specificity to equal the previous 2 rules.
.#{$prefix}grid-table .#{$prefix}grid-row-focused-first & {
border-top: $grid-row-cell-border-width $grid-row-cell-focus-border-style $grid-row-cell-focus-border-color;
}
} @else {
.#{$prefix}grid-with-row-lines .#{$prefix}grid-row-focused-first & {
border-top: $grid-row-cell-border-width $grid-row-cell-focus-border-style $grid-row-cell-focus-border-color;
}
}
// The two rules below ensure that summary rows which are embedded within
// selected/focused wrapped rows do not also get a visible border.
.#{$prefix}grid-row-selected .#{$prefix}grid-row-summary & {
border-bottom-color: $grid-row-cell-selected-background-color;
border-top-width: 0;
}
.#{$prefix}grid-row-focused .#{$prefix}grid-row-summary & {
border-bottom-color: $grid-row-cell-focus-background-color;
border-top-width: 0;
}
}
.#{$prefix}grid-with-row-lines {
.#{$prefix}grid-td {
border-bottom-width: $grid-row-cell-border-width;
}
// since the top border of each row is the bottom border of the row above, the top
// border of the first row goes on the table element.
.#{$prefix}grid-table {
border-top: $grid-row-cell-border-width solid $grid-row-cell-background-color;
}
.#{$prefix}grid-table-over-first {
border-top-style: $grid-row-cell-over-border-style;
border-top-color: $grid-row-cell-over-border-color;
}
.#{$prefix}grid-table-selected-first {
border-top-style: $grid-row-cell-selected-border-style;
border-top-color: $grid-row-cell-selected-border-color;
}
}
@if $grid-no-row-lines-show-focus-border {
// use grid-view class to increase specificity to match the previous rules for
// over/selected
.#{$prefix}grid-body .#{$prefix}grid-table-focused-first {
border-top: $grid-row-cell-border-width $grid-row-cell-focus-border-style $grid-row-cell-focus-border-color;
}
} @else {
.#{$prefix}grid-with-row-lines .#{$prefix}grid-table-focused-first {
border-top-style: $grid-row-cell-focus-border-style;
border-top-color: $grid-row-cell-focus-border-color;
}
}
.#{$prefix}grid-cell-inner {
text-overflow: $grid-cell-inner-text-overflow;
padding: $grid-cell-inner-padding;
}
@if $include-rtl and (left($grid-cell-inner-padding) != right($grid-cell-inner-padding)) {
.#{$prefix}rtl.#{$prefix}grid-cell-inner {
padding: rtl($grid-cell-inner-padding);
}
}
@if $grid-no-row-lines-show-focus-border {
.#{$prefix}grid-no-row-lines {
.#{$prefix}grid-row-focused {
.#{$prefix}grid-cell-inner {
// when the grid has no row lines we need to subtract the border width from the
// top and bottom padding when the row is focused so that the focus border does
// not increase the row height.
padding-top: top($grid-cell-inner-padding) - $grid-row-cell-border-width;
padding-bottom: bottom($grid-cell-inner-padding) - $grid-row-cell-border-width;
}
}
}
}
@if $include-ext-grid-column-rownumberer
or $include-ext-selection-checkboxmodel
or $include-ext-grid-plugin-rowexpander {
// .x-grid-cell-special is used by RowNumberer, CheckboxModel, and RowExpander
.#{$prefix}grid-cell-special {
@if $grid-cell-special-border-width != 0 {
border-color: $grid-cell-special-border-color;
border-style: $grid-cell-special-border-style;
border-right-width: $grid-cell-special-border-width;
}
@if $grid-cell-special-background-color != null {
@if $grid-cell-special-background-gradient == null {
background-color: $grid-cell-special-background-color;
} @else {
@include background-gradient($grid-cell-special-background-color, $grid-cell-special-background-gradient);
}
.#{$prefix}grid-row-selected & {
@if $grid-cell-special-selected-border-color != null {
border-right-color: $grid-cell-special-selected-border-color;
}
@if $grid-row-cell-selected-background-color != null {
@if $grid-cell-special-background-gradient == null {
background-color: $grid-row-cell-selected-background-color;
} @else {
@include background-gradient($grid-row-cell-selected-background-color, $grid-cell-special-background-gradient, left);
}
}
}
@if not $supports-gradients or $compile-all {
.#{$prefix}nlg & {
background-repeat: repeat-y;
background-image: slicer-background-image(grid-cell-special, 'grid/cell-special-bg');
}
.#{$prefix}nlg .#{$prefix}grid-row-selected & {
background-image: slicer-background-image(grid-cell-special-selected, 'grid/cell-special-selected-bg');
}
@include x-slicer(grid-cell-special);
@include x-slicer(grid-cell-special-selected);
}
}
}
@if $include-rtl and $grid-cell-special-border-width != 0 {
.#{$prefix}rtl.#{$prefix}grid-cell-special {
border-right-width: 0;
border-left-width: $grid-cell-special-border-width;
}
}
}
.#{$prefix}grid-dirty-cell {
background: theme-background-image('grid/dirty') no-repeat 0 0;
}
@if $include-rtl {
.#{$prefix}rtl.#{$prefix}grid-dirty-cell {
background-image: theme-background-image('grid/dirty-rtl');
background-position: right 0;
}
}
// add grid-row class to increase specificity over the state rules that set background-color
// e.g. .x-grid-row-over .x-grid-td, .x-grid-row-focused .x-grid-td
.#{$prefix}grid-row .#{$prefix}grid-cell-selected {
color: $grid-cell-selected-color;
background-color: $grid-cell-selected-background-color;
}
// Column lines on leading edge where there may be whitespace following
.#{$prefix}grid-with-col-lines .#{$prefix}grid-cell {
border-right-width: $grid-row-cell-border-width;
}
// Column lines in RTL mode - leading edge is left.
@if $include-rtl {
.#{$prefix}rtl.#{$prefix}grid-with-col-lines .#{$prefix}grid-cell {
border-right-width: 0;
border-left-width: $grid-row-cell-border-width;
}
}
.#{$prefix}grid-resize-marker {
width: $grid-row-cell-border-width;
background-color: $grid-resize-marker-background-color;
}