• Oregano

    Plot window otra vez

    Ya parece un tema recurrente en mi intento diario por hacer una ventana de ploteo que me guste. Este vez me cansé de mi intento frustrado de plot widget y me puse a buscar algo que ande de verdad 🙂 Lo que mejor se adapta a lo que necesitamos y que encontré fue GtkDataBox , aunque hay algunas cosas que todavía no me cierran del todo. El widget nuevo se nota que funciona mejor. El zoom anda bien, la velocidad de dibujo mejora y cuando el volumen de funciones es alto (más de 10 funciones) es notable la diferencia. En fin, será cuestión de seguir trabajando y ver si algunas…

  • Oregano

    Espejando Componentes.

    Este fin de semana estuve avanzando en reescribir el viejo y querido código de flipping en Oregano, tarea para nada trivial, donde he logrado grandes avances como se muestra en la imagen de ejemplo. El principal problema son las etiquetas, que no deben rotar, sino que lo que rota es su posición. Ahora, una vez rotada la posición, hay que actualizar el anclaje del texto para que se vea bien. Cómo es esto?, cuando uno pone un texto en una posición (x,y) por defecto esa posición indica el borde inferior izquierdo de la caja que contiene al texto. Al hacer un espejado horizontal, debemos cambiar el anclado para que la…

  • Oregano,  Programación

    Oregano Wire Resize

    Este fin de semana estuve haciendo un parche para Oregano que permite cambiar el tamaño de los cables (o wires) de un circuito. Luego de mucho pelear contra GnomeCanvas :-), finalmente pude realizar esta nueva característica. Pueden ver el demo acá, y descargar el parche desde mi repositorio Darcs acá.

  • Oregano

    Oregano 0.40.5 liberado !!

    Hace solo un ratito terminé de armar los tarballs de la nueva versión y ya están en línea la página del proyecto. La mayoría de los cambios no son visibles, pero he aquí un pequeño resumen : Ploteo de Funciones : además plotear las tensiones en los nodos del circuito, como ya había dicho antes, ahora se pueden hacer operaciones sobre 2 nodos, como por ejemplo sacar la diferencia o la división (este último importante para graficar la transferencia entre dos nodos). FileManager : a partir de esta versión va a ser posible agregar otros formatos de archivo para grabar o cargar esquemáticos de una manera fácil y transparente. Claro…

  • Oregano

    Más sobre funciones en Oregano

    Ya en el post pasado había comentado el nuevo feature de poder agregar funciones. Lo primero que surgió como necesidad fue modificar la forma en como se muestran las cosas en la lista de la izquierda de la ventana de ploteo, para poder separar aquellas que eran nodos, de las funciones. Todo esto para tener más comodidad a la hora de querer seleccionar las cosas. El primer intento fue bastante desastroso visualmente, aunque funcionaba. Lo que realmente quería mostrar era lo siguiente : Lo cual no fue nada fácil encontrar como realizar. La solución llegó en #gnome-hackers de FreeNode, donde federico me dio el hack necesario para hacerlo, quedando finalmente…

  • Oregano

    Soporte para Cairo 0.5

    Hoy en los entremedios de estudio (esta semana estoy en el horno con la facultad) estuve trabajando en dar soporte a cairo 0.5. No fue difícil, en la mayoría de los casos con reemplazar nombres de funciones alcanzó. Lo más complejo fue sin duda el manejo de superficies. Ahora cuando se crea un contexto cairo se le debe pasar la superficie sobre la cual dibujar (cambio muy lógico por cierto). Como usamos el backend Xlib, necesitamos 3 datos : Drawable, Display y Visual, cosas nada triviales de obtener un widget Gtk. En la documentación de Gdk está todo, pero costó encontrarlo. El resultado resumido a continuación : GdkDrawable* real_drawable; Display*…

  • Oregano

    Oregano 0.40.4

    Hace unos momentos he liberado Oregano 0.40.4, una versión que pretende arreglar un problema de ploteo con Cairo 0.4. También se ha includio un arreglo faltante para dar soporte completo a IA64 que se había escapado en las últimas pruebas. Otro cambio es que se han sacado los parámetros de DEPRECATED por default, para que compile ocn Gnome > 2.8, hasta que, eventualmente, se porte a Gnome 2.10 (2.12 es un lindo número :-).

  • General,  Oregano

    Fiebre de SWF …

    En la última semana se ha puesto de «moda» hacer demos utilizando vnc2swf, que nos permite grabar una sessión VNC en un archivo SWF (Flash 4). Algunos de ellos muy copados como los demos de Beagle de Nat Friedman o el reciente demo de PixEntryCompletion por Fernando San Martín. Pues bien, sigo los pasos para no quedarme fuera :-D, mostrando el nuevo PageManager de Oregano …. pesa algo de 3Mb.

  • Oregano

    Oregano on the Road …

    En los últimos días he estado trabajando en los cambios grandes que vamos a realizar en Oregano para no perder el ritmo. El primer cambio, que va a estar disponible en el CVS pronto, es el cambio de las hojas por páginas en la edición del esquemático. La diferencia fundamental del cambio es que ahora el espacio de una hora es fijo y no puede cambiarse, de manera que si se necesita más lugar del que una página nos puede ofrecer, debemos agregar otra página y utilizar conectores de páginas para conectar 2 circuitos que están en distintas páginas. El resultado será algo como : Quedan bastantes cosas todavía por…

  • Oregano

    Socorro Electrónicos!!!

    Hoy estuve peleándome a la tarde con Oregano para resolver un problema reportado por Marc Lorber, quién envió un parche para que se agreguen los .include de los modelos complejos, dentro de la netlist (como ser el ejemplo del Vacuum tube triode 12ax7a). El parche funciona bien y fue aplicado (previa corrección de otro bug arrastrado desde el comienzo) y funciona de 10 con el ngSpice. Sin embargo, nuestro fiel intento de dar soporte a GNU Cap sigue fallando (y como siga así lo voy a mandar a pasear :-)). Para empezar, en el ejemplo de tubo de vacío, el primer problema es que la nomenclatura de pines no soporta…