当前位置: 首页>>代码示例>>Python>>正文


Python NSBundle.mainBundle方法代码示例

本文整理汇总了Python中AppKit.NSBundle.mainBundle方法的典型用法代码示例。如果您正苦于以下问题:Python NSBundle.mainBundle方法的具体用法?Python NSBundle.mainBundle怎么用?Python NSBundle.mainBundle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在AppKit.NSBundle的用法示例。


在下文中一共展示了NSBundle.mainBundle方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: keyboard_tap_callback

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def keyboard_tap_callback(proxy, type_, event, refcon):
        from AppKit import NSKeyUp, NSEvent, NSBundle
        NSBundle.mainBundle().infoDictionary()['NSAppTransportSecurity'] =\
            dict(NSAllowsArbitraryLoads=True)
        if type_ < 0 or type_ > 0x7fffffff:
            LOG.error('Unkown mac event')
            run_event_loop()
            LOG.error('restart mac key board event loop')
            return event
        try:
            key_event = NSEvent.eventWithCGEvent_(event)
        except:
            LOG.info("mac event cast error")
            return event
        if key_event.subtype() == 8:
            key_code = (key_event.data1() & 0xFFFF0000) >> 16
            key_state = (key_event.data1() & 0xFF00) >> 8
            if key_code in (16, 19, 20):
                # 16 for play-pause, 19 for next, 20 for previous
                if key_state == NSKeyUp:
                    if key_code is 19:
                        ControllerApi.player.play_next()
                    elif key_code is 20:
                        ControllerApi.player.play_last()
                    elif key_code is 16:
                        ControllerApi.player.play_or_pause()
                return None
        return event
开发者ID:JamesMackerel,项目名称:FeelUOwn,代码行数:30,代码来源:mac.py

示例2: keyboard_tap_callback

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def keyboard_tap_callback(proxy, type_, event, refcon):
    from AppKit import NSKeyUp, NSEvent, NSBundle
    NSBundle.mainBundle().infoDictionary()['NSAppTransportSecurity'] =\
        dict(NSAllowsArbitraryLoads=True)
    if type_ < 0 or type_ > 0x7fffffff:
        logger.error('Unkown mac event')
        run_event_loop()
        logger.error('restart mac key board event loop')
        return event
    try:
        key_event = NSEvent.eventWithCGEvent_(event)
    except:
        logger.info("mac event cast error")
        return event
    if key_event.subtype() == 8:
        key_code = (key_event.data1() & 0xFFFF0000) >> 16
        key_state = (key_event.data1() & 0xFF00) >> 8
        if key_code in (16, 19, 20):
            # 16 for play-pause, 19 for next, 20 for previous
            if key_state == NSKeyUp:
                if key_code is 19:
                    logger.info('mac hotkey: play next')
                    send_cmd('next')
                elif key_code is 20:
                    logger.info('mac hotkey: play last')
                    send_cmd('previous')
                elif key_code is 16:
                    os.system('echo "play_pause" | nc -4u -w0 localhost 8000')
                    send_cmd('toggle')
            return None
    return event
开发者ID:cosven,项目名称:feeluown-mac-hotkey-plugin,代码行数:33,代码来源:mac.py

示例3: extract_tb

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def extract_tb(tb, script=None, src=None):
    """Return a list of pre-processed entries from traceback."""
    list = []
    n = 0
    while tb is not None:
        f = tb.tb_frame
        lineno = tb.tb_lineno
        co = f.f_code
        filename = co.co_filename
        name = co.co_name
        if filename==script:
            line = src.split('\n')[lineno-1]
        else:
            linecache.checkcache(filename)
            line = linecache.getline(filename, lineno, f.f_globals)
        if line: line = line.strip()
        else: line = None
        list.append((filename, lineno, name, line))
        tb = tb.tb_next

    # omit the internal plotdevice stack frames in `dist` builds
    from AppKit import NSBundle
    debug = 'flux' in NSBundle.mainBundle().infoDictionary().get('CFBundleVersion','')
    if not debug:
        moduledir = abspath(dirname(dirname(__file__)))
        return [frame for frame in list if moduledir not in frame[0]]
    return list
开发者ID:VinayPrakashSingh,项目名称:plotdevice,代码行数:29,代码来源:common.py

示例4: resource_path

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def resource_path(resource, resource_type):
        path = NSBundle.mainBundle().pathForResource_ofType_(
            resource, resource_type)
        if NSFileManager.defaultManager().fileExistsAtPath_(path):
            return path
        else:
            return None
开发者ID:JulianEberius,项目名称:qsx,代码行数:9,代码来源:utils.py

示例5: migrateSupport

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def migrateSupport(oldAppName, newAppName):
    print('Checking Miro preferences and support migration...')

    global migrated
    migrated = False

    from AppKit import NSBundle

    prefsPath = os.path.expanduser('~/Library/Preferences').decode('utf-8')
    newDomain = NSBundle.mainBundle().bundleIdentifier()
    newPrefs = '%s.plist' % os.path.join(prefsPath, newDomain)
    oldDomain = newDomain.replace(newAppName, oldAppName)
    oldPrefs = '%s.plist' % os.path.join(prefsPath, oldDomain)
    
    if os.path.exists(oldPrefs):
        if os.path.exists(newPrefs):
            print("Both %s and %s preference files exist." % (oldAppName, newAppName))
        else:
            os.rename(oldPrefs, newPrefs)
            print("Migrated preferences to %s" % newPrefs)

    supportFolderRoot = os.path.expanduser('~/Library/Application Support')
    oldSupportFolder = os.path.join(supportFolderRoot, oldAppName)
    newSupportFolder = os.path.join(supportFolderRoot, newAppName)
    if os.path.exists(oldSupportFolder):
        if os.path.exists(newSupportFolder):
            print("Both %s and %s support folders exist." % (oldAppName, newAppName))
        else:
            os.rename(oldSupportFolder, newSupportFolder)
            print("Migrated support folder to %s" % newSupportFolder)
            migrated = True
开发者ID:cool-RR,项目名称:Miro,代码行数:33,代码来源:migrateappname.py

示例6: _helpBookCallback

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
 def _helpBookCallback(self, sender):
     from Carbon import AH
     bundle = NSBundle.mainBundle()
     if bundle is None:
         return
     info = bundle.infoDictionary()
     helpBookName = info.get("CFBundleHelpBookName")
     if self._page is not None:
         AH.AHGoToPage(helpBookName, self._page, self._anchor)
     elif self._anchor is not None:
         AH.AHLookupAnchor(helpBookName, self._anchor)
开发者ID:LettError,项目名称:vanilla,代码行数:13,代码来源:vanillaButton.py

示例7: applicationDidFinishLaunching_

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
 def applicationDidFinishLaunching_(self, notification):
     u"""
     Setting up globals.
     """
     print '* Meta Application finished launching, initializing...'
     self.model = Model()
     self.path = os.path.join(os.path.dirname(__file__))
     self.resourcePath = NSBundle.mainBundle().resourcePath()
     self.documentFilesPath = self.resourcePath + '/en.lproj/'
     path = '/Users/michiel/Projects/Meta/imftc/imftc.meta'
     document = self.model.openDocument(path)
     self.openStartWindow()
开发者ID:michielkauwatjoe,项目名称:Meta,代码行数:14,代码来源:delegate.py

示例8: finishLaunching

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
    def finishLaunching(self):
        # Make statusbar item
        statusbar = NSStatusBar.systemStatusBar()
        self.statusitem = statusbar.statusItemWithLength_(
            NSVariableStatusItemLength)
        # Thanks Matthias Kretschmann
        # at http://kremalicious.com/coffee-cup-icon/
        icon_path = NSBundle.mainBundle()\
                            .pathForResource_ofType_(
                                ICON_BASE, ICON_EXT)
        if not icon_path:
            icon_path = ICON_FILE
        self.icon = NSImage.alloc()\
                           .initByReferencingFile_(icon_path)
        self.icon.setScalesWhenResized_(True)
        self.icon.setSize_((20, 20))
        self.statusitem.setImage_(self.icon)

        # Make the menu
        self.menubarMenu = NSMenu.alloc().init()

        self.menuItem = NSMenuItem.alloc()\
                                  .initWithTitle_action_keyEquivalent_(
                                      'Connect', 'connectAndCloseCNA:', '')
        self.menubarMenu.addItem_(self.menuItem)

        self.quit = NSMenuItem.alloc()\
                              .initWithTitle_action_keyEquivalent_(
                                  'Quit', 'terminate:', '')
        self.menubarMenu.addItem_(self.quit)

        # Add menu to statusitem
        self.statusitem.setMenu_(self.menubarMenu)
        self.statusitem.setToolTip_('Cartel')
        self.statusitem.setHighlightMode_(True)

        # Get the default notification center.
        self.workspace = NSWorkspace.sharedWorkspace()
        self.default_center = NSNotificationCenter.defaultCenter()

        # Create the handler
        self.rhandler = ReachabilityHandler.new()
        self.rhandler.app = self

        self.default_center.addObserver_selector_name_object_(
            self.rhandler,
            "handleChange:",
            kReachabilityChangedNotification,
            None)

        # Create the reachability object and start notifactions.
        self.reachability = Reachability()
        self.reachability.startNotifier()
开发者ID:jmatt,项目名称:cartel,代码行数:55,代码来源:cartel.py

示例9: check_version

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
    def check_version(self):
        infodict    = NSBundle.mainBundle().infoDictionary()
        mailversion = infodict['CFBundleVersion']
        lastknown   = self.prefs.string["QuoteFixLastKnownBundleVersion"]
        if lastknown and lastknown != mailversion:
            NSRunAlertPanel(
                'QuoteFix plug-in',
                '''
The QuoteFix plug-in detected a different Mail.app version (perhaps you updated?).

If you run into any problems with regards to replying or forwarding mail, consider removing this plug-in (from ~/Library/Mail/Bundles/).

(This alert is only displayed once for each new version of Mail.app)''',
                    None,
                    None,
                    None
            )
            self.prefs.string["QuoteFixLastKnownBundleVersion"] = mailversion
开发者ID:GLOP1978,项目名称:quotefixformac,代码行数:20,代码来源:app.py

示例10: show_backdrop

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def show_backdrop(comm_queue, image_path):
    from AppKit import NSWindow, NSWindowCollectionBehaviorCanJoinAllSpaces, NSWindowCollectionBehaviorStationary, \
                       NSWindowCollectionBehaviorIgnoresCycle, NSBorderlessWindowMask, NSBackingStoreBuffered, NSColor, \
                       NSApplication, NSScreen, NSView, NSImage, NSImageView, NSZeroRect, NSCompositeCopy, NSApp, \
                       NSTimer, NSObject, NSEvent, NSApplicationDefined, NSMakePoint, NSBundle
    from Quartz import kCGDesktopWindowLevel
    from ctypes import CDLL, Structure, POINTER, c_uint32, byref
    from ctypes.util import find_library
    class ProcessSerialNumber(Structure):
        _fields_    = [('highLongOfPSN', c_uint32),
                       ('lowLongOfPSN',  c_uint32)]
    kCurrentProcess = 2
    kProcessTransformToUIElementAppication = 4
    ApplicationServices           = CDLL(find_library('ApplicationServices'))
    TransformProcessType          = ApplicationServices.TransformProcessType
    TransformProcessType.argtypes = [POINTER(ProcessSerialNumber), c_uint32]
    class MainController(NSObject):
        timer = None
        def kickRunLoop(self):
            event = NSEvent.otherEventWithType_location_modifierFlags_timestamp_windowNumber_context_subtype_data1_data2_(NSApplicationDefined, \
                            NSMakePoint(0,0), 0, 0.0, 0, None, 0, 0, 0)
            NSApp.postEvent_atStart_(event, True)
        def checkProcess_(self, timer):
            if not comm_queue.empty():
                # We Get Signal, Take Off Every Zig - er, time to shut down this forked process
                # Clear the queue
                while not comm_queue.empty():
                    ignore = comm_queue.get_nowait()
                NSApp.stop_(None)
                # After you stop the runloop, the app has to receive another event to determine the runloop stopped ...
                self.kickRunLoop()
        def run(self):
            # You could adjust the 1.0 here to how ever many seconds you wanted to wait between checks to terminate
            self.timer = NSTimer.scheduledTimerWithTimeInterval_target_selector_userInfo_repeats_(1.0, self, self.checkProcess_, None, True)
            NSApp.run()
    class FullScreenWindow(NSWindow):
        def canBecomeKeyWindow(self):
            return False
        def canBecomeMainWindow(self):
            return False
    class LockView(NSView):
        def getTopOffset(self, height):
            return (self.bounds().size.height / 2) - height / 2
        def getLeftOffset(self, width):
            return (self.bounds().size.width / 2) - width / 2
        def drawRect_(self, rect):
            image = NSImage.alloc().initWithContentsOfFile_(image_path)
            rep = image.representations()[0]
            bg_width = rep.pixelsWide()
            bg_height = rep.pixelsHigh()
            image.drawInRect_fromRect_operation_fraction_(((self.getLeftOffset(bg_width), self.getTopOffset(bg_height)), (bg_width, bg_height)), NSZeroRect, NSCompositeCopy, 1.0)
            imageView = NSImageView.alloc().init()
            imageView.setImage_(image)
            self.addSubview_(imageView)
    bundle = NSBundle.mainBundle()
    info = bundle.localizedInfoDictionary() or bundle.infoDictionary()
    # Did you know you can override parts of infoDictionary (Info.plist, after loading) even though Apple says it's read-only?
    # This is enough to make an app faceless / without a Dock icon
    info['LSUIElement'] = '1'
    # Initialize our shared application instance
    app = NSApplication.sharedApplication()
    # ... This isn't really necessary, but it's nice to ensure that the application truly is UIElement type
    psn    = ProcessSerialNumber(0, kCurrentProcess)
    ApplicationServices.TransformProcessType(psn, kProcessTransformToUIElementAppication)
    screen = NSScreen.mainScreen()
    myWindow = FullScreenWindow.alloc().initWithContentRect_styleMask_backing_defer_(screen.frame(), NSBorderlessWindowMask, NSBackingStoreBuffered, True)
    myView = LockView.alloc().initWithFrame_(screen.frame())
    myWindow.setContentView_(myView)
    myWindow.setLevel_(kCGDesktopWindowLevel)
    myWindow.setCollectionBehavior_(NSWindowCollectionBehaviorCanJoinAllSpaces | NSWindowCollectionBehaviorStationary | NSWindowCollectionBehaviorIgnoresCycle)
    myWindow.setBackgroundColor_(NSColor.blackColor())
    myWindow.makeKeyAndOrderFront_(myWindow)
    myWindow.display()
    controller = MainController.alloc().init()
    controller.run()
