Skip to content

Commit 080dc18

Browse files
committed
Add more debug info
1 parent 3873811 commit 080dc18

File tree

4 files changed

+44
-4
lines changed

4 files changed

+44
-4
lines changed
Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
11
<div class="example">
2-
<pg-input-pixel-editor part="input" width="10" height="10" size="10" style="box-shadow:0 0 1rem rgba(0, 0, 0, 0.25)"></pg-input-pixel-editor>
2+
<pg-input-pixel-editor part="input" width="10" height="10" size="10" style="box-shadow:0 0 0.5rem rgba(0, 0, 0, 0.2)"></pg-input-pixel-editor>
33
<div>
44
<code>onchange: <span part="value1"></span></code>
55
</div>
66
<div>
77
<code>oninput: <span part="value2"></span></code>
88
</div>
9+
<div>
10+
<button part="modePixel">Pixel</button>
11+
<button part="modeLine">Line</button>
12+
<button part="modeRectangle">Rectangle</button>
13+
<button part="modeRectangleOutline">Rectangle Outline</button>
14+
<button part="modeEllipse">Ellipse</button>
15+
<button part="modeEllipseOutline">Ellipse Outline</button>
16+
</div>
17+
<div part="debug"></div>
918
</div>

src/pg/inputPixelEditor/__examples__/basic/basic.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,28 @@ export default class XPgInputPixelEditorBasic extends HTMLElement {
1212
@Part() $input: PgInputPixelEditor;
1313
@Part() $value1: HTMLSpanElement;
1414
@Part() $value2: HTMLSpanElement;
15+
@Part() $debug: HTMLDivElement;
16+
17+
@Part() $modePixel: HTMLButtonElement;
18+
@Part() $modeLine: HTMLButtonElement;
19+
@Part() $modeRectangle: HTMLButtonElement;
20+
@Part() $modeRectangleOutline: HTMLButtonElement;
21+
@Part() $modeEllipse: HTMLButtonElement;
22+
@Part() $modeEllipseOutline: HTMLButtonElement;
1523

1624
connectedCallback() {
1725
this.$input.addEventListener('change', this.handleChange.bind(this));
1826
this.$input.addEventListener('input', this.handleInput.bind(this));
27+
this.$input.addEventListener('debug', this.handleDebug.bind(this));
28+
this.$modePixel.addEventListener('click', () => {
29+
this.$input.inputModePixel();
30+
});
31+
this.$modeLine.addEventListener('click', () => {
32+
this.$input.inputModeLine();
33+
});
34+
this.$modeRectangle.addEventListener('click', () => {
35+
this.$input.inputModeRectangle();
36+
});
1937
}
2038

2139
handleChange(e: CustomEvent) {
@@ -27,4 +45,11 @@ export default class XPgInputPixelEditorBasic extends HTMLElement {
2745
const { value } = e.detail;
2846
this.$value2.innerText = value;
2947
}
48+
49+
handleDebug(e: CustomEvent) {
50+
const { baseLayer, editLayer, previewLayer } = e.detail;
51+
this.$debug.appendChild(baseLayer);
52+
this.$debug.appendChild(editLayer);
53+
this.$debug.appendChild(previewLayer);
54+
}
3055
}

src/pg/inputPixelEditor/inputPixelEditor.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@
44

55
canvas {
66
touch-action: none;
7+
user-select: none;
78
}

src/pg/inputPixelEditor/inputPixelEditor.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ export default class PgInputPixelEditor extends HTMLElement {
121121
const path = bitmaskToPath(this.#data, { scale: 1 });
122122
console.log('change:', path);
123123
this.dispatchEvent(new CustomEvent('change', {
124-
detail: path
124+
detail: { value: path }
125125
}));
126126
/*this.dispatchEvent(new CustomEvent('change', {
127127
detail: data
@@ -225,6 +225,13 @@ export default class PgInputPixelEditor extends HTMLElement {
225225
minX * totalSize, minY * totalSize, maxX * totalSize, maxY * totalSize,
226226
minX * totalSize, minY * totalSize, maxX * totalSize, maxY * totalSize
227227
);
228+
this.dispatchEvent(new CustomEvent('debug', {
229+
detail: {
230+
editLayer: this.#editLayer,
231+
baseLayer: this.#baseLayer,
232+
previewLayer: this.#previewLayer
233+
}
234+
}));
228235
console.log('render preview', minX, minY, maxX, maxY);
229236
}
230237

@@ -376,7 +383,6 @@ export default class PgInputPixelEditor extends HTMLElement {
376383
}
377384
break;
378385
case InputMode.Line:
379-
console.log(x, y)
380386
this.#setPreview(getLinePixels(startX, startY, lastX, lastY), x, y);
381387
break;
382388
case InputMode.Rectangle:
@@ -396,7 +402,6 @@ export default class PgInputPixelEditor extends HTMLElement {
396402
}
397403

398404
handlePointerEnter(event: MouseEvent) {
399-
console.log('hmmmm')
400405
if (!this.#isPressed && !this.#isEditing) {
401406
this.#isEditing = true;
402407
// base layer to main canvas

0 commit comments

Comments
 (0)