home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / lib / deskbar-applet / handlers / beagle-static.pyc (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2007-04-29  |  2.9 KB  |  68 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.5)
  3.  
  4. import os
  5. from os.path import exists, join
  6. from glob import glob
  7. from gettext import gettext as _
  8. from deskbar.defs import VERSION
  9. import gobject
  10. import deskbar.Handler as deskbar
  11. import deskbar.Utils as deskbar
  12. import deskbar.Match as deskbar
  13. from deskbar.Utils import get_xdg_data_dirs, spawn_async
  14.  
  15. def _check_requirements():
  16.     for dir in get_xdg_data_dirs():
  17.         if glob(join(dir, 'applications', '*best.desktop')) or glob(join(dir, 'applications', '*beagle-search.desktop')):
  18.             return (deskbar.Handler.HANDLER_IS_HAPPY, None, None)
  19.             continue
  20.     
  21.     return (deskbar.Handler.HANDLER_IS_NOT_APPLICABLE, 'Beagle does not seem to be installed, skipping', None)
  22.  
  23. HANDLERS = {
  24.     'BeagleHandler': {
  25.         'name': _('Beagle'),
  26.         'description': _('Search all of your documents (using Beagle)'),
  27.         'requirements': _check_requirements,
  28.         'version': VERSION } }
  29.  
  30. class BeagleMatch(deskbar.Match.Match):
  31.     
  32.     def __init__(self, backend, **args):
  33.         deskbar.Match.Match.__init__(self, backend, **args)
  34.  
  35.     
  36.     def action(self, text = None):
  37.         if not spawn_async([
  38.             'beagle-search',
  39.             self.name]):
  40.             spawn_async([
  41.                 'best',
  42.                 '--no-tray',
  43.                 '--show-window',
  44.                 self.name])
  45.         
  46.  
  47.     
  48.     def get_verb(self):
  49.         return _('Search for %s using Beagle') % '<b>%(name)s</b>'
  50.  
  51.     
  52.     def get_category(self):
  53.         return 'actions'
  54.  
  55.  
  56.  
  57. class BeagleHandler(deskbar.Handler.Handler):
  58.     
  59.     def __init__(self):
  60.         deskbar.Handler.Handler.__init__(self, ('system-search', 'best'))
  61.  
  62.     
  63.     def query(self, query):
  64.         return [
  65.             BeagleMatch(self, name = query)]
  66.  
  67.  
  68.