Introducción
Ficha Técnica
Configuración
Estructura
Reordenamiento
Eventos
Espacio
Referencia
Atributos
Errores
Clases
Ejemplos
Download
Reordenamiento

El concepto de reordenamiento en Hisiuin se debe a que cuando se inserta un widget, se elimina un widget, cuando se pide espacio para un widget o se cambia un atributo relacionado a una celda (no del widget propiamente tal; Existe, como se puede ver en la sección de Atributos, que existen atributos propios del widget, y otros asociados a la celda donde está ubicado el widget), se debe reflejar los cambios realizados.

De esta manera existe un método que posee la clase Wwindow y la clase Wtable (la primera hereda de la última), el cual permite reflejar los cambios realizados a la estructura de la matriz. Este método es el método reorder().

En el caso de una ventana la invocación de este métodono es automática. En cambio para widgets agregados al widget del tipo Wtable, esta labor se realiza al invocar el método reorder de la ventana (Wwindow).

Un ejemplo es el siguiente:

    Ponemos tres botones en la interfaz:

    putButton(1,1,”uno”);
    putButton(1,2,”dos”);
    putButton(1,3,”tres”);

    Ponemos un widget del tipo Wtable con tres botones dentro:

    Wtable tabla = new Wtable();
    tabla.putButton(1,1,”uno”);
    tabla.putButton(1,2,”dos”);
    tabla.putButton(1,3,”tres”);

    Luego se invoca el método reorder() (de la clase Wwindow) :

    reorder();

    La invocación de este último método gatillara la llamada de manera intrínseca del método reorder del widget Wtable. El resultado es el siguiente:

     

    Como se puede observar, no fue necesario la invocación del método reorder por parte del widget tabla..
    Si no se hubiera realizado la invocación de reorder el resultado sería el siguiente:
     

    En Cambio si se hubiera cambiado un atributo propio del widget como por ejemplo la etiqueta del botón, por ejemplo:

    ((Wbutton)get(1,1)).setLabel(“hola”);

    No se hubiera necesitado invocar al método reorder() para ser efectivo el cambio. Por lo tanto:

    El método reorder() solo debe ser llamado después de insertar widget, borrar widgets, y cambiar sus atributos por medio de la función set(). Todo lo anterior referidos a la interfaz.

    El método reorder() no necesita ser llamado si los widgets que se ponen en la interfaz, son invocados desde el metodo init() de la interfaz. Este método llama de manera automática el método reorder().