开发者ID:pmbuko,项目名称:misc-scripts,代码行数:77,代码来源:backdrop.py

示例11: bundle_path

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
def bundle_path(name, typ):
    if typ:
        return NSBundle.mainBundle().pathForResource_ofType_(name, typ)
    else:
        return os.path.join(NSBundle.mainBundle().resourcePath(), name)
开发者ID:douglas,项目名称:sshuttle,代码行数:7,代码来源:my.py

示例12: __import__

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
    # FontLab
    # alternative syntax to cheat on the FL import filtering in RF
    __import__("FL")
    application = "fontlab"
    #applicationVersion = fl.version
except ImportError:
    pass

if application is None:
    try:
        # RoboFont
        import mojo
        application = 'robofont'
        try:
            from AppKit import NSBundle
            b = NSBundle.mainBundle()
            applicationVersion = b.infoDictionary()["CFBundleVersion"]
        except ImportError:
            pass
    except ImportError:
        pass
    
if application is None:
    try:
        # Glyphs
        import GlyphsApp
        application = "glyphs"
    except ImportError:
        pass

if application is None:
开发者ID:SayCV,项目名称:tools-FDK,代码行数:33,代码来源:dialogs.py

示例13: _findrubyrenderer

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
	def _findrubyrenderer():
		from AppKit import NSBundle
		return NSBundle.mainBundle().pathForResource_ofType_('rubyrenderer', 'rb')
开发者ID:AdminCNP,项目名称:appscript,代码行数:5,代码来源:appscriptsupport.py

示例14: __init__

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
    def __init__(self):
        self.mac = None
        self.pc = None
        self.platform = sys.platform
        self.applicationName = None  # name of the application we're running in
        self.name = os.name
        self.version = version  # the robofab version
        self.numberVersion = numberVersion
        self.run = True

        # get some platform information
        if self.name == "mac" or self.name == "posix":
            if self.platform == "darwin":
                self.mac = "X"
            else:
                self.mac = "pre-X"
        elif self.name == "nt":
            # if you know more about PC & win stuff, add it here!
            self.pc = True
        else:
            raise RoboFabError, "We're running on an unknown platform."

            # collect versions
        self.pyVersion = sys.version[:3]
        self.inPython = False
        self.inFontLab = False
        self.flVersion = None
        self.inGlyphs = False
        self.glyphsVersion = None
        self.inRoboFont = False
        self.roboFontVersion = None

        # are we in FontLab?
        try:
            from FL import fl

            self.applicationName = fl.filename
            self.inFontLab = True
            self.flVersion = fl.version
        except ImportError:
            pass
        # are we in Glyphs?
        try:
            import objectsGS
            from AppKit import NSBundle

            bundle = NSBundle.mainBundle()
            self.applicationName = bundle.infoDictionary()["CFBundleName"]
            self.inGlyphs = True
            self.glyphsVersion = bundle.infoDictionary()["CFBundleVersion"]
        except ImportError:
            pass
        # are we in RoboFont
        try:
            import mojo
            from AppKit import NSBundle

            bundle = NSBundle.mainBundle()
            self.applicationName = bundle.infoDictionary()["CFBundleName"]
            self.inRoboFont = True
            self.roboFontVersion = bundle.infoDictionary()["CFBundleVersion"]
        except ImportError:
            pass
        # we are in NoneLab
        if not self.inFontLab:
            self.inPython = True

            # see if we have DialogKit
        self.supportsDialogKit = False
