Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 104271 Details for
Bug 172483
[terminal] Secondary terminals cannot be shown in other perspectives
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Pin and Remove works now
clipboard.txt (text/plain), 43.42 KB, created by
Michael Scharf
on 2008-06-10 01:23:31 EDT
(
hide
)
Description:
Pin and Remove works now
Filename:
MIME Type:
Creator:
Michael Scharf
Created:
2008-06-10 01:23:31 EDT
Size:
43.42 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.tm.terminal.view >Index: src/org/eclipse/tm/internal/terminal/view/TerminalView.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/view/TerminalView.java,v >retrieving revision 1.27 >diff -u -r1.27 TerminalView.java >--- src/org/eclipse/tm/internal/terminal/view/TerminalView.java 7 May 2008 14:48:03 -0000 1.27 >+++ src/org/eclipse/tm/internal/terminal/view/TerminalView.java 10 Jun 2008 05:20:55 -0000 >@@ -26,6 +26,7 @@ > import java.util.Set; > > import org.eclipse.core.runtime.Preferences; >+import org.eclipse.jface.action.Action; > import org.eclipse.jface.action.IMenuListener; > import org.eclipse.jface.action.IMenuManager; > import org.eclipse.jface.action.IToolBarManager; >@@ -35,6 +36,7 @@ > import org.eclipse.jface.util.IPropertyChangeListener; > import org.eclipse.jface.util.PropertyChangeEvent; > import org.eclipse.jface.window.Window; >+import org.eclipse.swt.SWT; > import org.eclipse.swt.events.MenuEvent; > import org.eclipse.swt.events.MenuListener; > import org.eclipse.swt.widgets.Composite; >@@ -45,6 +47,9 @@ > import org.eclipse.tm.internal.terminal.actions.TerminalActionConnect; > import org.eclipse.tm.internal.terminal.actions.TerminalActionDisconnect; > import org.eclipse.tm.internal.terminal.actions.TerminalActionNewTerminal; >+import org.eclipse.tm.internal.terminal.actions.TerminalActionPin; >+import org.eclipse.tm.internal.terminal.actions.TerminalActionRemove; >+import org.eclipse.tm.internal.terminal.actions.TerminalActionSelectionDropDown; > import org.eclipse.tm.internal.terminal.actions.TerminalActionSettings; > import org.eclipse.tm.internal.terminal.actions.TerminalActionToggleCommandInputField; > import org.eclipse.tm.internal.terminal.control.CommandInputFieldWithHistory; >@@ -61,6 +66,8 @@ > import org.eclipse.tm.internal.terminal.provisional.api.Logger; > import org.eclipse.tm.internal.terminal.provisional.api.TerminalConnectorExtension; > import org.eclipse.tm.internal.terminal.provisional.api.TerminalState; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager.ITerminalViewConnectionFactory; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager.TerminalViewConnectionListener; > import org.eclipse.ui.IMemento; > import org.eclipse.ui.IViewReference; > import org.eclipse.ui.IViewSite; >@@ -69,7 +76,7 @@ > import org.eclipse.ui.PlatformUI; > import org.eclipse.ui.part.ViewPart; > >-public class TerminalView extends ViewPart implements ITerminalView, ITerminalListener { >+public class TerminalView extends ViewPart implements ITerminalView, ITerminalListener, TerminalViewConnectionListener { > private static final String STORE_CONNECTION_TYPE = "ConnectionType"; //$NON-NLS-1$ > > private static final String STORE_SETTING_SUMMARY = "SettingSummary"; //$NON-NLS-1$ >@@ -108,12 +115,17 @@ > > protected TerminalPropertyChangeHandler fPropertyChangeHandler; > >+ protected Action fActionTerminalDropDown; >+ protected Action fActionTerminalPin; >+ protected Action fActionTerminalRemove; >+ > protected boolean fMenuAboutToShow; > > private SettingsStore fStore; > > private CommandInputFieldWithHistory fCommandInputField; > >+ private final TerminalViewConnectionManager fMultiConnectionManager=new TerminalViewConnectionManager(); > /** > * Listens to changes in the preferences > */ >@@ -126,9 +138,15 @@ > } > } > }; >+ >+ private PageBook fPageBook; >+ >+ private boolean fPinned=true; >+ > public TerminalView() { > Logger > .log("==============================================================="); //$NON-NLS-1$ >+ fMultiConnectionManager.addListener(this); > } > > String findUniqueTitle(String title) { >@@ -189,26 +207,31 @@ > */ > public void onTerminalNewTerminal() { > Logger.log("creating new Terminal instance."); //$NON-NLS-1$ >- >- try { >- // The second argument to showView() is a unique String identifying the >- // secondary view instance. If it ever matches a previously used secondary >- // view identifier, then this call will not create a new Terminal view, >- // which is undesirable. Therefore, we append the current time in >- // milliseconds to the secondary view identifier to ensure it is always >- // unique. This code runs only when the user clicks the New Terminal >- // button, so there is no risk that this code will run twice in a single >- // millisecond. >- >- getSite().getPage().showView( >- "org.eclipse.tm.terminal.view.TerminalView",//$NON-NLS-1$ >- "SecondaryTerminal" + System.currentTimeMillis(), //$NON-NLS-1$ >- IWorkbenchPage.VIEW_ACTIVATE); >- } catch (PartInitException ex) { >- Logger.logException(ex); >+ if(fPinned) { >+ try { >+ // The second argument to showView() is a unique String identifying the >+ // secondary view instance. If it ever matches a previously used secondary >+ // view identifier, then this call will not create a new Terminal view, >+ // which is undesirable. Therefore, we append the current time in >+ // milliseconds to the secondary view identifier to ensure it is always >+ // unique. This code runs only when the user clicks the New Terminal >+ // button, so there is no risk that this code will run twice in a single >+ // millisecond. >+ >+ getSite().getPage().showView( >+ "org.eclipse.tm.terminal.view.TerminalView",//$NON-NLS-1$ >+ "SecondaryTerminal" + System.currentTimeMillis(), //$NON-NLS-1$ >+ IWorkbenchPage.VIEW_ACTIVATE); >+ } catch (PartInitException ex) { >+ Logger.logException(ex); >+ } >+ } else { >+ setupControls(); >+ onTerminalSettings(); > } > } > >+ > public void onTerminalConnect() { > //if (isConnected()) > if (fCtlTerminal.getState()!=TerminalState.CLOSED) >@@ -363,7 +386,18 @@ > // sequence. > > setPartName(findUniqueTitle(ViewMessages.PROP_TITLE)); >- setupControls(wndParent); >+ fPageBook=new PageBook(wndParent,SWT.NONE); >+ ISettingsStore s=new SettingStorePrefixDecorator(fStore,"connectionManager"); //$NON-NLS-1$ >+ fMultiConnectionManager.loadState(s,new ITerminalViewConnectionFactory() { >+ public ITerminalViewConnection create() { >+ return makeViewConnection(); >+ } >+ }); >+ // if there is no connection loaded, create at least one >+ if(fMultiConnectionManager.size()==0) { >+ setupControls(); >+ fPageBook.showPage(fCtlTerminal.getRootControl()); >+ } > setupActions(); > setupLocalToolBars(); > setupContextMenus(); >@@ -393,10 +427,16 @@ > /** > * This method creates the top-level control for the Terminal view. > */ >- protected void setupControls(Composite wndParent) { >- ITerminalConnector[] connectors = makeConnectors(); >- fCtlTerminal = TerminalViewControlFactory.makeControl(this, wndParent, connectors); >+ protected void setupControls() { >+ ITerminalViewConnection conn = makeViewConnection(); >+ fMultiConnectionManager.addConnection(conn); >+ fMultiConnectionManager.setConnection(conn); >+ } > >+ private ITerminalViewConnection makeViewConnection() { >+ ITerminalConnector[] connectors = makeConnectors(); >+ fCtlTerminal = TerminalViewControlFactory.makeControl(this, fPageBook, connectors); >+ ITerminalViewConnection conn = new TerminalViewConnection(fCtlTerminal); > String connectionType=fStore.get(STORE_CONNECTION_TYPE); > for (int i = 0; i < connectors.length; i++) { > connectors[i].load(getStore(connectors[i])); >@@ -411,6 +451,7 @@ > String title=fStore.get(STORE_TITLE); > if(title!=null && title.length()>0) > setPartName(title); >+ return conn; > } > > /** >@@ -443,6 +484,7 @@ > fStore.put(STORE_HAS_COMMAND_INPUT_FIELD,hasCommandInputField()?"true":"false"); //$NON-NLS-1$//$NON-NLS-2$ > fStore.put(STORE_SETTING_SUMMARY, getSettingsSummary()); > fStore.put(STORE_TITLE,getPartName()); >+ fMultiConnectionManager.saveState(new SettingStorePrefixDecorator(fStore,"connectionManager")); //$NON-NLS-1$ > fStore.saveState(memento); > } > private ISettingsStore getStore(ITerminalConnector connector) { >@@ -450,6 +492,10 @@ > } > > protected void setupActions() { >+ fActionTerminalDropDown = new TerminalActionSelectionDropDown(fMultiConnectionManager); >+ fActionTerminalPin=new TerminalActionPin(this); >+ fActionTerminalPin.setChecked(isPinned()); >+ fActionTerminalRemove=new TerminalActionRemove(fMultiConnectionManager); > fActionTerminalNewTerminal = new TerminalActionNewTerminal(this); > // fActionTerminalScrollLock = new TerminalActionScrollLock(this); > fActionTerminalConnect = new TerminalActionConnect(this); >@@ -465,12 +511,16 @@ > protected void setupLocalToolBars() { > IToolBarManager toolBarMgr = getViewSite().getActionBars().getToolBarManager(); > >- toolBarMgr.add(fActionTerminalNewTerminal); >+ toolBarMgr.add(fActionTerminalRemove); > // toolBarMgr.add(fActionTerminalScrollLock); > toolBarMgr.add(fActionTerminalConnect); > toolBarMgr.add(fActionTerminalDisconnect); > toolBarMgr.add(fActionTerminalSettings); > toolBarMgr.add(fActionToggleCommandInputField); >+ toolBarMgr.add(new Separator("fixedGroup")); //$NON-NLS-1$ >+ toolBarMgr.add(fActionTerminalPin); >+ toolBarMgr.add(fActionTerminalDropDown); >+ toolBarMgr.add(fActionTerminalNewTerminal); > } > > protected void setupContextMenus() { >@@ -561,4 +611,24 @@ > public void setScrollLock(boolean on) { > fCtlTerminal.setScrollLock(on); > } >+ >+ public void connectionsChanged() { >+ if(fMultiConnectionManager.getCurrentConnection()!=null) { >+ ITerminalViewControl ctrl = fMultiConnectionManager.getCurrentConnection().getCtlTerminal(); >+ if(fCtlTerminal!=ctrl) { >+ fCtlTerminal=ctrl; >+ fPageBook.showPage(fCtlTerminal.getRootControl()); >+ updateStatus(); >+ onTerminalStatus(); >+ } >+ } >+ >+ } >+ >+ public void setPinned(boolean pinned) { >+ fPinned=pinned; >+ } >+ private boolean isPinned() { >+ return fPinned; >+ } > } >Index: src/org/eclipse/tm/internal/terminal/view/ITerminalView.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/view/ITerminalView.java,v >retrieving revision 1.5 >diff -u -r1.5 ITerminalView.java >--- src/org/eclipse/tm/internal/terminal/view/ITerminalView.java 25 Apr 2008 20:14:49 -0000 1.5 >+++ src/org/eclipse/tm/internal/terminal/view/ITerminalView.java 10 Jun 2008 05:20:55 -0000 >@@ -26,4 +26,5 @@ > public void setCommandInputField(boolean on); > public boolean isScrollLock(); > public void setScrollLock(boolean b); >+ public void setPinned(boolean pin); > } >Index: src/org/eclipse/tm/internal/terminal/view/ImageConsts.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/view/ImageConsts.java,v >retrieving revision 1.5 >diff -u -r1.5 ImageConsts.java >--- src/org/eclipse/tm/internal/terminal/view/ImageConsts.java 25 Apr 2008 20:14:49 -0000 1.5 >+++ src/org/eclipse/tm/internal/terminal/view/ImageConsts.java 10 Jun 2008 05:20:55 -0000 >@@ -20,31 +20,36 @@ > public interface ImageConsts > { > public final static String IMAGE_DIR_ROOT = "icons/"; //$NON-NLS-1$ >- public final static String IMAGE_DIR_CTOOL = "ctool16/"; // basic colors - size 16x16 //$NON-NLS-1$ > public final static String IMAGE_DIR_LOCALTOOL = "clcl16/"; // basic colors - size 16x16 //$NON-NLS-1$ > public final static String IMAGE_DIR_DLCL = "dlcl16/"; // disabled - size 16x16 //$NON-NLS-1$ > public final static String IMAGE_DIR_ELCL = "elcl16/"; // enabled - size 16x16 //$NON-NLS-1$ >- public final static String IMAGE_DIR_OBJECT = "obj16/"; // basic colors - size 16x16 //$NON-NLS-1$ >- public final static String IMAGE_DIR_WIZBAN = "wizban/"; // basic colors - size 16x16 //$NON-NLS-1$ >- public final static String IMAGE_DIR_OVR = "ovr16/"; // basic colors - size 7x8 //$NON-NLS-1$ > public final static String IMAGE_DIR_VIEW = "cview16/"; // views //$NON-NLS-1$ > public final static String IMAGE_DIR_EVIEW = "eview16/"; // views //$NON-NLS-1$ > > public static final String IMAGE_NEW_TERMINAL = "TerminalViewNewTerminal"; //$NON-NLS-1$ >+ public static final String IMAGE_TERMINAL_VIEW = "TerminalView"; //$NON-NLS-1$ > public static final String IMAGE_CLCL_CONNECT = "ImageClclConnect"; //$NON-NLS-1$ > public static final String IMAGE_CLCL_DISCONNECT = "ImageClclDisconnect"; //$NON-NLS-1$ > public static final String IMAGE_CLCL_SETTINGS = "ImageClclSettings"; //$NON-NLS-1$ > public static final String IMAGE_CLCL_SCROLL_LOCK = "ImageClclScrollLock"; //$NON-NLS-1$ >+ public static final String IMAGE_CLCL_CLEAR = "ImageClclClear"; //$NON-NLS-1$ >+ public static final String IMAGE_CLCL_PIN = "ImageClclPin"; //$NON-NLS-1$ > > public static final String IMAGE_DLCL_CONNECT = "ImageDlclConnect"; //$NON-NLS-1$ > public static final String IMAGE_DLCL_DISCONNECT = "ImageDlclDisconnect"; //$NON-NLS-1$ > public static final String IMAGE_DLCL_SETTINGS = "ImageDlclSettings"; //$NON-NLS-1$ > public static final String IMAGE_DLCL_SCROLL_LOCK = "ImageDlclScrollLock"; //$NON-NLS-1$ >+ public static final String IMAGE_DLCL_CLEAR = "ImageDlclClear"; //$NON-NLS-1$ >+ public static final String IMAGE_DLCL_PIN = "ImageDlclPin"; //$NON-NLS-1$ >+ public static final String IMAGE_DLCL_REMOVE = "ImageDlclRemove"; //$NON-NLS-1$ > > public static final String IMAGE_ELCL_CONNECT = "ImageElclConnect"; //$NON-NLS-1$ > public static final String IMAGE_ELCL_DISCONNECT = "ImageElclDisconnect"; //$NON-NLS-1$ > public static final String IMAGE_ELCL_SETTINGS = "ImageElclSettings"; //$NON-NLS-1$ > public static final String IMAGE_ELCL_SCROLL_LOCK = "ImageElclScrollLock"; //$NON-NLS-1$ >+ public static final String IMAGE_ELCL_CLEAR = "ImageElclClear"; //$NON-NLS-1$ >+ public static final String IMAGE_ELCL_PIN = "ImageElclPin"; //$NON-NLS-1$ >+ public static final String IMAGE_ELCL_REMOVE = "ImageElclRemove"; //$NON-NLS-1$ > public static final String IMAGE_CLCL_COMMAND_INPUT_FIELD = "ImageClclCommandInputField";//$NON-NLS-1$ > public static final String IMAGE_ELCL_COMMAND_INPUT_FIELD = "ImageDlclCommandInputField";//$NON-NLS-1$ > public static final String IMAGE_DLCL_COMMAND_INPUT_FIELD = "ImageDlclCommandInputField";//$NON-NLS-1$ >Index: src/org/eclipse/tm/internal/terminal/view/TerminalViewPlugin.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/view/TerminalViewPlugin.java,v >retrieving revision 1.8 >diff -u -r1.8 TerminalViewPlugin.java >--- src/org/eclipse/tm/internal/terminal/view/TerminalViewPlugin.java 7 May 2008 14:48:03 -0000 1.8 >+++ src/org/eclipse/tm/internal/terminal/view/TerminalViewPlugin.java 10 Jun 2008 05:20:56 -0000 >@@ -53,6 +53,8 @@ > map.put(ImageConsts.IMAGE_CLCL_SETTINGS, "properties_tsk.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_CLCL_COMMAND_INPUT_FIELD, "command_input_field.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_CLCL_SCROLL_LOCK, "lock_co.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_CLCL_CLEAR, "clear_co.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_CLCL_PIN, "pin.gif"); //$NON-NLS-1$ > > loadImageRegistry(imageRegistry, ImageConsts.IMAGE_DIR_LOCALTOOL, map); > >@@ -65,7 +67,10 @@ > map.put(ImageConsts.IMAGE_ELCL_SETTINGS, "properties_tsk.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_ELCL_COMMAND_INPUT_FIELD, "command_input_field.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_ELCL_SCROLL_LOCK, "lock_co.gif"); //$NON-NLS-1$ >- >+ map.put(ImageConsts.IMAGE_ELCL_CLEAR, "clear_co.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_ELCL_PIN, "pin.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_ELCL_REMOVE, "rem_co.gif"); //$NON-NLS-1$ >+ > loadImageRegistry(imageRegistry, ImageConsts.IMAGE_DIR_ELCL, map); > > map.clear(); >@@ -77,10 +82,20 @@ > map.put(ImageConsts.IMAGE_DLCL_SETTINGS, "properties_tsk.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_DLCL_COMMAND_INPUT_FIELD, "command_input_field.gif"); //$NON-NLS-1$ > map.put(ImageConsts.IMAGE_DLCL_SCROLL_LOCK, "lock_co.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_DLCL_CLEAR, "clear_co.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_DLCL_PIN, "pin.gif"); //$NON-NLS-1$ >+ map.put(ImageConsts.IMAGE_DLCL_REMOVE, "rem_co.gif"); //$NON-NLS-1$ > > loadImageRegistry(imageRegistry, ImageConsts.IMAGE_DIR_DLCL, map); > > map.clear(); >+ >+ map.put(ImageConsts.IMAGE_TERMINAL_VIEW, "terminal_view.gif"); //$NON-NLS-1$ >+ >+ loadImageRegistry(imageRegistry, ImageConsts.IMAGE_DIR_EVIEW, map); >+ >+ map.clear(); >+ > } catch (MalformedURLException malformedURLException) { > malformedURLException.printStackTrace(); > } >Index: src/org/eclipse/tm/internal/terminal/actions/ActionMessages.properties >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/actions/ActionMessages.properties,v >retrieving revision 1.5 >diff -u -r1.5 ActionMessages.properties >--- src/org/eclipse/tm/internal/terminal/actions/ActionMessages.properties 25 Apr 2008 20:14:49 -0000 1.5 >+++ src/org/eclipse/tm/internal/terminal/actions/ActionMessages.properties 10 Jun 2008 05:20:55 -0000 >@@ -23,3 +23,9 @@ > SCROLL_LOCK_1 = Scroll Lock > SETTINGS = Settings > TOGGLE_COMMAND_INPUT_FIELD= Toggle Command Input Field >+REMOVE = Remove Terminal >+PIN = Pin Terminal >+ >+ConsoleDropDownAction_0=Select Connection >+ConsoleDropDownAction_1=Display Selected Connections >+ >Index: src/org/eclipse/tm/internal/terminal/actions/ActionMessages.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal.view/src/org/eclipse/tm/internal/terminal/actions/ActionMessages.java,v >retrieving revision 1.5 >diff -u -r1.5 ActionMessages.java >--- src/org/eclipse/tm/internal/terminal/actions/ActionMessages.java 25 Apr 2008 20:14:48 -0000 1.5 >+++ src/org/eclipse/tm/internal/terminal/actions/ActionMessages.java 10 Jun 2008 05:20:55 -0000 >@@ -20,6 +20,7 @@ > import org.eclipse.osgi.util.NLS; > > public class ActionMessages extends NLS { >+ > static { > NLS.initializeMessages(ActionMessages.class.getName(), ActionMessages.class); > } >@@ -30,6 +31,11 @@ > public static String SETTINGS_ELLIPSE; > public static String SCROLL_LOCK_0; > public static String SCROLL_LOCK_1; >+ public static String REMOVE; >+ public static String PIN; >+ >+ public static String ConsoleDropDownAction_0; >+ public static String ConsoleDropDownAction_1; > > public static String SETTINGS; > >Index: src/org/eclipse/tm/internal/terminal/actions/TerminalActionPin.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/actions/TerminalActionPin.java >diff -N src/org/eclipse/tm/internal/terminal/actions/TerminalActionPin.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/actions/TerminalActionPin.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,41 @@ >+/******************************************************************************* >+ * Copyright (c) 2004, 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Initial Contributors: >+ * The following Wind River employees contributed to the Terminal component >+ * that contains this file: Chris Thew, Fran Litterio, Stephen Lamb, >+ * Helmut Haigermoser and Ted Williams. >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - split into core, view and connector plugins >+ * Martin Oberhuber (Wind River) - fixed copyright headers and beautified >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.actions; >+ >+import org.eclipse.jface.action.IAction; >+import org.eclipse.tm.internal.terminal.view.ITerminalView; >+import org.eclipse.tm.internal.terminal.view.ImageConsts; >+ >+public class TerminalActionPin extends TerminalAction >+{ >+ public TerminalActionPin(ITerminalView target) >+ { >+ super(target, >+ TerminalActionPin.class.getName(),IAction.AS_RADIO_BUTTON); >+ >+ setupAction(ActionMessages.PIN, >+ ActionMessages.PIN, >+ ImageConsts.IMAGE_CLCL_PIN, >+ ImageConsts.IMAGE_ELCL_PIN, >+ ImageConsts.IMAGE_DLCL_PIN, >+ true); >+ } >+ public void run() { >+ fTarget.setPinned(!isChecked()); >+ setChecked(!isChecked()); >+ } >+} >Index: src/org/eclipse/tm/internal/terminal/actions/ShowConsoleAction.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/actions/ShowConsoleAction.java >diff -N src/org/eclipse/tm/internal/terminal/actions/ShowConsoleAction.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/actions/ShowConsoleAction.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,44 @@ >+/******************************************************************************* >+ * Copyright (c) 2000, 2008 IBM Corporation and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.actions; >+ >+import org.eclipse.jface.action.Action; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnection; >+ >+/** >+ * Shows a specific console in the console view >+ */ >+public class ShowConsoleAction extends Action { >+ >+ private final ITerminalViewConnection fConnection; >+ private final ITerminalViewConnectionManager fView; >+ >+ /** >+ * Constructs an action to display the given console. >+ * >+ * @param view the console view in which the given console is contained >+ * @param console the console >+ */ >+ public ShowConsoleAction(ITerminalViewConnectionManager view, ITerminalViewConnection console) { >+ super(console.getName(), AS_RADIO_BUTTON); >+ fConnection = console; >+ fView = view; >+ setImageDescriptor(console.getImageDescriptor()); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.action.IAction#run() >+ */ >+ public void run() { >+ fView.setConnection(fConnection); >+ } >+} >Index: src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnectionManager.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnectionManager.java >diff -N src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnectionManager.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnectionManager.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,65 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.view; >+ >+import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore; >+ >+ >+/** >+ * Supports multiple connections >+ * >+ */ >+public interface ITerminalViewConnectionManager { >+ interface TerminalViewConnectionListener { >+ void connectionsChanged(); >+ } >+ interface ITerminalViewConnectionFactory { >+ ITerminalViewConnection create(); >+ } >+ /** >+ * @return a list of all connections this view can display >+ */ >+ ITerminalViewConnection[] getConnections(); >+ /** >+ * If more than two connections are available, remove the current connection >+ */ >+ void removeCurrent(); >+ >+ /** >+ * @return the number of connections >+ */ >+ int size(); >+ /** >+ * @return th connection the view is showing at the moment >+ */ >+ ITerminalViewConnection getCurrentConnection(); >+ >+ /** >+ * @param conn make this connection the current connection >+ */ >+ void setConnection(ITerminalViewConnection conn); >+ >+ /** >+ * If there are more than two connections toggle between this and the >+ * previously shown connection >+ */ >+ void swapConnection(); >+ >+ void addListener(TerminalViewConnectionListener listener); >+ void removeListener(TerminalViewConnectionListener listener); >+ >+ void saveState(ISettingsStore store); >+ /** >+ * @param store >+ */ >+ void loadState(ISettingsStore store,ITerminalViewConnectionFactory factory); >+ >+} >Index: src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnection.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnection.java >diff -N src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnection.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/view/ITerminalViewConnection.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,27 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.view; >+ >+import org.eclipse.jface.resource.ImageDescriptor; >+import org.eclipse.tm.internal.terminal.control.ITerminalViewControl; >+import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore; >+ >+public interface ITerminalViewConnection { >+ >+ String getName(); >+ >+ ImageDescriptor getImageDescriptor(); >+ ITerminalViewControl getCtlTerminal(); >+ >+ void saveState(ISettingsStore store); >+ >+ void loadState(ISettingsStore store); >+} >Index: src/org/eclipse/tm/internal/terminal/view/TerminalViewConnectionManager.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/view/TerminalViewConnectionManager.java >diff -N src/org/eclipse/tm/internal/terminal/view/TerminalViewConnectionManager.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/view/TerminalViewConnectionManager.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,115 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.view; >+ >+import java.util.ArrayList; >+import java.util.Iterator; >+import java.util.List; >+ >+import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore; >+ >+public class TerminalViewConnectionManager implements ITerminalViewConnectionManager { >+ private final List fConnections=new ArrayList(); >+ private ITerminalViewConnection fCurrentConnection; >+ private final List fListeners=new ArrayList(); >+ >+ public ITerminalViewConnection[] getConnections() { >+ return (ITerminalViewConnection[]) fConnections.toArray(new ITerminalViewConnection[fConnections.size()]); >+ } >+ >+ public int size() { // TODO Auto-generated method stub >+ return fConnections.size(); >+ } >+ >+ public ITerminalViewConnection getCurrentConnection() { >+ return fCurrentConnection; >+ } >+ public void setConnection(ITerminalViewConnection conn) { >+ fCurrentConnection=conn; >+ fireListeners(); >+ } >+ >+ public void swapConnection() { >+ // TODO Auto-generated method stub >+ >+ } >+ >+ public void addConnection(ITerminalViewConnection conn) { >+ fConnections.add(conn); >+ fireListeners(); >+ } >+ public void removeConnection(ITerminalViewConnection conn) { >+ fConnections.remove(conn); >+ fireListeners(); >+ } >+ >+ public void addListener(TerminalViewConnectionListener listener) { >+ fListeners.add(listener); >+ } >+ >+ public void removeListener(TerminalViewConnectionListener listener) { >+ fListeners.remove(listener); >+ } >+ protected void fireListeners() { >+ TerminalViewConnectionListener[] listeners=(TerminalViewConnectionListener[]) fListeners.toArray(new TerminalViewConnectionListener[fListeners.size()]); >+ for (int i = 0; i < listeners.length; i++) { >+ listeners[i].connectionsChanged(); >+ } >+ } >+ >+ public void saveState(ISettingsStore store) { >+ int n=0; >+ store.put("size",""+fConnections.size()); //$NON-NLS-1$ //$NON-NLS-2$ >+ for (Iterator iterator = fConnections.iterator(); iterator.hasNext();) { >+ String prefix="c"+n; //$NON-NLS-1$ >+ n++; >+ ITerminalViewConnection connection = (ITerminalViewConnection) iterator.next(); >+ if(connection.equals(fCurrentConnection)) >+ store.put("current",prefix); //$NON-NLS-1$ >+ connection.saveState(new SettingStorePrefixDecorator(store,prefix)); >+ } >+ } >+ >+ public void loadState(ISettingsStore store,ITerminalViewConnectionFactory factory) { >+ int size=0; >+ try { >+ size=Integer.parseInt(store.get("size")); //$NON-NLS-1$ >+ } catch(Exception e) { >+ // ignore >+ } >+ if(size>0) { >+ String current=store.get("current"); //$NON-NLS-1$ >+ int n=0; >+ for (int i=0;i<size;i++) { >+ String prefix="c"+n; //$NON-NLS-1$ >+ n++; >+ ITerminalViewConnection connection = factory.create(); >+ fConnections.add(connection); >+ if(prefix.equals(current)) >+ fCurrentConnection=connection; >+ connection.loadState(new SettingStorePrefixDecorator(store,prefix)); >+ } >+ fireListeners(); >+ } >+ } >+ >+ public void removeCurrent() { >+ if(fConnections.size()>1) { >+ int i=fConnections.indexOf(fCurrentConnection); >+ fConnections.remove(fCurrentConnection); >+ if(i>=fConnections.size()) >+ i--; >+ fCurrentConnection=(ITerminalViewConnection) fConnections.get(i); >+ fireListeners(); >+ >+ } >+ } >+} >Index: src/org/eclipse/tm/internal/terminal/view/TerminalViewConnection.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/view/TerminalViewConnection.java >diff -N src/org/eclipse/tm/internal/terminal/view/TerminalViewConnection.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/view/TerminalViewConnection.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,68 @@ >+/******************************************************************************* >+ * Copyright (c) 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - initial API and implementation >+ *******************************************************************************/ >+/** >+ * >+ */ >+package org.eclipse.tm.internal.terminal.view; >+ >+import org.eclipse.jface.resource.ImageDescriptor; >+import org.eclipse.tm.internal.terminal.control.ITerminalViewControl; >+import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore; >+import org.eclipse.tm.internal.terminal.provisional.api.ITerminalConnector; >+ >+class TerminalViewConnection implements ITerminalViewConnection { >+ private static final String STORE_CONNECTION_TYPE = "ConnectionType"; //$NON-NLS-1$ >+ final private ITerminalViewControl fCtlTerminal; >+ public TerminalViewConnection(ITerminalViewControl ctl) { >+ super(); >+ fCtlTerminal = ctl; >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.tm.internal.terminal.actions.ITerminalViewConnection#getName() >+ */ >+ public String getName() { >+ return fCtlTerminal.getSettingsSummary(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.tm.internal.terminal.actions.ITerminalViewConnection#getImageDescriptor() >+ */ >+ public ImageDescriptor getImageDescriptor() { >+ return TerminalViewPlugin.getDefault().getImageRegistry().getDescriptor(ImageConsts.IMAGE_TERMINAL_VIEW); >+ } >+ >+ public ITerminalViewControl getCtlTerminal() { >+ return fCtlTerminal; >+ } >+ private ISettingsStore getStore(ISettingsStore store,ITerminalConnector connector) { >+ return new SettingStorePrefixDecorator(store,connector.getId()+"."); //$NON-NLS-1$ >+ } >+ public void loadState(ISettingsStore store) { >+ ITerminalConnector[] connectors=fCtlTerminal.getConnectors(); >+ String connectionType=store.get(STORE_CONNECTION_TYPE); >+ for (int i = 0; i < connectors.length; i++) { >+ connectors[i].load(getStore(store,connectors[i])); >+ if(connectors[i].getId().equals(connectionType)) >+ fCtlTerminal.setConnector(connectors[i]); >+ } >+ } >+ >+ public void saveState(ISettingsStore store) { >+ ITerminalConnector[] connectors=fCtlTerminal.getConnectors(); >+ for (int i = 0; i < connectors.length; i++) { >+ connectors[i].save(getStore(store,connectors[i])); >+ } >+ if(fCtlTerminal.getTerminalConnector()!=null) { >+ store.put(STORE_CONNECTION_TYPE,fCtlTerminal.getTerminalConnector().getId()); >+ } >+ } >+} >Index: src/org/eclipse/tm/internal/terminal/actions/TerminalActionRemove.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/actions/TerminalActionRemove.java >diff -N src/org/eclipse/tm/internal/terminal/actions/TerminalActionRemove.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/actions/TerminalActionRemove.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,45 @@ >+/******************************************************************************* >+ * Copyright (c) 2004, 2007 Wind River Systems, Inc. and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Initial Contributors: >+ * The following Wind River employees contributed to the Terminal component >+ * that contains this file: Chris Thew, Fran Litterio, Stephen Lamb, >+ * Helmut Haigermoser and Ted Williams. >+ * >+ * Contributors: >+ * Michael Scharf (Wind River) - split into core, view and connector plugins >+ * Martin Oberhuber (Wind River) - fixed copyright headers and beautified >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.actions; >+ >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager; >+import org.eclipse.tm.internal.terminal.view.ImageConsts; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager.TerminalViewConnectionListener; >+ >+public class TerminalActionRemove extends TerminalAction implements TerminalViewConnectionListener >+{ >+ private final ITerminalViewConnectionManager fConnectionManager; >+ public TerminalActionRemove(ITerminalViewConnectionManager target) >+ { >+ super(null, >+ TerminalActionRemove.class.getName()); >+ fConnectionManager=target; >+ setupAction(ActionMessages.REMOVE, >+ ActionMessages.REMOVE, >+ null, >+ ImageConsts.IMAGE_ELCL_REMOVE, >+ ImageConsts.IMAGE_DLCL_REMOVE, >+ true); >+ } >+ public void run() { >+ fConnectionManager.removeCurrent(); >+ fConnectionManager.addListener(this); >+ } >+ public void connectionsChanged() { >+ setEnabled(fConnectionManager.size()>1); >+ } >+} >Index: src/org/eclipse/tm/internal/terminal/actions/TerminalActionSelectionDropDown.java >=================================================================== >RCS file: src/org/eclipse/tm/internal/terminal/actions/TerminalActionSelectionDropDown.java >diff -N src/org/eclipse/tm/internal/terminal/actions/TerminalActionSelectionDropDown.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ src/org/eclipse/tm/internal/terminal/actions/TerminalActionSelectionDropDown.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,105 @@ >+/******************************************************************************* >+ * Copyright (c) 2000, 2007 IBM Corporation and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.tm.internal.terminal.actions; >+ >+ >+import org.eclipse.jface.action.Action; >+import org.eclipse.jface.action.ActionContributionItem; >+import org.eclipse.jface.action.IMenuCreator; >+import org.eclipse.swt.widgets.Control; >+import org.eclipse.swt.widgets.Menu; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnection; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager; >+import org.eclipse.tm.internal.terminal.view.ImageConsts; >+import org.eclipse.tm.internal.terminal.view.TerminalViewPlugin; >+import org.eclipse.tm.internal.terminal.view.ITerminalViewConnectionManager.TerminalViewConnectionListener; >+ >+/** >+ * Drop down action in the console to select the console to display. >+ */ >+public class TerminalActionSelectionDropDown extends Action implements IMenuCreator, TerminalViewConnectionListener { >+ private ITerminalViewConnectionManager fConnections; >+ private Menu fMenu; >+ public TerminalActionSelectionDropDown(ITerminalViewConnectionManager view) { >+ fConnections= view; >+ setText(ActionMessages.ConsoleDropDownAction_0); >+ setToolTipText(ActionMessages.ConsoleDropDownAction_1); >+ setImageDescriptor(TerminalViewPlugin.getDefault().getImageRegistry().getDescriptor(ImageConsts.IMAGE_TERMINAL_VIEW)); >+// PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IConsoleHelpContextIds.CONSOLE_DISPLAY_CONSOLE_ACTION); >+ setMenuCreator(this); >+ fConnections.addListener(this); >+ connectionsChanged(); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.action.IMenuCreator#dispose() >+ */ >+ public void dispose() { >+ if (fMenu != null) { >+ fMenu.dispose(); >+ } >+ fConnections.removeListener(this); >+ fConnections= null; >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu) >+ */ >+ public Menu getMenu(Menu parent) { >+ return null; >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control) >+ */ >+ public Menu getMenu(Control parent) { >+ if (fMenu != null) { >+ fMenu.dispose(); >+ } >+ >+ fMenu= new Menu(parent); >+ ITerminalViewConnection[] consoles= fConnections.getConnections(); >+ ITerminalViewConnection current = fConnections.getCurrentConnection(); >+ for (int i = 0; i < consoles.length; i++) { >+ ITerminalViewConnection console = consoles[i]; >+ Action action = new ShowConsoleAction(fConnections, console); >+ action.setChecked(console.equals(current)); >+ addActionToMenu(fMenu, action, i + 1); >+ } >+ return fMenu; >+ } >+ >+ private void addActionToMenu(Menu parent, Action action, int accelerator) { >+ if (accelerator < 10) { >+ StringBuffer label= new StringBuffer(); >+ //add the numerical accelerator >+ label.append('&'); >+ label.append(accelerator); >+ label.append(' '); >+ label.append(action.getText()); >+ action.setText(label.toString()); >+ } >+ ActionContributionItem item= new ActionContributionItem(action); >+ item.fill(parent, -1); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.action.IAction#run() >+ */ >+ public void run() { >+ fConnections.swapConnection(); >+ } >+ >+ public void connectionsChanged() { >+ ITerminalViewConnection[] consoles= fConnections.getConnections(); >+ setEnabled(consoles.length >= 1); >+ } >+} >#P org.eclipse.tm.terminal >Index: src/org/eclipse/tm/internal/terminal/emulator/VT100TerminalControl.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/emulator/VT100TerminalControl.java,v >retrieving revision 1.21 >diff -u -r1.21 VT100TerminalControl.java >--- src/org/eclipse/tm/internal/terminal/emulator/VT100TerminalControl.java 9 Jun 2008 14:31:07 -0000 1.21 >+++ src/org/eclipse/tm/internal/terminal/emulator/VT100TerminalControl.java 10 Jun 2008 05:21:01 -0000 >@@ -549,6 +549,9 @@ > public Control getControl() { > return fCtlText; > } >+ public Control getRootControl() { >+ return fWndParent; >+ } > protected void setupControls(Composite parent) { > // The Terminal view now aims to be an ANSI-conforming terminal emulator, so it > // can't have a horizontal scroll bar (but a vertical one is ok). Also, do >Index: src/org/eclipse/tm/internal/terminal/control/ITerminalViewControl.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.core/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/control/ITerminalViewControl.java,v >retrieving revision 1.13 >diff -u -r1.13 ITerminalViewControl.java >--- src/org/eclipse/tm/internal/terminal/control/ITerminalViewControl.java 9 Jun 2008 23:38:52 -0000 1.13 >+++ src/org/eclipse/tm/internal/terminal/control/ITerminalViewControl.java 10 Jun 2008 05:21:01 -0000 >@@ -48,7 +48,14 @@ > void setFont(Font font); > void setInvertedColors(boolean invert); > Font getFont(); >+ /** >+ * @return the text control >+ */ > Control getControl(); >+ /** >+ * @return the root of all controls >+ */ >+ Control getRootControl(); > boolean isDisposed(); > void selectAll(); > void clearTerminal();
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 172483
:
104263
|
104271
|
104276
|
104344
|
104426
|
104558
|
104560
|
104803
|
104804
|
104859
|
105775
|
105940
|
107547