1 #!/usr/bin/env python2.5
2 # -*- coding: utf-8 -*-
16 _moduleLogger = logging.getLogger("search")
19 class Search(gtk.HBox):
22 'search_changed' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, ()),
26 _moduleLogger.info("search, init")
27 gtk.HBox.__init__(self, homogeneous = False, spacing = 3)
28 self.connect("hide", self._on_hide)
30 label = gtk.Label(_("Search: "))
32 self._searchEntry = gtk.Entry()
33 self._searchEntry.connect("changed", self._on_search_entry_changed, None)
35 closeImage = gtk.Image()
36 closeImage.set_from_stock("gtk-close", gtk.ICON_SIZE_BUTTON)
37 closeSearch = gtk.Button()
38 closeSearch.set_image(closeImage)
39 closeSearch.connect("clicked", self._on_close)
41 searchHBox = gtk.HBox()
42 searchHBox.pack_start(label, expand = False, fill = False)
43 searchHBox.pack_start(self._searchEntry, expand = True, fill = True)
44 searchHBox.pack_start(closeSearch, expand = False, fill = False)
45 self.pack_start(searchHBox, expand = True, fill = True)
47 def get_search_pattern(self):
48 return self._searchEntry.get_text()
50 def _on_search_entry_changed(self, widget = None, data = None):
51 self.emit("search_changed")
53 def _on_close(self, *args):
56 def _on_hide(self, *args):
57 self._searchEntry.set_text("")