Re: problema con Pygtk + Treeview + TreeModelFilter



On Fri, 2008-11-14 at 06:44 -0500, Eduardo Silva wrote:
>         El iter es invalido si tienes encadenados filtros entre el
>         modelo y la
>         vista
>         Tambien puedes crear tus propios filtros.
> Muchas gracias por la ayuda, en algun momento me habia saltado esas
> instrucciones, creo que hay algo verdaderamente dirty en la
> implementacion,  pq ambos iters: iter y child iter apuntan a la misma
> direccion de memoria/objeto:
>  python tv_fail.py 
> <GtkTreeIter at 0x863e1b0> <- iter
> <GtkTreeIter at 0x863e1d0> <- child iter

No es lo mismo B-eta versuso D-elta  ;)

> no  veo la razon de pq deba ser convertido, es como si se mapearan el
> contenido del objeto. Estoy bajando el codigo fuente de gtk para
> echarle un ojo y tratar de entender un poco mas...

Ejemplos: Puedes poner un filtro que quite filas/columnas (que agregue
filas/columnas tambien!); tambien esta el tipico filtro que ordena
alguna columna, luego el iterar la siguiente fila es totalmente distinto
que iterar sobre los datos originales... Y otras cosas, como encadenar
varios filtros!

Luego los iter de un filtro (aka vista) pueden y son totalmente
distintos al modelo donde estan los datos.



Lo bakan en pygtk es que puedes iterar el modelo o dar un fila con
"direccionamiento" (no se como se dice esto). Cosas como:

for row in model:
	print row

model[0] = row


Pero por las razones de arriba, si estas usando filtros tienes que
mapear entre el iter del filtro/modelo padre y los hijos. A no ser que
alguien tenga un tipo de hacerlo elegante y bonito.


-- 
Aldrin Martoq <amartoq dcc uchile cl>
http://aldrinvideopodcast.podshow.com/

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]