ziya 1.0.0 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +74 -28
- data/README.txt +91 -14
- data/Rakefile +1 -1
- data/bin/ziyafy +2 -0
- data/charts/AC_RunActiveContent.js +292 -0
- data/charts/charts.swf +0 -0
- data/charts/charts_library/ar3d.swf +0 -0
- data/charts/charts_library/arno.swf +0 -0
- data/charts/charts_library/ars3.swf +0 -0
- data/charts/charts_library/arst.swf +0 -0
- data/charts/charts_library/brfl.swf +0 -0
- data/charts/charts_library/brno.swf +0 -0
- data/charts/charts_library/brst.swf +0 -0
- data/charts/charts_library/buno.swf +0 -0
- data/charts/charts_library/cl3d.swf +0 -0
- data/charts/charts_library/clfl.swf +0 -0
- data/charts/charts_library/clno.swf +0 -0
- data/charts/charts_library/clp3.swf +0 -0
- data/charts/charts_library/cls3.swf +0 -0
- data/charts/charts_library/clst.swf +0 -0
- data/charts/charts_library/cnno.swf +0 -0
- data/charts/charts_library/lnno.swf +0 -0
- data/charts/charts_library/mxno.swf +0 -0
- data/charts/charts_library/pi3d.swf +0 -0
- data/charts/charts_library/pino.swf +0 -0
- data/charts/charts_library/pono.swf +0 -0
- data/charts/charts_library/scno.swf +0 -0
- data/charts/full_screen.swf +0 -0
- data/charts/sliders/black.swf +0 -0
- data/charts/sliders/preview_handle_1.swf +0 -0
- data/charts/sliders/preview_handle_2.swf +0 -0
- data/fred.rb +36 -0
- data/gauges/designs/circle.yml +18 -0
- data/gauges/designs/signal.yml +14 -0
- data/gauges/designs/thermo.yml +119 -0
- data/gauges/designs/title.yml +11 -0
- data/gauges/gauge.swf +0 -0
- data/lib/ziya.rb +17 -5
- data/lib/ziya/charts/area.rb +6 -1
- data/lib/ziya/charts/area_threed.rb +16 -0
- data/lib/ziya/charts/bar.rb +8 -3
- data/lib/ziya/charts/base.rb +210 -153
- data/lib/ziya/charts/bubble.rb +18 -0
- data/lib/ziya/charts/candle_stick.rb +6 -1
- data/lib/ziya/charts/column.rb +7 -2
- data/lib/ziya/charts/column_threed.rb +6 -1
- data/lib/ziya/charts/floating_bar.rb +6 -1
- data/lib/ziya/charts/floating_column.rb +7 -2
- data/lib/ziya/charts/line.rb +7 -2
- data/lib/ziya/charts/mixed.rb +5 -0
- data/lib/ziya/charts/parallel_threed_column.rb +6 -1
- data/lib/ziya/charts/pie.rb +7 -2
- data/lib/ziya/charts/pie_threed.rb +7 -2
- data/lib/ziya/charts/polar.rb +6 -1
- data/lib/ziya/charts/scatter.rb +6 -1
- data/lib/ziya/charts/stacked_area.rb +5 -0
- data/lib/ziya/charts/stacked_bar.rb +5 -0
- data/lib/ziya/charts/stacked_column.rb +7 -2
- data/lib/ziya/charts/stacked_threed_area.rb +16 -0
- data/lib/ziya/charts/stacked_threed_column.rb +6 -1
- data/lib/ziya/components/area.rb +5 -2
- data/lib/ziya/components/axis_category.rb +8 -60
- data/lib/ziya/components/axis_ticks.rb +25 -27
- data/lib/ziya/components/axis_value.rb +5 -48
- data/lib/ziya/components/base.rb +59 -17
- data/lib/ziya/components/bevel.rb +15 -0
- data/lib/ziya/components/blur.rb +13 -0
- data/lib/ziya/components/chart_border.rb +4 -23
- data/lib/ziya/components/chart_grid_h.rb +17 -19
- data/lib/ziya/components/chart_grid_v.rb +18 -19
- data/lib/ziya/components/chart_guide.rb +16 -0
- data/lib/ziya/components/chart_label.rb +16 -0
- data/lib/ziya/components/chart_pref.rb +12 -12
- data/lib/ziya/components/chart_rect.rb +27 -26
- data/lib/ziya/components/chart_transition.rb +15 -16
- data/lib/ziya/components/circle.rb +5 -2
- data/lib/ziya/components/draw.rb +12 -11
- data/lib/ziya/components/draw_base.rb +10 -0
- data/lib/ziya/components/filter.rb +26 -0
- data/lib/ziya/components/glow.rb +14 -0
- data/lib/ziya/components/image.rb +5 -1
- data/lib/ziya/components/legend.rb +18 -0
- data/lib/ziya/components/line.rb +6 -2
- data/lib/ziya/components/link.rb +9 -9
- data/lib/ziya/components/link_data.rb +9 -10
- data/lib/ziya/components/rect.rb +7 -2
- data/lib/ziya/components/scroll.rb +26 -0
- data/lib/ziya/components/shadow.rb +14 -0
- data/lib/ziya/components/text.rb +5 -1
- data/lib/ziya/components/update.rb +19 -0
- data/lib/ziya/gauges/base.rb +172 -0
- data/lib/ziya/gauges/radial.rb +18 -0
- data/lib/ziya/gauges/signal.rb +138 -0
- data/lib/ziya/gauges/support/area.rb +13 -0
- data/lib/ziya/gauges/support/base.rb +33 -0
- data/lib/ziya/gauges/support/circle.rb +14 -0
- data/lib/ziya/gauges/support/design.rb +5 -0
- data/lib/ziya/gauges/support/image.rb +12 -0
- data/lib/ziya/gauges/support/line.rb +12 -0
- data/lib/ziya/gauges/support/link.rb +24 -0
- data/lib/ziya/gauges/support/move.rb +15 -0
- data/lib/ziya/gauges/support/point.rb +12 -0
- data/lib/ziya/gauges/support/polygon.rb +13 -0
- data/lib/ziya/gauges/support/radial_base.rb +21 -0
- data/lib/ziya/gauges/support/radial_numbers.rb +41 -0
- data/lib/ziya/gauges/support/radial_ticks.rb +29 -0
- data/lib/ziya/gauges/support/rect.rb +14 -0
- data/lib/ziya/gauges/support/rotate.rb +15 -0
- data/lib/ziya/gauges/support/scale.rb +15 -0
- data/lib/ziya/gauges/support/text.rb +21 -0
- data/lib/ziya/gauges/support/update.rb +12 -0
- data/lib/ziya/gauges/thermo.rb +121 -0
- data/lib/ziya/helpers/base_helper.rb +39 -6
- data/lib/ziya/utils/text.rb +6 -0
- data/lib/ziya/version.rb +1 -1
- data/lib/ziya/ziya_helper.rb +289 -62
- data/spec/charts/base_spec.rb +35 -21
- data/spec/charts/chart_type_spec.rb +24 -3
- data/spec/components/area_spec.rb +9 -2
- data/spec/components/draw_spec.rb +1 -2
- data/spec/components/filter_spec.rb +27 -0
- data/spec/components/link_spec.rb +1 -2
- data/spec/components/series_color_spec.rb +1 -2
- data/spec/components/series_explode_spec.rb +1 -2
- data/spec/components/series_switch_spec.rb +1 -2
- data/spec/designs/circle.yml +7 -0
- data/spec/designs/crapping_out.yml +8 -0
- data/spec/designs/gauge_1.yml +43 -0
- data/spec/designs/gauge_2.yml +11 -0
- data/spec/designs/gauge_no_name.yml +43 -0
- data/spec/designs/gauge_raw.yml +5 -0
- data/spec/designs/thermo.yml +13 -0
- data/spec/gauges/base_spec.rb +90 -0
- data/spec/gauges/signal_spec.rb +36 -0
- data/spec/gauges/support/area_spec.rb +40 -0
- data/spec/gauges/support/circle_spec.rb +78 -0
- data/spec/gauges/support/image_spec.rb +35 -0
- data/spec/gauges/support/line_spec.rb +34 -0
- data/spec/gauges/support/link_spec.rb +35 -0
- data/spec/gauges/support/move_spec.rb +45 -0
- data/spec/gauges/support/polygon_spec.rb +36 -0
- data/spec/gauges/support/radial_numbers_spec.rb +35 -0
- data/spec/gauges/support/radial_ticks_spec.rb +30 -0
- data/spec/gauges/support/rotate_spec.rb +45 -0
- data/spec/gauges/support/scale_spec.rb +46 -0
- data/spec/gauges/support/text_spec.rb +40 -0
- data/spec/gauges/thermo_spec.rb +49 -0
- data/spec/helpers/base_helper_spec.rb +20 -6
- data/spec/spec_helper.rb +4 -1
- data/spec/test_helpers/gauge_2_helper.rb +17 -0
- data/spec/utils/logger_spec.rb +1 -3
- data/spec/utils/text_spec.rb +1 -2
- data/spec/ziya_helper_spec.rb +88 -11
- data/spec/ziya_spec.rb +1 -1
- data/tasks/gem.rake +1 -1
- metadata +79 -32
- data/charts/themes/commando/bar_chart.yml +0 -9
- data/charts/themes/commando/base_chart.yml +0 -65
- data/charts/themes/commando/column_chart.yml +0 -13
- data/charts/themes/commando/column_threed_chart.yml +0 -25
- data/charts/themes/commando/parallel_threed_column_chart.yml +0 -17
- data/charts/themes/commando/pie_chart.yml +0 -22
- data/charts/themes/commando/pie_threed_chart.yml +0 -28
- data/charts/themes/commando/polar_chart.yml +0 -11
- data/charts/themes/commando/stacked_bar_chart.yml +0 -9
- data/charts/themes/commando/stacked_column_chart.yml +0 -14
- data/charts/themes/commando/stacked_threed_column_chart.yml +0 -17
- data/charts/themes/default/bar_chart.yml +0 -3
- data/charts/themes/default/base_chart.yml +0 -67
- data/charts/themes/default/column_chart.yml +0 -13
- data/charts/themes/default/column_threed_chart.yml +0 -25
- data/charts/themes/default/parallel_threed_column_chart.yml +0 -17
- data/charts/themes/default/pie_chart.yml +0 -29
- data/charts/themes/default/pie_threed_chart.yml +0 -28
- data/charts/themes/default/polar_chart.yml +0 -12
- data/charts/themes/default/stacked_bar_chart.yml +0 -3
- data/charts/themes/default/stacked_column_chart.yml +0 -14
- data/charts/themes/default/stacked_threed_column_chart.yml +0 -17
- data/charts/themes/default/test.yml +0 -4
- data/lib/ziya/components/chart_value.rb +0 -71
- data/lib/ziya/components/legend_label.rb +0 -18
- data/lib/ziya/components/legend_rect.rb +0 -19
- data/lib/ziya/components/legend_transition.rb +0 -18
- data/lib/ziya/components/live_update.rb +0 -21
data/Manifest.txt
CHANGED
@@ -3,12 +3,16 @@ Manifest.txt
|
|
3
3
|
README.txt
|
4
4
|
Rakefile
|
5
5
|
bin/ziyafy
|
6
|
+
charts/AC_RunActiveContent.js
|
6
7
|
charts/charts.swf
|
8
|
+
charts/charts_library/ar3d.swf
|
7
9
|
charts/charts_library/arno.swf
|
10
|
+
charts/charts_library/ars3.swf
|
8
11
|
charts/charts_library/arst.swf
|
9
12
|
charts/charts_library/brfl.swf
|
10
13
|
charts/charts_library/brno.swf
|
11
14
|
charts/charts_library/brst.swf
|
15
|
+
charts/charts_library/buno.swf
|
12
16
|
charts/charts_library/cl3d.swf
|
13
17
|
charts/charts_library/clfl.swf
|
14
18
|
charts/charts_library/clno.swf
|
@@ -22,33 +26,22 @@ charts/charts_library/pi3d.swf
|
|
22
26
|
charts/charts_library/pino.swf
|
23
27
|
charts/charts_library/pono.swf
|
24
28
|
charts/charts_library/scno.swf
|
25
|
-
charts/
|
26
|
-
charts/
|
27
|
-
charts/
|
28
|
-
charts/
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
charts/themes/commando/stacked_threed_column_chart.yml
|
36
|
-
charts/themes/default/bar_chart.yml
|
37
|
-
charts/themes/default/base_chart.yml
|
38
|
-
charts/themes/default/column_chart.yml
|
39
|
-
charts/themes/default/column_threed_chart.yml
|
40
|
-
charts/themes/default/parallel_threed_column_chart.yml
|
41
|
-
charts/themes/default/pie_chart.yml
|
42
|
-
charts/themes/default/pie_threed_chart.yml
|
43
|
-
charts/themes/default/polar_chart.yml
|
44
|
-
charts/themes/default/stacked_bar_chart.yml
|
45
|
-
charts/themes/default/stacked_column_chart.yml
|
46
|
-
charts/themes/default/stacked_threed_column_chart.yml
|
47
|
-
charts/themes/default/test.yml
|
29
|
+
charts/full_screen.swf
|
30
|
+
charts/sliders/black.swf
|
31
|
+
charts/sliders/preview_handle_1.swf
|
32
|
+
charts/sliders/preview_handle_2.swf
|
33
|
+
fred.rb
|
34
|
+
gauges/designs/circle.yml
|
35
|
+
gauges/designs/signal.yml
|
36
|
+
gauges/designs/thermo.yml
|
37
|
+
gauges/designs/title.yml
|
38
|
+
gauges/gauge.swf
|
48
39
|
lib/ziya.rb
|
49
40
|
lib/ziya/charts/area.rb
|
41
|
+
lib/ziya/charts/area_threed.rb
|
50
42
|
lib/ziya/charts/bar.rb
|
51
43
|
lib/ziya/charts/base.rb
|
44
|
+
lib/ziya/charts/bubble.rb
|
52
45
|
lib/ziya/charts/candle_stick.rb
|
53
46
|
lib/ziya/charts/column.rb
|
54
47
|
lib/ziya/charts/column_threed.rb
|
@@ -64,35 +57,64 @@ lib/ziya/charts/scatter.rb
|
|
64
57
|
lib/ziya/charts/stacked_area.rb
|
65
58
|
lib/ziya/charts/stacked_bar.rb
|
66
59
|
lib/ziya/charts/stacked_column.rb
|
60
|
+
lib/ziya/charts/stacked_threed_area.rb
|
67
61
|
lib/ziya/charts/stacked_threed_column.rb
|
68
62
|
lib/ziya/components/area.rb
|
69
63
|
lib/ziya/components/axis_category.rb
|
70
64
|
lib/ziya/components/axis_ticks.rb
|
71
65
|
lib/ziya/components/axis_value.rb
|
72
66
|
lib/ziya/components/base.rb
|
67
|
+
lib/ziya/components/bevel.rb
|
68
|
+
lib/ziya/components/blur.rb
|
73
69
|
lib/ziya/components/chart_border.rb
|
74
70
|
lib/ziya/components/chart_grid_h.rb
|
75
71
|
lib/ziya/components/chart_grid_v.rb
|
72
|
+
lib/ziya/components/chart_guide.rb
|
73
|
+
lib/ziya/components/chart_label.rb
|
76
74
|
lib/ziya/components/chart_pref.rb
|
77
75
|
lib/ziya/components/chart_rect.rb
|
78
76
|
lib/ziya/components/chart_transition.rb
|
79
|
-
lib/ziya/components/chart_value.rb
|
80
77
|
lib/ziya/components/circle.rb
|
81
78
|
lib/ziya/components/draw.rb
|
79
|
+
lib/ziya/components/draw_base.rb
|
80
|
+
lib/ziya/components/filter.rb
|
81
|
+
lib/ziya/components/glow.rb
|
82
82
|
lib/ziya/components/image.rb
|
83
|
-
lib/ziya/components/
|
84
|
-
lib/ziya/components/legend_rect.rb
|
85
|
-
lib/ziya/components/legend_transition.rb
|
83
|
+
lib/ziya/components/legend.rb
|
86
84
|
lib/ziya/components/line.rb
|
87
85
|
lib/ziya/components/link.rb
|
88
86
|
lib/ziya/components/link_data.rb
|
89
|
-
lib/ziya/components/live_update.rb
|
90
87
|
lib/ziya/components/rect.rb
|
88
|
+
lib/ziya/components/scroll.rb
|
91
89
|
lib/ziya/components/series_color.rb
|
92
90
|
lib/ziya/components/series_explode.rb
|
93
91
|
lib/ziya/components/series_gap.rb
|
94
92
|
lib/ziya/components/series_switch.rb
|
93
|
+
lib/ziya/components/shadow.rb
|
95
94
|
lib/ziya/components/text.rb
|
95
|
+
lib/ziya/components/update.rb
|
96
|
+
lib/ziya/gauges/base.rb
|
97
|
+
lib/ziya/gauges/radial.rb
|
98
|
+
lib/ziya/gauges/signal.rb
|
99
|
+
lib/ziya/gauges/support/area.rb
|
100
|
+
lib/ziya/gauges/support/base.rb
|
101
|
+
lib/ziya/gauges/support/circle.rb
|
102
|
+
lib/ziya/gauges/support/design.rb
|
103
|
+
lib/ziya/gauges/support/image.rb
|
104
|
+
lib/ziya/gauges/support/line.rb
|
105
|
+
lib/ziya/gauges/support/link.rb
|
106
|
+
lib/ziya/gauges/support/move.rb
|
107
|
+
lib/ziya/gauges/support/point.rb
|
108
|
+
lib/ziya/gauges/support/polygon.rb
|
109
|
+
lib/ziya/gauges/support/radial_base.rb
|
110
|
+
lib/ziya/gauges/support/radial_numbers.rb
|
111
|
+
lib/ziya/gauges/support/radial_ticks.rb
|
112
|
+
lib/ziya/gauges/support/rect.rb
|
113
|
+
lib/ziya/gauges/support/rotate.rb
|
114
|
+
lib/ziya/gauges/support/scale.rb
|
115
|
+
lib/ziya/gauges/support/text.rb
|
116
|
+
lib/ziya/gauges/support/update.rb
|
117
|
+
lib/ziya/gauges/thermo.rb
|
96
118
|
lib/ziya/helpers/base_helper.rb
|
97
119
|
lib/ziya/utils/logger.rb
|
98
120
|
lib/ziya/utils/text.rb
|
@@ -102,12 +124,36 @@ spec/charts/base_spec.rb
|
|
102
124
|
spec/charts/chart_type_spec.rb
|
103
125
|
spec/components/area_spec.rb
|
104
126
|
spec/components/draw_spec.rb
|
127
|
+
spec/components/filter_spec.rb
|
105
128
|
spec/components/link_spec.rb
|
106
129
|
spec/components/series_color_spec.rb
|
107
130
|
spec/components/series_explode_spec.rb
|
108
131
|
spec/components/series_switch_spec.rb
|
132
|
+
spec/designs/circle.yml
|
133
|
+
spec/designs/crapping_out.yml
|
134
|
+
spec/designs/gauge_1.yml
|
135
|
+
spec/designs/gauge_2.yml
|
136
|
+
spec/designs/gauge_no_name.yml
|
137
|
+
spec/designs/gauge_raw.yml
|
138
|
+
spec/designs/thermo.yml
|
139
|
+
spec/gauges/base_spec.rb
|
140
|
+
spec/gauges/signal_spec.rb
|
141
|
+
spec/gauges/support/area_spec.rb
|
142
|
+
spec/gauges/support/circle_spec.rb
|
143
|
+
spec/gauges/support/image_spec.rb
|
144
|
+
spec/gauges/support/line_spec.rb
|
145
|
+
spec/gauges/support/link_spec.rb
|
146
|
+
spec/gauges/support/move_spec.rb
|
147
|
+
spec/gauges/support/polygon_spec.rb
|
148
|
+
spec/gauges/support/radial_numbers_spec.rb
|
149
|
+
spec/gauges/support/radial_ticks_spec.rb
|
150
|
+
spec/gauges/support/rotate_spec.rb
|
151
|
+
spec/gauges/support/scale_spec.rb
|
152
|
+
spec/gauges/support/text_spec.rb
|
153
|
+
spec/gauges/thermo_spec.rb
|
109
154
|
spec/helpers/base_helper_spec.rb
|
110
155
|
spec/spec_helper.rb
|
156
|
+
spec/test_helpers/gauge_2_helper.rb
|
111
157
|
spec/themes/default/fred.yml
|
112
158
|
spec/themes/default/line_chart.yml
|
113
159
|
spec/utils/logger_spec.rb
|
data/README.txt
CHANGED
@@ -5,15 +5,15 @@ ziya
|
|
5
5
|
== DESCRIPTION:
|
6
6
|
|
7
7
|
ZiYa allows you to easily display graphs in your ruby based applications by leveraging
|
8
|
-
SWF Charts (http://www.maani.us/xml_charts/index.php)
|
9
|
-
of
|
10
|
-
allowing for delegating graph rendering to the client side. Using this
|
8
|
+
SWF Charts (http://www.maani.us/xml_charts/index.php) and SWF gauges (http://www.maani.us/gauge/index.php).
|
9
|
+
This gem bundles version 5.02 and 1.6 of these flash libraries. Incorporating flash graphs or gauge in your app
|
10
|
+
relieves the server by allowing for delegating graph rendering to the client side. Using this gem, you will
|
11
11
|
be able to easily create great looking charts for your application. You will also be able
|
12
|
-
to use the charts has a navigation scheme by embedding various link in the
|
12
|
+
to use the charts or gauges has a navigation scheme by embedding various link in the graphical components
|
13
13
|
thus bring to the table an ideal scheme for reporting and dashboard like applications. Your
|
14
14
|
managers will love you for it !!
|
15
15
|
|
16
|
-
Checkout the demo: http://ziya.liquidrail.com
|
16
|
+
Checkout the demo: http://ziya.liquidrail.com ( NEEDS LATEST UPDATE... WORKING ON IT)
|
17
17
|
Video : http://www.youtube.com/watch?v=axIMmMHdXzo ( Out of date but you'll get the basics... )
|
18
18
|
Documentation : http://ziya.liquidrail.com/rdoc ( New docs coming soon... )
|
19
19
|
Forum : http://groups.google.com/group/ziya-plugin
|
@@ -32,11 +32,12 @@ managers will love you for it !!
|
|
32
32
|
|
33
33
|
NOTE: XML/SWF charts are free of charge unless you need to use special features such
|
34
34
|
as embedded links and printing.
|
35
|
-
The package cost $45 per domain and is well worth the investment.
|
35
|
+
The package cost $45 per domain and is well worth the investment. A similar fee applies
|
36
|
+
to the gauge framework.
|
36
37
|
|
37
|
-
* We are leveraging ERB within the YAML file to provide access to the chart state. State
|
38
|
-
can be passed in via the options hash when the graph is generated.
|
39
|
-
You can also define your own methods in helpers/
|
38
|
+
* We are leveraging ERB within the YAML file to provide access to the chart/gauge state. State
|
39
|
+
can be passed in via the options hash when the graph/gauge is generated.
|
40
|
+
You can also define your own methods in helpers/ziya/xxx_helper. Where xxYou can access these
|
40
41
|
helper methods in your style file just like you would in a rails template.
|
41
42
|
|
42
43
|
* Theme support. You can change the appearance and behavior of any charts by introducing
|
@@ -44,13 +45,23 @@ managers will love you for it !!
|
|
44
45
|
|
45
46
|
== SYNOPSIS:
|
46
47
|
|
48
|
+
IMPORTANT: This new gem version requires a client update to flash 9.0 and possibly you will
|
49
|
+
need to get a new license from XML/SWF ( $45.0 for your domain ), if you want to use
|
50
|
+
advanced features like links and live updates.
|
51
|
+
Also some api's have changed. I will try to push a new sample application and more docs in the
|
52
|
+
next few weeks. So make sure you try this out first in a non production environment and report
|
53
|
+
bugs or side effects. I'll do my best to keep up with the demand. If anyone would like to give
|
54
|
+
me a hand with a tutorial app or improving the docs, I am all hears...
|
55
|
+
|
56
|
+
|
57
|
+
|
47
58
|
When using within a rails application you will need to create a ziya.rb file in your
|
48
59
|
config/initializers directory ( Rails 2.0 )
|
49
60
|
|
50
61
|
ziya.rb:
|
51
62
|
|
52
63
|
# Pull in the ZiYa gem framework
|
53
|
-
gem "ziya", "~>
|
64
|
+
gem "ziya", "~> 2.0.0"
|
54
65
|
require 'ziya'
|
55
66
|
|
56
67
|
# Initializes the ZiYa Framework
|
@@ -79,7 +90,6 @@ managers will love you for it !!
|
|
79
90
|
chart.add( :axis_category_text, %w[2006 2007 2008] )
|
80
91
|
chart.add( :series, "Dogs", [10,20,30] )
|
81
92
|
chart.add( :series, "Cats", [5,15,25] )
|
82
|
-
|
83
93
|
respond_to do |fmt|
|
84
94
|
fmt.xml => { render :xml => chart.to_xml }
|
85
95
|
end
|
@@ -87,7 +97,6 @@ managers will love you for it !!
|
|
87
97
|
|
88
98
|
blee/index.html.erb
|
89
99
|
|
90
|
-
<!-- Setups up flash in the html template -->
|
91
100
|
<%= ziya_chart load_chart_url, :size => "300x200" -%>
|
92
101
|
|
93
102
|
config/route.rb
|
@@ -95,9 +104,78 @@ managers will love you for it !!
|
|
95
104
|
# Creates a named route for the chart.
|
96
105
|
map.load_chart '/blee/load_chart', :controller => 'blee', :action => 'load_chart'
|
97
106
|
|
107
|
+
* Creating a gauge
|
108
|
+
|
109
|
+
fred_controller.rb
|
110
|
+
|
111
|
+
class FredController < ApplicationController
|
112
|
+
def load_gauge
|
113
|
+
gauge = Ziya::Gauges::Base.new( @license_key, 'my_gauge' )
|
114
|
+
respond_to do |fmt|
|
115
|
+
fmt.xml => { render :xml => chart.to_xml }
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
fred/index.html.erb
|
121
|
+
|
122
|
+
<%= ziya_gauge load_gauge_url, :size => "300x200" -%>
|
123
|
+
|
124
|
+
config/route.rb
|
125
|
+
|
126
|
+
# Creates a named route for the chart.
|
127
|
+
map.load_chart '/fred/load_gauge', :controller => 'fred', :action => 'load_gauge'
|
128
|
+
|
129
|
+
public/gauges/designs/my_gauge.yml
|
130
|
+
|
131
|
+
In the design file you will leverage the components defined in the Ziya::Gauges::Support
|
132
|
+
package to create your gauge desgins. You gauges can be animated using rotate, scale and
|
133
|
+
move operations. In this example we will create a volume control that will rotate to the
|
134
|
+
desired position. In real live you will fetch the volume level from your controller to
|
135
|
+
set the desired position. Looks in the samples/gauges application for the various
|
136
|
+
possibilities. You can think of a gauge as a portable canvas element where you can draw
|
137
|
+
you own designs using the various provided ZiYa components.
|
138
|
+
|
139
|
+
<%= gauge :base %>
|
140
|
+
# specifies the number of ticks to draw in a circular fashion
|
141
|
+
<%= dial :radial_ticks, :volume %>
|
142
|
+
x: 100
|
143
|
+
y: 75
|
144
|
+
radius: 35
|
145
|
+
length: 4
|
146
|
+
start_angle: 235
|
147
|
+
end_angle: 485
|
148
|
+
ticks: 10
|
149
|
+
thickness: 2
|
150
|
+
color: 000000
|
151
|
+
# rotates the volume to the desired position.
|
152
|
+
<%= dial :rotate, :volume_setting %>
|
153
|
+
x: 100
|
154
|
+
y: 75
|
155
|
+
start: 300
|
156
|
+
span: 160
|
157
|
+
step: 5
|
158
|
+
skake_span: 20
|
159
|
+
shadow_alpha: 20
|
160
|
+
shadow_x_offset: 3
|
161
|
+
shadow_y_offset: 3
|
162
|
+
<%= dials %>
|
163
|
+
<%= dial :circle, :circle_1 %>
|
164
|
+
x: 100
|
165
|
+
y: 75
|
166
|
+
radius: 30
|
167
|
+
fill_color: 777777
|
168
|
+
line_thickness: 5
|
169
|
+
line_alpha: 75
|
170
|
+
<%= dial :circle, :circle_2 %>
|
171
|
+
x: 100
|
172
|
+
y: 55
|
173
|
+
radius: 5
|
174
|
+
fill_alpha: 80
|
175
|
+
|
98
176
|
== REQUIREMENTS:
|
99
177
|
|
100
|
-
ZiYa depends on the logging gem version > 0.
|
178
|
+
ZiYa depends on the logging gem version > 0.9.0
|
101
179
|
|
102
180
|
== INSTALL:
|
103
181
|
|
@@ -110,7 +188,6 @@ managers will love you for it !!
|
|
110
188
|
This will copy the necessary themes and flash files to run ziya in your application
|
111
189
|
public/charts directory.
|
112
190
|
|
113
|
-
|
114
191
|
== LICENSE:
|
115
192
|
|
116
193
|
(The MIT License)
|
data/Rakefile
CHANGED
data/bin/ziyafy
CHANGED
@@ -18,6 +18,8 @@ module Ziya
|
|
18
18
|
def copy_artifacts
|
19
19
|
source_dir = File.expand_path( File.join( File.dirname(__FILE__), %w[.. charts]) )
|
20
20
|
FileUtils.cp_r( source_dir, options.public_dir )
|
21
|
+
source_dir = File.expand_path( File.join( File.dirname(__FILE__), %w[.. gauges]) )
|
22
|
+
FileUtils.cp_r( source_dir, options.public_dir )
|
21
23
|
end
|
22
24
|
|
23
25
|
# access the options
|
@@ -0,0 +1,292 @@
|
|
1
|
+
//v1.7
|
2
|
+
// Flash Player Version Detection
|
3
|
+
// Detect Client Browser type
|
4
|
+
// Copyright 2005-2007 Adobe Systems Incorporated. All rights reserved.
|
5
|
+
var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
|
6
|
+
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
|
7
|
+
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
|
8
|
+
|
9
|
+
function ControlVersion()
|
10
|
+
{
|
11
|
+
var version;
|
12
|
+
var axo;
|
13
|
+
var e;
|
14
|
+
|
15
|
+
// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
|
16
|
+
|
17
|
+
try {
|
18
|
+
// version will be set for 7.X or greater players
|
19
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
|
20
|
+
version = axo.GetVariable("$version");
|
21
|
+
} catch (e) {
|
22
|
+
}
|
23
|
+
|
24
|
+
if (!version)
|
25
|
+
{
|
26
|
+
try {
|
27
|
+
// version will be set for 6.X players only
|
28
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
|
29
|
+
|
30
|
+
// installed player is some revision of 6.0
|
31
|
+
// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
|
32
|
+
// so we have to be careful.
|
33
|
+
|
34
|
+
// default to the first public version
|
35
|
+
version = "WIN 6,0,21,0";
|
36
|
+
|
37
|
+
// throws if AllowScripAccess does not exist (introduced in 6.0r47)
|
38
|
+
axo.AllowScriptAccess = "always";
|
39
|
+
|
40
|
+
// safe to call for 6.0r47 or greater
|
41
|
+
version = axo.GetVariable("$version");
|
42
|
+
|
43
|
+
} catch (e) {
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
if (!version)
|
48
|
+
{
|
49
|
+
try {
|
50
|
+
// version will be set for 4.X or 5.X player
|
51
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
|
52
|
+
version = axo.GetVariable("$version");
|
53
|
+
} catch (e) {
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
if (!version)
|
58
|
+
{
|
59
|
+
try {
|
60
|
+
// version will be set for 3.X player
|
61
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
|
62
|
+
version = "WIN 3,0,18,0";
|
63
|
+
} catch (e) {
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
if (!version)
|
68
|
+
{
|
69
|
+
try {
|
70
|
+
// version will be set for 2.X player
|
71
|
+
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
|
72
|
+
version = "WIN 2,0,0,11";
|
73
|
+
} catch (e) {
|
74
|
+
version = -1;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
|
78
|
+
return version;
|
79
|
+
}
|
80
|
+
|
81
|
+
// JavaScript helper required to detect Flash Player PlugIn version information
|
82
|
+
function GetSwfVer(){
|
83
|
+
// NS/Opera version >= 3 check for Flash plugin in plugin array
|
84
|
+
var flashVer = -1;
|
85
|
+
|
86
|
+
if (navigator.plugins != null && navigator.plugins.length > 0) {
|
87
|
+
if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
|
88
|
+
var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
|
89
|
+
var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
|
90
|
+
var descArray = flashDescription.split(" ");
|
91
|
+
var tempArrayMajor = descArray[2].split(".");
|
92
|
+
var versionMajor = tempArrayMajor[0];
|
93
|
+
var versionMinor = tempArrayMajor[1];
|
94
|
+
var versionRevision = descArray[3];
|
95
|
+
if (versionRevision == "") {
|
96
|
+
versionRevision = descArray[4];
|
97
|
+
}
|
98
|
+
if (versionRevision[0] == "d") {
|
99
|
+
versionRevision = versionRevision.substring(1);
|
100
|
+
} else if (versionRevision[0] == "r") {
|
101
|
+
versionRevision = versionRevision.substring(1);
|
102
|
+
if (versionRevision.indexOf("d") > 0) {
|
103
|
+
versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
|
104
|
+
}
|
105
|
+
}
|
106
|
+
var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
|
107
|
+
}
|
108
|
+
}
|
109
|
+
// MSN/WebTV 2.6 supports Flash 4
|
110
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
|
111
|
+
// WebTV 2.5 supports Flash 3
|
112
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
|
113
|
+
// older WebTV supports Flash 2
|
114
|
+
else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
|
115
|
+
else if ( isIE && isWin && !isOpera ) {
|
116
|
+
flashVer = ControlVersion();
|
117
|
+
}
|
118
|
+
return flashVer;
|
119
|
+
}
|
120
|
+
|
121
|
+
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
|
122
|
+
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
|
123
|
+
{
|
124
|
+
versionStr = GetSwfVer();
|
125
|
+
if (versionStr == -1 ) {
|
126
|
+
return false;
|
127
|
+
} else if (versionStr != 0) {
|
128
|
+
if(isIE && isWin && !isOpera) {
|
129
|
+
// Given "WIN 2,0,0,11"
|
130
|
+
tempArray = versionStr.split(" "); // ["WIN", "2,0,0,11"]
|
131
|
+
tempString = tempArray[1]; // "2,0,0,11"
|
132
|
+
versionArray = tempString.split(","); // ['2', '0', '0', '11']
|
133
|
+
} else {
|
134
|
+
versionArray = versionStr.split(".");
|
135
|
+
}
|
136
|
+
var versionMajor = versionArray[0];
|
137
|
+
var versionMinor = versionArray[1];
|
138
|
+
var versionRevision = versionArray[2];
|
139
|
+
|
140
|
+
// is the major.revision >= requested major.revision AND the minor version >= requested minor
|
141
|
+
if (versionMajor > parseFloat(reqMajorVer)) {
|
142
|
+
return true;
|
143
|
+
} else if (versionMajor == parseFloat(reqMajorVer)) {
|
144
|
+
if (versionMinor > parseFloat(reqMinorVer))
|
145
|
+
return true;
|
146
|
+
else if (versionMinor == parseFloat(reqMinorVer)) {
|
147
|
+
if (versionRevision >= parseFloat(reqRevision))
|
148
|
+
return true;
|
149
|
+
}
|
150
|
+
}
|
151
|
+
return false;
|
152
|
+
}
|
153
|
+
}
|
154
|
+
|
155
|
+
function AC_AddExtension(src, ext)
|
156
|
+
{
|
157
|
+
if (src.indexOf('?') != -1)
|
158
|
+
return src.replace(/\?/, ext+'?');
|
159
|
+
else
|
160
|
+
return src + ext;
|
161
|
+
}
|
162
|
+
|
163
|
+
function AC_Generateobj(objAttrs, params, embedAttrs)
|
164
|
+
{
|
165
|
+
var str = '';
|
166
|
+
if (isIE && isWin && !isOpera)
|
167
|
+
{
|
168
|
+
str += '<object ';
|
169
|
+
for (var i in objAttrs)
|
170
|
+
{
|
171
|
+
str += i + '="' + objAttrs[i] + '" ';
|
172
|
+
}
|
173
|
+
str += '>';
|
174
|
+
for (var i in params)
|
175
|
+
{
|
176
|
+
str += '<param name="' + i + '" value="' + params[i] + '" /> ';
|
177
|
+
}
|
178
|
+
str += '</object>';
|
179
|
+
}
|
180
|
+
else
|
181
|
+
{
|
182
|
+
str += '<embed ';
|
183
|
+
for (var i in embedAttrs)
|
184
|
+
{
|
185
|
+
str += i + '="' + embedAttrs[i] + '" ';
|
186
|
+
}
|
187
|
+
str += '> </embed>';
|
188
|
+
}
|
189
|
+
|
190
|
+
document.write(str);
|
191
|
+
}
|
192
|
+
|
193
|
+
function AC_FL_RunContent(){
|
194
|
+
var ret =
|
195
|
+
AC_GetArgs
|
196
|
+
( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
|
197
|
+
, "application/x-shockwave-flash"
|
198
|
+
);
|
199
|
+
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
|
200
|
+
}
|
201
|
+
|
202
|
+
function AC_SW_RunContent(){
|
203
|
+
var ret =
|
204
|
+
AC_GetArgs
|
205
|
+
( arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
|
206
|
+
, null
|
207
|
+
);
|
208
|
+
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
|
209
|
+
}
|
210
|
+
|
211
|
+
function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
|
212
|
+
var ret = new Object();
|
213
|
+
ret.embedAttrs = new Object();
|
214
|
+
ret.params = new Object();
|
215
|
+
ret.objAttrs = new Object();
|
216
|
+
for (var i=0; i < args.length; i=i+2){
|
217
|
+
var currArg = args[i].toLowerCase();
|
218
|
+
|
219
|
+
switch (currArg){
|
220
|
+
case "classid":
|
221
|
+
break;
|
222
|
+
case "pluginspage":
|
223
|
+
ret.embedAttrs[args[i]] = args[i+1];
|
224
|
+
break;
|
225
|
+
case "src":
|
226
|
+
case "movie":
|
227
|
+
args[i+1] = AC_AddExtension(args[i+1], ext);
|
228
|
+
ret.embedAttrs["src"] = args[i+1];
|
229
|
+
ret.params[srcParamName] = args[i+1];
|
230
|
+
break;
|
231
|
+
case "onafterupdate":
|
232
|
+
case "onbeforeupdate":
|
233
|
+
case "onblur":
|
234
|
+
case "oncellchange":
|
235
|
+
case "onclick":
|
236
|
+
case "ondblclick":
|
237
|
+
case "ondrag":
|
238
|
+
case "ondragend":
|
239
|
+
case "ondragenter":
|
240
|
+
case "ondragleave":
|
241
|
+
case "ondragover":
|
242
|
+
case "ondrop":
|
243
|
+
case "onfinish":
|
244
|
+
case "onfocus":
|
245
|
+
case "onhelp":
|
246
|
+
case "onmousedown":
|
247
|
+
case "onmouseup":
|
248
|
+
case "onmouseover":
|
249
|
+
case "onmousemove":
|
250
|
+
case "onmouseout":
|
251
|
+
case "onkeypress":
|
252
|
+
case "onkeydown":
|
253
|
+
case "onkeyup":
|
254
|
+
case "onload":
|
255
|
+
case "onlosecapture":
|
256
|
+
case "onpropertychange":
|
257
|
+
case "onreadystatechange":
|
258
|
+
case "onrowsdelete":
|
259
|
+
case "onrowenter":
|
260
|
+
case "onrowexit":
|
261
|
+
case "onrowsinserted":
|
262
|
+
case "onstart":
|
263
|
+
case "onscroll":
|
264
|
+
case "onbeforeeditfocus":
|
265
|
+
case "onactivate":
|
266
|
+
case "onbeforedeactivate":
|
267
|
+
case "ondeactivate":
|
268
|
+
case "type":
|
269
|
+
case "codebase":
|
270
|
+
case "id":
|
271
|
+
ret.objAttrs[args[i]] = args[i+1];
|
272
|
+
break;
|
273
|
+
case "width":
|
274
|
+
case "height":
|
275
|
+
case "align":
|
276
|
+
case "vspace":
|
277
|
+
case "hspace":
|
278
|
+
case "class":
|
279
|
+
case "title":
|
280
|
+
case "accesskey":
|
281
|
+
case "name":
|
282
|
+
case "tabindex":
|
283
|
+
ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
|
284
|
+
break;
|
285
|
+
default:
|
286
|
+
ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
|
287
|
+
}
|
288
|
+
}
|
289
|
+
ret.objAttrs["classid"] = classid;
|
290
|
+
if (mimeType) ret.embedAttrs["type"] = mimeType;
|
291
|
+
return ret;
|
292
|
+
}
|