Class: Ccharts::Settings::HistSettings

Inherits:
Object
  • Object
show all
Defined in:
lib/ccharts/settings.rb

Overview

histogram

Instance Method Summary collapse

Constructor Details

#initializeHistSettings

Returns a new instance of HistSettings.



109
110
111
112
113
114
115
116
117
118
# File 'lib/ccharts/settings.rb', line 109

def initialize
  @rise = nil
  @bg = nil
  @bin_count = 0
  @min_value = Float::NAN
  @max_value = Float::NAN
  @show_bins = false
  @show_prices = false
  @plain = false
end

Instance Method Details

#background(v) ⇒ Object



121
# File 'lib/ccharts/settings.rb', line 121

def background(v); @bg = v; self; end

#bin_count(v) ⇒ Object



122
# File 'lib/ccharts/settings.rb', line 122

def bin_count(v); @bin_count = v; self; end

#max_value(v) ⇒ Object



124
# File 'lib/ccharts/settings.rb', line 124

def max_value(v); @max_value = v; self; end

#min_value(v) ⇒ Object



123
# File 'lib/ccharts/settings.rb', line 123

def min_value(v); @min_value = v; self; end

#plain(v) ⇒ Object



127
# File 'lib/ccharts/settings.rb', line 127

def plain(v); @plain = !!v; self; end

#rise(v) ⇒ Object



120
# File 'lib/ccharts/settings.rb', line 120

def rise(v); @rise = v; self; end

#show_bins(v) ⇒ Object



125
# File 'lib/ccharts/settings.rb', line 125

def show_bins(v); @show_bins = !!v; self; end

#show_prices(v) ⇒ Object



126
# File 'lib/ccharts/settings.rb', line 126

def show_prices(v); @show_prices = !!v; self; end

#to_ffiObject



129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# File 'lib/ccharts/settings.rb', line 129

def to_ffi
  s = FFI::HistSettings.malloc
  keep = []
  set = lambda do |field, val|
    p = FFI.color_ptr(val, @plain)
    keep << p
    s[field] = p.to_i
  end
  set.call(:rise_color, @rise)
  set.call(:bg_color, @bg)
  s[:bin_count] = @bin_count
  s[:min_value] = @min_value
  s[:max_value] = @max_value
  s[:show_bins] = @show_bins ? 1 : 0
  s[:show_prices] = @show_prices ? 1 : 0
  [s, keep]
end