             self.openPanel!.beginWithCompletionHandler({ (result:Int) -> Void in
                 if result == NSFileHandlingPanelOKButton
                 {
-                    self.loadJPQFile(self.openPanel!.URL!)
-                    self.addFileScrollViewIfNotSubViewedOfSelf()
+                    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), { () -> Void in
+                        self.loadJPQFile(self.openPanel!.URL!)
+                        dispatch_sync(dispatch_get_main_queue(), { () -> Void in
+                            self.addFileScrollViewIfNotSubViewedOfSelf()
+                            self.addJPQButton.enabled = true
+                            self.loadJPQButton.enabled = true
+                            self.jpqModifierView.hidden = true
+                            self.fileModifierView.hidden = false
+                        })
+                    })
                 }
             })
-            self.addJPQButton.enabled = true
-            self.loadJPQButton.enabled = true
         })
     }
     

        var jpqFile = JPQLibSwiftBridge.LoadJPQPackage(jpqFilePath.path)
        if jpqFile != nil
        {
            self.jpqModifierView.hidden = true
            self.fileModifierView.hidden = false
            self.loadedJPQFile = jpqFile
            
            var fileSize:UInt64 = 0
            let fileData:NSData = self.loadedJPQFile!.LoadFile("/dufus/marcus/(jpqdir)", withFileSize:&fileSize)
            

    @IBOutlet weak var addJPQLabel: NSTextField!
    @IBOutlet weak var loadJPQButton: NSButton!
    @IBOutlet weak var unloadJPQButton: NSButton!
    
    //    @IBOutlet weak var fileTableView: FileTableView!
    
    var fileOutlineScrollView: FileScrollView!
    
    var savePanel:NSSavePanel?
    var openPanel:NSOpenPanel?
    
    //TODO: Make this atomic when swift implemented this
    var loadedJPQFile:JPQFileSwiftBridge?
    var addJPQPop = NSPopover()
    var addJPQPopVC = AddJPQPopover(nibName: "AddJPQPopover", bundle: nil)!