开发者ID:adrientetar,项目名称:robofab,代码行数:71,代码来源:world.py

示例15: globals

# 需要导入模块: from AppKit import NSBundle [as 别名]
# 或者: from AppKit.NSBundle import mainBundle [as 别名]
    "control": NSControlKeyMask,
    "ctrl": NSControlKeyMask,
    "shift": NSShiftKeyMask
}
key_map = {
    "left": 123,
    "right": 124,
    "down": 125,
    "up": 126,
    'help': 114, 'mute': 74, 'comma': 43, 'volumedown': 73, '1': 18, '0': 29, '4': 21, '8': 28, 'return': 36, 'enter': 36, 'slash': 44, 'downarrow': 125, 'd': 2, 'h': 4, 'l': 37, 'p': 35, 't': 17, 'x': 7, 'forwarddelete': 117, 'rightbracket': 30, 'right': 124, 'escape': 53, 'home': 115, '5': 23, 'space': 49, '3': 20, 'f20': 90, 'pagedown': 121, '7': 26, 'keypadequals': 81, 'keypadplus': 69, 'c': 8, 'f11': 103, 'keypadclear': 71, 'g': 5, 'k': 40, 'equal': 24, 'o': 31, 'minus': 27, 's': 1, 'w': 13, 'f15': 113, 'rightshift': 60, 'period': 47, 'down': 125, 'capslock': 57, 'f6': 97, '2': 19, 'keypadmultiply': 67, '6': 22, 'function': 63, 'option': 58, 'leftbracket': 33, 'f19': 80, 'b': 11, 'f': 3, 'j': 38, 'pageup': 116, 'up': 126, 'n': 45, 'f18': 79, 'r': 15, 'rightoption': 61, 'v': 9, 'f12': 111, 'f13': 105, 'f10': 109, 'z': 6, 'f16': 106, 'f17': 64, 'f14': 107, 'delete': 51, 'f1': 122, 'f2': 120, 'f3': 99, 'f4': 118, 'f5': 96, 'semicolon': 41, 'f7': 98, 'f8': 100, 'f9': 101, 'backslash': 42, 'keypaddivide': 75, 'tab': 48, 'rightarrow': 124, 'end': 119, 'leftarrow': 123, 'keypad7': 89, 'keypad6': 88, 'keypad5': 87, 'keypad4': 86, 'keypad3': 85, 'keypad2': 84, 'keypad1': 83, 'keypad0': 82, '9': 25, 'u': 32, 'keypad9': 92, 'keypad8': 91, 'quote': 39, 'volumeup': 72, 'grave': 50, '<': 50, '>':62, 'keypaddecimal': 65, 'e': 14, 'i': 34, 'keypadminus': 78, 'm': 46, 'uparrow': 126, 'q': 12, 'y': 16, 'keypadenter': 76, 'left': 123
}


# this module contains a wrapper around the SGHotKeysLib to make it usable from Python/PyObjC
base_path = os.path.join(
    NSBundle.mainBundle().bundlePath(), "Contents", "Frameworks")
bundle_path = os.path.abspath(os.path.join(base_path, 'SGHotKey.framework'))
objc.loadBundle(
    'SGHotKey', globals(), bundle_path=objc.pathForFramework(bundle_path))

SGHotKey = NSClassFromString("SGHotKey")
SGKeyCombo = NSClassFromString("SGKeyCombo")
SGHotKeyCenter = NSClassFromString("SGHotKeyCenter")

cmdKeyBit = 8
shiftKeyBit = 9
optionKeyBit = 11
controlKeyBit = 12

cmdKey = 1 << cmdKeyBit
shiftKey = 1 << shiftKeyBit
开发者ID:JulianEberius,项目名称:qsx,代码行数:33,代码来源:hotkeys.py


注:本文中的AppKit.NSBundle.mainBundle方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。