org.kahina.core.gui
Class KahinaWindowManager

java.lang.Object
  extended by org.kahina.core.gui.KahinaWindowManager
All Implemented Interfaces:
KahinaListener
Direct Known Subclasses:
QTypeWindowManager, SICStusPrologWindowManager, TraleSLDWindowManager

public class KahinaWindowManager
extends Object
implements KahinaListener


Field Summary
 List<KahinaPerspective> defaultPerspectives
           
protected  KahinaInstance<?,?,?> kahina
           
 KahinaMainWindow mainWindow
           
 List<KahinaPerspective> recentPerspectives
           
 
Constructor Summary
KahinaWindowManager(KahinaInstance<?,?,?> kahina, boolean standaloneMode)
          Create a simple window manager..
 
Method Summary
protected  KahinaMainWindow createMainWindow(KahinaWindowManager kahinaWindowManager)
           
protected  KahinaMainWindow createMainWindow(KahinaWindowManager kahinaWindowManager, int winID)
           
 void createWindows(KahinaPerspective psp)
          Builds the windows according to some perspective.
 void displayWindows()
           
 void disposeAllWindows()
           
 KahinaArrangement getArrangement()
           
 KahinaController getGuiControl()
           
 KahinaPerspective getPerspective()
          Gets the current perspective, can be manipulated and reapplied.
 KahinaWindow getWindowByID(int winID)
           
 KahinaWindow integrateInDefaultWindow(KahinaView<?> view)
           
 KahinaWindow integrateInHorizontallySplitWindow(int window1ID, int window2ID, String newTitle, KahinaController control)
           
 KahinaWindow integrateInVerticallySplitWindow(int window1ID, int window2ID, String newTitle, KahinaController control)
           
 boolean isTopLevelWindow(KahinaWindow w)
           
 void processEvent(KahinaEvent e)
           
 void registerWindow(KahinaWindow window)
           
 void setAndApplyPerspective(KahinaPerspective psp)
          Discards the current perspective and rebuilds the GUI according to a newly provided one.
 void setPerspective(KahinaPerspective psp)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

kahina

protected final KahinaInstance<?,?,?> kahina

mainWindow

public KahinaMainWindow mainWindow

recentPerspectives

public List<KahinaPerspective> recentPerspectives

defaultPerspectives

public List<KahinaPerspective> defaultPerspectives
Constructor Detail

KahinaWindowManager

public KahinaWindowManager(KahinaInstance<?,?,?> kahina,
                           boolean standaloneMode)
Create a simple window manager..

Parameters:
kahina - - the KahinaInstance bundling the other parts of the system
standaloneMode - - true for a simple standalone application
Method Detail

createWindows

public void createWindows(KahinaPerspective psp)
Builds the windows according to some perspective. Must be called before first display.


setAndApplyPerspective

public void setAndApplyPerspective(KahinaPerspective psp)
Discards the current perspective and rebuilds the GUI according to a newly provided one.

Parameters:
psp - the perspective to be applied

getPerspective

public KahinaPerspective getPerspective()
Gets the current perspective, can be manipulated and reapplied.

Returns:
the current perspective

registerWindow

public void registerWindow(KahinaWindow window)

getWindowByID

public KahinaWindow getWindowByID(int winID)

createMainWindow

protected KahinaMainWindow createMainWindow(KahinaWindowManager kahinaWindowManager)

createMainWindow

protected KahinaMainWindow createMainWindow(KahinaWindowManager kahinaWindowManager,
                                            int winID)

disposeAllWindows

public void disposeAllWindows()

isTopLevelWindow

public boolean isTopLevelWindow(KahinaWindow w)

integrateInDefaultWindow

public KahinaWindow integrateInDefaultWindow(KahinaView<?> view)

integrateInVerticallySplitWindow

public KahinaWindow integrateInVerticallySplitWindow(int window1ID,
                                                     int window2ID,
                                                     String newTitle,
                                                     KahinaController control)

integrateInHorizontallySplitWindow

public KahinaWindow integrateInHorizontallySplitWindow(int window1ID,
                                                       int window2ID,
                                                       String newTitle,
                                                       KahinaController control)

displayWindows

public void displayWindows()

processEvent

public void processEvent(KahinaEvent e)
Specified by:
processEvent in interface KahinaListener

getGuiControl

public KahinaController getGuiControl()

getArrangement

public KahinaArrangement getArrangement()

setPerspective

public void setPerspective(KahinaPerspective psp)