List of usage examples for com.intellij.openapi.wm ToolWindow getContentManager
ContentManager getContentManager();
From source file:FeatureEditorFactory.java
License:Apache License
/** * Creates the tool window's contents/*from w w w .j a va2 s .c o m*/ * @param project The intellij project that's being worked on. * @param toolWindow The tool window that is being created */ public void createToolWindowContent(Project project, ToolWindow toolWindow) { myToolWindow = toolWindow; ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(myPanel1, "", false); toolWindow.getContentManager().addContent(content); descriptionText.setText(""); enablesText.setText(""); enabledByText.setText(""); // Load the editor object (so we can access it later) editor = FileEditorManager.getInstance(project).getSelectedTextEditor(); this.project = project; // Configure the toolwindow }
From source file:com.abelsky.idea.geekandpoke.ui.ComicsPanelFactory.java
License:Apache License
@Override public void createToolWindowContent(Project project, @NotNull ToolWindow toolWindow) { final ComicsPanel panel = ServiceManager.getService(ComicsPanel.class); toolWindow.setTitle(MessageBundle.message("panel.title")); toolWindow.getContentManager().addContent(ContentFactory.SERVICE.getInstance() .createContent(panel.getUIComponent(), MessageBundle.message("panel.display.name"), false)); }
From source file:com.android.tools.idea.assistant.AssistToolWindowFactory.java
License:Apache License
@Override public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindow toolWindow) { if (myAssistSidePanel == null) { myAssistSidePanel = new AssistSidePanel(myActionId, project); }/* www. ja v a2 s. c o m*/ ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(myAssistSidePanel, null, false); ContentManager contentManager = toolWindow.getContentManager(); contentManager.removeAllContents(true); contentManager.addContent(content); contentManager.setSelectedContent(content); toolWindow.show(null); }
From source file:com.android.tools.idea.gradle.AndroidModelView.java
License:Apache License
public void createToolWindowContent(@NotNull ToolWindow toolWindow) { ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); JPanel toolWindowPanel = ToolWindowAlikePanel.createTreePanel(myProject.getName(), myTree); Content content = contentFactory.createContent(toolWindowPanel, "", false); toolWindow.getContentManager().addContent(content); updateContents();/*from w ww. j a va 2 s . com*/ }
From source file:com.android.tools.idea.gradle.invoker.console.view.GradleConsoleView.java
License:Apache License
public void createToolWindowContent(@NotNull ToolWindow toolWindow) { //Create runner UI layout RunnerLayoutUi.Factory factory = RunnerLayoutUi.Factory.getInstance(myProject); RunnerLayoutUi layoutUi = factory.create("", "", "session", myProject); // Adding actions DefaultActionGroup group = new DefaultActionGroup(); layoutUi.getOptions().setLeftToolbar(group, ActionPlaces.UNKNOWN); Content console = layoutUi.createContent(GradleConsoleToolWindowFactory.ID, myConsoleView.getComponent(), "", null, null); AnAction[] consoleActions = myConsoleView.createConsoleActions(); for (AnAction action : consoleActions) { if (!shouldIgnoreAction(action)) { group.add(action);// w w w.java2 s . c o m } } layoutUi.addContent(console, 0, PlaceInGrid.right, false); JComponent layoutComponent = layoutUi.getComponent(); myConsolePanel.add(layoutComponent, BorderLayout.CENTER); //noinspection ConstantConditions Content content = ContentFactory.SERVICE.getInstance().createContent(layoutComponent, null, true); toolWindow.getContentManager().addContent(content); }
From source file:com.android.tools.idea.gradle.project.build.console.view.DefaultGradleConsoleView.java
License:Apache License
@Override public void createToolWindowContent(@NotNull ToolWindow toolWindow) { //Create runner UI layout RunnerLayoutUi.Factory factory = RunnerLayoutUi.Factory.getInstance(myProject); RunnerLayoutUi layoutUi = factory.create("", "", "session", myProject); JComponent layoutComponent = layoutUi.getComponent(); // Adding actions DefaultActionGroup group = new DefaultActionGroup(); layoutUi.getOptions().setLeftToolbar(group, ActionPlaces.UNKNOWN); Content console = layoutUi.createContent(GradleConsoleToolWindowFactory.ID, myConsoleView.getComponent(), "", null, null); AnAction[] consoleActions = myConsoleView.createConsoleActions(); for (AnAction action : consoleActions) { if (!shouldIgnoreAction(action)) { group.add(action);/* w ww . ja va 2 s . c o m*/ } } layoutUi.addContent(console, 0, PlaceInGrid.right, false); myConsolePanel.add(layoutComponent, BorderLayout.CENTER); //noinspection ConstantConditions Content content = ContentFactory.SERVICE.getInstance().createContent(layoutComponent, null, true); toolWindow.getContentManager().addContent(content); }
From source file:com.android.tools.idea.gradle.variant.view.BuildVariantView.java
License:Apache License
/** * Creates the contents of the "Build Variants" tool window. * * @param toolWindow the tool window whose contents will be created. *//*from w w w. ja v a2 s .c o m*/ public void createToolWindowContent(@NotNull ToolWindow toolWindow) { ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(myToolWindowPanel, "", false); toolWindow.getContentManager().addContent(content); updateContents(); }
From source file:com.android.tools.idea.memory.MemoryMonitorToolWindowFactory.java
License:Apache License
@Override public void createToolWindowContent(Project project, ToolWindow toolWindow) { MemoryMonitorView view = new MemoryMonitorView(project); ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(view.getComponent(), "", false); toolWindow.getContentManager().addContent(content); }
From source file:com.android.tools.idea.monitor.AndroidToolWindowFactory.java
License:Apache License
@Override public void createToolWindowContent(@NotNull final Project project, @NotNull final ToolWindow toolWindow) { // In order to use the runner layout ui, the runner infrastructure needs to be initialized. // Otherwise it is not possible to for example drag one of the tabs out of the tool window. // The object that needs to be created is the content manager of the execution manager for this project. ExecutionManager.getInstance(project).getContentManager(); RunnerLayoutUi layoutUi = RunnerLayoutUi.Factory.getInstance(project).create("Android", TOOL_WINDOW_ID, "Profiling Tools", project); toolWindow.setIcon(AndroidIcons.AndroidToolWindow); toolWindow.setAvailable(true, null); toolWindow.setToHideOnEmptyContent(true); toolWindow.setTitle(TOOL_WINDOW_ID); DeviceContext deviceContext = new DeviceContext(); // TODO Remove global handlers. These handlers are global, but are set per project. // if there are two projects opened, things go very wrong. ClientData.setMethodProfilingHandler(new OpenVmTraceHandler(project)); Content logcatContent = createLogcatContent(layoutUi, project, deviceContext); final AndroidLogcatView logcatView = logcatContent.getUserData(AndroidLogcatView.ANDROID_LOGCAT_VIEW_KEY); assert logcatView != null; logcatContent.setSearchComponent(logcatView.createSearchComponent()); layoutUi.addContent(logcatContent, 0, PlaceInGrid.center, false); MonitorContentFactory.createMonitorContent(project, deviceContext, layoutUi); layoutUi.getOptions().setLeftToolbar(getToolbarActions(project, deviceContext), ActionPlaces.UNKNOWN); layoutUi.addListener(new ContentManagerAdapter() { @Override/*from w w w. j a v a 2 s . c o m*/ public void selectionChanged(ContentManagerEvent event) { Content selectedContent = event.getContent(); BaseMonitorView view = selectedContent.getUserData(BaseMonitorView.MONITOR_VIEW_KEY); if (view != null && event.getOperation() == ContentManagerEvent.ContentOperation.add) { UsageTracker.getInstance() .log(AndroidStudioEvent.newBuilder() .setCategory(AndroidStudioEvent.EventCategory.PROFILING) .setKind(AndroidStudioEvent.EventKind.MONITOR_RUNNING) .setMonitorType(view.getMonitorType())); } } }, project); final JBLoadingPanel loadingPanel = new JBLoadingPanel(new BorderLayout(), project); DevicePanel devicePanel = new DevicePanel(project, deviceContext); JPanel panel = devicePanel.getComponent(); panel.setBorder(IdeBorderFactory.createBorder(SideBorder.BOTTOM)); loadingPanel.add(panel, BorderLayout.NORTH); loadingPanel.add(layoutUi.getComponent(), BorderLayout.CENTER); final ContentManager contentManager = toolWindow.getContentManager(); Content c = contentManager.getFactory().createContent(loadingPanel, "", true); // Store references to the logcat & device panel views, so that these views can be retrieved directly from // the DDMS tool window. (e.g. to clear logcat before a launch, select a particular device, etc) c.putUserData(AndroidLogcatView.ANDROID_LOGCAT_VIEW_KEY, logcatView); c.putUserData(DEVICES_PANEL_KEY, devicePanel); contentManager.addContent(c); ApplicationManager.getApplication().invokeLater(new Runnable() { @Override public void run() { logcatView.activate(); final ToolWindow window = ToolWindowManager.getInstance(project).getToolWindow(TOOL_WINDOW_ID); if (window != null && window.isVisible()) { ConsoleView console = logcatView.getLogConsole().getConsole(); if (console != null) { checkFacetAndSdk(project, console); } } } }, project.getDisposed()); final File adb = AndroidSdkUtils.getAdb(project); if (adb == null) { return; } loadingPanel.setLoadingText("Initializing ADB"); loadingPanel.startLoading(); ListenableFuture<AndroidDebugBridge> future = AdbService.getInstance().getDebugBridge(adb); Futures.addCallback(future, new FutureCallback<AndroidDebugBridge>() { @Override public void onSuccess(@Nullable AndroidDebugBridge bridge) { Logger.getInstance(AndroidToolWindowFactory.class).info("Successfully obtained debug bridge"); loadingPanel.stopLoading(); } @Override public void onFailure(@NotNull Throwable t) { loadingPanel.stopLoading(); // If we cannot connect to ADB in a reasonable amount of time (10 seconds timeout in AdbService), then something is seriously // wrong. The only identified reason so far is that some machines have incompatible versions of adb that were already running. // e.g. Genymotion, some HTC flashing software, Ubuntu's adb package may all conflict with the version of adb in the SDK. Logger.getInstance(AndroidToolWindowFactory.class).info("Unable to obtain debug bridge", t); String msg; if (t.getMessage() != null) { msg = t.getMessage(); } else { msg = String.format("Unable to establish a connection to adb.\n\n" + "Check the Event Log for possible issues.\n" + "This can happen if you have an incompatible version of adb running already.\n" + "Try re-opening %1$s after killing any existing adb daemons.\n\n" + "If this happens repeatedly, please file a bug at http://b.android.com including the following:\n" + " 1. Output of the command: '%2$s devices'\n" + " 2. Your idea.log file (Help | Show Log in Explorer)\n", ApplicationNamesInfo.getInstance().getProductName(), adb.getAbsolutePath()); } Messages.showErrorDialog(msg, "ADB Connection Error"); } }, EdtExecutor.INSTANCE); }
From source file:com.android.tools.idea.monitor.tool.AndroidMonitorToolWindowFactory.java
License:Apache License
@Override public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindow toolWindow) { AndroidMonitorToolWindow view = new AndroidMonitorToolWindow(project); ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(view.getComponent(), "", false); toolWindow.getContentManager().addContent(content); }