home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / deskbar-applet / handlers / history.py < prev    next >
Encoding:
Python Source  |  2006-08-29  |  784 b   |  31 lines

  1. from gettext import gettext as _
  2.  
  3. import deskbar.Handler
  4. from deskbar.DeskbarHistory import get_deskbar_history
  5. from deskbar.defs import VERSION
  6.  
  7. HANDLERS = {
  8.     "HistoryHandler" : {
  9.         "name": _("History"),
  10.         "description": _("Recognize previously used searches"),
  11.         "version": VERSION,
  12.     }
  13. }
  14.  
  15. class HistoryHandler(deskbar.Handler.Handler):
  16.     def __init__(self):
  17.         deskbar.Handler.Handler.__init__(self, "stock_redo")
  18.         
  19.     def query(self, query):
  20.         result = []
  21.         for text, match in get_deskbar_history():
  22.             if text.startswith(query):
  23.                 match.get_category = lambda: "history"
  24.                 
  25.                 # Beware of the infinite recursion here !
  26.                 match_prio = match.get_priority()[1]
  27.                 match.get_priority = lambda: (self.get_priority(), match_prio)
  28.                 result.append((text, match))
  29.         
  30.         return result
  31.