chart-candy 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,7 +5,6 @@ class @ChartCandyDonut
5
5
  constructor: (@holder) ->
6
6
  @innerRadius = 55
7
7
  @labelMargin = 12
8
- @holeLineHeight = 20
9
8
 
10
9
  @holderChart = @holder.find('div.templates div.chart')
11
10
  @holderTable = @holder.find('div.templates div.table')
@@ -31,6 +30,23 @@ class @ChartCandyDonut
31
30
 
32
31
  return "translate(" + tX + "," + tY + ")"
33
32
 
33
+
34
+ centerHoleText: (hole) ->
35
+ totalHeight = 0
36
+ heightElements = []
37
+
38
+ for content, i in @data.hole
39
+ elemHeight = Math.round(Number(@holderChart.find('g.hole text.text' + i).height()) * 0.66) + 10
40
+ totalHeight += elemHeight
41
+ heightElements.push elemHeight
42
+
43
+ currentHeight = totalHeight / 1.8 * -1
44
+
45
+ for content, i in @data.hole
46
+ currentHeight += heightElements[i]
47
+ hole.selectAll("text.text" + i).attr("dy", currentHeight)
48
+
49
+
34
50
  drawChart: () ->
35
51
  @holderChart.html('')
36
52
 
@@ -48,10 +64,10 @@ class @ChartCandyDonut
48
64
  drawHole: () ->
49
65
  hole = @chart.append("svg:g").attr("class", "hole").attr("transform", "translate(" + (@radius + @margins[3]) + "," + (@radius + @margins[0]) + ")")
50
66
 
51
- startY = (@data.hole.length * @holeLineHeight - @holeLineHeight) / -2
52
-
53
67
  for content, i in @data.hole
54
- hole.append("svg:text").attr("class", "label text#{i}").attr("dy", startY + (i * @holeLineHeight)).attr("text-anchor", "middle").text(content)
68
+ hole.append("svg:text").attr("class", "label text#{i}").attr("dy", 0).attr("text-anchor", "middle").text(content)
69
+
70
+ @centerHoleText hole
55
71
 
56
72
 
57
73
  drawLabels: () ->
@@ -259,7 +259,7 @@ class @ChartCandyLine
259
259
 
260
260
 
261
261
  showTemplate: () ->
262
- if @tools.find('div.holder-template select')
262
+ if @tools.find('div.holder-template select').length > 0
263
263
  template = @tools.find('div.holder-template select').val()
264
264
  else
265
265
  template = @tools.find('div.holder-template div.switch-field input').val()
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chart-candy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-04 00:00:00.000000000 Z
12
+ date: 2012-11-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: spreadsheet
16
- requirement: &2157087340 !ruby/object:Gem::Requirement
16
+ requirement: &2165150000 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2157087340
24
+ version_requirements: *2165150000
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rake
27
- requirement: &2157085820 !ruby/object:Gem::Requirement
27
+ requirement: &2165148840 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.8.7
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2157085820
35
+ version_requirements: *2165148840
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &2157101080 !ruby/object:Gem::Requirement
38
+ requirement: &2165147500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '2.0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2157101080
46
+ version_requirements: *2165147500
47
47
  description: Chart Candy use D3.js library to quickly render AJAX charts in your Rails
48
48
  project. In a minimum amount of code, you should have a functional chart, styled
49
49
  and good to go.