com.iver.andami.ui.mdiManager
Interface MDIManager


public interface MDIManager

Las vistas que se añaden al framework derivan de JPanel. ¿Como pasamos de un JPanel al control que vemos (habitualmente un JInternalFrame) Mediante la clase skin que implementa esta interfaz. El framework invoca los métodos de la clase pasando como parámetros jPanel y la clase toma el JPanel, lo trata (en la version por defecto lo mete en un JInternalFrame) y lo añade al Frame principal. Para poner un ejemplo se podría implementar ua clase que situara los jpanel en la forma que lo hace eclipse, o instalar un menú por cada vista de forma que al seleccionar el menú desapareciera la vista actual y se mostrara la que se ha seleccionado, ... Actualmente la clase que implementa esta interfaz es Skin y se usa a piñón fijo, pero en un futuro se dejará abierta la posibilidad de sustituir esta clase por una que implemente el usuario.

Author:
Fernando González Cortés

Method Summary
 View addView(View p)
          Añade una nueva vista a la interfaz y lo visualiza.
 void closeAllViews()
          Cierra todas las vistas que actualmente están abiertas
 boolean closeSingletonView(java.lang.Class viewClass, java.lang.Object model)
          Cierra la ventana SingletonView cuya clase se pasa como parámetro y cuyo modelo se pasa como parámetro.
 boolean closeSingletonView(java.lang.Object model)
          Cierra todas las ventanas Singleton que tengan como modelo el que se pasa como parámetro
 void closeView(View p)
          Cierra la vista correspondiente con el JPanel
 View getActiveView()
          Obtiene una referencia al panel de la ultima vista no modal que se activó en la aplicación.
 ViewInfo getViewInfo(View v)
          Obtiene la referencia al objeto que contiene la información de la vista que se pasa como parámetro
 void init(MDIFrame f)
          Inicialización de la clase, se le pasa la consola para mostrar mensajes y el frame principal para actuar sobre él
 void restoreCursor()
          Restaura al icono de ratón que había antes de realizar la operación
 void setWaitCursor()
          Pone como icono de ratón el HourGlass y bloquea todos los eventos de la interfaz que se producen hasta que se recibe una llamada a restoreCursor
 

Method Detail

init

public void init(MDIFrame f)
Inicialización de la clase, se le pasa la consola para mostrar mensajes y el frame principal para actuar sobre él

Parameters:
f - DOCUMENT ME!

addView

public View addView(View p)
             throws SingletonDialogAlreadyShownException
Añade una nueva vista a la interfaz y lo visualiza. Dicho vista se elimina completamente al cerrarse.

Parameters:
p - Panel con los controles de la vista
Returns:
Devuelve la vista añadida o si es un singleton y ya estaba añadida devuelve la vista ya añadida
Throws:
SingletonDialogAlreadyShownException - Si lo que se está añadiendo es una vista modal singleton y ya está añadida

getActiveView

public View getActiveView()
Obtiene una referencia al panel de la ultima vista no modal que se activó en la aplicación.

Returns:
referencia al panel activo o null si no hay ninguna vista activa

closeSingletonView

public boolean closeSingletonView(java.lang.Class viewClass,
                                  java.lang.Object model)
Cierra la ventana SingletonView cuya clase se pasa como parámetro y cuyo modelo se pasa como parámetro.

Parameters:
viewClass - Clase de la vista que se quiere cerrar
model - Modelo de la vista que se quiere cerrar
Returns:
true si hay abierta una vista con la clase viewClass y con el modelo que se pasa como parámetro. False si no hay ninguna ventana de ese tipo.

closeSingletonView

public boolean closeSingletonView(java.lang.Object model)
Cierra todas las ventanas Singleton que tengan como modelo el que se pasa como parámetro

Parameters:
model - Modelo de las ventanas que se quieren cerrar
Returns:
true si se cierra alguna ventana y false si no hay abierta ninguna ventana singleton con ese modelo

closeView

public void closeView(View p)
Cierra la vista correspondiente con el JPanel

Parameters:
p - vista que se quiere cerrar

closeAllViews

public void closeAllViews()
Cierra todas las vistas que actualmente están abiertas


getViewInfo

public ViewInfo getViewInfo(View v)
Obtiene la referencia al objeto que contiene la información de la vista que se pasa como parámetro

Parameters:
v - vista cuya información se requiere
Returns:
ViewInfo

setWaitCursor

public void setWaitCursor()
Pone como icono de ratón el HourGlass y bloquea todos los eventos de la interfaz que se producen hasta que se recibe una llamada a restoreCursor


restoreCursor

public void restoreCursor()
Restaura al icono de ratón que había antes de realizar la operación