class Qwik::Wema

Attributes

bg[R]
connected[R]
fg[R]
id[R]
text[R]
x[R]
y[R]

Public Class Methods

new(wemapage, id) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 219
def initialize(wemapage, id)
  @wemapage, @id = wemapage, id
  @site = @wemapage.site
  pagename = key(id)
  @page = @site[pagename]
  @page = @site.create(pagename) if @page.nil?
  @connected = @x = @y = @fg = @bg = @text = nil
  parse(@page.load)
end

Public Instance Methods

delete() click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 261
def delete
  @site.delete(key(id))
end
get_data() click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 230
def get_data
  data = {
    :id    => @id,
    :connected => @connected,
    :x     => @x,
    :y     => @y,
    :fg    => @fg,
    :bg    => @bg,
    :text  => @text,
  }
  return data
end
get_id() click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 257
def get_id
  return "id#{@id}"
end
set(connected, x, y, fg, bg, text) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 243
def set(connected, x, y, fg, bg, text)
  set_px(x) {|a| @x = a }
  set_px(y) {|a| @y = a }
  set_color(fg) {|a| @fg = a }
  set_color(bg) {|a| @bg = a }
  set_text(text) {|a| @text = a }
  set_str(connected) {|a| @connected = a }
  store
end
setpos(x, y) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 253
def setpos(x, y)
  set(nil, x, y, nil, nil, nil)
end

Private Instance Methods

is_nil?(a) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 310
def is_nil?(a)
  return a.nil? || ! a.is_a?(String) || a.empty?
end
key(id) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 267
def key(id)
  return "_#{@wemapage.pagename}_wema_#{id}"
end
parse(str) click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 271
def parse(str)
  lines = str.to_a
  f = lines.shift # first line
  return if f.nil?
  f.chomp!
  dummy, @connected, @x, @y, @fg, @bg = f.split(',')
  @text = lines.join('')
end
set_color(a) { |a| ... } click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 293
def set_color(a)
  return if is_nil?(a)
  return unless /\A[\#a-z0-9]+\z/ =~ a
  yield a
end
set_px(a) { |sub(/px$/, '').to_i| ... } click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 288
def set_px(a)
  return if is_nil?(a)
  yield a.sub(/px$/, '').to_i
end
set_str(a) { |a| ... } click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 304
def set_str(a)
  return if is_nil?(a)
  return unless /\A[a-z0-9]+\z/ =~ a
  yield a
end
set_text(a) { |delete("\r").chomp+"\n"| ... } click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 299
def set_text(a)
  return if is_nil?(a)
  yield a.delete("\r").chomp+"\n"
end
store() click to toggle source
# File vendor/qwik/lib/qwik/act-wema.rb, line 280
def store
  str = [nil, @connected, @x, @y, @fg, @bg].join(',')+"\n"
  str << @text.to_s
  @page.store(str)
end