Super to je ono.
Moc děkuji za radu.
Dne Tue, 30 Jun 2009 13:05:17 +0200
Petr Messner napsal(a):
> Ano, základem GUI v GTK (a i jinde) je smyčka - main event loop.
> Mimochodem, tato smyčka se dá udělat i ručně, pomocí
> gtk.events_pending() a gtk.main_iteration(block=True).
>
> To mě vlastně p
Ano, základem GUI v GTK (a i jinde) je smyčka - main event loop.
Mimochodem, tato smyčka se dá udělat i ručně, pomocí
gtk.events_pending() a gtk.main_iteration(block=True).
To mě vlastně přivedlo na myšlenku, můžeš si nastavit pravidelné
volání nějakého kódu a v něm si tu hlasitost z Alsy zjišťova
gtk.main() je co jsem prozatím ze zkoušení zjistil nekonečná smyčka a
jakmile spustím gtk.main(), tak se už žádný další kód, který není
vyvolán něcím v GUI nespustí, do ukončení gtk.main().
Proto to zkouším řešit přes podprocesy/vlákna. A kdybych to hlavního
procesu dal monitorování roury, tak byc
V půlce programu si to klidně forkneš a očekáváš, že z potomka si v
pohodě můžeš měnit proměnné v rodičkovském procesu, navíc z obou
procesů saháš do GTK? No fuj :-) GTK je myslím thread-safe (po nějaké
inicializaci, pokud si dobře vzpomínám), ale že by i
multiprocess-safe, to pochybuji :-)
Doporu
V této části kódu:
--
def __init__(self):
self.mixer=alsa.Mixer();
if self.mixer.getmute()[0]==0:
self.icon=gtk.status_icon_new_from_stock(gtk.STOCK_YES);