36 lines
1.4 KiB
JavaScript
36 lines
1.4 KiB
JavaScript
function Vector(rune)
|
|
{
|
|
Module.call(this,rune);
|
|
|
|
this.parameters = [Any];
|
|
this.variables = {"fill_color" : "none","stroke_width" : 2,"stroke_color" : "#ffffff", "line_cap" : "square"};
|
|
|
|
this.layer = null;
|
|
|
|
this.install = function()
|
|
{
|
|
this.layer = new Layer("PathPreview",this);
|
|
this.layer.element.setAttribute("style","z-index:8000");
|
|
ronin.surface.add_layer(this.layer);
|
|
}
|
|
|
|
// Module
|
|
|
|
this.passive = function(cmd)
|
|
{
|
|
this.layer.clear();
|
|
this.layer.context().lineCap = cmd.variable("line_cap") ? cmd.variable("line_cap").value : "round";
|
|
this.layer.context().lineWidth = cmd.variable("stroke_width") ? cmd.variable("stroke_width").value : ronin.brush.size;
|
|
this.layer.context().strokeStyle = cmd.variable("stroke_color") ? cmd.variable("stroke_color").value : "#ffffff";
|
|
this.layer.context().stroke(new Path2D(cmd.content.join(" ")));
|
|
}
|
|
|
|
this.active = function(cmd)
|
|
{
|
|
this.layer.clear();
|
|
ronin.surface.active_layer.context().lineCap = cmd.variable("line_cap") ? cmd.variable("line_cap").value : "round";
|
|
ronin.surface.active_layer.context().lineWidth = cmd.variable("stroke_width") ? cmd.variable("stroke_width").value : ronin.brush.size;
|
|
ronin.surface.active_layer.context().strokeStyle = cmd.variable("stroke_color") ? cmd.variable("stroke_color").value : "#ffffff";
|
|
ronin.surface.active_layer.context().stroke(new Path2D(cmd.content.join(" ")));
|
|
}
|
|
} |