diff --git a/RxExample/RxExample.xcodeproj/project.pbxproj b/RxExample/RxExample.xcodeproj/project.pbxproj index 958c22ed..1105929f 100644 --- a/RxExample/RxExample.xcodeproj/project.pbxproj +++ b/RxExample/RxExample.xcodeproj/project.pbxproj @@ -12,6 +12,8 @@ 0706E19D1B176EE200BA2D3A /* String+extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0706E19C1B176EE200BA2D3A /* String+extensions.swift */; }; 0706E19F1B17703E00BA2D3A /* RandomUserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0706E19E1B17703E00BA2D3A /* RandomUserAPI.swift */; }; 075F13101B4E9D5A000D7861 /* APIWrappersViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 075F130F1B4E9D5A000D7861 /* APIWrappersViewController.swift */; }; + 07A5C3DB1B70B703001EFE5C /* CalculatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07A5C3DA1B70B703001EFE5C /* CalculatorViewController.swift */; }; + 07A5C3DC1B70B703001EFE5C /* CalculatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07A5C3DA1B70B703001EFE5C /* CalculatorViewController.swift */; }; 07E300071B14995F00F00100 /* TableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07E300061B14995F00F00100 /* TableViewController.swift */; }; 07E300091B149A2A00F00100 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07E300081B149A2A00F00100 /* User.swift */; }; 07E3C2331B03605B0010338D /* Dependencies.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07E3C2321B03605B0010338D /* Dependencies.swift */; }; @@ -332,6 +334,7 @@ 0706E19C1B176EE200BA2D3A /* String+extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+extensions.swift"; sourceTree = ""; }; 0706E19E1B17703E00BA2D3A /* RandomUserAPI.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RandomUserAPI.swift; sourceTree = ""; }; 075F130F1B4E9D5A000D7861 /* APIWrappersViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = APIWrappersViewController.swift; sourceTree = ""; }; + 07A5C3DA1B70B703001EFE5C /* CalculatorViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CalculatorViewController.swift; sourceTree = ""; }; 07E300061B14995F00F00100 /* TableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableViewController.swift; sourceTree = ""; }; 07E300081B149A2A00F00100 /* User.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; 07E3C2321B03605B0010338D /* Dependencies.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Dependencies.swift; path = Examples/Dependencies.swift; sourceTree = ""; }; @@ -625,6 +628,15 @@ path = APIWrappers; sourceTree = ""; }; + 07A5C3D91B70B6B8001EFE5C /* 06 Calculator */ = { + isa = PBXGroup; + children = ( + 07A5C3DA1B70B703001EFE5C /* CalculatorViewController.swift */, + ); + name = "06 Calculator"; + path = Calculator; + sourceTree = ""; + }; 07E300051B14994500F00100 /* 05 TableView */ = { isa = PBXGroup; children = ( @@ -1045,14 +1057,14 @@ path = Services; sourceTree = ""; }; - C859B9A21B45C5D900D012D7 /* 06 PartialUpdates */ = { + C859B9A21B45C5D900D012D7 /* 07 PartialUpdates */ = { isa = PBXGroup; children = ( C859B9A31B45C5D900D012D7 /* PartialUpdatesViewController.swift */, C859B9AB1B45CF9100D012D7 /* NumberCell.swift */, C859B9AD1B45CFAB00D012D7 /* NumberSectionView.swift */, ); - name = "06 PartialUpdates"; + name = "07 PartialUpdates"; path = PartialUpdates; sourceTree = ""; }; @@ -1064,8 +1076,9 @@ C86E2F301AE5A0CA00C31024 /* 03 WikipediaImageSearch */, 075F130E1B4E9D10000D7861 /* 04 APIWrappers */, 07E300051B14994500F00100 /* 05 TableView */, - C859B9A21B45C5D900D012D7 /* 06 PartialUpdates */, - C8A57F711B40AF4E00D5570A /* 06 CoreData */, + 07A5C3D91B70B6B8001EFE5C /* 06 Calculator */, + C859B9A21B45C5D900D012D7 /* 07 PartialUpdates */, + C8A57F711B40AF4E00D5570A /* 08 CoreData */, ); path = Examples; sourceTree = ""; @@ -1150,12 +1163,12 @@ path = DataSources; sourceTree = ""; }; - C8A57F711B40AF4E00D5570A /* 06 CoreData */ = { + C8A57F711B40AF4E00D5570A /* 08 CoreData */ = { isa = PBXGroup; children = ( C8A57F721B40AF7C00D5570A /* Random.xcdatamodeld */, ); - name = "06 CoreData"; + name = "08 CoreData"; path = CoreData; sourceTree = ""; }; @@ -1364,6 +1377,7 @@ C8297FD61B6CF953000589EA /* UITextField+Rx.swift in Sources */, C8297E331B6CF905000589EA /* NumberCell.swift in Sources */, C8297FBB1B6CF953000589EA /* RxCollectionViewDataSourceProxy.swift in Sources */, + 07A5C3DC1B70B703001EFE5C /* CalculatorViewController.swift in Sources */, C8297FA61B6CF953000589EA /* KVOObserver.swift in Sources */, C8297F321B6CF94B000589EA /* Switch.swift in Sources */, C8297E341B6CF905000589EA /* UIImageView+Extensions.swift in Sources */, @@ -1545,6 +1559,7 @@ C88C788F1B3F14FD0061C5AB /* Changeset.swift in Sources */, C8C46DA81B47F7110020D71E /* CollectionViewImageCell.swift in Sources */, C8C46DAC1B47F7110020D71E /* WikipediaSearchViewController.swift in Sources */, + 07A5C3DB1B70B703001EFE5C /* CalculatorViewController.swift in Sources */, 0706E19D1B176EE200BA2D3A /* String+extensions.swift in Sources */, C88C78731B3EB0A00061C5AB /* SectionModel.swift in Sources */, C86E2F3F1AE5A0CA00C31024 /* SearchViewModel.swift in Sources */, diff --git a/RxExample/RxExample/Examples/Calculator/CalculatorViewController.swift b/RxExample/RxExample/Examples/Calculator/CalculatorViewController.swift new file mode 100644 index 00000000..5b363db2 --- /dev/null +++ b/RxExample/RxExample/Examples/Calculator/CalculatorViewController.swift @@ -0,0 +1,72 @@ +// +// Calculator.swift +// RxExample +// +// Created by carlos on 4/8/15. +// Copyright (c) 2015 Krunoslav Zaher. All rights reserved. +// + +import UIKit +#if !RX_NO_MODULE +import RxSwift +import RxCocoa +#endif + +class CalculatorViewController: ViewController { + + @IBOutlet weak var lastSignLabel: UILabel! + @IBOutlet weak var resultLabel: UILabel! + + @IBOutlet weak var allClearButton: UIButton! + @IBOutlet weak var changeSignButton: UIButton! + @IBOutlet weak var moduleButton: UIButton! + + @IBOutlet weak var divideButton: UIButton! + @IBOutlet weak var multiplyButton: UIButton! + @IBOutlet weak var minusButton: UIButton! + @IBOutlet weak var plusButton: UIButton! + @IBOutlet weak var equalButton: UIButton! + + @IBOutlet weak var dotButton: UIButton! + + @IBOutlet weak var zeroButton: UIButton! + @IBOutlet weak var oneButton: UIButton! + @IBOutlet weak var twoButton: UIButton! + @IBOutlet weak var threeButton: UIButton! + @IBOutlet weak var fourButton: UIButton! + @IBOutlet weak var fiveButton: UIButton! + @IBOutlet weak var sixButton: UIButton! + @IBOutlet weak var sevenButton: UIButton! + @IBOutlet weak var eightButton: UIButton! + @IBOutlet weak var nineButton: UIButton! + + override func viewDidLoad() { + + let allClearButtonOble = allClearButton.rx_tap + let changeSignButtonOble = changeSignButton.rx_tap + let moduleButtonOble = moduleButton.rx_tap + + let divideButtonOble = divideButton.rx_tap + let multiplyButtonOble = multiplyButton.rx_tap + let minusButtonOble = minusButton.rx_tap + let plusButtonOble = plusButton.rx_tap + let equalButtonOble = equalButton.rx_tap + + let dotButtonOble = dotButton.rx_tap + + let zeroButtonOble = zeroButton.rx_tap + let oneButtonOble = oneButton.rx_tap + let twoButtonOble = twoButton.rx_tap + let threeButtonOble = threeButton.rx_tap + let fourButtonOble = fourButton.rx_tap + let fiveButtonOble = fiveButton.rx_tap + let sixButtonOble = sixButton.rx_tap + let sevenButtonOble = sevenButton.rx_tap + let eightButtonOble = eightButton.rx_tap + let nineButtonOble = nineButton.rx_tap + + + + } + +} diff --git a/RxExample/RxExample/iOS/Main.storyboard b/RxExample/RxExample/iOS/Main.storyboard index 3e59fb91..21a256ae 100644 --- a/RxExample/RxExample/iOS/Main.storyboard +++ b/RxExample/RxExample/iOS/Main.storyboard @@ -2,6 +2,7 @@ + @@ -25,7 +26,7 @@ - + @@ -71,7 +72,7 @@ - + @@ -128,7 +129,7 @@ - + @@ -231,7 +232,7 @@ - + @@ -258,7 +259,7 @@ - + @@ -283,7 +284,7 @@ - + @@ -337,12 +338,12 @@ - + - + @@ -419,6 +420,29 @@ + + + + + + + + + + + + + @@ -486,7 +510,7 @@ - + @@ -541,7 +565,7 @@ This is only showcase app, not intended for production purposes. - + @@ -646,6 +670,361 @@ This is only showcase app, not intended for production purposes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +