|
The Meta-Environment API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object nl.cwi.sen1.gui.StudioImpl
public class StudioImpl
Toplevel window of The Meta-Environment. This class wraps two functionalities. First it builds up a toplevel window with tabs and menu's. Second it dynamically loads jars provided by the ToolBus. The loaded jars will add tabs to the GUI, and register menus using the Studio interface.
Field Summary | |
---|---|
private net.infonode.docking.View |
activeView
|
private GuiBridge |
bridge
|
private java.util.Map<StudioComponent,java.util.List<javax.swing.JMenuItem>> |
componentMenus
|
protected java.util.Map<net.infonode.docking.View,StudioComponent> |
componentsByView
|
private nl.cwi.sen1.configapi.Factory |
configFactory
|
private net.infonode.docking.theme.DockingWindowsTheme |
currentTheme
|
private aterm.pure.PureFactory |
factory
|
private static javax.swing.JFrame |
frame
|
private java.util.Map<StudioComponent,java.lang.Integer> |
idsByComponent
|
private java.util.List<java.lang.String> |
jobQueue
|
private boolean |
menuBarUpdatePending
|
private nl.cwi.sen1.configapi.types.ActionDescriptionList |
menuList
|
private static int |
nextUniqueComponentID
|
private java.util.List<StudioPlugin> |
plugins
|
(package private) javax.swing.JProgressBar |
progressBar
|
private net.infonode.docking.properties.RootWindowProperties |
properties
|
protected net.infonode.docking.RootWindow |
rootWindow
|
private StudioStatusBar |
statusBar
|
private javax.swing.JLabel |
systemLabel
|
private net.infonode.docking.util.ViewMap |
viewsById
|
Constructor Summary | |
---|---|
StudioImpl(java.lang.String[] args)
|
Method Summary | |
---|---|
void |
addComponent(StudioComponent component)
Register a StudioComponent. |
void |
addComponentMenu(StudioComponent component,
nl.cwi.sen1.configapi.types.Event menuPath,
javax.swing.Action action)
Register a menu that is linked with a particular component. |
void |
addComponentMenu(StudioComponent component,
javax.swing.JMenu menu)
Register a menu that is linked with a particular component. |
void |
addJob(java.lang.String message)
|
void |
addMenuEvents(aterm.ATerm menus)
|
protected void |
addStudioComponentNameChangedListener(StudioComponent component)
|
protected void |
addStudioComponentTooltipChangedListener(StudioComponent component)
|
void |
connect(java.lang.String toolName,
toolbus.AbstractTool tool)
Connect to the ToolBus. |
private javax.swing.JMenu |
createEmptyFileMenu()
|
private void |
createFrame()
|
private javax.swing.JMenuBar |
createMenuBar()
|
protected net.infonode.docking.RootWindow |
createRootWindow()
|
private StudioStatusBar |
createStatusBar()
|
private javax.swing.JMenu |
createThemesMenu()
|
protected net.infonode.docking.View |
createView(StudioComponent component,
int id)
|
private javax.swing.JMenu |
createViewsMenu()
|
private net.infonode.docking.View |
deleteView(int id)
|
aterm.ATermFactory |
getATermFactory()
Get 'The' ATermFactory. |
private StudioComponent |
getComponent(net.infonode.docking.View view)
|
private int |
getComponentId(StudioComponent component)
|
private java.util.List<javax.swing.JMenuItem> |
getComponentMenus(StudioComponent component)
|
static java.awt.Frame |
getFrame()
|
private java.util.List<javax.swing.JMenuItem> |
getMenus(StudioComponent component)
|
private void |
initialize()
|
void |
jobDone(java.lang.String message)
|
void |
loadJar(java.lang.String pluginJar)
|
void |
loadJarClasspath(java.lang.String pluginJar,
java.lang.String classPath)
|
void |
loadJarUrls(java.lang.String pluginJar,
aterm.ATerm classPath)
|
static void |
main(java.lang.String[] args)
|
void |
makeVisible(StudioComponent component)
Make a specific Component visible. |
private static int |
nextComponentID()
|
void |
recAckEvent(aterm.ATerm t0)
|
void |
recTerminate(aterm.ATerm t)
|
protected int |
registerComponent(StudioComponent component)
|
private void |
registerPlugin(StudioPlugin plugin)
|
void |
removeComponent(StudioComponent component)
Unregister a StudioComponent. |
void |
requestFocus(StudioComponent component)
Make the Studio move the focus to a specific Component. |
void |
setStatus(java.lang.String message)
|
private void |
setTheme(net.infonode.docking.theme.DockingWindowsTheme theme)
|
void |
setTitle(java.lang.String title)
|
protected void |
showView(net.infonode.docking.View view)
|
private void |
startBridgeThread(java.lang.String[] args)
|
private void |
startFrameThread()
|
private void |
startPlugin(PluginLoader loader)
|
private void |
updateMenuBar()
|
private void |
updateStatusBar()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static int nextUniqueComponentID
private aterm.pure.PureFactory factory
private nl.cwi.sen1.configapi.Factory configFactory
private GuiBridge bridge
private net.infonode.docking.util.ViewMap viewsById
private java.util.Map<StudioComponent,java.lang.Integer> idsByComponent
protected java.util.Map<net.infonode.docking.View,StudioComponent> componentsByView
private java.util.Map<StudioComponent,java.util.List<javax.swing.JMenuItem>> componentMenus
protected net.infonode.docking.RootWindow rootWindow
private net.infonode.docking.properties.RootWindowProperties properties
private static javax.swing.JFrame frame
private javax.swing.JLabel systemLabel
javax.swing.JProgressBar progressBar
private nl.cwi.sen1.configapi.types.ActionDescriptionList menuList
private net.infonode.docking.theme.DockingWindowsTheme currentTheme
private net.infonode.docking.View activeView
private StudioStatusBar statusBar
private boolean menuBarUpdatePending
private java.util.List<StudioPlugin> plugins
private java.util.List<java.lang.String> jobQueue
Constructor Detail |
---|
public StudioImpl(java.lang.String[] args)
Method Detail |
---|
public static void main(java.lang.String[] args) throws java.lang.Exception
java.lang.Exception
public static java.awt.Frame getFrame()
private void startBridgeThread(java.lang.String[] args)
private void startFrameThread()
private void initialize()
private static int nextComponentID()
protected net.infonode.docking.RootWindow createRootWindow()
private void updateStatusBar()
private void updateMenuBar()
public aterm.ATermFactory getATermFactory()
Studio
getATermFactory
in interface Studio
protected net.infonode.docking.View createView(StudioComponent component, int id)
protected int registerComponent(StudioComponent component)
public void addComponent(StudioComponent component)
Studio
addComponent
in interface Studio
component
- Component to add.public void removeComponent(StudioComponent component)
Studio
removeComponent
in interface Studio
component
- Component to remove.private int getComponentId(StudioComponent component)
private net.infonode.docking.View deleteView(int id)
private void createFrame()
private StudioStatusBar createStatusBar()
private javax.swing.JMenuBar createMenuBar()
private javax.swing.JMenu createViewsMenu()
private java.util.List<javax.swing.JMenuItem> getComponentMenus(StudioComponent component)
private javax.swing.JMenu createEmptyFileMenu()
protected void showView(net.infonode.docking.View view)
private javax.swing.JMenu createThemesMenu()
private void setTheme(net.infonode.docking.theme.DockingWindowsTheme theme)
public void setTitle(java.lang.String title)
setTitle
in interface GuiTif
public void recAckEvent(aterm.ATerm t0)
recAckEvent
in interface GuiTif
public void recTerminate(aterm.ATerm t)
recTerminate
in interface GuiTif
public void connect(java.lang.String toolName, toolbus.AbstractTool tool)
Studio
connect
in interface Studio
toolName
- Name of the tool as it occurs in the ToolBus script.tool
- Java implementation of a ToolBus tool.private StudioComponent getComponent(net.infonode.docking.View view)
private void startPlugin(PluginLoader loader)
private void registerPlugin(StudioPlugin plugin)
public void loadJar(java.lang.String pluginJar)
loadJar
in interface GuiTif
public void loadJarUrls(java.lang.String pluginJar, aterm.ATerm classPath)
loadJarUrls
in interface GuiTif
public void loadJarClasspath(java.lang.String pluginJar, java.lang.String classPath)
loadJarClasspath
in interface GuiTif
public void addMenuEvents(aterm.ATerm menus)
addMenuEvents
in interface GuiTif
public void addComponentMenu(StudioComponent component, javax.swing.JMenu menu)
Studio
addComponentMenu
in interface Studio
component
- Component to link a menu with.menu
- JMenu to link to a component.public void addComponentMenu(StudioComponent component, nl.cwi.sen1.configapi.types.Event menuPath, javax.swing.Action action)
Studio
addComponentMenu
in interface Studio
private java.util.List<javax.swing.JMenuItem> getMenus(StudioComponent component)
public void requestFocus(StudioComponent component)
Studio
requestFocus
in interface Studio
component
- Component to move the focus to.public void makeVisible(StudioComponent component)
Studio
makeVisible
in interface Studio
component
- Component to make visible.public void setStatus(java.lang.String message)
setStatus
in interface GuiTif
public void jobDone(java.lang.String message)
jobDone
in interface GuiTif
public void addJob(java.lang.String message)
addJob
in interface GuiTif
protected void addStudioComponentNameChangedListener(StudioComponent component)
protected void addStudioComponentTooltipChangedListener(StudioComponent component)
|
The Meta-Environment API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |