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

Side by Side Diff: charted/lib/charts/chart_renderer.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 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
« no previous file with comments | « charted/lib/charts/chart_legend.dart ('k') | charted/lib/charts/chart_series.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 //
2 // Copyright 2014 Google Inc. All rights reserved.
3 //
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file or at
6 // https://developers.google.com/open-source/licenses/bsd
7 //
8
9 part of charted.charts;
10
11 ///
12 /// Renders the chart on a CartesianArea.
13 ///
14 abstract class CartesianRenderer extends ChartRenderer {
15 /// Returns extent of the series. This extent is used by [ChartArea] to
16 /// set the output range of the corresponding scale/axis of the series.
17 ///
18 /// Extent has valid values only if [prepare] was already called.
19 Extent get extent;
20
21 /// Returns extent of a given row.
22 Extent extentForRow(Iterable row);
23
24 /// Indicates if this renderer uses range "band" on any of the dimension
25 /// axis. Band is space taken on the dimension axis (if more than a point).
26 ///
27 /// Examples:
28 /// A bar chart takes up space (width of the bar) on the dimension axis.
29 /// A line chart does not take any space
30 Iterable<int> get dimensionsUsingBand;
31
32 /// Hint for padding between two bands that [ChartArea] will use for layout.
33 /// This getter is called only for renderers that have [dimensionsUsingBand]
34 /// set to non-empty list.
35 double get bandInnerPadding;
36
37 /// Hint for padding before first and after the last bands
38 /// This getter is called only for renderers that have [dimensionsUsingBand]
39 /// set to non-empty list.
40 double get bandOuterPadding;
41
42 /// Render series data on the passed [host].
43 /// Draw will not be successful if [prepare] was not already called.
44 void draw(Element host, {Future schedulePostRender});
45 }
46
47 ///
48 /// Renders layout visualization on a LayoutArea
49 ///
50 abstract class LayoutRenderer extends ChartRenderer {
51 /// Create a layout/visualization from the data. Layout will not be successful
52 /// if [prepare] was not already called.
53 Iterable<ChartLegendItem> layout(Element host, {Future schedulePostRender});
54 }
55
56 ///
57 /// Common interface for all renderers in Charted
58 ///
59 abstract class ChartRenderer extends ChartRendererBehaviorSource {
60 /// Name of the renderer.
61 /// The name can only include chars that are allowed in the CSS for selectors.
62 String get name;
63
64 /// Prepare the chart for rendering.
65 /// - [area] represents the [ChartArea] on which the chart is rendered.
66 /// - [series] represents the [ChartSeries] that is rendered
67 bool prepare(ChartArea area, ChartSeries series);
68
69 /// Clears DOM created by this renderer and releases
70 /// references to passed objects.
71 void dispose();
72 }
OLDNEW
« no previous file with comments | « charted/lib/charts/chart_legend.dart ('k') | charted/lib/charts/chart_series.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698