pixelflow_canvas 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PixelflowCanvas
4
- VERSION = "0.6.0"
4
+ VERSION = "0.7.0"
5
5
  end
@@ -169,6 +169,30 @@ module Pixelflow
169
169
  @socket.flush
170
170
  end
171
171
 
172
+ def set_predefined_palette(key)
173
+ if key == :vga
174
+ @palette = VGA_PALETTE.dup
175
+ (0..255).each do |i|
176
+ @socket.write([3, i, @palette[i * 3 + 0], @palette[i * 3 + 1], @palette[i * 3 + 2]].pack('CCCCC'))
177
+ end
178
+ @socket.flush
179
+ else
180
+ @@palettes ||= YAML.load(File.read(File.join(File.dirname(__FILE__), 'pixelflow_canvas', 'palettes.yaml')))
181
+ if @@palettes[key]
182
+ @palette = [0] * 768
183
+ @@palettes[key].each_with_index do |color, i|
184
+ @palette[i * 3 + 0] = color[1, 2].to_i(16)
185
+ @palette[i * 3 + 1] = color[3, 2].to_i(16)
186
+ @palette[i * 3 + 2] = color[5, 2].to_i(16)
187
+ @socket.write([3, i, @palette[i * 3 + 0], @palette[i * 3 + 1], @palette[i * 3 + 2]].pack('CCCCC'))
188
+ end
189
+ @socket.flush
190
+ else
191
+ raise "Invalid predefined palette: #{key}"
192
+ end
193
+ end
194
+ end
195
+
172
196
  def move_to(x, y)
173
197
  x = x.to_i
174
198
  y = y.to_i
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pixelflow_canvas
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Specht
@@ -44,6 +44,7 @@ files:
44
44
  - lib/pixelflow_canvas/fonts/8x13B.bdf
45
45
  - lib/pixelflow_canvas/fonts/9x15.bdf
46
46
  - lib/pixelflow_canvas/fonts/9x15B.bdf
47
+ - lib/pixelflow_canvas/palettes.yaml
47
48
  - lib/pixelflow_canvas/version.rb
48
49
  - lib/pixelflow_canvas/vga_palette.rb
49
50
  - sig/pixelflow_canvas.rbs