Sha256: 3cf0ce3ab974ebf437b7c0d9158542eae07fdd54d7f71ad108f294451a04d3ae

Contents?: true

Size: 994 Bytes

Versions: 36

Compression:

Stored size: 994 Bytes

Contents

class MPButton < UIButton
  include MotionPrime::SupportKeyValueStore
  include MotionPrime::SupportPaddingAttribute
  attr_accessor :sizeToFit

  def setTitle(value)
    setTitle value, forState: UIControlStateNormal
  end

  def setImage(value)
    setImage value, forState: UIControlStateNormal
  end

  def setTitleEdgeInsets(value)
    @custom_title_inset_drawn = true
    super
  end

  def self.default_padding_left
    5
  end

  def self.default_padding_right
    5
  end

  def padding_top # to center title label
    self.paddingTop || self.padding || begin
      single_line_height = self.font.pointSize
      (self.bounds.size.height - single_line_height)/2 + 1
    end
  end

  def padding_bottom
    self.bounds.size.height - (self.font.pointSize + padding_top)
  end

  def apply_padding!(rect)
    self.setTitleEdgeInsets(padding_insets)
  end

  def apply_padding?
    super && !@custom_title_inset_drawn
  end

  def drawRect(rect)
    apply_padding(rect)
    super
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
motion-prime-0.9.7 motion-prime/support/mp_button.rb
motion-prime-0.9.6 motion-prime/support/mp_button.rb
motion-prime-0.9.5 motion-prime/support/mp_button.rb
motion-prime-0.9.4 motion-prime/support/mp_button.rb
motion-prime-0.9.3 motion-prime/support/mp_button.rb
motion-prime-0.9.2 motion-prime/support/mp_button.rb
motion-prime-0.9.1 motion-prime/support/mp_button.rb
motion-prime-0.9.0 motion-prime/support/mp_button.rb
motion-prime-0.8.12 motion-prime/support/mp_button.rb
motion-prime-0.8.11 motion-prime/support/mp_button.rb
motion-prime-0.8.10 motion-prime/support/mp_button.rb
motion-prime-0.8.9 motion-prime/support/mp_button.rb
motion-prime-0.8.8 motion-prime/support/mp_button.rb
motion-prime-0.8.7 motion-prime/support/mp_button.rb
motion-prime-0.8.6 motion-prime/support/mp_button.rb
motion-prime-0.8.5 motion-prime/support/mp_button.rb
motion-prime-0.8.4 motion-prime/support/mp_button.rb
motion-prime-0.8.3 motion-prime/support/mp_button.rb
motion-prime-0.8.2 motion-prime/support/mp_button.rb
motion-prime-0.8.1 motion-prime/support/mp_button.rb