[pyar] Crear un "QTimelineWidget" en pyqt5

Adriano Fiorenza adrianofv en gmail.com
Vie Mar 4 20:20:00 ART 2016


Gracias Diego, Nahuel,

QML parece ser una buena opción entonces, leí en algún foro que con QML
habrían problemas respecto a manejar proporciones floats (subpixels) al
hacer zoom sobre la linea de tiempo, creo que era por usar transforms, que
no eran lo adecuado, pero debo investigar más, esto solo es un comentario!.

Antes de consultarles ya había estado codeando reutilizando widgets,
testeando no es muy eficiente con gran cantidad de items, pero por el
deadline voy a dejar QML para una etapa posterior. Lo que sí por si alguien
alguna vez se enfrenta con esto, QSplitter se comporta muy extraño en
muchos escenarios puntuales como cuando la suma de items overflowea la suma
de minimum size's de los items contenidos, o al agregar items que con cada
adición se redimensionan las proporciones automágicamente, y lo peor de
todo es implementar el tema del zoom y de laburar con valores subpixel, ya
que esto genera problemas en los cálculos según la forma de laburarlos.

Si puedo al terminar ,subiré a github el código por si alguien lo
necesita/contribuye, es una linea de tiempo muy open, no esta encasillada
en ser usada para video y audio exclusivamente, cada item contendrá el
widget que se quiera embeber a elección.

PD: quizás otra forma válida podría ser mi idea original, una subclase de
QTableWidget de la siguiente manera:
http://stackoverflow.com/questions/34953428/qtablewidget-row-resizing-behaviour-as-a-qsplitter

Saludos!



2016-03-03 11:48 GMT-03:00 Diego Sarmentero <diego.sarmentero en gmail.com>:

> El día 1 de marzo de 2016, 8:47, Adriano Fiorenza
> <adrianofv en gmail.com> escribió:
> > Nahuel,
> > Interesante lo de qwebview. Y práctico. Me gustó.
> >
> > Igual ves muy ineficiente reutilizar los widgets nativos como mencioné
> > anteriormente? Ya he empezado a codear con ese approach.
> >
> > El 29/02/2016 11:20, "Nahuel Defosse" <nahuel.defosse en gmail.com>
> escribió:
> >>
> >>
> >> Hola Adriano
> >>
> >> El 29 feb 2016, a las 11:06 a.m., Adriano Fiorenza <adrianofv en gmail.com
> >
> >> escribió:
> >>
> >> Hola a todos!
> >>
> >> En mi proyecto actual estoy necesitando crear un widget linea de tiempo
> >> con PyQt5, osea una suerte de QListWidget que en realidad funcione
> distinto,
> >> que el usuario tenga la chance de redimensionar cada item (y que los
> >> siguentes items sean arrastrados en cadena) y que el valor de esa
> >> redimensión pueda usarse fácilmente, por ejemplo para editar video,
> >> subtítulos, etc al incluir dentro de cada item un widget a elección, por
> >> ejemplo una imagen o un campo de texto. Googleando rápido no encontré
> algo
> >> que me convenza todavía.
> >>
> >> 1)Qué tan correcto ven la posibilidad de implementar el widget como una
> >> lista de una subclase de QSplitters con una subclase de QWidget para los
> >> items?
> >>
> >> 2)Por la gran cantidad de items posibles en la linea de tiempo sería más
> >> optimo usar QGraphicsView y hacer todo from scratch o se puede hacer
> >> eficiente reutilizando esos widgets nativos que mencioné en (1)?
> >>
> >> Otras ideas son bienvenidas!
> >>
> >>
> >> Se me ocurre,
> >>
> >> * Probar QML (googlear QML y Timeline tiró algunos resultados, no se si
> >> relevantes).
> >> * Usar un QWebView con una librería de JS que haga timelines. Esto
> podría
> >> ser complejo con la API de exponer objetos en el window, pero se que es
> >> posible.
> >>
> >> Saludos!
> >>
> >> _______________________________________________
> >> pyar mailing list pyar en python.org.ar
> >> http://listas.python.org.ar/listinfo/pyar
> >>
> >> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
> >>
> >> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> >> Argentina - http://www.usla.org.ar
> >
> >
> > _______________________________________________
> > pyar mailing list pyar en python.org.ar
> > http://listas.python.org.ar/listinfo/pyar
> >
> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
> >
> > La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> > Argentina - http://www.usla.org.ar
>
> Como dice Nahuel, yo iria por el lado de QML, es exactamente para esas
> cosas que queres hacer.
> Podes ponerte a adaptar los widgets clasicos, pero probablemente sea
> mucho mas laburo (y con detalles que no queden bien por varios lados)
> que implementar eso mismo con QML que te permite alinear bien las
> cosas usando anchors y establecer bien la jerarquia de los elementos
> para poder cambiar todas las proporciones de los items de la ui sin
> que se te rompa la interfaz.
>
> --
> Diego Sarmentero
>
> Website: http://diegosarmentero.org
> Twitter: http://twitter.com/diegosarmentero
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160304/77a5892e/attachment-0001.html>


Más información sobre la lista de distribución pyar