[python] igui - Independent GUI
Jan Svec
honza na py.cz
Úterý Únor 11 10:35:51 CET 2003
On Tue, 11 Feb 2003, Vasko Miroslav wrote:
> dobry den im vsetkym prajem,
>
> a este by som si rypol.
>
> poznaju anygui? http://anygui.sf.net
> ten isty princip, ale je to nedokoncene,
> napriek tomu im tam takisto zakladne
> veci slapu, a to aj pod gtk, tkinter, curses,
> java (pre jython)
>
> porozmyslaju, ci by nestalo za to pozriet
> sa na anygui a spojit sily. na taketo *gui
> uz cakame dlho a dlho
>
> miro
<agitace pro='igui'>
Jenze anygui ma (alespon si to myslim) trochu jine cile, ma
to byt neco jako je anydbm, cili ta nejmensi podmnozina
vseho. igui jsem jiz ze zacatku chtel navrhnout tak aby to
vypadalo pokud nozno co nejlepe a proto bych chtel
vyzdvihnout nekolik veci:
1) Event scheduler a dispatcher ktere se staraji o udalosti
2) Dva typy udalosti - eventy a notifikace
3) Packing manager - spravce geometrie, ktereho lze velice
snadno implementovat pouze odvozenim od zakladni tridy a
napsanim dvou metod (viz igui/classes/nonvisual.py)
4) XObjekty - pokud budete mit widget seznam (List), pak pro
manipulaci s polozkami se v igui pouzivaji:
list.items[:] = ['jedna', 2, '3']
list.items.sort()
list.items.reverse()
a vsechno funguje jak ma. Stejnou filozofii pouzivaji i
editovaci policka a treba i kontejnery. Tj. pokud budete
chtit obratit poradi widgetu v kontejneru, staci
container.reverse() a je to.
5) anygui je jiz od zacatku stavene na modelu
Models-Controls-Views. Maji to sice v dokumentaci pekne
popsane, ale ... Nevim, nejsem z toho moc odvazany. Do
igui bych neco podobneho chtel dat jako nadstavbu, treba
model, ktery se na jednom konci pripoji k DB a druhy
konec ke controlum a obsah tabulky se bude rovnou sypat
do ovladacich prvku atd atd atd.
Cili, anygui je podle meho v porovnani s igui ponekud lehke
vahy, igui ma od zacatku komplexni navrh a snazil jsem se ze
vsech toolkitu vytahnout to nejlepsi.
</agitace>
--
S pozdravem
Jan Svec
<honza na py.cz>
http://dev.py.cz/users/honza
Další informace o konferenci Python