ttrss/lib/dijit/themes/claro/Tree.less

135 lines
4.1 KiB
Plaintext

/* Tree
*
* Styling Tree mostly means styling the TreeRow (dijitTreeRow)
* There are 4 basic states to style:
*
* Tree Row:
* 1. tree row (default styling):
* .dijitTreeRow - styles for each row of the tree
*
* 2. hovered tree row (mouse hover on a tree row)
* .dijitTreeRowHover - styles when mouse over on one row
*
* 3. active tree row (mouse down on a tree row)
* .dijitTreeRowActive - styles when mouse down on one row
*
* 4. selected tree row
* dijitTreeRowSelected - style when the row has been selected
*
* Tree Expando:
* dijitTreeExpando - the expando at the left of the text of each tree row
*
* Drag and Drop on TreeNodes: (insert line on dijitTreeContent node so it'll aligned w/ target element)
* .dijitTreeNode .dojoDndItemBefore/.dojoDndItemAfter - use border style simulate a separate line
*/
@import "variables";
.claro .dijitTreeNode {
zoom: 1; /* force layout on IE (TODO: may not be needed anymore) */
}
.claro .dijitTreeIsRoot {
background-image: none;
}
/* Styling for basic tree node (unhovered, unselected)
* Also use this styling when dropping between items on the tree (in other words, don't
* use hover effect)
*/
.claro .dijitTreeRow,
.claro .dijitTreeNode .dojoDndItemBefore,
.claro .dijitTreeNode .dojoDndItemAfter {
/* so insert line shows up on IE when dropping after a target element */
padding: 4px 1px 2px 0;
margin: 0 1px; /* replaced by border for selected/hovered row */
background-color: none; // IE6 doesn't understand rgba() or transparent below
background-color: transparent; // IE8 doesn't understand rgba() below
background-color: rgba(171,214,255,0); // rgba() instead of transparent to prevent flash on hover fade-in
background-position:0 0;
background-repeat:repeat-x;
border-color: rgba(118,157,192,0); // rgba() instead of none to prevent flash on hover fade-in
border-width: 0;
color: @text-color;
.transition-property(background-color, border-color);
.transition-duration(.25s);
.transition-timing-function(ease-out);
}
.claro .dijitTreeRowSelected {
background-repeat:repeat-x;
background-color:@selected-background-color;
background-image: url(@image-common-highlight);
padding: 3px 0 1px;
margin: 0;
border:solid 1px @selected-border-color;
color:@selected-text-color;
}
.claro .dijitTreeRowHover {
background-color:@hovered-background-color;
background-image: url(@image-common-highlight);
padding: 3px 0 1px;
margin: 0;
border:solid 1px @hovered-border-color;
color:@hovered-text-color;
.transition-duration(.25s);
}
.claro .dijitTreeRowActive {
background-color:@pressed-background-color;
background-image: url(@image-common-highlight);
background-position:0 -177px;
padding: 3px 0 1px;
margin-left: 0;
border:solid 1px @pressed-border-color;
color:@selected-text-color;
}
.dj_ie6 .claro .dijitTreeRow {
background-image: none;
}
.claro .dijitTreeRowFocused {
background-repeat: repeat;
}
/* expando (open/closed) icon */
.claro .dijitTreeExpando {
background-image: url(@image-tree-expand);
width: 16px;
height: 16px;
background-position: -35px 0; /* for dijitTreeExpandoOpened */
}
.dj_ie6 .claro .dijitTreeExpando {
background-image: url(@image-tree-expand-ie6);
}
.claro .dijitTreeRowHover .dijitTreeExpandoOpened {
background-position: -53px 0;
}
.claro .dijitTreeExpandoClosed {
background-position: 1px 0;
}
.claro .dijitTreeRowHover .dijitTreeExpandoClosed {
background-position: -17px 0;
}
.claro .dijitTreeExpandoLeaf,
.dj_ie6 .claro .dijitTreeExpandoLeaf {
background-image:none;
}
.claro .dijitTreeExpandoLoading {
background-image: url(@image-loading-animation);
}
/* Drag and Drop on TreeNodes
* Put insert line on dijitTreeContent node so it's aligned w/
* (ie, indented equally with) target element, even
* though dijitTreeRowNode is the actual "drag object"
*/
.claro .dijitTreeNode .dojoDndItemBefore .dijitTreeContent {
border-top: 2px solid @dnd-dropseparator-color; // TODO: normal separator is just 1px, why is this 2px?
}
.claro .dijitTreeNode .dojoDndItemAfter .dijitTreeContent {
border-bottom: 2px solid @dnd-dropseparator-color; // TODO: normal separator is just 1px, why is this 2px?
}