class Processing::SketchBase

The base class of a Processing sketch

Public Class Methods

method_added(name) click to toggle source
# File lib/processing/sketch_base.rb, line 14
def self.method_added(name)
  name = name.to_s
  if name.include?('_')
    lcc_name = name.split('_').map(&:capitalize).join('')
    lcc_name[0] = lcc_name[0].downcase
    alias_method lcc_name, name if lcc_name != name
  end
end
new() click to toggle source
Calls superclass method
# File lib/processing/sketch_base.rb, line 31
def initialize
  super
  SketchRunner.sketch_instances << self
end

Public Instance Methods

frame_rate(fps = nil) click to toggle source
Calls superclass method
# File lib/processing/sketch_base.rb, line 36
def frame_rate(fps = nil)
  return get_field_value('frameRate') unless fps
  super(fps)
end
get_field_value(name) click to toggle source
# File lib/processing/sketch_base.rb, line 27
def get_field_value(name)
  java_class.declared_field(name).value(to_java(PApplet))
end
key() click to toggle source
# File lib/processing/sketch_base.rb, line 41
def key
  code = get_field_value('key')
  code < 256 ? code.chr : code
end
key_pressed?() click to toggle source
# File lib/processing/sketch_base.rb, line 46
def key_pressed?
  get_field_value('keyPressed')
end
method_missing(name, *args) click to toggle source
# File lib/processing/sketch_base.rb, line 23
def method_missing(name, *args)
  self.class.__send__(name, *args) if PApplet.public_methods.include?(name)
end
mouse_pressed?() click to toggle source
# File lib/processing/sketch_base.rb, line 50
def mouse_pressed?
  get_field_value('mousePressed')
end