Skip to content

Commit

Permalink
add tasks to context
Browse files Browse the repository at this point in the history
  • Loading branch information
sgratzl committed Dec 8, 2018
1 parent e41023a commit 8d0aac6
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 1 deletion.
3 changes: 3 additions & 0 deletions src/provider/ADataProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import RankColumn from '../model/RankColumn';
import Ranking, {addColumn, EDirtyReason, orderChanged, removeColumn} from '../model/Ranking';
import {IColumnDump, IDataProvider, IDataProviderDump, IDataProviderOptions, IRankingDump, SCHEMA_REF} from './interfaces';
import {exportRanking, IExportOptions, map2Object, object2Map} from './utils';
import {IRenderTasks} from './tasks';

export {IExportOptions} from './utils';

Expand Down Expand Up @@ -182,6 +183,8 @@ abstract class ADataProvider extends AEventDispatcher implements IDataProvider {
*/
abstract getColumns(): IColumnDesc[];

abstract getTaskExecutor(): IRenderTasks;

/**
* adds a new ranking
* @param existing an optional existing ranking to clone
Expand Down
4 changes: 4 additions & 0 deletions src/provider/LocalDataProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,10 @@ export default class LocalDataProvider extends ACommonDataProvider {
return this.data.length;
}

getTaskExecutor() {
return this.tasks;
}

get data() {
return this._data;
}
Expand Down
3 changes: 3 additions & 0 deletions src/provider/interfaces.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import {Column, IColumnDesc, IGroup, IndicesArray, IDataRow} from '../model';
import Ranking from '../model/Ranking';
import '!file-loader?name=schema.4.0.0.json!./schema.json';
import {ISequence} from '../internal/interable';
import {IRenderTasks} from './tasks';


export interface IDataProviderOptions {
Expand All @@ -20,6 +21,8 @@ export interface IDataProvider extends AEventDispatcher {

getTotalNumberOfRows(): number;

getTaskExecutor(): IRenderTasks;

takeSnapshot(col: Column): void;

selectAllOf(ranking: Ranking): void;
Expand Down
2 changes: 1 addition & 1 deletion src/renderer/DateCellRenderer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ export default class DateCellRenderer implements ICellRendererFactory {
update: (n: HTMLDivElement, group: IOrderedGroup) => {
const isGrouped = col.isGroupedBy() >= 0;
if (isGrouped) {
return context.tasks.groupRows(col, group, , 'date', (rows) => choose(rows, col.getDateGrouper(), col)).then((chosen) => {
return context.tasks.groupRows(col, group, 'date', (rows) => choose(rows, col.getDateGrouper(), col)).then((chosen) => {
if (typeof chosen !== 'symbol') {
setText(n, chosen.name);
}
Expand Down
2 changes: 2 additions & 0 deletions src/ui/EngineRenderer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ export default class EngineRenderer extends AEventDispatcher {
idPrefix: this.idPrefix,
document: parent.ownerDocument!,
provider: data,
tasks: data.getTaskExecutor(),
dialogManager,
toolbar: this.options.toolbar,
flags: <ILineUpFlags>this.options.flags,
Expand Down Expand Up @@ -174,6 +175,7 @@ export default class EngineRenderer extends AEventDispatcher {

this.data = data;
(<any>this.ctx).provider = data;
(<any>this.ctx).tasks = data.getTaskExecutor();

this.initProvider(data);
}
Expand Down

0 comments on commit 8d0aac6

Please sign in to comment.