How to clear the content of a ToolWindow?

Following is the code I wrote. It has cleartoolwindow function but it doesn't work. 

public class MyTypedHandler implements TypedActionHandler {
private TypedActionHandler myOriginalHandler;
public List<String> shownlist = new ArrayList<String>();
public static StringBuilder result = new StringBuilder();

public MyTypedHandler(TypedActionHandler originalHandler){
myOriginalHandler = originalHandler;
}

@Override
public void execute(@NotNull Editor editor, char c, @NotNull DataContext dataContext){
myOriginalHandler.execute(editor, c, dataContext);
Document document = editor.getDocument();
Project project = editor.getProject();
this.cleartoolwindow(project);
try {
Guideline06_09 obj1 = new Guideline06_09();
String obj1results = obj1.runalgorithm(document.getText());
if(!obj1results.equals("")){
result.append(obj1.runalgorithm(document.getText())).append("<br><br>");
}

Guideline05_05 obj2 = new Guideline05_05();
String obj2results = obj2.runalgorithm(document.getText());
if(!obj2results.equals("")){
result.append(obj2.runalgorithm(document.getText())).append("<br><br>");

}
this.addtotoolwindow(result, project);
result.setLength(0);
}catch (Exception e){

}
Runnable runnable = new Runnable() {
@Override
public void run() {

}
};
WriteCommandAction.runWriteCommandAction(project, runnable);
}
public void addtotoolwindow(StringBuilder result, Project project){
ToolWindow toolWindow = ToolWindowManager.getInstance(project).getToolWindow("SCA_Tool");
Component component = toolWindow.getComponent();
component.getParent().add(new JLabel("<html>" + result.toString() + "</html>"));
}
public void cleartoolwindow(Project project){
ToolWindow toolWindow = ToolWindowManager.getInstance(project).getToolWindow("SCA_Tool");
Component component = toolWindow.getComponent();
component.getParent().add(new JLabel(" "));
}
}
0
2 comments

Clearing ToolWindow:

public void cleartoolwindow(Project project){
ToolWindow toolWindow = ToolWindowManager.getInstance(project).getToolWindow("SCA_Tool");
toolWindow.getContentManager().removeAllContents(true);
}

Creating ToolWindow content:

JPanel myToolWindowContent = new JPanel();
ContentFactory contentFactory = ContentFactory.SERVICE.getInstance();
Content content = contentFactory.createContent(myToolWindowContent, "", true);
toolWindow.getContentManager().addContent(content);
0
Avatar
Permanently deleted user

Problem solved! Issue was in a data structure that was declared as static in another file. Thanks!

0

Please sign in to leave a comment.