From 45660bff5c4421024bd31b21cfc4fa54761baffb Mon Sep 17 00:00:00 2001 From: Minh Tran Date: Mon, 13 Aug 2012 20:29:46 +0200 Subject: [PATCH] Brand new status breadcrum! (TODO: update js for clickable buttons) bzr revid: mit@openerp.com-20120813182946-ep9231bf7bksyvev --- addons/web/static/src/css/base.css | 234 ++++++++++++++-------------- addons/web/static/src/css/base.sass | 195 ++++++++++------------- addons/web/static/src/xml/base.xml | 11 +- 3 files changed, 200 insertions(+), 240 deletions(-) diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index 68132f0fd1d..f602e6feea2 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -76,6 +76,7 @@ color: #4c4c4c; font-size: 13px; background: white; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5); /* http://www.quirksmode.org/dom/inputfile.html * http://stackoverflow.com/questions/2855589/replace-input-type-file-by-an-image */ @@ -159,7 +160,7 @@ .openerp a.button:link, .openerp a.button:visited, .openerp button, .openerp input[type='submit'], .openerp .ui-dialog-buttonpane .ui-dialog-buttonset .ui-button { display: inline-block; border: 1px solid #ababab; - color: #404040; + color: #4c4c4c; margin: 0; padding: 3px 12px; font-size: 13px; @@ -1941,7 +1942,6 @@ background-image: -o-linear-gradient(top, #fcfcfc, #dedede); background-image: linear-gradient(to bottom, #fcfcfc, #dedede); padding: 0 8px; - line-height: 30px; } .openerp .oe_form header ul { display: inline-block; @@ -1963,141 +1963,135 @@ .openerp .oe_form div.oe_form_configuration label { min-width: 150px; } -.openerp ul.oe_form_steps { - height: 30px; - padding: 0; - margin: 0; - text-shadow: 0 1px 1px white; +.openerp ul.oe_form_steps, .openerp ul.oe_form_steps_clickable { + display: inline-block; + padding-right: 18px; } -.openerp ul.oe_form_steps img { - vertical-align: top; - margin-left: 8px; +.openerp ul.oe_form_steps li, .openerp ul.oe_form_steps_clickable li { + display: inline-block; + margin-right: -20px; + background-color: #fcfcfc; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#dedede)); + background-image: -webkit-linear-gradient(top, #fcfcfc, #dedede); + background-image: -moz-linear-gradient(top, #fcfcfc, #dedede); + background-image: -ms-linear-gradient(top, #fcfcfc, #dedede); + background-image: -o-linear-gradient(top, #fcfcfc, #dedede); + background-image: linear-gradient(to bottom, #fcfcfc, #dedede); } -.openerp ul.oe_form_steps li { - border-right: none; - padding: 0; - margin: 0; - float: left; - vertical-align: top; - height: 30px; - padding: 0 0 0 12px; -} -.openerp ul.oe_form_steps li:first-child { +.openerp ul.oe_form_steps li:first-child .label, .openerp ul.oe_form_steps_clickable li:first-child .label { border-left: 1px solid #cacaca; + padding-left: 14px; } -.openerp ul.oe_form_steps li:last-child { - margin-right: 12px; - padding-right: 12px; +.openerp ul.oe_form_steps li:last-child, .openerp ul.oe_form_steps_clickable li:last-child { border-right: 1px solid #cacaca; } -.openerp ul.oe_form_steps li a { +.openerp ul.oe_form_steps li:last-child .label, .openerp ul.oe_form_steps_clickable li:last-child .label { + padding-right: 14px; +} +.openerp ul.oe_form_steps li:last-child .arrow, .openerp ul.oe_form_steps_clickable li:last-child .arrow { + display: none; +} +.openerp ul.oe_form_steps li .label, .openerp ul.oe_form_steps_clickable li .label { color: #4c4c4c; -} -.openerp ul.oe_form_steps li a:hover { - color: black; -} -.openerp ul.oe_form_steps .oe_form_steps_active { - font-weight: bold; - color: #b33630; -} -.openerp ul.oe_form_steps_clickable { - height: 30px; + text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede; + padding: 7px; + display: inline-block; + padding-left: 24px; margin: 0; - padding: 0; - text-shadow: 0 1px 1px #cacaca; - box-shadow: 0 0 1px rgba(0, 0, 0, 0.5); + position: relative; + z-index: 10; +} +.openerp ul.oe_form_steps li .arrow, .openerp ul.oe_form_steps_clickable li .arrow { + width: 17px; + display: inline-block; + vertical-align: top; overflow: hidden; + margin-left: -5px; +} +.openerp ul.oe_form_steps li .arrow span, .openerp ul.oe_form_steps_clickable li .arrow span { + position: relative; + z-index: 11; + width: 24px; + height: 24px; + display: inline-block; + margin-left: -12px; + margin-top: 3px; + box-shadow: -1px 1px 2px rgba(255, 255, 255, 0.2), inset -1px 1px 1px rgba(0, 0, 0, 0.2); + background-color: #dedede; + background: -moz-linear-gradient(135deg, #dedede, #fcfcfc); + background: -o-linear-gradient(135deg, #fcfcfc, #dedede); + background: -webkit-gradient(linear, left top, right bottom, from(#fcfcfc), to(#dedede)); + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + -moz-transform: rotate(45deg); + -webkit-transform: rotate(45deg); + -o-transform: rotate(45deg); + -ms-transform: rotate(45deg); +} +.openerp ul.oe_form_steps li.oe_active, .openerp ul.oe_form_steps_clickable li.oe_active { + background-color: #729fcf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#729fcf), to(#3465a4)); + background-image: -webkit-linear-gradient(top, #729fcf, #3465a4); + background-image: -moz-linear-gradient(top, #729fcf, #3465a4); + background-image: -ms-linear-gradient(top, #729fcf, #3465a4); + background-image: -o-linear-gradient(top, #729fcf, #3465a4); + background-image: linear-gradient(to bottom, #729fcf, #3465a4); +} +.openerp ul.oe_form_steps li.oe_active .arrow span, .openerp ul.oe_form_steps_clickable li.oe_active .arrow span { + background-color: #3465a4; + background: -moz-linear-gradient(135deg, #3465a4, #729fcf); + background: -o-linear-gradient(135deg, #729fcf, #3465a4); + background: -webkit-gradient(linear, left top, right bottom, from(#729fcf), to(#3465a4)); +} +.openerp ul.oe_form_steps li.oe_active .label, .openerp ul.oe_form_steps_clickable li.oe_active .label { + color: white; + text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4; } .openerp ul.oe_form_steps_clickable li { - border-right: none; - padding: 0 0 0 12px; - position: relative; - float: left; - vertical-align: top; - height: 30px; - color: white; -} -.openerp ul.oe_form_steps_clickable li:after { - content: " "; - width: 0; - height: 0; - border-top: 21px solid transparent; - border-bottom: 21px solid transparent; - border-left: 5px solid #807fb4; - position: absolute; - top: 50%; - margin-top: -21px; - left: 100%; - z-index: 2; -} -.openerp ul.oe_form_steps_clickable li:hover:after { - border-left: 5px solid #807fb4; -} -.openerp ul.oe_form_steps_clickable li:before { - content: " "; - width: 0; - height: 0; - border-top: 21px solid transparent; - border-bottom: 21px solid transparent; - border-left: 5px solid white; - position: absolute; - top: 50%; - margin-top: -21px; - margin-left: 2px; - left: 100%; - z-index: 2; -} -.openerp ul.oe_form_steps_clickable li.oe_form_steps_active { - font-weight: bold; - text-shadow: 0 1px 1px #999999; - box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.25); - background-color: #dc5f59; - background: -webkit-linear-gradient(top, #dc5f59, #b33630); - color: white; -} -.openerp ul.oe_form_steps_clickable li.oe_form_steps_inactive { cursor: pointer; - box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.25); - background-color: #adadcf; - background: -webkit-linear-gradient(top, #adadcf, #7c7ba7); } -.openerp ul.oe_form_steps_clickable li.oe_form_steps_inactive div { - padding: 0 30px 0 0; +.openerp ul.oe_form_steps_clickable li:hover { + background-color: #e8e8e8; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); + background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); + background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); } -.openerp ul.oe_form_steps_clickable li.oe_form_steps_inactive:hover { - background: -webkit-linear-gradient(top, #7c7ba7, #adadcf); +.openerp ul.oe_form_steps_clickable li:hover .label { + text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede; } -.openerp ul.oe_form_steps_clickable li div { - padding: 0 30px 0 0; +.openerp ul.oe_form_steps_clickable li:hover .arrow span { + background-color: #e8e8e8; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#cacaca)); + background-image: -webkit-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -moz-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -ms-linear-gradient(top, #e8e8e8, #cacaca); + background-image: -o-linear-gradient(top, #e8e8e8, #cacaca); + background-image: linear-gradient(to bottom, #e8e8e8, #cacaca); } -.openerp ul.oe_form_steps_clickable li.oe_form_steps_active:after { - content: " "; - display: block; - width: 0; - height: 0; - border-top: 21px solid transparent; - border-bottom: 21px solid transparent; - border-left: 5px solid #b33630; - position: absolute; - top: 50%; - margin-top: -21px; - left: 100%; - z-index: 2; +.openerp ul.oe_form_steps_clickable li .label { + color: #8a89ba; } -.openerp ul.oe_form_steps_clickable li.oe_form_steps_active:before { - content: " "; - display: block; - width: 0; - height: 0; - border-top: 21px solid transparent; - border-bottom: 21px solid transparent; - border-left: 5px solid white; - position: absolute; - top: 50%; - margin-top: -21px; - margin-left: 2px; - left: 100%; - z-index: 2; +.openerp ul.oe_form_steps_clickable li.oe_active:hover { + background-color: #4c85c2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4c85c2), to(#284d7d)); + background-image: -webkit-linear-gradient(top, #4c85c2, #284d7d); + background-image: -moz-linear-gradient(top, #4c85c2, #284d7d); + background-image: -ms-linear-gradient(top, #4c85c2, #284d7d); + background-image: -o-linear-gradient(top, #4c85c2, #284d7d); + background-image: linear-gradient(to bottom, #4c85c2, #284d7d); +} +.openerp ul.oe_form_steps_clickable li.oe_active:hover .label { + text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4; +} +.openerp ul.oe_form_steps_clickable li.oe_active:hover .arrow span { + background-color: #284d7d; + background: -moz-linear-gradient(135deg, #284d7d, #4c85c2); + background: -o-linear-gradient(135deg, #4c85c2, #284d7d); + background: -webkit-gradient(linear, left top, right bottom, from(#4c85c2), to(#284d7d)); } .openerp .oe_form .oe_subtotal_footer { width: 1% !important; diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index b420a237278..3aee82e274d 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -87,6 +87,18 @@ $sheet-max-width: 860px -ms-box-sizing: #{$type}-box box-sizing: #{$type}-box +@mixin skew-gradient($startColor: #555, $endColor: #333) + background-color: $endColor + background: -moz-linear-gradient(135deg, $endColor, $startColor) + background: -o-linear-gradient(135deg, $startColor, $endColor) + background: -webkit-gradient(linear, left top, right bottom, from($startColor), to($endColor)) + +@mixin transform($transform) + -moz-transform: $transform + -webkit-transform: $transform + -o-transform: $transform + -ms-transform: $transform + // Transforms the (readable) text of an inline element into an mmlicons icon, // allows for actual readable text in-code (and in readers?) with iconic looks @mixin text-to-icon($icon-name, $color: #404040) @@ -141,6 +153,7 @@ $sheet-max-width: 860px color: #4c4c4c font-size: 13px background: white + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5) // }}} //Placeholder style{{{ \:-moz-placeholder @@ -195,7 +208,7 @@ $sheet-max-width: 860px a.button:link, a.button:visited, button, input[type='submit'], .ui-dialog-buttonpane .ui-dialog-buttonset .ui-button display: inline-block border: 1px solid #ababab - color: #404040 + color: #4c4c4c margin: 0 padding: 3px 12px font-size: 13px @@ -1498,7 +1511,7 @@ $sheet-max-width: 860px border-bottom: 1px solid #cacaca @include vertical-gradient(#fcfcfc, #dedede) padding: 0 8px - line-height: 30px + //line-height: 30px ul display: inline-block float: right @@ -1515,122 +1528,78 @@ $sheet-max-width: 860px max-width: 650px label min-width: 150px - ul.oe_form_steps - height: 30px - padding: 0 - margin: 0 - text-shadow: 0 1px 1px white - img - vertical-align: top - margin-left: 8px - li - border-right: none - padding: 0 - margin: 0 - float: left - vertical-align: top - height: 30px - padding: 0 0 0 12px - &:first-child + + + ul.oe_form_steps, ul.oe_form_steps_clickable + display: inline-block + padding-right: 18px + li + display: inline-block + margin-right: -20px + @include vertical-gradient(#fcfcfc, #dedede) + &:first-child .label border-left: 1px solid #cacaca + padding-left: 14px &:last-child - margin-right: 12px - padding-right: 12px border-right: 1px solid #cacaca - a + .label + padding-right: 14px + .arrow + display: none + .label color: #4c4c4c - &:hover - color: black - .oe_form_steps_active - font-weight: bold - color: #b33630 - ul.oe_form_steps_clickable - height: 30px - margin: 0 - padding: 0 - text-shadow: 0 1px 1px #cacaca - box-shadow: 0 0 1px rgba(0,0,0,0.5) - overflow: hidden - li - border-right: none - padding: 0 0 0 12px - position: relative - float: left - vertical-align: top - height: 30px - color: white - &:after - content: " " - width: 0 - height: 0 - border-top: 21px solid transparent - border-bottom: 21px solid transparent - border-left: 5px solid #807fb4 - position: absolute - top: 50% - margin-top: -21px - left: 100% - z-index: 2 - &:hover:after - border-left: 5px solid #807fb4 - &:before - content: " " - width: 0 - height: 0 - border-top: 21px solid transparent - border-bottom: 21px solid transparent - border-left: 5px solid white - position: absolute - top: 50% - margin-top: -21px - margin-left: 2px - left: 100% - z-index: 2 - &.oe_form_steps_active - font-weight: bold - text-shadow: 0 1px 1px #999999 - box-shadow: inset 0 -1px 1px rgba(0,0,0,0.25), inset 0 1px 1px rgba(255,255,255,0.25) - background-color: #dc5f59 - background: -webkit-linear-gradient(top, #dc5f59, #b33630) + text-shadow: 0 1px 1px #fcfcfc, 0 -1px 1px #dedede + padding: 7px + display: inline-block + padding-left: 24px + margin: 0 + position: relative + z-index: 10 + .arrow + width: 17px + display: inline-block + vertical-align: top + overflow: hidden + margin-left: -5px + span + position: relative + z-index: 11 + width: 24px + height: 24px + display: inline-block + margin-left: -12px + margin-top: 3px + box-shadow: -1px 1px 2px rgba(255,255,255,0.2), inset -1px 1px 1px rgba(0,0,0,0.2) + @include skew-gradient(#fcfcfc, #dedede) + @include radius(3px) + @include transform(rotate(45deg)) + li.oe_active + @include vertical-gradient(#729fcf, #3465a4) + .arrow span + @include skew-gradient(#729fcf, #3465a4) + .label color: white - &.oe_form_steps_inactive - cursor: pointer - box-shadow: inset 0 -1px 1px rgba(0,0,0,0.25), inset 0 1px 1px rgba(255,255,255,0.25) - background-color: #adadcf - background: -webkit-linear-gradient(top, #adadcf, #7c7ba7) - div - padding: 0 30px 0 0 - &.oe_form_steps_inactive:hover - background: -webkit-linear-gradient(top, #7c7ba7, #adadcf) - div - padding: 0 30px 0 0 - &.oe_form_steps_active:after - content: " " - display: block - width: 0 - height: 0 - border-top: 21px solid transparent - border-bottom: 21px solid transparent - border-left: 5px solid #b33630 - position: absolute - top: 50% - margin-top: -21px - left: 100% - z-index: 2 - &.oe_form_steps_active:before - content: " " - display: block - width: 0 - height: 0 - border-top: 21px solid transparent - border-bottom: 21px solid transparent - border-left: 5px solid white - position: absolute - top: 50% - margin-top: -21px - margin-left: 2px - left: 100% - z-index: 2 + text-shadow: 0 1px 1px #729fcf, 0 -1px 1px #3465a4 + + ul.oe_form_steps_clickable + li + cursor: pointer + &:hover + @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) + .label + text-shadow: 0 -1px 1px #fcfcfc, 0 1px 1px #dedede + .arrow span + @include vertical-gradient(darken(#fcfcfc, 8%), darken(#dedede, 8%)) + .label + color: $link-color + li.oe_active + &:hover + @include vertical-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) + .label + text-shadow: 0 -1px 1px #729fcf, 0 1px 1px #3465a4 + .arrow span + @include skew-gradient(darken(#729fcf, 10%), darken(#3465a4, 10%)) + .oe_form .oe_subtotal_footer width: 1% !important td.oe_form_group_cell diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index b96f284c966..90fb75eb817 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -1042,14 +1042,11 @@ -
  • -
    +
  • + - - - - - + +