mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
72 lines
2.4 KiB
TypeScript
72 lines
2.4 KiB
TypeScript
/*!
|
|
* @license
|
|
* Copyright 2016 Alfresco Software, Ltd.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
import { Directive, ElementRef, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
|
import { Point } from './../models/point';
|
|
import { RaphaelBase } from './../raphael-base';
|
|
import { RaphaelService } from './../raphael.service';
|
|
|
|
@Directive({selector: 'raphael-icon-mule'})
|
|
export class RaphaelIconMuleDirective extends RaphaelBase implements OnInit {
|
|
@Input()
|
|
paper: any;
|
|
|
|
@Input()
|
|
position: Point;
|
|
|
|
@Input()
|
|
text: string;
|
|
|
|
@Output()
|
|
error = new EventEmitter();
|
|
|
|
@Input()
|
|
strokeWidth: number;
|
|
|
|
@Input()
|
|
fillColors: any;
|
|
|
|
@Input()
|
|
stroke: any;
|
|
|
|
@Input()
|
|
fillOpacity: any;
|
|
|
|
constructor(public elementRef: ElementRef,
|
|
raphaelService: RaphaelService) {
|
|
super(elementRef, raphaelService);
|
|
}
|
|
|
|
ngOnInit() {
|
|
|
|
this.draw(this.position);
|
|
}
|
|
|
|
public draw(position: Point) {
|
|
let path1 = this.paper.path(`M 8,0 C 3.581722,0 0,3.5817 0,8 c 0,4.4183 3.581722,8 8,8 4.418278,0 8,-3.5817 8,-8 L 16,7.6562
|
|
C 15.813571,3.3775 12.282847,0 8,0 z M 5.1875,2.7812 8,7.3437 10.8125,2.7812 c 1.323522,0.4299 2.329453,1.5645 2.8125,2.8438
|
|
1.136151,2.8609 -0.380702,6.4569 -3.25,7.5937 -0.217837,-0.6102 -0.438416,-1.2022 -0.65625,-1.8125 0.701032,-0.2274
|
|
1.313373,-0.6949 1.71875,-1.3125 0.73624,-1.2317 0.939877,-2.6305 -0.03125,-4.3125 l -2.75,4.0625 -0.65625,0 -0.65625,0 -2.75,-4
|
|
C 3.5268433,7.6916 3.82626,8.862 4.5625,10.0937 4.967877,10.7113 5.580218,11.1788 6.28125,11.4062 6.063416,12.0165 5.842837,12.6085
|
|
5.625,13.2187 2.755702,12.0819 1.238849,8.4858 2.375,5.625 2.858047,4.3457 3.863978,3.2112 5.1875,2.7812 z`).attr({
|
|
'stroke': this.stroke,
|
|
'fill': this.fillColors
|
|
});
|
|
return path1.transform('T' + position.x + ',' + position.y);
|
|
}
|
|
}
|