From e14317ba5602f6a3d7aba21627377a1e972fa9d5 Mon Sep 17 00:00:00 2001 From: Max Sokolov Date: Wed, 25 Nov 2015 21:48:57 +0300 Subject: [PATCH] += operator overloading --- Tablet/TableDirector.swift | 10 ++++++++++ Tablet/TableRowBuilder.swift | 4 ++-- .../UserInterfaceState.xcuserstate | Bin 25705 -> 25883 bytes TabletDemo/TabletDemo/ViewController.swift | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Tablet/TableDirector.swift b/Tablet/TableDirector.swift index 41498bb..1b1cea1 100644 --- a/Tablet/TableDirector.swift +++ b/Tablet/TableDirector.swift @@ -184,4 +184,14 @@ extension TableDirector { return invokeAction(.shouldHighlight, cell: tableView.cellForRowAtIndexPath(indexPath), indexPath: indexPath) as? Bool ?? true } +} + +public func +=(left: TableDirector, right: RowBuilder) { + + left.appendSection(TableSectionBuilder(rowBuilders: [right])) +} + +public func +=(left: TableDirector, right: TableSectionBuilder) { + + left.appendSection(right) } \ No newline at end of file diff --git a/Tablet/TableRowBuilder.swift b/Tablet/TableRowBuilder.swift index 016fa2a..0ac2389 100644 --- a/Tablet/TableRowBuilder.swift +++ b/Tablet/TableRowBuilder.swift @@ -28,7 +28,7 @@ internal enum ActionHandler { case actionBlock((data: ActionData) -> Void) case actionReturnBlock((data: ActionData) -> AnyObject?) - func call(data: ActionData) -> AnyObject? { + func invoke(data: ActionData) -> AnyObject? { switch (self) { case .actionBlock(let closure): @@ -110,7 +110,7 @@ public class TableRowBuilder : RowBuilder { public func invokeAction(actionType: ActionType, cell: UITableViewCell?, indexPath: NSIndexPath, itemIndex: Int) -> AnyObject? { if let action = actions[actionType.key] { - return action.call(ActionData(cell: cell as? C, indexPath: indexPath, item: items[itemIndex], itemIndex: itemIndex)) + return action.invoke(ActionData(cell: cell as? C, indexPath: indexPath, item: items[itemIndex], itemIndex: itemIndex)) } return nil } diff --git a/TabletDemo/TabletDemo.xcodeproj/project.xcworkspace/xcuserdata/maxsokolov.xcuserdatad/UserInterfaceState.xcuserstate b/TabletDemo/TabletDemo.xcodeproj/project.xcworkspace/xcuserdata/maxsokolov.xcuserdatad/UserInterfaceState.xcuserstate index 479978b8f6b32052174734cf863c4d01bbf8411d..fe73904c54da62879bf88243451797d9012e509f 100644 GIT binary patch delta 12821 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 CR&jLz diff --git a/TabletDemo/TabletDemo/ViewController.swift b/TabletDemo/TabletDemo/ViewController.swift index ed353d5..af228c3 100644 --- a/TabletDemo/TabletDemo/ViewController.swift +++ b/TabletDemo/TabletDemo/ViewController.swift @@ -55,6 +55,6 @@ class ViewController: UIViewController { let sectionBuilder = TableSectionBuilder(headerTitle: "Tablet", footerTitle: "Deal with table view like a boss.", rowBuilders: [rowBuilder, configurableRowBuilder]) - tableDirector.appendSection(sectionBuilder) + tableDirector += sectionBuilder } } \ No newline at end of file