GraphvizView: Desarrollo - segonzal/jEdit-CC4401 GitHub Wiki

Notas de desarrollo

Inicio de desarrollo

Para comenzar el desarrollo de este plugin, se examinó el plugin Minimap ya existente, y la documentación de jEdit.

En base a ambos recursos, se construyó un "plugin minimal" que sólo muestra un panel anclado y agrega al menú Plugins, una opción para mostrarlo y otra para ocultarlo (issue #16, primer commit).

Registro de issues

https://github.com/segonzal/jEdit-CC4401/issues?q=is%3Aissue+label%3AGraphvizView

Registro de commits

https://github.com/segonzal/jEdit-CC4401/commits/joseo

Resultado final

Lo que se pudo hacer

Panel anclado de Plugin

El plugin, en su versión 0.0 Beta (a entregar como final), se ve así:

Linux (Debian)

Windows XP

Se logró implementar la conexión con Graphviz, recuperar la imagen del grafo, y presentarla en jEdit.

Panel de opciones

El panel de opciones se ve así:

Linux (Debian)

Windows XP

Se puede personalizar:

  • La posición del panel anclado (izquierda o derecha)
  • Ubicación de binario dot
  • Ubicación de directorio temporal

en forma correcta.

Lo que faltó

Son principalmente dos cosas:

  1. Al solicitar dibujar un nuevo grafo, la imagen no se centra automáticamente. Debe solicitarse de nuevo graficar, para que aquéllo ocurra. Se intentó hacer un revalidate, repaint, cambiar el alineamiento de texto del jLabel que muestra como ícono al grafo. También se intentó remover el jLabel, agregar uno nuevo y en él agregar la imagen, pero no resultó.

  2. Inicialmente se pensó en hacer un visor de Graphviz por cada archivo abierto, pero poco después se optó por tener un sólo visor para todos los archivos abiertos, lo que dejó algún pequeño código redundante en el plugin. No afecta a la funcionalidad de la versión entregada de GraphvizView, pero sí podría complicar futuros cambios en el código.

⚠️ **GitHub.com Fallback** ⚠️