From 2b1ba37c195761b32f7126a874067e7549925ddd Mon Sep 17 00:00:00 2001 From: timb Date: Thu, 30 Jul 2015 02:59:28 -0700 Subject: make a note of data structure for sanity purposes if code is read years later --- js/png.js | 8 ++++++++ js/undo.js | 12 +++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/js/png.js b/js/png.js index df9960c..e9b326e 100644 --- a/js/png.js +++ b/js/png.js @@ -60,6 +60,14 @@ var crc32 = function(u8){ var signature = new Uint8Array([137, 80, 78, 71, 13, 10, 26, 10]) var te, td +// decodes chunks in png +// see http://www.w3.org/TR/PNG/#5Chunk-layout +// returns something like +// [{length: Number, +// type: String[4], +// crc: Number, +// data: Uint8Array[] // optional +// }, ...] var decode = function(buf, err){ var u8a = new Uint8Array(buf) var dv = new DataView(buf) diff --git a/js/undo.js b/js/undo.js index 436422f..44b137a 100644 --- a/js/undo.js +++ b/js/undo.js @@ -33,6 +33,12 @@ var update_dom = function(){ update_dom_visibility('redo') } +// state is an undo or redo state that might contain these props +// {lexs: {'0,0': LexState, ...}, +// focus: {x:, y: }, +// size: {w:, h: }, +// rects: [{x:, y:, w:, h:, lexs: [LexState, ...]}, ...] +// } var new_state = function(){ var state = {lexs:{}}; save_focus(canvas.focus_x, canvas.focus_y, state) @@ -98,20 +104,20 @@ var save_resize = function(w, h, old_w, old_h, state){ state = state || current_undo save_size(old_w, old_h, state) if (old_w > w){ - // .----. + // .---XX // | XX // |___XX save_rect(w, 0, old_w - w, old_h, state) if (old_h > h){ // .----. // | | - // |XXX_| + // XXXX_| save_rect(0, h, w, old_h - h, state) } } else if (old_h > h){ // .----. // | | - // |XXXX| + // XXXXXX save_rect(0, h, old_w, old_h - h, state) } } -- cgit v1.2.3-70-g09d2