2015-11-19 19:59:22 -05:00
|
|
|
// #docplaster
|
|
|
|
// #docregion full
|
2016-01-26 16:42:17 -05:00
|
|
|
import {Directive, ElementRef, Input} from 'angular2/core';
|
2015-11-19 19:59:22 -05:00
|
|
|
|
|
|
|
@Directive({
|
2015-12-10 23:27:41 -05:00
|
|
|
selector: '[myHighlight]',
|
2015-11-19 19:59:22 -05:00
|
|
|
host: {
|
|
|
|
'(mouseenter)': 'onMouseEnter()',
|
|
|
|
'(mouseleave)': 'onMouseLeave()'
|
|
|
|
}
|
|
|
|
})
|
|
|
|
|
2015-12-03 15:41:58 -05:00
|
|
|
// #docregion class-1
|
2015-12-16 22:38:07 -05:00
|
|
|
export class HighlightDirective {
|
2016-03-26 12:18:13 -04:00
|
|
|
|
|
|
|
private _defaultColor = 'red';
|
|
|
|
private _el:HTMLElement;
|
2015-12-03 15:41:58 -05:00
|
|
|
// #enddocregion class-1
|
2015-11-19 19:59:22 -05:00
|
|
|
// #enddocregion full
|
|
|
|
/*
|
|
|
|
// #docregion highlight
|
|
|
|
@Input() myHighlight: string;
|
|
|
|
// #enddocregion highlight
|
|
|
|
*/
|
|
|
|
// #docregion full
|
2016-03-26 12:18:13 -04:00
|
|
|
|
|
|
|
// #docregion defaultColor
|
|
|
|
@Input() set defaultColor(colorName:string){
|
|
|
|
this._defaultColor = colorName || this._defaultColor;
|
|
|
|
}
|
|
|
|
// #enddocregion defaultColor
|
2015-12-03 15:41:58 -05:00
|
|
|
// #docregion class-1
|
2016-03-26 12:18:13 -04:00
|
|
|
|
2015-11-19 19:59:22 -05:00
|
|
|
// #docregion color
|
2015-12-10 23:27:41 -05:00
|
|
|
@Input('myHighlight') highlightColor: string;
|
2015-11-19 19:59:22 -05:00
|
|
|
// #enddocregion color
|
|
|
|
|
2015-12-03 15:41:58 -05:00
|
|
|
// #enddocregion class-1
|
|
|
|
// #docregion class-1
|
2016-03-26 12:18:13 -04:00
|
|
|
constructor(el: ElementRef) { this._el = el.nativeElement; }
|
2015-11-19 19:59:22 -05:00
|
|
|
|
|
|
|
// #docregion mouse-enter
|
|
|
|
onMouseEnter() { this._highlight(this.highlightColor || this._defaultColor); }
|
|
|
|
// #enddocregion mouse-enter
|
|
|
|
onMouseLeave() { this._highlight(null); }
|
|
|
|
|
|
|
|
private _highlight(color:string) {
|
2016-03-26 12:18:13 -04:00
|
|
|
this._el.style.backgroundColor = color;
|
2015-11-19 19:59:22 -05:00
|
|
|
}
|
|
|
|
}
|
2015-12-03 15:41:58 -05:00
|
|
|
// #enddocregion class-1
|
2015-11-19 19:59:22 -05:00
|
|
|
// #enddocregion full
|