This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//NOTE: split into 2 files | |
//Based on/inspired by this stackoverflow.com post: https://stackoverflow.com/a/10177956/1256015 by Graham Perks. | |
//------ Switcher.h | |
/** | |
Example usage: | |
@code | |
NSString * someString = @"Hearts"; | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostViewController: MainView { | |
var createPostPresenter: CreatePostPresenter! //injected before view loads | |
override func viewDidLoad() { | |
super.viewDidLoad() | |
// layout the view upon loading | |
createPostPresenter.registerView(self) | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostPresenter { | |
var createPostModel: CreatePostModel! //injected before registering view | |
func registerView(createPostView: CreatePostView) { | |
createPostModel.imageFor(imageUrl: createPostModel.currentRoleProfilePictureUrl) | |
.observeOn(MainScheduler.instance) | |
.bind(to: createPostView.posterImageBinder) | |
.disposed(by: bag) | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostPresenter { | |
var createPostModel: CreatePostModel! //injected before registering view | |
func registerView(createPostView: CreatePostView) { | |
weak var view: CreatePostView! = createPostView | |
createPostModel.imageFor(imageUrl: createPostModel.currentRoleProfilePictureUrl) | |
.observeOn(MainScheduler.instance) | |
.bind(to: view.posterImageBinder) | |
.disposed(by: bag) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostPresenter { | |
var createPostModel: CreatePostModel! //injected before registering view | |
func registerView(createPostView: CreatePostView) { | |
weak var view: CreatePostView! = createPostView | |
view.createPostButtonTap | |
.throttle(0.1, scheduler: MainScheduler.instance) | |
.map { (view.postText, view.photo) } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostPresenter { | |
var createPostModel: CreatePostModel! //injected before registering view | |
func registerView(createPostView: CreatePostView) { | |
weak var view: CreatePostView! = createPostView | |
let model = createPostModel! | |
view.createPostButtonTap | |
.throttle(0.1, scheduler: MainScheduler.instance) | |
.map { (view.postText, view.photo) } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class CreatePostPresenter { | |
var createPostModel: CreatePostModel! //injected before registering view | |
func registerView(createPostView: CreatePostView) { | |
weak var view: CreatePostView! = createPostView | |
let model = createPostModel! | |
view.createPostButtonTap | |
.throttle(0.1, scheduler: MainScheduler.instance) | |
.map { (view.postText, view.photo) } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import ReSwift | |
import RxSwift | |
import RxCocoa | |
func homeScreenViewModel(viewProfileTap: Observable<Void>, | |
playGamesTap: Observable<Void>, | |
logoutTap: Observable<Void>) | |
-> (username: Driver<Username>, | |
viewProfileDisposable: Disposable, | |
playGamesDisposable: Disposable, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#if DEBUG | |
deinit { | |
print("\(String(describing: self)) deinit") | |
} | |
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SearchResultViewModel.swift | |
// RxExample | |
// | |
// Created by Krunoslav Zaher on 4/3/15. | |
// Modified by Chuck Krutsinger on 2/20/19. | |
// | |
// Copyright © 2015 Krunoslav Zaher. All rights reserved. | |
// | |
import RxSwift |
OlderNewer