Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // ViewController.swift
- // calc
- //
- // Created by apios on 27/03/2017.
- // Copyright © 2017 apios. All rights reserved.
- //
- import Cocoa
- class ViewController: NSViewController {
- var numberOnScreen:Double = 0;
- var previousNumber:Double = 0;
- var performingMath = false
- var operation = 0
- @IBOutlet weak var label: NSTextFieldCell!
- @IBAction func numbers(_ sender: NSButtonCell)
- {
- if performingMath
- {
- label.stringValue = String(sender.tag-1)
- numberOnScreen = Double(label.stringValue)!
- performingMath = false
- }
- else
- {
- label.stringValue = label.stringValue + String(sender.tag-1)
- numberOnScreen = Double(label.stringValue)!
- }
- }
- @IBAction func buttons(_ sender: NSButtonCell)
- {
- if label.stringValue != "" && sender.tag != 11 && sender.tag != 16
- {
- previousNumber = Double(label.stringValue)!
- if sender.tag == 12 // Dzielnie
- {
- label.stringValue = "/";
- }
- else if sender.tag == 13 //Mnozen
- {
- label.stringValue = "*";
- }
- else if sender.tag == 14 //odej
- {
- label.stringValue = "-";
- }
- else if sender.tag == 15 //dodaj
- {
- label.stringValue = "+";
- }
- operation = sender.tag
- performingMath = true;
- }
- else if sender.tag == 16
- {
- if operation == 12
- {
- label.stringValue = String(previousNumber / numberOnScreen)
- }
- else if operation == 13
- {
- label.stringValue = String(previousNumber * numberOnScreen)
- }
- else if operation == 14
- {
- label.stringValue = String(previousNumber - numberOnScreen)
- }
- else if operation == 15
- {
- label.stringValue = String(previousNumber + numberOnScreen)
- }
- }
- else if sender.tag == 11
- {
- label.stringValue = ""
- previousNumber = 0;
- numberOnScreen = 0;
- operation = 0;
- }
- }
- override func viewDidLoad() {
- super.viewDidLoad()
- // Do any additional setup after loading the view.
- }
- override var representedObject: Any? {
- didSet {
- // Update the view, if already loaded.
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement