Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(760)

Side by Side Diff: packages/charted/lib/charts/data_transformers/aggregation_transformer.dart

Issue 2989763002: Update charted to 0.4.8 and roll (Closed)
Patch Set: Removed Cutch from list of reviewers Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // 1 //
2 // Copyright 2014 Google Inc. All rights reserved. 2 // Copyright 2014 Google Inc. All rights reserved.
3 // 3 //
4 // Use of this source code is governed by a BSD-style 4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file or at 5 // license that can be found in the LICENSE file or at
6 // https://developers.google.com/open-source/licenses/bsd 6 // https://developers.google.com/open-source/licenses/bsd
7 // 7 //
8 8
9 part of charted.charts; 9 part of charted.charts;
10 10
11 /// Transforms the ChartData based on the specified dimension columns and facts 11 /// Transforms the ChartData based on the specified dimension columns and facts
12 /// columns indices. The values in the facts columns will be aggregated by the 12 /// columns indices. The values in the facts columns will be aggregated by the
13 /// tree hierarchy generated by the dimension columns. Expand and Collapse 13 /// tree hierarchy generated by the dimension columns. Expand and Collapse
14 /// methods may be called to display different levels of aggregation. 14 /// methods may be called to display different levels of aggregation.
15 /// 15 ///
16 /// The output ChartData produced by transform() will contain only columns in th e 16 /// The output ChartData produced by transform() will contain only columns in th e
17 /// original ChartData that were specified in dimensions or facts column indices . 17 /// original ChartData that were specified in dimensions or facts column indices .
18 /// The output column will be re-ordered first by the indices specified in the 18 /// The output column will be re-ordered first by the indices specified in the
19 /// dimension column indices then by the facts column indices. The data in the 19 /// dimension column indices then by the facts column indices. The data in the
20 /// cells of each row will also follow this rule. 20 /// cells of each row will also follow this rule.
21 class AggregationTransformer extends ChangeNotifier 21 class AggregationTransformer extends Observable
22 implements ChartDataTransform, ChartData { 22 implements ChartDataTransform, ChartData {
23 static const String AGGREGATION_TYPE_SUM = 'sum'; 23 static const String AGGREGATION_TYPE_SUM = 'sum';
24 static const String AGGREGATION_TYPE_MIN = 'min'; 24 static const String AGGREGATION_TYPE_MIN = 'min';
25 static const String AGGREGATION_TYPE_MAX = 'max'; 25 static const String AGGREGATION_TYPE_MAX = 'max';
26 static const String AGGREGATION_TYPE_VALID = 'valid'; 26 static const String AGGREGATION_TYPE_VALID = 'valid';
27 final SubscriptionsDisposer _dataSubscriptions = new SubscriptionsDisposer(); 27 final SubscriptionsDisposer _dataSubscriptions = new SubscriptionsDisposer();
28 final Set<List> _expandedSet = new Set(); 28 final Set<List> _expandedSet = new Set();
29 List<ChartColumnSpec> columns; 29 List<ChartColumnSpec> columns;
30 ObservableList<List> rows = new ObservableList<List>(); 30 ObservableList<List> rows = new ObservableList<List>();
31 List<int> _dimensionColumnIndices; 31 List<int> _dimensionColumnIndices;
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 _expandAllDimension = false; 201 _expandAllDimension = false;
202 _expandedSet.clear(); 202 _expandedSet.clear();
203 } 203 }
204 204
205 /// Tests if specific dimension is expanded. 205 /// Tests if specific dimension is expanded.
206 bool _isExpanded(List dimension) { 206 bool _isExpanded(List dimension) {
207 Function eq = const ListEquality().equals; 207 Function eq = const ListEquality().equals;
208 return _expandedSet.any((e) => eq(e, dimension)); 208 return _expandedSet.any((e) => eq(e, dimension));
209 } 209 }
210 } 210 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698