Skip to content
Snippets Groups Projects
Commit 9d21e5d8 authored by rhenck's avatar rhenck
Browse files

Table: Fix index when removing child elements

parent f88d27bf
No related branches found
No related tags found
No related merge requests found
...@@ -94,7 +94,7 @@ export class TableComponent extends CompoundElementComponent implements OnInit { ...@@ -94,7 +94,7 @@ export class TableComponent extends CompoundElementComponent implements OnInit {
@Input() mediaStatusChanged!: Subject<string>; @Input() mediaStatusChanged!: Subject<string>;
@Input() editorMode: boolean = false; @Input() editorMode: boolean = false;
@Output() elementAdded = new EventEmitter<{ elementType: UIElementType, row: number, col: number }>(); @Output() elementAdded = new EventEmitter<{ elementType: UIElementType, row: number, col: number }>();
@Output() elementRemoved = new EventEmitter<number>(); @Output() elementRemoved = new EventEmitter<{ row: number, col: number }>();
@Output() childElementSelected = new EventEmitter<TableChildOverlay>(); @Output() childElementSelected = new EventEmitter<TableChildOverlay>();
@ViewChildren(TableChildOverlay) compoundChildren!: QueryList<TableChildOverlay>; @ViewChildren(TableChildOverlay) compoundChildren!: QueryList<TableChildOverlay>;
...@@ -125,8 +125,7 @@ export class TableComponent extends CompoundElementComponent implements OnInit { ...@@ -125,8 +125,7 @@ export class TableComponent extends CompoundElementComponent implements OnInit {
} }
removeElement(row: number, col: number): void { removeElement(row: number, col: number): void {
this.elementRemoved.emit(this.elementGrid.flat() this.elementRemoved.emit({ row: row, col: col });
.findIndex(el => el?.position.gridRow === (row + 1) && el?.position.gridColumn === (col + 1)));
this.refresh(); this.refresh();
} }
} }
...@@ -69,7 +69,9 @@ export class TableEditDialogComponent { ...@@ -69,7 +69,9 @@ export class TableEditDialogComponent {
this.tableComp.refresh(); this.tableComp.refresh();
} }
removeElement(index: number): void { removeElement(coords: { row: number, col: number }): void {
const index = this.newTable.elements
.findIndex(el => el.position.gridRow === (coords.row + 1) && el.position.gridColumn === (coords.col + 1));
this.newTable.elements.splice(index, 1); this.newTable.elements.splice(index, 1);
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment