예제 #1
0
    def run(self):
        self._syncer = Syncer()
        self._syncer.start()

        app = NSApplication.sharedApplication()
        app.setActivationPolicy_(2)  # Hide from dock
        app.setApplicationIconImage_(create_icon('appicon.png'))

        self.traymenu = TrayMenu.alloc()
        self.traymenu.init()
        app.setDelegate_(self.traymenu)

        self._observer = setup_observer(self)
        self._cron = setup_syncing_cronjobs()

        AppHelper.runEventLoop()
예제 #2
0
from AppKit import NSDefaultRunLoopMode
from AppKit import NSMenu
from AppKit import NSMenuItem
from AppKit import NSObject
from AppKit import NSRunLoop
from AppKit import NSStatusBar
from AppKit import NSTimer
from AppKit import NSVariableStatusItemLength
from utray import interfaces
from utray.utils import create_icon
from utray.utils import app

start_time = NSDate.date()

ICONS = {
    'inactive': create_icon('inactive.png'),
    'idle': create_icon('idle.png'),
    'syncing1': create_icon('active1.png'),
    'syncing2': create_icon('active2.png'),
    'syncing3': create_icon('active3.png'),
    'conflict': create_icon('error.png')
}

STATUS_ICON_MAP = {
    interfaces.STATUS_INACTIVE: 'inactive',
    interfaces.STATUS_DISABLED: 'inactive',
    interfaces.STATUS_SYNCING: 'syncing',
    interfaces.STATUS_OK: 'idle',
    interfaces.STATUS_CONFLICT: 'conflict'
}
예제 #3
0
파일: tray.py 프로젝트: jone/unison-tray
from AppKit import NSMenu
from AppKit import NSMenuItem
from AppKit import NSObject
from AppKit import NSRunLoop
from AppKit import NSStatusBar
from AppKit import NSTimer
from AppKit import NSVariableStatusItemLength
from utray import interfaces
from utray.utils import create_icon
from utray.utils import app


start_time = NSDate.date()


ICONS =  {'inactive': create_icon('inactive.png'),
          'idle': create_icon('idle.png'),
          'syncing1': create_icon('active1.png'),
          'syncing2': create_icon('active2.png'),
          'syncing3': create_icon('active3.png'),
          'conflict': create_icon('error.png')}

STATUS_ICON_MAP = {
    interfaces.STATUS_INACTIVE: 'inactive',
    interfaces.STATUS_DISABLED: 'inactive',
    interfaces.STATUS_SYNCING: 'syncing',
    interfaces.STATUS_OK: 'idle',
    interfaces.STATUS_CONFLICT: 'conflict'}


class TrayMenu(NSObject):