diff --git a/index.html b/index.html
index d826544..edf1e4b 100644
--- a/index.html
+++ b/index.html
@@ -4,10 +4,7 @@
BittMapp
-
-
-
-
+
diff --git a/package.json b/package.json
index 4dbb7d3..97a6d41 100644
--- a/package.json
+++ b/package.json
@@ -3,7 +3,7 @@
"version": "0.0.1",
"description": "BittMapp - A monochrome bitmap editor",
"scripts": {
- "build": "tslint -c tslint.json \"src/**/*.ts\" && tsc"
+ "build": "rm static/js/*.js && tslint -c tslint.json \"src/**/*.ts\" && tsc && cat static/js/*.js > static/js/dist.js"
},
"author": "Nathan Kunicki ",
"license": "MIT",
diff --git a/src/actionlist.ts b/src/actionlist.ts
new file mode 100644
index 0000000..6299a6a
--- /dev/null
+++ b/src/actionlist.ts
@@ -0,0 +1,12 @@
+class ActionList extends LinkedList {
+
+
+ private _current: ActionNode;
+
+
+ public push (node: LinkedNode): void {
+ // super(node);
+ }
+
+
+}
diff --git a/src/actionnode.ts b/src/actionnode.ts
new file mode 100644
index 0000000..1bb29ad
--- /dev/null
+++ b/src/actionnode.ts
@@ -0,0 +1,15 @@
+class ActionNode extends LinkedNode {
+
+
+ public undo: () => void;
+ public redo: () => void;
+
+
+ constructor (undo: () => void, redo: () => void) {
+ super();
+ this.undo = undo;
+ this.redo = redo;
+ }
+
+
+}
diff --git a/src/bmptools.ts b/src/bmptools.ts
index 547595f..7a81df3 100644
--- a/src/bmptools.ts
+++ b/src/bmptools.ts
@@ -15,11 +15,9 @@ interface IBMPHeaderData {
interface IBittMappData {
-
data: Uint8Array;
width: number;
height: number;
-
}
diff --git a/src/editor.ts b/src/editor.ts
index 5b7373d..1c20130 100644
--- a/src/editor.ts
+++ b/src/editor.ts
@@ -1,4 +1,4 @@
-interface IBittMappEditorConstructorOptions {
+interface IEditorConstructorOptions {
canvas: HTMLCanvasElement;
canvasWidth: number;
canvasHeight: number;
@@ -20,7 +20,7 @@ enum Mode {
}
-class BittMappEditor {
+class Editor {
public canvasWidth: number;
@@ -55,7 +55,7 @@ class BittMappEditor {
private _selection: Uint8Array;
- constructor (options: IBittMappEditorConstructorOptions) {
+ constructor (options: IEditorConstructorOptions) {
options = options || {};
diff --git a/src/linkedlist.ts b/src/linkedlist.ts
new file mode 100644
index 0000000..284724b
--- /dev/null
+++ b/src/linkedlist.ts
@@ -0,0 +1,31 @@
+class LinkedList {
+
+
+ private _start: LinkedNode;
+ private _end: LinkedNode;
+
+ public push (node: LinkedNode): void {
+
+ if (!this._start) {
+ this._start = node;
+ this._end = node;
+ return;
+ }
+
+ this._end.next = node;
+ this._end = node;
+
+ }
+
+ public pop (): LinkedNode | null {
+ if (!this._end) {
+ return null;
+ }
+
+ const node: LinkedNode = this._end;
+ this._end = this._end.prev;
+ return node;
+
+ }
+
+}
diff --git a/src/linkednode.ts b/src/linkednode.ts
new file mode 100644
index 0000000..6e8ab58
--- /dev/null
+++ b/src/linkednode.ts
@@ -0,0 +1,34 @@
+class LinkedNode {
+
+
+ private _prev: LinkedNode;
+ private _next: LinkedNode;
+
+
+ get next (): LinkedNode {
+ return this._next;
+ }
+
+
+ set next (node: LinkedNode) {
+ this._next = node;
+ if (node.prev !== this) {
+ node.prev = this;
+ }
+ }
+
+
+ get prev (): LinkedNode {
+ return this._prev;
+ }
+
+
+ set prev (node: LinkedNode) {
+ this._prev = node;
+ if (node.next !== this) {
+ node.next = this;
+ }
+ }
+
+
+}
diff --git a/src/main.ts b/src/main.ts
index 3966cc9..3a79626 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,6 +1,6 @@
window.onload = (): void => {
- const editor: BittMappEditor = new BittMappEditor({
+ const editor: Editor = new Editor({
canvas: document.getElementById("editor") as HTMLCanvasElement,
canvasHeight: 480,
canvasWidth: 480,