mirror of
https://github.com/lospec/pixel-editor.git
synced 2023-08-10 21:12:51 +03:00
54 lines
1.7 KiB
JavaScript
54 lines
1.7 KiB
JavaScript
//init variables
|
|
var canvasSize; // REFACTOR: Canvas class / getCanvasSize method
|
|
var zoom = 7; // REFACTOR: EditorState class/IIFE?
|
|
var lastMouseClickPos = [0,0]; // REFACTOR: Input IIFE via getter? <- probably editor state as it is changed by tools
|
|
var documentCreated = false; // REFACTOR: EditorState
|
|
|
|
//common elements
|
|
// REFACTOR: put brush and eyedropper preview in the respective tool implementations
|
|
var brushPreview = document.getElementById("brush-preview");
|
|
var eyedropperPreview = document.getElementById("eyedropper-preview");
|
|
|
|
// REFACTOR: File class?
|
|
var canvasView = document.getElementById("canvas-view");
|
|
|
|
// main canvas
|
|
// REFACTOR: carefully check if it's possible to remove this one
|
|
var canvas = document.getElementById('pixel-canvas');
|
|
// REFACTOR: find some way to put these in ColorModule?
|
|
var currentGlobalColor;
|
|
|
|
// Layers
|
|
// REFACTOR: File class / IIFE?
|
|
var layers = [];
|
|
// REFACTOR: EditorState / File class?
|
|
var currentLayer;
|
|
|
|
// VFX layer used to draw previews of the selection and things like that
|
|
// REFACTOR: File class
|
|
var VFXLayer;
|
|
// VFX canvas
|
|
var VFXCanvas = document.getElementById('vfx-canvas');
|
|
|
|
// TMP layer
|
|
// REFACTOR: File class
|
|
var TMPLayer;
|
|
// TMP canvas
|
|
var TMPCanvas = document.getElementById('tmp-canvas');
|
|
|
|
// Pixel grid layer
|
|
// REFACTOR: File class
|
|
var pixelGrid;
|
|
// Pixel grid canvas
|
|
var pixelGridCanvas;
|
|
|
|
// REFACTOR: I was thinking that the special layers (pixel grid, checkerboard ecc) could be an extension
|
|
// or a variatin of the standard Layer class? I wonder if we can use inheritance or something to
|
|
// recycle stuff
|
|
|
|
// Index of the first layer the user can use in the layers array
|
|
// REFACTOR: Consts?
|
|
var firstUserLayerIndex = 2;
|
|
// Number of layers that are only used by the editor
|
|
// REFACTOR: Consts?
|
|
var nAppLayers = 3; |