class Jaspion::Miya::Objectivec::Document

Represents a UI xml layout

Public Instance Methods

start_element_namespace(name, _ = nil, _p = nil, _u = nil, _n = nil) click to toggle source

Nokogiri method specific for Objective-C layout

# File lib/jaspion/miya/objectivec/document.rb, line 26
def start_element_namespace(name, _ = nil, _p = nil, _u = nil, _n = nil)
  unless name.nil?
    cl_name = valid_name?(name)
    unless cl_name.nil?
      clazz = Jaspion::Miya::Objectivec.const_get(cl_name)
      @objects.push(clazz.new unless clazz.nil?
    end
  end
end
valid_name?(element_name) click to toggle source

Translate the XIB view name into UI Cocoa pattern

# File lib/jaspion/miya/objectivec/document.rb, line 9
def valid_name?(element_name)
  els = %w(
    actionSheet alertView activityIndicatorView inputView
    navigationBar pickerView popoverBackgroundView progressView
    scrollView searchBar stackView tabBar tableView tableViewCell
    tableViewHeaderCell toolbar visualEffectView webView window
    view label imageView collectionView slider textField datePicker
    pageControl refreshControl
  )
  unless els.index(element_name).nil?
    element_name[0] = element_name[0].capitalize
    return "UI#{element_name}"
  end
  nil
end