@Override public void matchFound(PatternMatchEvent event) { if (event.getSource() instanceof TextConsole) { try { final TextConsole console = (TextConsole) event.getSource(); final int start = event.getOffset(); final int length = event.getLength(); IHyperlink link = new BrowserSupportBasedHyperlink(console.getDocument().get(start, length)); console.addHyperlink(link, start, length); } catch (BadLocationException e) { logger.log(Level.SEVERE, "Cannot create hyperlink", e); } } }
public DevModeStackTraceHyperlink(String url, TextConsole console) { super(console); assert (url.startsWith(JAVA_SOURCE_URL_PREFIX)); url = url.substring(JAVA_SOURCE_URL_PREFIX.length()); try { url = URLDecoder.decode(url, "UTF-8"); } catch (UnsupportedEncodingException e) { // Should never happen, but if it did, then presumably encoding failed // as well, so ignore } this.url = url; }
/** * Find the TextConsole associated with the launch. This is required by the * {@link JavaStackTraceHyperlink} class (which we subclass). */ private TextConsole getLaunchConsole() { LaunchConfiguration launchConfiguration = null; T entity = log.getEntity(); if (entity instanceof BrowserTab) { BrowserTab browserTab = (BrowserTab) entity; launchConfiguration = browserTab.getLaunchConfiguration(); } else if (entity instanceof LaunchConfiguration) { launchConfiguration = (LaunchConfiguration) entity; } if (launchConfiguration != null) { IProcess[] processes = launchConfiguration.getLaunch().getProcesses(); if (processes.length > 0) { /* * Just get the console for the first process. If there are multiple * processes, they will all link back to the same ILaunch (which is what * JavaStackTraceHyperlink uses the console for anyway). */ IConsole console = DebugUITools.getConsole(processes[0]); if (console instanceof TextConsole) { return (TextConsole) console; } } } return null; }
private void openJavaSource(String url) { TextConsole console = getLaunchConsole(); if (console != null) { new DevModeStackTraceHyperlink(url, console).linkActivated(); } else { MessageDialog.openInformation(getShell(), "GWT Eclipse Plugin", "Could not find Java source context."); } }
@SuppressWarnings({ "unchecked", "rawtypes" }) public void init(IPageBookViewPage page, IConsole console) { if (console instanceof TextConsole) { TextConsole textConsole = (TextConsole) console; Object themeConsoleStreamToColor = textConsole.getAttribute(THEME_CONSOLE_STREAM_TO_COLOR_ATTRIBUTE); if (themeConsoleStreamToColor instanceof Map<?, ?>) { Map m = (Map) themeConsoleStreamToColor; Set<Map.Entry> entrySet = m.entrySet(); for (Map.Entry entry : entrySet) { if (!(entry.getKey() instanceof IOConsoleOutputStream) || !(entry.getValue() instanceof String)) { return; // Cannot handle it. } } this.extension = new ConsoleThemer(textConsole, (Map) themeConsoleStreamToColor); } if (page instanceof TextConsolePage) { TextConsolePage tcp = (TextConsolePage) page; TextViewerThemer themer = new TextViewerThemer(tcp.getViewer()); themer.apply(); } } this.page = page; }
/** * Should be called in the UI thread. Usually, there's no way to create this extension from any console, as the * ConsoleThemePageParticipant takes care of that for all consoles (provided they are properly configured). * * @see com.aptana.theme.extensions.ConsoleThemePageParticipant * @param textConsole * console with the streams. * @param themeConsoleStreamToColor * a map with the stream to the related color name (one of the CONSOLE_XXX constants in this class). */ public ConsoleThemer(TextConsole textConsole, Map themeConsoleStreamToColor) { this.fConsole = textConsole; this.fThemeConsoleStreamToColor = themeConsoleStreamToColor; this.listenForThemeChanges(); // apply theme this.applyTheme(); }
public void connect(TextConsole console) { try { /* * Now we have to go digging for the Connect IQ project. * * It seems to be rather difficult to find, and we do with the debug * info file. */ Object consoleProcessObj = console .getAttribute("org.eclipse.debug.ui.ATTR_CONSOLE_PROCESS"); if (!(consoleProcessObj instanceof RuntimeProcess)) return; RuntimeProcess rp = (RuntimeProcess) consoleProcessObj; ILaunch launch = rp.getLaunch(); if (launch == null) return; ILaunchConfiguration launchConf = launch.getLaunchConfiguration(); if (launchConf == null) return; String debugInfoFile = launchConf.getAttribute( "connectiq.debugInfo", (String) null); if (debugInfoFile == null) return; myDebugInfo = DebugInfoManager.getDebugInfo(debugInfoFile); myGlobalDebugInfo = getGlobalDebugInfo(); myConsole = console; } catch (CoreException e) { } }
public void connect(TextConsole console) { fConsole = console; }
@Override public void connect(TextConsole console) { }
public void connect(TextConsole console) { // Do nothing }
public void connect(TextConsole console) { fConsole= console; }
@Override public void connect(TextConsole console) { this.console = console; }
protected TextConsole getConsole() { return myConsole; }
@Override public void connect(TextConsole console) { pattern = Pattern.compile(patternMsg); }
public boolean setConsole(IConsole iConsole){ // from add console; String needleConsoleName=iConsole.getName(); Iterator<String> iter=unfinishedBuilds.keySet().iterator(); while (iter.hasNext()) { String consoleName=iter.next(); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_LAUNCHING)) { System.out.print("needleConsoleName="+needleConsoleName+", consoleName= "+consoleName); } if (needleConsoleName.equals(consoleName)){ if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_LAUNCHING)) System.out.print("Got match"); VDTRunnerConfiguration runConfig=unfinishedBuilds.get(consoleName); runConfig.setIConsole(iConsole); // Add console listener here to detect change name final IConsole fIconsole=iConsole; final String fConsoleName=fIconsole.getName(); final IPropertyChangeListener fListener =new IPropertyChangeListener() { public void propertyChange(PropertyChangeEvent event) { // ProcessConsole console = (ProcessConsole) event.getSource(); // TextConsole console = (TextConsole) event.getSource(); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_LAUNCHING)) { String txt = ((TextConsole) event.getSource()).getDocument().get(); System.out.println("==== Console contents at "+event.getProperty()+" ===="); System.out.println("fConsoleName="+fConsoleName+" fIconsole.getName()="+fIconsole.getName()); System.out.println(txt); System.out.println("==== End of console contents at "+event.getProperty()+" ===="); } if (!fConsoleName.equals(fIconsole.getName())){ fIconsole.removePropertyChangeListener(this); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_LAUNCHING)) { System.out.println(">>> "+fConsoleName+" -> "+fIconsole.getName()); } String ctxt = ((TextConsole) event.getSource()).getDocument().get(); // To search for good/bad completion removeConsole(fIconsole, ctxt); // changed name means "<terminated>..." } } }; fIconsole.addPropertyChangeListener(fListener); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_LAUNCHING)){ System.out.println("fiCons.getName()="+fIconsole.getName()+"addPropertyChangeListener()"); } return true; } } return false; }
/** * Overridden to get the line trackers that'll add hyperlinks to the console. */ @Override public List<IConsoleLineTracker> createLineTrackers(final TextConsole console) { return staticCreateLineTrackers(console); }
@Override public void connect(TextConsole console) { fConsole = console; }
public EclecticTraceHyperLink(TextConsole fConsole) { // TODO Auto-generated constructor stub }
public ToolsConsolePage(TextConsole console, IConsoleView view) { super(console, view); setReadOnly(); }
@Override protected TextConsoleViewer createViewer(Composite parent) { return new IOConsoleViewer(parent, (TextConsole)getConsole()); }
public IOConsoleViewer(Composite parent, TextConsole console) { super(parent, console); }
/** * Creates a new instance. * @param parentShell the parent shell * @param console the target console */ public ConsoleDialog(Shell parentShell, TextConsole console) { super(parentShell); this.console = console; }
/** * @return a list of trackers that'll identify links in the console passed. */ public abstract List<IConsoleLineTracker> createLineTrackers(final TextConsole console);