Skip to content
Snippets Groups Projects
Commit 33682dfd authored by Spotlight's avatar Spotlight
Browse files

Experimental popover

parent 72019cf6
No related branches found
No related tags found
No related merge requests found
......@@ -12,7 +12,8 @@ target 'Screenshottr' do
pod 'UTIKit'
pod 'AWSCore', :git => 'https://github.com/nickoneill/aws-sdk-osx'
pod 'AWSS3', :git => 'https://github.com/nickoneill/aws-sdk-osx'
pod 'ImgurSession', :git => 'https://github.com/mileswd/ImgurSession'
target 'ScreenshottrTests' do
inherit! :search_paths
# Pods for testing
......
PODS:
- AFNetworking (3.1.0):
- AFNetworking/NSURLSession (= 3.1.0)
- AFNetworking/Reachability (= 3.1.0)
- AFNetworking/Security (= 3.1.0)
- AFNetworking/Serialization (= 3.1.0)
- AFNetworking/UIKit (= 3.1.0)
- AFNetworking/NSURLSession (3.1.0):
- AFNetworking/Reachability
- AFNetworking/Security
- AFNetworking/Serialization
- AFNetworking/Reachability (3.1.0)
- AFNetworking/Security (3.1.0)
- AFNetworking/Serialization (3.1.0)
- AppAuth (0.9.1)
- AWSCore (2.2.5)
- AWSS3 (2.2.5):
......@@ -19,6 +32,8 @@ PODS:
- GTMSessionFetcher/Core (1.1.10)
- GTMSessionFetcher/Full (1.1.10):
- GTMSessionFetcher/Core (= 1.1.10)
- ImgurSession (1.3):
- AFNetworking (= 3.1.0)
- UTIKit (2.0.1)
DEPENDENCIES:
......@@ -27,6 +42,7 @@ DEPENDENCIES:
- GoogleAPIClientForREST
- GoogleAPIClientForREST/Storage
- GTMAppAuth
- ImgurSession (from `https://github.com/mileswd/ImgurSession`)
- UTIKit
EXTERNAL SOURCES:
......@@ -34,6 +50,8 @@ EXTERNAL SOURCES:
:git: https://github.com/nickoneill/aws-sdk-osx
AWSS3:
:git: https://github.com/nickoneill/aws-sdk-osx
ImgurSession:
:git: https://github.com/mileswd/ImgurSession
CHECKOUT OPTIONS:
AWSCore:
......@@ -42,16 +60,21 @@ CHECKOUT OPTIONS:
AWSS3:
:commit: 52576e4436b95d244fa851eec366fbe771c335da
:git: https://github.com/nickoneill/aws-sdk-osx
ImgurSession:
:commit: d4c306545f90b79d58f5422e394258e7009313c7
:git: https://github.com/mileswd/ImgurSession
SPEC CHECKSUMS:
AFNetworking: 5e0e199f73d8626b11e79750991f5d173d1f8b67
AppAuth: f7d9a2ce4ffe79a62a8b0c1d0938e88d9809b846
AWSCore: 76424e257ac78e8647c7a6b5c023446369f08d1d
AWSS3: 99feedfd2db49201e95c9f74c608518acbdae0a4
GoogleAPIClientForREST: bf724227a6ad1459aab09b73800aad9184a0f64c
GTMAppAuth: ae710e1e53431e2bcdd57f9f92daa16a58a2947d
GTMSessionFetcher: 30d874b96d0d76028f61fbd122801e3f030d47db
ImgurSession: e11a605652cfe8aebfb6a9a4ea5b752654f14e2f
UTIKit: 5b16488927ed6df479189acd9ff1ad6a7b19f8ff
PODFILE CHECKSUM: b619fe55e4930c4da299fe0205e2542509070c32
PODFILE CHECKSUM: 42d7a07c8d688d91533acf7a486dad04abf6c75b
COCOAPODS: 1.3.1
......@@ -9,16 +9,17 @@
/* Begin PBXBuildFile section */
26BB2A472CADC329D8BEE1B8 /* Pods_Screenshottr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 85B58CFFF6F2C5DBA952F077 /* Pods_Screenshottr.framework */; };
425860691F47776C004A1C45 /* SKQueue.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 425860681F47776C004A1C45 /* SKQueue.framework */; };
4258606C1F47778B004A1C45 /* SKQueue.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 4258606B1F47778B004A1C45 /* SKQueue.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
4258606E1F4791EA004A1C45 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4258606D1F4791EA004A1C45 /* AppKit.framework */; };
4279D5841F4686AE00558889 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D5831F4686AE00558889 /* AppDelegate.swift */; };
4279D5861F4686AE00558889 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4279D5851F4686AE00558889 /* Assets.xcassets */; };
4279D5891F4686AE00558889 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4279D5871F4686AE00558889 /* MainMenu.xib */; };
4279D5941F4686AE00558889 /* ScreenshottrTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D5931F4686AE00558889 /* ScreenshottrTests.swift */; };
4279D59F1F4686AE00558889 /* ScreenshottrUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D59E1F4686AE00558889 /* ScreenshottrUITests.swift */; };
4279D5C61F4696EA00558889 /* UploadManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D5C51F4696EA00558889 /* UploadManager.swift */; };
4279D5CC1F469B4500558889 /* Config.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D5CB1F469B4500558889 /* Config.swift */; };
4279D5D01F46A01D00558889 /* GCPAuthHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4279D5CF1F46A01D00558889 /* GCPAuthHandler.swift */; };
42F2C88C1F4A585B00FA3D44 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 42F2C88A1F4A585B00FA3D44 /* MainMenu.xib */; };
42F2C8921F4A5B4C00FA3D44 /* PopoverMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42F2C8901F4A5B4C00FA3D44 /* PopoverMenu.swift */; };
42F2C8931F4A5B4C00FA3D44 /* PopoverMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 42F2C8911F4A5B4C00FA3D44 /* PopoverMenu.xib */; };
91C9E7F18A37EE7A8E2F39F8 /* Pods_ScreenshottrTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2ACA69BD41F67A4C2DFC71C /* Pods_ScreenshottrTests.framework */; };
A36C9E254518F2FEE5372C9B /* Pods_ScreenshottrUITests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B3E2968AB8A1EEDF1100710F /* Pods_ScreenshottrUITests.framework */; };
/* End PBXBuildFile section */
......@@ -47,7 +48,6 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
4258606C1F47778B004A1C45 /* SKQueue.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
......@@ -58,12 +58,10 @@
37D181DEC0A73C7E8176F589 /* Pods-ScreenshottrTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScreenshottrTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-ScreenshottrTests/Pods-ScreenshottrTests.debug.xcconfig"; sourceTree = "<group>"; };
389C76C5526A8321EFEC3232 /* Pods-ScreenshottrUITests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScreenshottrUITests.release.xcconfig"; path = "Pods/Target Support Files/Pods-ScreenshottrUITests/Pods-ScreenshottrUITests.release.xcconfig"; sourceTree = "<group>"; };
425860681F47776C004A1C45 /* SKQueue.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SKQueue.framework; path = "../../../Library/Developer/Xcode/DerivedData/Screenshottr-gzkxuejpzrnbdzcrxvwoylcessms/Build/Products/Debug/SKQueue.framework"; sourceTree = "<group>"; };
4258606B1F47778B004A1C45 /* SKQueue.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SKQueue.framework; sourceTree = BUILT_PRODUCTS_DIR; };
4258606D1F4791EA004A1C45 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
4279D5801F4686AE00558889 /* Screenshottr.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Screenshottr.app; sourceTree = BUILT_PRODUCTS_DIR; };
4279D5831F4686AE00558889 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
4279D5851F4686AE00558889 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
4279D5881F4686AE00558889 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
4279D58A1F4686AE00558889 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
4279D58F1F4686AE00558889 /* ScreenshottrTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ScreenshottrTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
4279D5931F4686AE00558889 /* ScreenshottrTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScreenshottrTests.swift; sourceTree = "<group>"; };
......@@ -74,6 +72,9 @@
4279D5C51F4696EA00558889 /* UploadManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UploadManager.swift; sourceTree = "<group>"; };
4279D5CB1F469B4500558889 /* Config.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Config.swift; sourceTree = "<group>"; };
4279D5CF1F46A01D00558889 /* GCPAuthHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GCPAuthHandler.swift; sourceTree = "<group>"; };
42F2C88B1F4A585B00FA3D44 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
42F2C8901F4A5B4C00FA3D44 /* PopoverMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PopoverMenu.swift; sourceTree = "<group>"; };
42F2C8911F4A5B4C00FA3D44 /* PopoverMenu.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = PopoverMenu.xib; sourceTree = "<group>"; };
7A9EE1DAFB01DE50B9F3F2CA /* Pods-Screenshottr.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Screenshottr.release.xcconfig"; path = "Pods/Target Support Files/Pods-Screenshottr/Pods-Screenshottr.release.xcconfig"; sourceTree = "<group>"; };
85B58CFFF6F2C5DBA952F077 /* Pods_Screenshottr.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Screenshottr.framework; sourceTree = BUILT_PRODUCTS_DIR; };
A291B5585B597E748BB362D0 /* Pods-Screenshottr.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Screenshottr.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Screenshottr/Pods-Screenshottr.debug.xcconfig"; sourceTree = "<group>"; };
......@@ -115,7 +116,6 @@
4279D5771F4686AB00558889 = {
isa = PBXGroup;
children = (
4258606B1F47778B004A1C45 /* SKQueue.framework */,
4279D5821F4686AE00558889 /* Screenshottr */,
4279D5921F4686AE00558889 /* ScreenshottrTests */,
4279D59D1F4686AE00558889 /* ScreenshottrUITests */,
......@@ -141,10 +141,12 @@
4279D5CB1F469B4500558889 /* Config.swift */,
4279D5831F4686AE00558889 /* AppDelegate.swift */,
4279D5851F4686AE00558889 /* Assets.xcassets */,
4279D5871F4686AE00558889 /* MainMenu.xib */,
4279D58A1F4686AE00558889 /* Info.plist */,
4279D5C51F4696EA00558889 /* UploadManager.swift */,
4279D5CF1F46A01D00558889 /* GCPAuthHandler.swift */,
42F2C88A1F4A585B00FA3D44 /* MainMenu.xib */,
42F2C8901F4A5B4C00FA3D44 /* PopoverMenu.swift */,
42F2C8911F4A5B4C00FA3D44 /* PopoverMenu.xib */,
);
path = Screenshottr;
sourceTree = "<group>";
......@@ -313,7 +315,8 @@
buildActionMask = 2147483647;
files = (
4279D5861F4686AE00558889 /* Assets.xcassets in Resources */,
4279D5891F4686AE00558889 /* MainMenu.xib in Resources */,
42F2C8931F4A5B4C00FA3D44 /* PopoverMenu.xib in Resources */,
42F2C88C1F4A585B00FA3D44 /* MainMenu.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
......@@ -371,22 +374,26 @@
);
inputPaths = (
"${SRCROOT}/Pods/Target Support Files/Pods-Screenshottr/Pods-Screenshottr-frameworks.sh",
"${BUILT_PRODUCTS_DIR}/AFNetworking/AFNetworking.framework",
"${BUILT_PRODUCTS_DIR}/AWSCore/AWSCore.framework",
"${BUILT_PRODUCTS_DIR}/AWSS3/AWSS3.framework",
"${BUILT_PRODUCTS_DIR}/AppAuth/AppAuth.framework",
"${BUILT_PRODUCTS_DIR}/GTMAppAuth/GTMAppAuth.framework",
"${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework",
"${BUILT_PRODUCTS_DIR}/GoogleAPIClientForREST/GoogleAPIClientForREST.framework",
"${BUILT_PRODUCTS_DIR}/ImgurSession/ImgurSession.framework",
"${BUILT_PRODUCTS_DIR}/UTIKit/UTIKit.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AFNetworking.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AWSCore.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AWSS3.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AppAuth.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMAppAuth.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleAPIClientForREST.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ImgurSession.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/UTIKit.framework",
);
runOnlyForDeploymentPostprocessing = 0;
......@@ -504,6 +511,7 @@
4279D5D01F46A01D00558889 /* GCPAuthHandler.swift in Sources */,
4279D5841F4686AE00558889 /* AppDelegate.swift in Sources */,
4279D5CC1F469B4500558889 /* Config.swift in Sources */,
42F2C8921F4A5B4C00FA3D44 /* PopoverMenu.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
......@@ -539,10 +547,10 @@
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
4279D5871F4686AE00558889 /* MainMenu.xib */ = {
42F2C88A1F4A585B00FA3D44 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
4279D5881F4686AE00558889 /* Base */,
42F2C88B1F4A585B00FA3D44 /* Base */,
);
name = MainMenu.xib;
sourceTree = "<group>";
......@@ -645,6 +653,7 @@
baseConfigurationReference = A291B5585B597E748BB362D0 /* Pods-Screenshottr.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_IDENTITY = "Mac Developer";
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 2F5AW9EGL6;
INFOPLIST_FILE = Screenshottr/Info.plist;
......@@ -660,6 +669,7 @@
baseConfigurationReference = 7A9EE1DAFB01DE50B9F3F2CA /* Pods-Screenshottr.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_IDENTITY = "Mac Developer";
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 2F5AW9EGL6;
INFOPLIST_FILE = Screenshottr/Info.plist;
......
......@@ -13,48 +13,67 @@ import SKQueue
class AppDelegate: NSObject, NSApplicationDelegate {
let statusItem = NSStatusBar.system().statusItem(withLength: NSVariableStatusItemLength)
let viewController = PopoverMenu(nibName: "PopoverMenu",
bundle: Bundle.main)!
let popover = NSPopover()
func applicationDidFinishLaunching(_ aNotification: Notification) {
// Insert code here to initialize your application
statusItem.image = NSImage(named: "status_icon")
statusItem.toolTip = "Control-click to quit"
statusItem.action = #selector(AppDelegate.handleItemClick)
// Set up file watching
let queue = SKQueue(delegate: UploadReceiver())
queue?.addPath(Config().filePath, notifyingAbout: .Write)
// let queue = SKQueue(delegate: UploadReceiver())
// queue?.addPath(Config().filePath, notifyingAbout: .Write)
}
func handleItemClick() {
func handleItemClick(sender: AnyObject?) {
// Quit on control key
if (NSApp.currentEvent?.modifierFlags.contains(.control))! {
NSApplication.shared().terminate(self)
}
// Open panel otherwise
let dialog = NSOpenPanel();
dialog.title = "Choose a file to upload.";
dialog.showsResizeIndicator = true;
dialog.showsHiddenFiles = false;
dialog.canChooseDirectories = false;
dialog.canCreateDirectories = false;
dialog.allowsMultipleSelection = false;
if (dialog.runModal() == NSModalResponseOK) {
let result = dialog.url // Pathname of the file
if (result != nil) {
let path = result!.path
UploadManager().uploadFIle(path: path, type: .GoogleCloudPlatform, fromQueue: false)
}
popover.contentViewController = viewController
if popover.isShown {
closePopover(sender: sender)
} else {
// User clicked on "Cancel"
return
showPopover(sender: sender)
}
// Open panel otherwise
// let dialog = NSOpenPanel();
//
// dialog.title = "Choose a file to upload.";
// dialog.showsResizeIndicator = true;
// dialog.showsHiddenFiles = false;
// dialog.canChooseDirectories = false;
// dialog.canCreateDirectories = false;
// dialog.allowsMultipleSelection = false;
//
// if (dialog.runModal() == NSModalResponseOK) {
// let result = dialog.url // Pathname of the file
//
// if (result != nil) {
// let path = result!.path
// UploadManager().uploadFIle(path: path, type: .GoogleCloudPlatform, fromQueue: false)
// }
// } else {
// // User clicked on "Cancel"
// return
// }
}
func showPopover(sender: AnyObject?) {
if let button = statusItem.button {
popover.show(relativeTo: button.bounds, of: button, preferredEdge: NSRectEdge.minY)
}
}
func closePopover(sender: AnyObject?) {
popover.performClose(sender)
}
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
}
......
......@@ -2,8 +2,6 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>LSUIElement</key>
<true/>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
......@@ -24,6 +22,8 @@
<string>1</string>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>LSUIElement</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2017 JOS Computing. All rights reserved.</string>
<key>NSMainNibFile</key>
......
//
// PopoverMenu.swift
// Screenshottr
//
// Created by Spotlight on 8/20/17.
// Copyright © 2017 JOS Computing. All rights reserved.
//
import Cocoa
class PopoverMenu: NSViewController {
@IBOutlet var recentScreenshotsList: NSTreeController!
override func viewDidLoad() {
super.viewDidLoad()
// Do view setup here.
recentScreenshotsList.add("test")
}
}
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="15G1611" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="PopoverMenu" customModule="Screenshottr" customModuleProvider="target">
<connections>
<outlet property="recentScreenshotsList" destination="vJY-oJ-muQ" id="uvH-qk-gT4"/>
<outlet property="view" destination="Hz6-mo-xeY" id="0bl-1N-x8E"/>
</connections>
</customObject>
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
<customView id="Hz6-mo-xeY">
<rect key="frame" x="0.0" y="0.0" width="265" height="300"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<subviews>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="jrN-oy-XGI">
<rect key="frame" x="78" y="0.0" width="108" height="32"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<buttonCell key="cell" type="push" title="Upload File" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="7jj-A4-JC3">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
</button>
<imageView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="bmI-0E-hvv">
<rect key="frame" x="235" y="5" width="25" height="25"/>
<autoresizingMask key="autoresizingMask"/>
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" animates="YES" imageScaling="proportionallyDown" image="NSActionTemplate" id="EZB-Pp-65R"/>
</imageView>
<popUpButton verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="W5e-Go-9Z7">
<rect key="frame" x="18" y="256" width="230" height="26"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<popUpButtonCell key="cell" type="push" title="Item 1" bezelStyle="rounded" alignment="left" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="TFj-Tx-XUc" id="Hhq-RT-1sX">
<behavior key="behavior" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="menu"/>
<menu key="menu" id="t4g-3M-PQD">
<items>
<menuItem title="Item 1" state="on" id="TFj-Tx-XUc"/>
<menuItem title="Item 2" id="cQz-hv-8Nx"/>
<menuItem title="Item 3" id="VrR-jj-eNs"/>
</items>
</menu>
</popUpButtonCell>
</popUpButton>
<scrollView wantsLayer="YES" fixedFrame="YES" autohidesScrollers="YES" horizontalLineScroll="26" horizontalPageScroll="10" verticalLineScroll="26" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="T2C-QO-xfc">
<rect key="frame" x="20" y="48" width="225" height="203"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<clipView key="contentView" ambiguous="YES" drawsBackground="NO" id="l7O-qP-Abw">
<rect key="frame" x="1" y="1" width="223" height="201"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<outlineView verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" selectionHighlightStyle="sourceList" multipleSelection="NO" autosaveColumns="NO" rowHeight="24" rowSizeStyle="systemDefault" viewBased="YES" indentationPerLevel="16" outlineTableColumn="zp9-Ey-lcc" id="nIs-AC-ZZQ">
<rect key="frame" x="0.0" y="0.0" width="223" height="201"/>
<autoresizingMask key="autoresizingMask"/>
<size key="intercellSpacing" width="3" height="2"/>
<color key="backgroundColor" name="_sourceListBackgroundColor" catalog="System" colorSpace="catalog"/>
<color key="gridColor" name="gridColor" catalog="System" colorSpace="catalog"/>
<tableColumns>
<tableColumn width="220" minWidth="40" maxWidth="1000" id="zp9-Ey-lcc">
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="headerColor" catalog="System" colorSpace="catalog"/>
</tableHeaderCell>
<textFieldCell key="dataCell" lineBreakMode="truncatingTail" selectable="YES" editable="YES" title="Text Cell" id="ttd-VT-Q5i">
<font key="font" metaFont="system"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView id="0mr-ml-YnE">
<rect key="frame" x="1" y="1" width="220" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="H2v-JE-qk5">
<rect key="frame" x="0.0" y="0.0" width="220" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="AsO-iN-MTs">
<font key="font" metaFont="system"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
</subviews>
<connections>
<outlet property="textField" destination="H2v-JE-qk5" id="iT9-Tx-gvc"/>
</connections>
</tableCellView>
</prototypeCellViews>
</tableColumn>
</tableColumns>
</outlineView>
</subviews>
<nil key="backgroundColor"/>
</clipView>
<scroller key="horizontalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="YES" id="gIO-dw-hsa">
<rect key="frame" x="1" y="-15" width="0.0" height="16"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
<scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" doubleValue="1" horizontal="NO" id="x3Q-hc-R7z">
<rect key="frame" x="-15" y="1" width="16" height="0.0"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
</scrollView>
</subviews>
<point key="canvasLocation" x="31.5" y="182"/>
</customView>
<treeController objectClassName="NSMutableArray" id="vJY-oJ-muQ">
<connections>
<binding destination="-2" name="contentArray" keyPath="self.recentScreenshotsList" id="Phv-74-Pgq"/>
<outlet property="content" destination="zp9-Ey-lcc" id="mQz-wq-Pcb"/>
</connections>
</treeController>
</objects>
<resources>
<image name="NSActionTemplate" width="14" height="14"/>
</resources>
</document>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment