Friday, November 21, 2014

Wednesday, November 12, 2014

Eclipse: Adding a new console and writing messages to it

http://www.jevon.org/wiki/writing_to_a_console_in_eclipse

MessageConsole console = new MessageConsole("Node Console", null);
console.activate();
ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[]{ console });
MessageConsoleStream stream = console.newMessageStream();
stream.println("Hello, world!");


This is how it looks..


Tuesday, November 11, 2014

Remove all .svn folders recursively

For my reference...

To remove all .svn folders from your project, we can run the following command from the root of the folder.

FOR /F "tokens=*" %G IN ('DIR /B /AD /S *.svn*') DO RMDIR /S /Q "%G"

References:
http://stackoverflow.com/questions/4889619/command-to-recursively-remove-all-svn-directories-on-windows
http://blog.falafel.com/recursively-delete-svn-directories-with-the-windows-command-line/

Wednesday, October 29, 2014

Linking external project to eclipse workspace without really moving the project content

If you wanted to access the external eclipse project resources without really adding them into eclipse workspace, below piece code will help to do that.


 privagte void linkProject(String projectPath) throws CoreException {

IProjectDescription description = ResourcesPlugin.getWorkspace().loadProjectDescription( new Path(projectPath + File.separator +".project"));

IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(description.getName()); 
project.create(description, IProject.FORCE, null);
 if (!project.isOpen()) {
   project.open(null);
   }

 }

Saturday, October 18, 2014

Closing eclipse empty editor area

I have a use case, where I need to the close the eclipse empty editor area, so that editor area can be used by something else.

This can be achieved by implementing IPartListerner2 interface which is provided org.eclipse.ui.*


import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.IPartListener2;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPartReference;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.editors.text.TextEditor;

public class AbstractMyEditor extends TextEditor implements IPartListener2 {

@Override
public void init(IEditorSite site, IEditorInput input) throws PartInitException {
site.getPage().addPartListener(this);
super.init(site, input);
}
@Override
public void partActivated(IWorkbenchPartReference partRef) {
}

@Override
public void partBroughtToTop(IWorkbenchPartReference partRef) {
}

@Override
public void partClosed(IWorkbenchPartReference partRef) {
IWorkbenchPage page = partRef.getPage();
if (page.isEditorAreaVisible()) {
IEditorReference[] editores = page.getEditorReferences();
if (editores.length <= 0) {
page.setEditorAreaVisible(false);
}
}
}

@Override
public void partDeactivated(IWorkbenchPartReference partRef) {
}

@Override
public void partOpened(IWorkbenchPartReference partRef) {
}

@Override
public void partHidden(IWorkbenchPartReference partRef) {
}

@Override
public void partVisible(IWorkbenchPartReference partRef) {
}

@Override
public void partInputChanged(IWorkbenchPartReference partRef) { }
}

Tuesday, October 14, 2014

Eclipse view id's

For my reference.

Eclipse view id's for progress view and error log view.

org.eclipse.ui.views.ProgressView
org.eclipse.pde.runtime.LogView
org.eclipse.ui.console.ConsoleView

org.eclipse.ui.views.ResourceNavigator  => IPageLayout.ID_RES_NAV
org.eclipse.ui.navigator.ProjectExplorer  => IPageLayout.ID_PROJECT_EXPLORER