From ef9d4edbd1ed44df2c7e60568e1b91b9ed4d6f8a Mon Sep 17 00:00:00 2001 From: Brent Simmons Date: Fri, 26 May 2017 13:25:02 -0700 Subject: [PATCH] Add KeyboardDelegate. --- Evergreen.xcodeproj/project.pbxproj | 13 +++++++++++++ .../MainWindow/KeyboardDelegateProtocol.swift | 17 +++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 Evergreen/MainWindow/KeyboardDelegateProtocol.swift diff --git a/Evergreen.xcodeproj/project.pbxproj b/Evergreen.xcodeproj/project.pbxproj index d30bc77a2..035c02bc5 100644 --- a/Evergreen.xcodeproj/project.pbxproj +++ b/Evergreen.xcodeproj/project.pbxproj @@ -10,6 +10,7 @@ 842E45CE1ED8C308000A8B52 /* AppConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842E45CD1ED8C308000A8B52 /* AppConstants.swift */; }; 842E45DD1ED8C54B000A8B52 /* Browser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842E45DC1ED8C54B000A8B52 /* Browser.swift */; }; 842E45DF1ED8C582000A8B52 /* Defaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842E45DE1ED8C582000A8B52 /* Defaults.swift */; }; + 842E45E31ED8C681000A8B52 /* KeyboardDelegateProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842E45E21ED8C681000A8B52 /* KeyboardDelegateProtocol.swift */; }; 8471A2C41ED4CEBF008F099E /* DataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8471A2B71ED4CEAD008F099E /* DataModel.framework */; }; 8471A2C51ED4CEBF008F099E /* DataModel.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8471A2B71ED4CEAD008F099E /* DataModel.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 8471A2F51ED4D062008F099E /* LocalAccount.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8471A2F21ED4D04D008F099E /* LocalAccount.framework */; }; @@ -305,6 +306,7 @@ 842E45CD1ED8C308000A8B52 /* AppConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AppConstants.swift; path = Evergreen/AppConstants.swift; sourceTree = ""; }; 842E45DC1ED8C54B000A8B52 /* Browser.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Browser.swift; path = Evergreen/Browser.swift; sourceTree = ""; }; 842E45DE1ED8C582000A8B52 /* Defaults.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Defaults.swift; path = Evergreen/Preferences/Defaults.swift; sourceTree = ""; }; + 842E45E21ED8C681000A8B52 /* KeyboardDelegateProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyboardDelegateProtocol.swift; sourceTree = ""; }; 8471A2B21ED4CEAD008F099E /* DataModel.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = DataModel.xcodeproj; path = Frameworks/DataModel/DataModel.xcodeproj; sourceTree = ""; }; 8471A2EC1ED4D04D008F099E /* LocalAccount.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = LocalAccount.xcodeproj; path = Frameworks/LocalAccount/LocalAccount.xcodeproj; sourceTree = ""; }; 849C64601ED37A5D003D8FC0 /* Evergreen.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Evergreen.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -362,6 +364,15 @@ name = Preferences; sourceTree = ""; }; + 842E45E11ED8C681000A8B52 /* MainWindow */ = { + isa = PBXGroup; + children = ( + 842E45E21ED8C681000A8B52 /* KeyboardDelegateProtocol.swift */, + ); + name = MainWindow; + path = Evergreen/MainWindow; + sourceTree = ""; + }; 8471A2B31ED4CEAD008F099E /* Products */ = { isa = PBXGroup; children = ( @@ -388,6 +399,7 @@ 849C64631ED37A5D003D8FC0 /* AppDelegate.swift */, 849C64651ED37A5D003D8FC0 /* ViewController.swift */, 842E45DC1ED8C54B000A8B52 /* Browser.swift */, + 842E45E11ED8C681000A8B52 /* MainWindow */, 842E45E01ED8C587000A8B52 /* Preferences */, 849C646C1ED37A5D003D8FC0 /* Info.plist */, 849C64741ED37A5D003D8FC0 /* EvergreenTests */, @@ -823,6 +835,7 @@ 842E45DD1ED8C54B000A8B52 /* Browser.swift in Sources */, 849C64661ED37A5D003D8FC0 /* ViewController.swift in Sources */, 842E45DF1ED8C582000A8B52 /* Defaults.swift in Sources */, + 842E45E31ED8C681000A8B52 /* KeyboardDelegateProtocol.swift in Sources */, 842E45CE1ED8C308000A8B52 /* AppConstants.swift in Sources */, 849C64641ED37A5D003D8FC0 /* AppDelegate.swift in Sources */, ); diff --git a/Evergreen/MainWindow/KeyboardDelegateProtocol.swift b/Evergreen/MainWindow/KeyboardDelegateProtocol.swift new file mode 100644 index 000000000..64c84a1b2 --- /dev/null +++ b/Evergreen/MainWindow/KeyboardDelegateProtocol.swift @@ -0,0 +1,17 @@ +// +// KeyboardDelegateProtocol.swift +// Evergreen +// +// Created by Brent Simmons on 10/11/16. +// Copyright © 2016 Ranchero Software. All rights reserved. +// + +import Cocoa + +let keypadEnter: unichar = 3 + +protocol KeyboardDelegate: class { + + // Return true if handled. + func handleKeydownEvent(_: NSEvent, sender: AnyObject) -> Bool +}