mirror of
https://github.com/SoongNoonien/mpdevil.git
synced 2023-08-10 21:12:44 +03:00
reworked GenreSelect
This commit is contained in:
parent
47d0213b3f
commit
21dee05834
@ -366,18 +366,14 @@ class GenreSelect(Gtk.Box):
|
|||||||
self.client=client
|
self.client=client
|
||||||
self.settings=settings
|
self.settings=settings
|
||||||
self.emitter=emitter
|
self.emitter=emitter
|
||||||
self.icon_size=self.settings.get_gtk_icon_size("icon-size")
|
|
||||||
|
|
||||||
self.combo=Gtk.ComboBoxText()
|
self.combo=Gtk.ComboBoxText()
|
||||||
self.button=Gtk.ToggleButton(image=Gtk.Image.new_from_icon_name("object-select-symbolic", self.icon_size))
|
|
||||||
|
|
||||||
#connect
|
#connect
|
||||||
#self.connect("changed", self.on_changed)
|
#self.connect("changed", self.on_changed)
|
||||||
self.combo_changed=self.combo.connect("changed", self.on_combo_changed)
|
self.combo_changed=self.combo.connect("changed", self.on_combo_changed)
|
||||||
self.button.connect("toggled", self.on_button_toggled)
|
|
||||||
self.update_signal=self.emitter.connect("update", self.refresh)
|
self.update_signal=self.emitter.connect("update", self.refresh)
|
||||||
|
|
||||||
self.pack_start(self.button, False, False, 0)
|
|
||||||
self.pack_start(self.combo, True, True, 0)
|
self.pack_start(self.combo, True, True, 0)
|
||||||
|
|
||||||
@GObject.Signal
|
@GObject.Signal
|
||||||
@ -389,17 +385,17 @@ class GenreSelect(Gtk.Box):
|
|||||||
def refresh(self, *args):
|
def refresh(self, *args):
|
||||||
self.combo.handler_block(self.combo_changed)
|
self.combo.handler_block(self.combo_changed)
|
||||||
self.combo.remove_all()
|
self.combo.remove_all()
|
||||||
|
self.combo.append_text(_("all genres"))
|
||||||
for genre in self.client.list("genre"):
|
for genre in self.client.list("genre"):
|
||||||
self.combo.append_text(genre)
|
self.combo.append_text(genre)
|
||||||
self.combo.set_active(0)
|
self.combo.set_active(0)
|
||||||
self.combo.handler_unblock(self.combo_changed)
|
self.combo.handler_unblock(self.combo_changed)
|
||||||
self.button.emit("toggled")
|
|
||||||
|
|
||||||
def get_value(self):
|
def get_value(self):
|
||||||
if self.button.get_active():
|
if self.combo.get_active() == 0:
|
||||||
return self.combo.get_active_text()
|
|
||||||
else:
|
|
||||||
return None
|
return None
|
||||||
|
else:
|
||||||
|
return self.combo.get_active_text()
|
||||||
|
|
||||||
def on_changed(self, *args):
|
def on_changed(self, *args):
|
||||||
value=self.get_value()
|
value=self.get_value()
|
||||||
@ -412,13 +408,6 @@ class GenreSelect(Gtk.Box):
|
|||||||
def on_combo_changed(self, *args):
|
def on_combo_changed(self, *args):
|
||||||
self.emit("changed")
|
self.emit("changed")
|
||||||
|
|
||||||
def on_button_toggled(self, widget):
|
|
||||||
if widget.get_active():
|
|
||||||
self.combo.set_sensitive(True)
|
|
||||||
else:
|
|
||||||
self.combo.set_sensitive(False)
|
|
||||||
self.emit("changed")
|
|
||||||
|
|
||||||
class ArtistView(Gtk.ScrolledWindow):
|
class ArtistView(Gtk.ScrolledWindow):
|
||||||
def __init__(self, client, settings, emitter, genre_select):
|
def __init__(self, client, settings, emitter, genre_select):
|
||||||
Gtk.ScrolledWindow.__init__(self)
|
Gtk.ScrolledWindow.__init__(self)
|
||||||
|
Loading…
Reference in New Issue
Block a user