motion/util/constants.rb in bubble-wrap-1.5.0 vs motion/util/constants.rb in bubble-wrap-1.6.0.rc1
- old
+ new
@@ -11,30 +11,35 @@
# Constants.register UIReturnKeyDone, UIReturnKeyNext
def register(*ui_constants)
# do nothing, just get the constants in the code
end
- # @param [String] base of the constant
+ # @param [String] base of the constant
# @param [Integer, NSArray, String, Symbol] the suffix of the constant
# when NSArray, will return the bitmask of all suffixes in the array
# @return [Integer] the constant for this base and suffix
# Examples
# get("UIReturnKey", :done) => UIReturnKeyDone == 9
# get("UIReturnKey", "done") => UIReturnKeyDone == 9
# get("UIReturnKey", 9) => 9
# get("UIImagePickerControllerSourceType", ["photo_library", "camera", "saved_photos_album"]) => 3
+ # get("UIActivityType", [:air_drop, :print]) => ["com.apple.UIKit.activity.AirDrop", "com.apple.UIKit.activity.Print"]
def get(base, *values)
value = values.size == 1 ? values.first : values.flatten
case value
when Numeric
value.to_i
when NSArray
- value.reduce { |i, j|
- get(base, i) | get(base, j)
- }
+ unless get(base, value.first).is_a? Fixnum
+ value.map { |v| get(base, v) }
+ else
+ value.reduce { |i, j|
+ get(base, i) | get(base, j)
+ }
+ end
else
value = value.to_s.camelize
Kernel.const_get("#{base}#{value}")
end
end
end
-end
\ No newline at end of file
+end