Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 37b7e3a3b7 | |||
| d5ae9526be | |||
| 5ba59404e8 | |||
| 325b0d7602 | |||
| 1a574d7024 | |||
| b986faf947 | |||
| ac97b80638 | |||
| fca07a4fbd | |||
| 643ac6ee2c | |||
| 68b340a337 |
@@ -1,3 +1,4 @@
|
||||
.DS_Store
|
||||
# Xcode
|
||||
#
|
||||
build/
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
3.0
|
||||
@@ -12,9 +12,9 @@ import Cocoa
|
||||
@IBDesignable
|
||||
open class CircularProgressView: DeterminateAnimation {
|
||||
|
||||
var backgroundCircle = CAShapeLayer()
|
||||
var progressLayer = CAShapeLayer()
|
||||
var percentLabelLayer = CATextLayer()
|
||||
open var backgroundCircle = CAShapeLayer()
|
||||
open var progressLayer = CAShapeLayer()
|
||||
open var percentLabelLayer = CATextLayer()
|
||||
|
||||
@IBInspectable open var strokeWidth: CGFloat = -1 {
|
||||
didSet {
|
||||
|
||||
@@ -12,8 +12,8 @@ import Cocoa
|
||||
@IBDesignable
|
||||
open class ProgressBar: DeterminateAnimation {
|
||||
|
||||
var borderLayer = CAShapeLayer()
|
||||
var progressLayer = CAShapeLayer()
|
||||
open var borderLayer = CAShapeLayer()
|
||||
open var progressLayer = CAShapeLayer()
|
||||
|
||||
@IBInspectable open var borderColor: NSColor = NSColor.black {
|
||||
didSet {
|
||||
|
||||
@@ -98,7 +98,7 @@ open class MaterialProgress: IndeterminateAnimation {
|
||||
}
|
||||
|
||||
var currentRotation = 0.0
|
||||
let π2 = M_PI * 2
|
||||
let π2 = Double.pi * 2
|
||||
|
||||
override func startAnimation() {
|
||||
progressLayer.add(animationGroup, forKey: "strokeEnd")
|
||||
|
||||
@@ -77,7 +77,7 @@ open class Spinner: IndeterminateAnimation {
|
||||
animation.values = [Double]()
|
||||
var i = 0.0
|
||||
while i < 360 {
|
||||
var iRadian = CGFloat(i * M_PI / 180.0)
|
||||
var iRadian = CGFloat(i * Double.pi / 180.0)
|
||||
if clockwise { iRadian = -iRadian }
|
||||
|
||||
animation.values?.append(iRadian)
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
Pod::Spec.new do |spec|
|
||||
spec.name = 'ProgressKit'
|
||||
spec.version = '0.6'
|
||||
spec.version = '0.7'
|
||||
spec.license = 'MIT'
|
||||
spec.summary = 'Animated ProgressViews for macOS'
|
||||
spec.homepage = 'https://github.com/kaunteya/ProgressKit'
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
E310B1D31D7AB2D4008DEF62 /* README.md in Sources */ = {isa = PBXBuildFile; fileRef = E310B1D21D7AB2D4008DEF62 /* README.md */; };
|
||||
E310B1D51D7AB2EA008DEF62 /* LICENSE in Resources */ = {isa = PBXBuildFile; fileRef = E310B1D41D7AB2EA008DEF62 /* LICENSE */; };
|
||||
E31617A61BC0596C007AD70F /* BaseView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E31617A51BC0596C007AD70F /* BaseView.swift */; };
|
||||
E340FDB81BDE45F000CE6550 /* RotatingArc.swift in Sources */ = {isa = PBXBuildFile; fileRef = E340FDB71BDE45F000CE6550 /* RotatingArc.swift */; };
|
||||
E35D1C6C1B676889001DBAF2 /* Spinner.swift in Sources */ = {isa = PBXBuildFile; fileRef = E35D1C6B1B676889001DBAF2 /* Spinner.swift */; };
|
||||
@@ -25,7 +23,6 @@
|
||||
E3AD65DF1B426758009541CD /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E3AD65DD1B426758009541CD /* Main.storyboard */; };
|
||||
E3AD65EB1B426758009541CD /* ProgressKitTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3AD65EA1B426758009541CD /* ProgressKitTests.swift */; };
|
||||
E3AD65F71B427511009541CD /* InDeterminateVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3AD65F61B427511009541CD /* InDeterminateVC.swift */; };
|
||||
E3CCD5981BBC19ED00F7DB9A /* ProgressKit.podspec in Resources */ = {isa = PBXBuildFile; fileRef = E3CCD5971BBC19ED00F7DB9A /* ProgressKit.podspec */; };
|
||||
E3CCD59A1BBC2B9B00F7DB9A /* ProgressUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3CCD5991BBC2B9B00F7DB9A /* ProgressUtils.swift */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
@@ -216,16 +213,16 @@
|
||||
attributes = {
|
||||
LastSwiftMigration = 0700;
|
||||
LastSwiftUpdateCheck = 0700;
|
||||
LastUpgradeCheck = 0800;
|
||||
LastUpgradeCheck = 0920;
|
||||
ORGANIZATIONNAME = "Kauntey Suryawanshi";
|
||||
TargetAttributes = {
|
||||
E3AD65D11B426758009541CD = {
|
||||
CreatedOnToolsVersion = 6.3.2;
|
||||
LastSwiftMigration = 0800;
|
||||
LastSwiftMigration = 0920;
|
||||
};
|
||||
E3AD65E31B426758009541CD = {
|
||||
CreatedOnToolsVersion = 6.3.2;
|
||||
LastSwiftMigration = 0800;
|
||||
LastSwiftMigration = 0920;
|
||||
TestTargetID = E3AD65D11B426758009541CD;
|
||||
};
|
||||
};
|
||||
@@ -254,8 +251,6 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
E310B1D51D7AB2EA008DEF62 /* LICENSE in Resources */,
|
||||
E3CCD5981BBC19ED00F7DB9A /* ProgressKit.podspec in Resources */,
|
||||
E3AD65DF1B426758009541CD /* Main.storyboard in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@@ -280,7 +275,6 @@
|
||||
E3AD65F71B427511009541CD /* InDeterminateVC.swift in Sources */,
|
||||
E3918F851B4E88DE00558DAB /* ShootingStars.swift in Sources */,
|
||||
E3918F811B4E88CF00558DAB /* CircularProgressView.swift in Sources */,
|
||||
E310B1D31D7AB2D4008DEF62 /* README.md in Sources */,
|
||||
E35D1C6C1B676889001DBAF2 /* Spinner.swift in Sources */,
|
||||
E3918F841B4E88DE00558DAB /* MaterialProgress.swift in Sources */,
|
||||
E3AD65D81B426758009541CD /* AppDelegate.swift in Sources */,
|
||||
@@ -331,14 +325,20 @@
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
@@ -378,14 +378,20 @@
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
@@ -418,7 +424,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.kaunteya.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = On;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -431,7 +438,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.kaunteya.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = On;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@@ -452,7 +460,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.kaunteya.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = On;
|
||||
SWIFT_VERSION = 4.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ProgressKit.app/Contents/MacOS/ProgressKit";
|
||||
};
|
||||
name = Debug;
|
||||
@@ -470,7 +479,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.kaunteya.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = On;
|
||||
SWIFT_VERSION = 4.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ProgressKit.app/Contents/MacOS/ProgressKit";
|
||||
};
|
||||
name = Release;
|
||||
|
||||
@@ -10,8 +10,8 @@ import Cocoa
|
||||
|
||||
class DeterminateViewController: NSViewController {
|
||||
|
||||
dynamic var liveProgress: Bool = true
|
||||
dynamic var labelPercentage: String = "30%"
|
||||
@objc dynamic var liveProgress: Bool = true
|
||||
@objc dynamic var labelPercentage: String = "30%"
|
||||
|
||||
override func viewDidLoad() {
|
||||
preferredContentSize = NSMakeSize(500, 300)
|
||||
@@ -21,9 +21,9 @@ class DeterminateViewController: NSViewController {
|
||||
|
||||
@IBAction func sliderDragged(_ sender: NSSlider) {
|
||||
|
||||
let event = NSApplication.shared().currentEvent
|
||||
let event = NSApplication.shared.currentEvent
|
||||
// let dragStart = event!.type == NSEventType.LeftMouseDown
|
||||
let dragEnd = event!.type == NSEventType.leftMouseUp
|
||||
let dragEnd = event!.type == NSEvent.EventType.leftMouseUp
|
||||
// let dragging = event!.type == NSEventType.LeftMouseDragged
|
||||
|
||||
if liveProgress || dragEnd {
|
||||
|
||||
@@ -28,9 +28,6 @@ class ProgressKitTests: XCTestCase {
|
||||
|
||||
func testPerformanceExample() {
|
||||
// This is an example of a performance test case.
|
||||
self.measure() {
|
||||
// Put the code you want to measure the time of here.
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+2
-2
@@ -42,11 +42,11 @@ extension NSBezierPath {
|
||||
}
|
||||
|
||||
func degreeToRadian(_ degree: Int) -> Double {
|
||||
return Double(degree) * (M_PI / 180)
|
||||
return Double(degree) * (Double.pi / 180)
|
||||
}
|
||||
|
||||
func radianToDegree(_ radian: Double) -> Int {
|
||||
return Int(radian * (180 / M_PI))
|
||||
return Int(radian * (180 / Double.pi))
|
||||
}
|
||||
|
||||
func + (p1: CGPoint, p2: CGPoint) -> CGPoint {
|
||||
|
||||
@@ -21,7 +21,7 @@ You can now make spinners, progress bar, crawlers etc, which can be finely custo
|
||||
- [Shooting Stars](#shooting-stars)
|
||||
- [Rotating Arc](#rotating-arc)
|
||||
- [Determinate Progress](#determinate-progress)
|
||||
- [Circular Progress] (#circular-progress)
|
||||
- [Circular Progress](#circular-progress)
|
||||
- [Progress Bar](#progress-bar)
|
||||
- [License](#license)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user