</div>
</div>
-<div style="clear:both"></div>
-
- <mat-table [dataSource]="dataSource" matSort>
-
- <ng-container matColumnDef="select">
- <mat-header-cell *matHeaderCellDef>
- <mat-checkbox (change)="$event ? masterToggle() : null"
- [checked]="selection.hasValue() && isAllSelected()"
- [indeterminate]="selection.hasValue() && !isAllSelected()">
- </mat-checkbox>
- </mat-header-cell>
- <mat-cell *matCellDef="let row">
- <mat-checkbox (click)="$event.stopPropagation()"
- (change)="$event ? selection.toggle(row) : null"
- [checked]="selection.isSelected(row)">
- </mat-checkbox>
- </mat-cell>
- </ng-container>
-
- <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
- <mat-row
- (click)="logClick(row)"
- *matRowDef="let row; columns: displayedColumns;"
- [ngClass]="{'grid-row-selected': rowIsSelected(row)}">
- </mat-row>
-
- <ng-container matColumnDef="name">
- <mat-header-cell *matHeaderCellDef mat-sort-header> Name </mat-header-cell>
- <mat-cell *matCellDef="let row"> {{row.name}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="state">
- <mat-header-cell *matHeaderCellDef mat-sort-header> State </mat-header-cell>
- <mat-cell *matCellDef="let row"> {{row.state}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="stuff">
- <mat-header-cell *matHeaderCellDef mat-sort-header> Stuff </mat-header-cell>
- <mat-cell *matCellDef="let row"> {{row.stuff}} </mat-cell>
- </ng-container>
-
- <ng-container *ngFor="let col of dynamicColumns()" matColumnDef="{{col.field}}">
- <mat-header-cell *matHeaderCellDef mat-sort-header>{{col.label}}</mat-header-cell>
- <mat-cell *matCellDef="let row"> {{col.cell(row)}} </mat-cell>
- </ng-container>
-
- </mat-table>
+<mat-table [dataSource]="dataSource" matSort>
+ <ng-container matColumnDef="select">
+ <mat-header-cell *matHeaderCellDef>
+ <mat-checkbox (change)="$event ? masterToggle() : null"
+ [checked]="selection.hasValue() && isAllSelected()"
+ [indeterminate]="selection.hasValue() && !isAllSelected()">
+ </mat-checkbox>
+ </mat-header-cell>
+ <mat-cell *matCellDef="let row">
+ <mat-checkbox (click)="$event.stopPropagation()"
+ (change)="$event ? selection.toggle(row) : null"
+ [checked]="selection.isSelected(row)">
+ </mat-checkbox>
+ </mat-cell>
+ </ng-container>
+
+ <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
+ <mat-row
+ (click)="logClick(row)"
+ (dblclick)="logDblClick(row)"
+ *matRowDef="let row; columns: displayedColumns;"
+ [ngClass]="{'grid-row-selected': rowIsSelected(row)}">
+ </mat-row>
+
+ <ng-container matColumnDef="name">
+ <mat-header-cell *matHeaderCellDef mat-sort-header> Name </mat-header-cell>
+ <mat-cell *matCellDef="let row"> {{row.name}} </mat-cell>
+ </ng-container>
+
+ <ng-container matColumnDef="state">
+ <mat-header-cell *matHeaderCellDef mat-sort-header> State </mat-header-cell>
+ <mat-cell *matCellDef="let row"> {{row.state}} </mat-cell>
+ </ng-container>
+
+ <ng-container matColumnDef="stuff">
+ <mat-header-cell *matHeaderCellDef mat-sort-header> Stuff </mat-header-cell>
+ <mat-cell *matCellDef="let row"> {{row.stuff}} </mat-cell>
+ </ng-container>
+
+ <ng-container *ngFor="let col of dynamicColumns()" matColumnDef="{{col.field}}">
+ <mat-header-cell *matHeaderCellDef mat-sort-header>{{col.label}}</mat-header-cell>
+ <mat-cell *matCellDef="let row"> {{col.cell(row)}} </mat-cell>
+ </ng-container>
+</mat-table>
import {Component, OnInit, ViewChild, Input, TemplateRef} from '@angular/core';
import {EgProgressDialogComponent} from '@eg/share/dialog/progress.component';
+import {EgIdlService} from '@eg/core/idl.service';
import {EgToastService} from '@eg/share/toast/toast.service';
import {EgStringService} from '@eg/share/string/string.service';
import {Observable} from 'rxjs/Rx';
logClick(row) {
console.log('clicked on row ' + row.name);
}
+ logDblClick(row) {
+ console.log('dblclicked on row ' + row.name);
+ }
+
rowIsSelected(row): boolean { // grid row
return this.selection.selected &&
this.selection.selected.filter(r => r.id == row.id).length > 0;