@mixin x-btn( $ui, $border-radius: null, $border-width: null, $border-color: null, $border-color-over: null, $border-color-focus: null, $border-color-pressed: null, $border-color-disabled: null, $padding: null, $text-padding: null, $background-color: null, $background-color-over: null, $background-color-focus: null, $background-color-pressed: null, $background-color-disabled: null, $background-gradient: null, $background-gradient-over: null, $background-gradient-focus: null, $background-gradient-pressed: null, $background-gradient-disabled: null, $color: null, $color-over: null, $color-focus: null, $color-pressed: null, $color-disabled: null, $font-size: null, $font-size-over: null, $font-size-focus: null, $font-size-pressed: null, $font-size-disabled: null, $font-weight: null, $font-weight-over: null, $font-weight-focus: null, $font-weight-pressed: null, $font-weight-disabled: null, $font-family: null, $font-family-over: null, $font-family-focus: null, $font-family-pressed: null, $font-family-disabled: null, $icon-size: null ) { .#{$prefix}btn-#{$ui} { border-color: $border-color; } @include x-frame('btn', $ui, $border-radius, $border-width, $padding, $background-color, $background-gradient, true); .#{$prefix}btn-#{$ui} .#{$prefix}btn-inner { font-size: $font-size; font-weight: $font-weight; font-family: $font-family; color: $color; background-repeat: no-repeat; padding: 0 $text-padding; } .#{$prefix}btn-#{$ui}-icon, .#{$prefix}btn-#{$ui}-noicon { button, .#{$prefix}btn-inner { height: $icon-size; line-height: $icon-size; } } //icons .#{$prefix}btn-#{$ui}-icon { .#{$prefix}btn-inner { padding: 0; width: $icon-size !important; } } .#{$prefix}btn-#{$ui}-icon-text-left { button { height: $icon-size; } .#{$prefix}btn-inner { height: $icon-size; line-height: $icon-size; padding-left: $icon-size + 4px; } } .#{$prefix}btn-#{$ui}-icon-text-right { button { height: $icon-size; } .#{$prefix}btn-inner { height: $icon-size; line-height: $icon-size; padding-right: $icon-size + 4px !important; } } .#{$prefix}btn-#{$ui}-icon-text-top { .#{$prefix}btn-inner { padding-top: $icon-size + 4px; } } .#{$prefix}btn-#{$ui}-icon-text-bottom { .#{$prefix}btn-inner { padding-bottom: $icon-size + 4px; } } .#{$prefix}btn-#{$ui}-over { @if $border-color-over != $border-color { border-color: $border-color-over; } @if $background-color-over != null { @if $background-gradient-over != $background-gradient { @include background-gradient($background-color-over, $background-gradient-over); } @else if $background-color-over != $background-color { background-color: $background-color-over; } } .#{$prefix}btn-inner { @if $color-over != $color { color: $color-over; } @if $font-weight-over != $font-weight { font-weight: $font-weight-over; } @if $font-size-over != $font-size { font-size: $font-size-over; } @if $font-family-over != $font-family { font-family: $font-family-over; } } } .#{$prefix}btn-#{$ui}-focus { @if $border-color-focus != $border-color { border-color: $border-color-focus; } @if $background-color-focus != null { @if $background-gradient-focus != $background-gradient { @include background-gradient($background-color-focus, $background-gradient-focus); } @else if $background-color-focus != $background-color { background-color: $background-color-focus; } } .#{$prefix}btn-inner { @if $color-focus != $color { color: $color-focus; } @if $font-weight-focus != $font-weight { font-weight: $font-weight-focus; } @if $font-size-focus != $font-size { font-size: $font-size-focus; } @if $font-family-focus != $font-family { font-family: $font-family-focus; } } } .#{$prefix}btn-#{$ui}-menu-active, .#{$prefix}btn-#{$ui}-pressed { @if $border-color-pressed != $border-color { border-color: $border-color-pressed; } @if $background-color-pressed != null { @if $background-gradient-pressed != $background-gradient { @include background-gradient($background-color-pressed, $background-gradient-pressed); } @else if $background-color-pressed != $background-color { background-color: $background-color-pressed; } } .#{$prefix}btn-inner { @if $color-pressed != $color { color: $color-pressed; } @if $font-weight-pressed != $font-weight { font-weight: $font-weight-pressed; } @if $font-size-pressed != $font-size { font-size: $font-size-pressed; } @if $font-family-pressed != $font-family { font-family: $font-family-pressed; } } } .#{$prefix}btn-#{$ui}-disabled { @if $border-color-disabled != $border-color { border-color: $border-color-disabled; } @if $background-color-disabled != null { @if $background-gradient-disabled != $background-gradient { @include background-gradient($background-color-disabled, $background-gradient-disabled); } @else if $background-color-disabled != $background-color { background-color: $background-color-disabled; } } .#{$prefix}btn-inner { @if $color-disabled != $color { color: $color !important; } @if $font-weight-disabled != $font-weight { font-weight: $font-weight-disabled; } @if $font-size-disabled != $font-size { font-size: $font-size-disabled; } @if $font-family-disabled != $font-family { font-family: $font-family-disabled; } } } .#{$prefix}ie .#{$prefix}btn-#{$ui}-disabled { .#{$prefix}btn-inner { color: darken($color-disabled, 20) !important; } } .#{$prefix}ie6 .#{$prefix}btn-#{$ui}-disabled { .#{$prefix}btn-inner { color: $color-disabled !important; } } @if not $supports-border-radius or $compile-all { .#{$prefix}nbr { .#{$prefix}btn-#{$ui}-over { .#{$prefix}frame-tl, .#{$prefix}frame-bl, .#{$prefix}frame-tr, .#{$prefix}frame-br, .#{$prefix}frame-tc, .#{$prefix}frame-bc { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-over-corners.gif'); } .#{$prefix}frame-ml, .#{$prefix}frame-mr { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-over-sides.gif'); } .#{$prefix}frame-mc { background-color: $background-color-over; @if $background-gradient-over { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-over-bg.gif'); } } } .#{$prefix}btn-#{$ui}-focus { .#{$prefix}frame-tl, .#{$prefix}frame-bl, .#{$prefix}frame-tr, .#{$prefix}frame-br, .#{$prefix}frame-tc, .#{$prefix}frame-bc { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-focus-corners.gif'); } .#{$prefix}frame-ml, .#{$prefix}frame-mr { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-focus-sides.gif'); } .#{$prefix}frame-mc { background-color: $background-color-focus; @if $background-gradient-focus { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-focus-bg.gif'); } } } .#{$prefix}btn-#{$ui}-menu-active, .#{$prefix}btn-#{$ui}-pressed { .#{$prefix}frame-tl, .#{$prefix}frame-bl, .#{$prefix}frame-tr, .#{$prefix}frame-br, .#{$prefix}frame-tc, .#{$prefix}frame-bc { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-pressed-corners.gif'); } .#{$prefix}frame-ml, .#{$prefix}frame-mr { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-pressed-sides.gif'); } .#{$prefix}frame-mc { background-color: $background-color-pressed; @if $background-gradient-pressed { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-pressed-bg.gif'); } } } .#{$prefix}btn-#{$ui}-disabled { .#{$prefix}frame-tl, .#{$prefix}frame-bl, .#{$prefix}frame-tr, .#{$prefix}frame-br, .#{$prefix}frame-tc, .#{$prefix}frame-bc { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-disabled-corners.gif'); } .#{$prefix}frame-ml, .#{$prefix}frame-mr { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-disabled-sides.gif'); } .#{$prefix}frame-mc { background-color: $background-color-disabled; @if $background-gradient-disabled { background-image: theme-image($theme-name, 'btn/btn-#{$ui}-disabled-bg.gif'); } } } } } @if not $supports-gradients or $compile-all { @if $background-gradient != null { .#{$prefix}nlg { .#{$prefix}btn-#{$ui} { background-repeat: repeat-x; background-image: theme-image($theme-name, 'btn/btn-#{$ui}-bg.gif'); } } } @if $background-gradient-over != null { .#{$prefix}nlg { .#{$prefix}btn-#{$ui}-over { background-repeat: repeat-x; background-image: theme-image($theme-name, 'btn/btn-#{$ui}-over-bg.gif'); } } } @if $background-gradient-focus != null { .#{$prefix}nlg { .#{$prefix}btn-#{$ui}-focus { background-repeat: repeat-x; background-image: theme-image($theme-name, 'btn/btn-#{$ui}-focus-bg.gif'); } } } @if $background-gradient-pressed != null { .#{$prefix}nlg { .#{$prefix}btn-#{$ui}-menu-active, .#{$prefix}btn-#{$ui}-pressed { background-repeat: repeat-x; background-image: theme-image($theme-name, 'btn/btn-#{$ui}-pressed-bg.gif'); } } } @if $background-gradient-disabled != null { .#{$prefix}nlg { .#{$prefix}btn-#{$ui}-disabled { background-repeat: repeat-x; background-image: theme-image($theme-name, 'btn/btn-#{$ui}-disabled-bg.gif'); } } } } };