use of com.intellij.ui.content.Content in project intellij-community by JetBrains.
the class EventLogToolWindowFactory method createContent.
static void createContent(Project project, ToolWindow toolWindow, EventLogConsole console, String title) {
// update default Event Log tab title
ContentManager contentManager = toolWindow.getContentManager();
Content generalContent = contentManager.getContent(0);
if (generalContent != null && contentManager.getContentCount() == 1) {
generalContent.setDisplayName("General");
}
final Editor editor = console.getConsoleEditor();
JPanel editorPanel = new JPanel(new AbstractLayoutManager() {
private int getOffset() {
return JBUI.scale(4);
}
@Override
public Dimension preferredLayoutSize(Container parent) {
Dimension size = parent.getComponent(0).getPreferredSize();
return new Dimension(size.width + getOffset(), size.height);
}
@Override
public void layoutContainer(Container parent) {
int offset = getOffset();
parent.getComponent(0).setBounds(offset, 0, parent.getWidth() - offset, parent.getHeight());
}
}) {
@Override
public Color getBackground() {
return ((EditorEx) editor).getBackgroundColor();
}
};
editorPanel.add(editor.getComponent());
SimpleToolWindowPanel panel = new SimpleToolWindowPanel(false, true) {
@Override
public Object getData(@NonNls String dataId) {
return PlatformDataKeys.HELP_ID.is(dataId) ? EventLog.HELP_ID : super.getData(dataId);
}
};
panel.setContent(editorPanel);
panel.addAncestorListener(new LogShownTracker(project));
ActionToolbar toolbar = createToolbar(project, editor, console);
toolbar.setTargetComponent(editor.getContentComponent());
panel.setToolbar(toolbar.getComponent());
Content content = ContentFactory.SERVICE.getInstance().createContent(panel, title, false);
contentManager.addContent(content);
contentManager.setSelectedContent(content);
}
use of com.intellij.ui.content.Content in project intellij-community by JetBrains.
the class PreviewManagerImpl method addContent.
@NotNull
private Content addContent(PreviewInfo info) {
myHistory.add(info);
while (myHistory.size() > HISTORY_LIMIT) {
close(myHistory.remove(0));
}
Content content = myContentManager.getFactory().createContent(info.getComponent(), info.getTitle(), false);
myContentManager.addContent(content, 0);
checkEmptyState();
return content;
}
use of com.intellij.ui.content.Content in project intellij-community by JetBrains.
the class PreviewManagerImpl method close.
private void close(@NotNull PreviewInfo info) {
Content content = getContent(info);
if (content != null) {
myContentManager.removeContent(content, false);
info.release();
if (myContentManager.getContents().length == 0) {
toggleToolWindow(false, null);
}
checkEmptyState();
}
}
use of com.intellij.ui.content.Content in project intellij-community by JetBrains.
the class TabContentLayout method showContentPopup.
@Override
public void showContentPopup(ListPopup listPopup) {
Content selected = myUi.myManager.getSelectedContent();
if (selected != null) {
ContentTabLabel tab = myContent2Tabs.get(selected);
listPopup.showUnderneathOf(tab);
} else {
listPopup.showUnderneathOf(myIdLabel);
}
}
use of com.intellij.ui.content.Content in project intellij-community by JetBrains.
the class TabContentLayout method contentAdded.
@Override
public void contentAdded(ContentManagerEvent event) {
final Content content = event.getContent();
final ContentTabLabel tab;
if (content instanceof TabbedContent) {
tab = new TabbedContentTabLabel((TabbedContent) content, this);
} else {
tab = new ContentTabLabel(content, this);
}
myTabs.add(event.getIndex(), tab);
myContent2Tabs.put(content, tab);
if (content instanceof DnDTarget) {
DnDTarget target = (DnDTarget) content;
DnDSupport.createBuilder(tab).setDropHandler(target).setTargetChecker(target).install();
}
myCached.clear();
}
Aggregations