| 
									
										
										
										
											2015-12-07 09:58:04 -07:00
										 |  |  | // #docplaster
 | 
					
						
							|  |  |  | // #docregion full
 | 
					
						
							|  |  |  | import 'package:angular2/angular2.dart'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | @Directive(selector: '[my-highlight]', host: const { | 
					
						
							|  |  |  |   '(mouseenter)': 'onMouseEnter()', | 
					
						
							|  |  |  |   '(mouseleave)': 'onMouseLeave()' | 
					
						
							|  |  |  | }) | 
					
						
							|  |  |  | // #docregion class-1
 | 
					
						
							|  |  |  | class Highlight { | 
					
						
							|  |  |  |   // #enddocregion class-1
 | 
					
						
							|  |  |  | // #enddocregion full
 | 
					
						
							|  |  |  |   /* | 
					
						
							|  |  |  | // #docregion highlight
 | 
					
						
							|  |  |  |   @Input() myHighlight: string; | 
					
						
							|  |  |  | // #enddocregion highlight
 | 
					
						
							|  |  |  |   */ | 
					
						
							|  |  |  | // #docregion full
 | 
					
						
							|  |  |  | // #docregion class-1
 | 
					
						
							|  |  |  | // #docregion color
 | 
					
						
							|  |  |  |   @Input('my-highlight') String highlightColor; | 
					
						
							|  |  |  | // #enddocregion color
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   String _defaultColor = 'red'; | 
					
						
							|  |  |  |   // #enddocregion class-1
 | 
					
						
							|  |  |  |   // #docregion defaultColor
 | 
					
						
							|  |  |  |   @Input() set defaultColor(String colorName) { | 
					
						
							|  |  |  |     _defaultColor = (colorName ?? _defaultColor); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   // #enddocregion defaultColor
 | 
					
						
							|  |  |  | // #docregion class-1
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   final ElementRef _element; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion mouse-enter
 | 
					
						
							|  |  |  |   onMouseEnter() { | 
					
						
							|  |  |  |     _highlight(highlightColor ?? _defaultColor); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #enddocregion mouse-enter
 | 
					
						
							|  |  |  |   onMouseLeave() { | 
					
						
							|  |  |  |     _highlight(null); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   void _highlight(String color) { | 
					
						
							| 
									
										
										
										
											2016-01-26 13:42:17 -08:00
										 |  |  |     _element.nativeElement.style.backgroundColor = color; | 
					
						
							| 
									
										
										
										
											2015-12-07 09:58:04 -07:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-01-26 13:42:17 -08:00
										 |  |  |   Highlight(this._element); | 
					
						
							| 
									
										
										
										
											2015-12-07 09:58:04 -07:00
										 |  |  | } | 
					
						
							|  |  |  | // #enddocregion class-1
 | 
					
						
							|  |  |  | // #enddocregion full
 |