mirror of
https://code.lenaisten.de/Lenaisten/advent22.git
synced 2024-12-24 13:33:00 +00:00
"rectangles" property
This commit is contained in:
parent
93f31cd2b8
commit
9647132569
1 changed files with 14 additions and 6 deletions
|
@ -13,7 +13,7 @@
|
|||
@dblclick.left="remove_rect"
|
||||
>
|
||||
<Rect
|
||||
v-for="(rect, index) in rectangles"
|
||||
v-for="(rect, index) in _rectangles"
|
||||
:key="'rect' + index"
|
||||
:rectangle="rect"
|
||||
/>
|
||||
|
@ -56,7 +56,7 @@ export default class RectPad extends Vue {
|
|||
private dragging = false;
|
||||
private drag_rect?: Rectangle;
|
||||
private drag_origin = new Vector2D();
|
||||
private rectangles: Rectangle[] = [];
|
||||
private _rectangles: Rectangle[] = [];
|
||||
|
||||
private get preview_visible(): boolean {
|
||||
return this.drawing || this.dragging;
|
||||
|
@ -69,14 +69,22 @@ export default class RectPad extends Vue {
|
|||
).normalize();
|
||||
}
|
||||
|
||||
public get rectangles(): Rectangle[] {
|
||||
return this._rectangles; //.map((rect) => rect.normalize());
|
||||
}
|
||||
|
||||
public set rectangles(rects: Rectangle[]) {
|
||||
this._rectangles = rects; //.map((rect) => rect.normalize());
|
||||
}
|
||||
|
||||
private pop_rectangle(point: Vector2D): Rectangle | undefined {
|
||||
const idx = this.rectangles.findIndex((rect) => rect.contains(point));
|
||||
const idx = this._rectangles.findIndex((rect) => rect.contains(point));
|
||||
|
||||
if (idx === -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
return this.rectangles.splice(idx, 1)[0];
|
||||
return this._rectangles.splice(idx, 1)[0];
|
||||
}
|
||||
|
||||
private draw_start(event: MouseEvent) {
|
||||
|
@ -100,7 +108,7 @@ export default class RectPad extends Vue {
|
|||
return;
|
||||
}
|
||||
|
||||
this.rectangles.push(this.preview_rectangle);
|
||||
this._rectangles.push(this.preview_rectangle);
|
||||
}
|
||||
|
||||
private drag_start(event: MouseEvent) {
|
||||
|
@ -128,7 +136,7 @@ export default class RectPad extends Vue {
|
|||
}
|
||||
|
||||
this.dragging = false;
|
||||
this.rectangles.push(this.preview_rectangle);
|
||||
this._rectangles.push(this.preview_rectangle);
|
||||
}
|
||||
|
||||
private on_mousemove(event: MouseEvent) {
|
||||
|
|
Loading…
Reference in a new issue