mirror of https://github.com/oxen-io/session-ios
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.2 KiB
Swift
38 lines
1.2 KiB
Swift
extension UIColor {
|
|
|
|
public func adjust(hueBy hue: CGFloat = 0, saturationBy saturation: CGFloat = 0, brightnessBy brightness: CGFloat = 0) -> UIColor {
|
|
|
|
var currentHue: CGFloat = 0.0
|
|
var currentSaturation: CGFloat = 0.0
|
|
var currentBrigthness: CGFloat = 0.0
|
|
var currentAlpha: CGFloat = 0.0
|
|
|
|
if getHue(¤tHue, saturation: ¤tSaturation, brightness: ¤tBrigthness, alpha: ¤tAlpha) {
|
|
return UIColor(hue: currentHue + hue,
|
|
saturation: currentSaturation + saturation,
|
|
brightness: currentBrigthness + brightness,
|
|
alpha: currentAlpha)
|
|
} else {
|
|
return self
|
|
}
|
|
}
|
|
|
|
convenience init(red: Int, green: Int, blue: Int, a: CGFloat = 1.0) {
|
|
self.init(
|
|
red: CGFloat(red) / 255.0,
|
|
green: CGFloat(green) / 255.0,
|
|
blue: CGFloat(blue) / 255.0,
|
|
alpha: a
|
|
)
|
|
}
|
|
|
|
convenience init(rgb: Int, a: CGFloat = 1.0) {
|
|
self.init(
|
|
red: (rgb >> 16) & 0xFF,
|
|
green: (rgb >> 8) & 0xFF,
|
|
blue: rgb & 0xFF,
|
|
a: a
|
|
)
|
|
}
|
|
}
|