Skip to content

Instantly share code, notes, and snippets.

View MickaelCruzDB's full-sized avatar

Mickaël Cruz MickaelCruzDB

View GitHub Profile
@IBAction func presentWithAnimator(sender: NSButton) {
let animator = MyCustomSwiftAnimator()
let vc = MyViewController() as NSViewController
self.presentViewController(vc, animator: animator)
}
import Cocoa
import AppKit
class MyCustomSwiftAnimator: NSObject, NSViewControllerPresentationAnimator {
@objc func animatePresentationOfViewController(viewController: NSViewController, fromViewController: NSViewController) {
let bottomVC = fromViewController
let topVC = viewController
topVC.view.wantsLayer = true
NSAnimationContext.runAnimationGroup({ (context) -> Void in
var transition:CATransition = CATransition()
transition.duration = 0.3
transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromRight
transition.delegate = self
context.duration = 0.5
topVC.view.animator().alphaValue = 1
import Cocoa
import AppKit
class MyCustomSwiftAnimator: NSObject, NSViewControllerPresentationAnimator {
@objc func animatePresentationOfViewController(viewController: NSViewController, fromViewController: NSViewController) {
let bottomVC = fromViewController
let topVC = viewController
//
// AddShowTransitionAnimator.swift
// TVShowForecast
//
// Created by Thomas Krajacic on 3.11.2014.
// Copyright (c) 2014 Thomas Krajacic. All rights reserved.
//
import Cocoa
//
// ViewController.swift
// OutletRetention
//
// Created by Thomas Krajacic on 8.3.2015.
// Copyright (c) 2015 Thomas Krajacic. All rights reserved.
//
import Cocoa
//
// AddShowTransitionAnimator.swift
// TVShowForecast
//
// Created by Thomas Krajacic on 3.11.2014.
// Copyright (c) 2014 Thomas Krajacic. All rights reserved.
//
import Cocoa
//
// AddShowTransitionAnimator.swift
// TVShowForecast
//
// Created by Thomas Krajacic on 3.11.2014.
// Copyright (c) 2014 Thomas Krajacic. All rights reserved.
//
import Cocoa
@IBAction func PanDownAction(sender: NSMagnificationGestureRecognizer) {
if sender.state == NSGestureRecognizerState.Began {
let vc = storyboard?.instantiateControllerWithIdentifier("C") as! NSViewController
showViewControllerDown(vc)
}
}
@IBOutlet var PanDown: NSPanGestureRecognizer!
@IBAction func PanDownAction(sender: NSPanGestureRecognizer) {
if sender.state == NSGestureRecognizerState.Began {
let vc = storyboard?.instantiateControllerWithIdentifier("C") as! NSViewController
showViewControllerDown(vc)
}
}