Sha256: 7f8be1d005366102de101a792ea85f17c34eef551274b175bb9404b9a0730dfd

Contents?: true

Size: 1.84 KB

Versions: 25

Compression:

Stored size: 1.84 KB

Contents

class Wx::Size
  # More informative output for inspect etc
  def to_s
    "#<Wx::Size: (#{get_width}, #{get_height})>"
  end

  # Compare with another size
  def ==(other)
    unless other.kind_of?(Wx::Size)
      Kernel.raise TypeError, "Cannot compare Size to #{other}"
    end
    get_x == other.get_x and get_y == other.get_y
  end

  # Return a new Wx::Size with the width and height values both divided
  # by parameter +div+, which should be a Numeric
  def /(div)
    self.class.new( (get_x / div).to_i, (get_y / div).to_i )
  end

  # Return a new Wx::Size with the width and height values both
  # multiplied by parameter +mul+, which should be a Numeric
  def *(mul)
    self.class.new( (get_x * mul).to_i, (get_y * mul).to_i )
  end

  # Return a new Wx::Size with the width and height parameters both
  # reduced by parameter +arg+. If +arg+ is another Wx::Size, reduce
  # width by the other's width and height by the other's height; if
  # +arg+ is a numeric value, reduce both width and height by that
  # value.
  def -(arg)
    case arg
    when self.class
      self.class.new( get_x - arg.get_x, get_y - arg.get_y )
    when Numeric
      self.class.new( (get_x - arg).to_i, (get_y - arg).to_i )
    else
      Kernel.raise TypeError, "Cannot add #{arg} to #{self.inspect}"
    end
  end

  # Return a new Wx::Size with the width and height parameters both
  # increased by parameter +arg+. If +arg+ is another Wx::Size, increase
  # width by the other's width and height by the other's height; if
  # +arg+ is a numeric value, increase both width and height by that
  # value.
  def +(arg)
    case arg
    when self.class
      self.class.new( get_x + arg.get_x, get_y + arg.get_y )
    when Numeric
      self.class.new( (get_x + arg).to_i, (get_y + arg).to_i )
    else
      Kernel.raise TypeError, "Cannot add #{arg} to #{self.inspect}"
    end
  end
end

Version data entries

25 entries across 25 versions & 3 rubygems

Version Path
wxruby64-2.0.1-x64-mingw32 lib/wx/classes/size.rb
wxruby-ruby19-2.0.1-x86-mingw32 lib/wx/classes/size.rb
wxruby-ruby19-2.0.1-x86-linux lib/wx/classes/size.rb
wxruby-ruby19-2.0.1-x86-darwin-9 lib/wx/classes/size.rb
wxruby-2.0.1-x86-mswin32-60 lib/wx/classes/size.rb
wxruby-2.0.1-x86-mingw32 lib/wx/classes/size.rb
wxruby-2.0.1-x86-linux lib/wx/classes/size.rb
wxruby-2.0.1-universal-darwin-9 lib/wx/classes/size.rb
wxruby-1.9.10-universal-darwin-9 lib/wx/classes/size.rb
wxruby-1.9.10-x86-linux lib/wx/classes/size.rb
wxruby-1.9.10-x86-mswin32-60 lib/wx/classes/size.rb
wxruby-1.9.10-x86-mingw32 lib/wx/classes/size.rb
wxruby-1.9.10-x86_64-linux lib/wx/classes/size.rb
wxruby-2.0.0-universal-darwin-9 lib/wx/classes/size.rb
wxruby-2.0.0-x86-linux lib/wx/classes/size.rb
wxruby-2.0.0-x86-mingw32 lib/wx/classes/size.rb
wxruby-2.0.0-x86-mswin32-60 lib/wx/classes/size.rb
wxruby-2.0.0-x86_64-linux lib/wx/classes/size.rb
wxruby-ruby19-1.9.10-x86-darwin-9 lib/wx/classes/size.rb
wxruby-ruby19-1.9.10-x86-mingw32 lib/wx/classes/size.rb