1#!/usr/bin/env pythonw 2 3from AppKit import * 4from Foundation import * 5from PyObjCTools import NibClassBuilder, AppHelper 6import sys, objc 7 8objc.loadBundle('Sc21', globals(), 9 bundle_path='/Library/Frameworks/Sc21.framework') 10 11NibClassBuilder.extractClasses('MainMenu.nib') 12 13class AppController (NibClassBuilder.AutoBaseClass): 14 15 def awakeFromNib(self): 16 self.filenametext.setStringValue_(u"None") 17 18 def open_(self, sender): 19 panel = NSOpenPanel.openPanel() 20 panel.beginSheetForDirectory_file_types_modalForWindow_modalDelegate_didEndSelector_contextInfo_(None, None, [u'wrl'], NSApp().mainWindow(), self, "openPanelDidEnd:returnCode:contextInfo:", 0) 21 def openPanelDidEnd_returnCode_contextInfo_(self, panel, code, ct): 22 if code == NSOKButton: 23 sg = self.coincontroller.sceneGraph() 24 sg.readFromFile_(panel.filename()) 25 sg.viewAll() 26 self.filenametext.setStringValue_(panel.filename()) 27 28 openPanelDidEnd_returnCode_contextInfo_ = AppHelper.endSheetMethod( 29 openPanelDidEnd_returnCode_contextInfo_) 30 31if __name__ == "__main__": 32 sys.exit(NSApplicationMain(sys.argv)) 33