Sha256: 54a6e8f5f74fa2e11a092f8c973b5db21f683cbfb3b637551531309fa8227016

Contents?: true

Size: 668 Bytes

Versions: 5

Compression:

Stored size: 668 Bytes

Contents

# -*- coding: utf-8 -*-


%w[xot rays reflex]
  .map  {|s| File.expand_path "../../../../#{s}/lib", __FILE__}
  .each {|s| $:.unshift s if !$:.include?(s) && File.directory?(s)}

require 'reflexion/include'


FILENAME = 'paint.png'

canvas =
  Image.load(FILENAME) rescue nil ||
  Image.new(512, 512).paint {background :white}

setup do
  size canvas.size
end

draw do
  image canvas
end

pointer do
  if down? || drag?
    canvas.paint do
      fill event.left? ? :red : event.right? ? :blue : :white
      ellipse *(event.pos - 10).to_a, 20, 20
    end
  end
end

key do
  case chars
  when /s/i       then canvas.save FILENAME
  when /q/i, "\e" then quit
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
reflexion-0.1.12 samples/reflexion/paint.rb
reflexion-0.1.11 samples/reflexion/paint.rb
reflexion-0.1.10 samples/reflexion/paint.rb
reflexion-0.1.9.1 samples/reflexion/paint.rb
reflexion-0.1.9 samples/reflexion/paint.rb