|
@@ -3,6 +3,11 @@ var app = (function() {
|
|
|
var height = window.innerHeight;
|
|
|
var layers = [];
|
|
|
var _layer = [];
|
|
|
+ var tools = [];
|
|
|
+ var menu = [];
|
|
|
+ var layer = undefined;
|
|
|
+ var _selectedTool = [];
|
|
|
+ var group = undefined;
|
|
|
|
|
|
var stage = new Konva.Stage({
|
|
|
container: "container",
|
|
@@ -35,6 +40,7 @@ var app = (function() {
|
|
|
createLayer();
|
|
|
configureDragAndDrop();
|
|
|
layer = currentLayer();
|
|
|
+ configureGroup();
|
|
|
}
|
|
|
|
|
|
function currentLayer() {
|
|
@@ -44,6 +50,11 @@ var app = (function() {
|
|
|
|
|
|
function configureDragAndDrop() {
|
|
|
stage.on("click tap", function(e) {
|
|
|
+ var tool = getSelectedTool();
|
|
|
+ if (tool != undefined && (e.target == undefined || e.target === stage)) {
|
|
|
+ tool.draw();
|
|
|
+ }
|
|
|
+
|
|
|
if (e.target === stage) {
|
|
|
stage.find("Transformer").destroy();
|
|
|
layer.draw();
|
|
@@ -61,12 +72,50 @@ var app = (function() {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ function configureGroup() {
|
|
|
+ group = new Konva.Group({
|
|
|
+ x: 30,
|
|
|
+ rotation: 10,
|
|
|
+ scaleX: 1.5
|
|
|
+ });
|
|
|
+ layer.add(group);
|
|
|
+ }
|
|
|
+
|
|
|
+ function setSelectedTool(tool) {
|
|
|
+ clearSelectedTool();
|
|
|
+ _selectedTool.push(tool);
|
|
|
+ }
|
|
|
+
|
|
|
+ function clearSelectedTool() {
|
|
|
+ _selectedTool = [];
|
|
|
+ setStatus("");
|
|
|
+ }
|
|
|
+
|
|
|
+ function getSelectedTool() {
|
|
|
+ if (_selectedTool.length > 0) return _selectedTool[0];
|
|
|
+ return undefined;
|
|
|
+ }
|
|
|
+
|
|
|
+ function getRelativePointerPosition() {
|
|
|
+ return stage.getPointerPosition();
|
|
|
+ }
|
|
|
+
|
|
|
+ function setStatus(status) {
|
|
|
+ document.getElementById("status").innerHTML = status;
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
stage: stage,
|
|
|
currentLayer: currentLayer,
|
|
|
createLayer: createLayer,
|
|
|
screen: screen,
|
|
|
bootstrap: bootstrap,
|
|
|
- layers: layers
|
|
|
+ layers: layers,
|
|
|
+ tools: tools,
|
|
|
+ setSelectedTool: setSelectedTool,
|
|
|
+ clearSelectedTool: clearSelectedTool,
|
|
|
+ getSelectedTool: getSelectedTool,
|
|
|
+ pos: getRelativePointerPosition,
|
|
|
+ setStatus: setStatus
|
|
|
};
|
|
|
})();
|