Files

55 lines
1.3 KiB
Swift

//
// PrivadoLoader+Extenstions.swift
// PrivadoVPN
//
// Created by Murad Shabanov on 23.11.2021.
// Copyright © 2021 Privado LLC. All rights reserved.
//
import Foundation
extension NSColor {
func lighter(by percentage: CGFloat = 30.0) -> NSColor? {
return self.adjust(by: abs(percentage) )
}
func darker(by percentage: CGFloat = 30.0) -> NSColor? {
return self.adjust(by: -1 * abs(percentage) )
}
func adjust(by percentage: CGFloat = 30.0) -> NSColor? {
var red: CGFloat = 0, green: CGFloat = 0, blue: CGFloat = 0, alpha: CGFloat = 0
self.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
return NSColor(red: min(red + percentage/100, 1.0),
green: min(green + percentage/100, 1.0),
blue: min(blue + percentage/100, 1.0),
alpha: alpha)
}
}
class ConnectionLayer: CAShapeLayer {
public var newColor: NSColor = .clear {
didSet {
self.strokeColor = self.newColor.cgColor
self.setNeedsDisplay()
}
}
public var arcWidth: CGFloat = 2 {
didSet {
self.lineWidth = self.arcWidth
self.setNeedsDisplay()
}
}
public var layerTime: Double = 0
override func display() {
super.display()
}
}