Refactoring Ideas

From Avogadro - Free cross-platform molecule editor
Revision as of 05:12, 27 March 2010 by Annulen (talk | contribs)
Jump to: navigation, search

This page contains some ideas about future refactorization of libavogadro. They may seriously break ABI (and possibly API), and should be discussed

Rendering Widget

  • Make libavogadro use abstract RenderWidget instead of GLWidget
  • Inherit GLWidget from RenderWidget and QGLWidget, move GL-independent functionality (e.g., plugin access) up to RenderWidget
  • Remove any OpenGL calls from engines, replace them by new methods of PainterDevice
  • Add minimalistic SimpleRenderWidget without OpenGL (to create images for publication, b/w images, for use on old/heavy loaded PCs, etc)
  • Create separate GLWidgets for OpenGL2, 3, 4, etc (?)
  • "On-line" POV-Ray rendering for aesthetes (???)

Modularization of libavogadro