Antes de comenzar a compilar un procesador personalizado, es útil comprender los diferentes componentes que conforman un procesador, y cómo un bloque se divide en filas y elementos.
Componentes del renderizador
Un procesador se compone de varios componentes diferentes. Cada componente tiene un trabajo único para maximizar la reutilización y extensibilidad del código.
Procesador
El renderer es una clase de fábrica que agrupa todos los demás componentes.
Proveedor constante
El proveedor de constantes es una colección de números y formas que usan todos los demás componentes, además de los campos integrados.
Información de renderización
La información de renderización decide cómo se debe diseñar un bloque según su definición y, luego, crea una colección de medibles y datos sobre el bloque que usa el panel lateral para crear rutas de acceso SVG.
Objeto de ruta de acceso
El objeto de ruta de acceso contiene los elementos SVG que residen en el dominio y conforman el bloque.
Panel lateral
El panel lateral (como en "uno que dibuja") compila rutas de SVG en función de la información de renderización y las aplica al objeto de ruta.
Bloques medibles
Un elemento medible es un rectángulo que representa la región de un bloque. Los elementos medibles son los que usa la información de renderización para definir el diseño del bloque.
Algunos medibles también incluyen datos adicionales (como el elemento visual que representan) o métodos auxiliares que la información de renderización puede usar para averiguar cómo distribuir el bloque.
Los diferentes procesadores pueden crear mediciones personalizadas para cambiar estos datos o métodos auxiliares.
Filas
Una fila es una colección horizontal de elementos y separadores de elementos.
Separadores de filas
Un separador de filas es un espacio vertical vacío que pasa entre dos filas.
Elementos
Un elemento representa un elemento visual en un bloque. Esto incluye campos, íconos, conexiones, etcétera.
Separadores de elementos
Un espaciador de elementos es un espacio vacío que pasa entre elementos de una fila.