在本文中,我们将给您介绍关于com.intellij.ui.popup.ClosableByLeftArrow的实例源码的详细内容,并且为您解答looper.prepare源码的相关问题,此外,我们还
在本文中,我们将给您介绍关于com.intellij.ui.popup.ClosableByLeftArrow的实例源码的详细内容,并且为您解答looper.prepare 源码的相关问题,此外,我们还将为您提供关于com.intellij.openapi.ui.NullableComponent的实例源码、com.intellij.openapi.ui.popup.BalloonBuilder的实例源码、com.intellij.openapi.ui.popup.BalloonHandler的实例源码、com.intellij.openapi.ui.popup.Balloon的实例源码的知识。
本文目录一览:- com.intellij.ui.popup.ClosableByLeftArrow的实例源码(looper.prepare 源码)
- com.intellij.openapi.ui.NullableComponent的实例源码
- com.intellij.openapi.ui.popup.BalloonBuilder的实例源码
- com.intellij.openapi.ui.popup.BalloonHandler的实例源码
- com.intellij.openapi.ui.popup.Balloon的实例源码
com.intellij.ui.popup.ClosableByLeftArrow的实例源码(looper.prepare 源码)
private boolean isClosableByLeftArrow() { return getParent() != null || myStep instanceof ClosableByLeftArrow; }
private boolean isClosableByLeftArrow() { return getParent() != null || myStep instanceof ClosableByLeftArrow; }
private boolean isClosableByLeftArrow() { return getParent() != null || myStep instanceof ClosableByLeftArrow; }
com.intellij.openapi.ui.NullableComponent的实例源码
private boolean canStartDragging(MouseEvent me) { if (me.getButton() != MouseEvent.BUTTON1) return false; if (!myDragComponent.isShowing()) return false; Component component = me.getComponent(); if (NullableComponent.Check.isNullOrHidden(component)) return false; final Point dragComponentPoint = SwingUtilities.convertPoint(me.getComponent(),me.getPoint(),myDragComponent); return canStartDragging(myDragComponent,dragComponentPoint); }
@Override public boolean isNull() { final boolean superNull = super.isNull(); if (superNull) return superNull; if (myMaster == null) { return NullableComponent.Check.isNull(mySimpleContent); } else { return NullableComponent.Check.isNull(myMaster); } }
private boolean canStartDragging(MouseEvent me) { if (me.getButton() != MouseEvent.BUTTON1) return false; if (!myDragComponent.isShowing()) return false; Component component = me.getComponent(); if (NullableComponent.Check.isNullOrHidden(component)) return false; final Point dragComponentPoint = SwingUtilities.convertPoint(me.getComponent(),dragComponentPoint); }
private boolean canStartDragging(MouseEvent me) { if (me.getButton() != MouseEvent.BUTTON1) return false; if (!myDragComponent.isShowing()) return false; Component component = me.getComponent(); if (NullableComponent.Check.isNullOrHidden(component)) return false; final Point dragComponentPoint = SwingUtilities.convertPoint(me.getComponent(),dragComponentPoint); }
@Override public boolean isNull() { final boolean superNull = super.isNull(); if (superNull) return superNull; return NullableComponent.Check.isNull(mySimpleContent); }
com.intellij.openapi.ui.popup.BalloonBuilder的实例源码
public void showIncomingChatInvitation(@NotNull ChatInvitation chatInvitation,@NotNull IncomingChatInvitationNotification notification) { IncomingChatInvitationPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertIncomingChatInvitationPopup(chatInvitation); IncomingChatInvitationPopup popup = new IncomingChatInvitationPopup(popupModel); IncomingChatInvitationPopupListener incomingChatInvitationPopupListener = new IncomingChatInvitationPopupListener(this,chatInvitation); ListenerService.putListenerToComponent(popup,IIncomingChatInvitationPopup.Listener.class,incomingChatInvitationPopupListener); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,40,0)); balloonBuilder.setBorderInsets(new Insets(0,0)); balloonBuilder.setBorderColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setShadow(true); IdeFrame window = (IdeFrame) NotificationsManagerImpl.findWindowForBalloon(myProject); RelativePoint pointToShowPopup = null; if (window != null) pointToShowPopup = RelativePoint.getSouthEastOf(window.getComponent()); Balloon balloon = balloonBuilder.createBalloon(); balloon.show(pointToShowPopup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
public void showIncomingChatInvitation(@NotNull IncomingAnswer incomingTip,@NotNull IncomingTipNotification notification) { IIncomingTipPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertIncomingTipPopup(incomingTip); IncomingTipPopup popup = new IncomingTipPopup(popupModel); DataService.putData(popup,TrackingKeys.Location,new Locations.TipAnswerNotification(incomingTip.getSolution().getId())); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,0)); balloonBuilder.setBorderColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setShadow(true); IdeFrame window = (IdeFrame) NotificationsManagerImpl.findWindowForBalloon(myProject); RelativePoint pointToShowPopup = null; if (window != null) pointToShowPopup = RelativePoint.getSouthEastOf(window.getComponent()); Balloon balloon = balloonBuilder.createBalloon(); data.put(popup,incomingTip); notifications.put(popup,notification); balloons.put(popup,balloon); balloon.show(pointToShowPopup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
public void showIncomingHelpRequest(@NotNull IncomingHelpRequest helpRequest,@NotNull IncomingHelpRequestNotification notification) { IHelpRequestPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertHelpRequestPopup(helpRequest); HelpRequestPopup popup = new HelpRequestPopup(popupModel); DataService.putData(popup,new Locations.HelpRequestNotification(helpRequest.getmatch().getHelpRequest().getId())); DataService.putData(popup,TrackingKeys.WriteTipTransaction,Funnels.newTransactionId()); HelpRequestPopupListener helpRequestPopupListener = new HelpRequestPopupListener(this); ListenerService.putListenerToComponent(popup,IHelpRequestPopup.Listener.class,helpRequestPopupListener); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,helpRequest); notifications.put(popup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
public static void showBalloonForComponent(@NotNull Component component,@NotNull final String message,final MessageType type,final boolean atTop,@Nullable final disposable disposable) { final JBPopupFactory popupFactory = JBPopupFactory.getInstance(); if (popupFactory == null) return; BalloonBuilder balloonBuilder = popupFactory.createHtmlTextBalloonBuilder(message,type,null); balloonBuilder.setdisposable(disposable == null ? ApplicationManager.getApplication() : disposable); Balloon balloon = balloonBuilder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,size.width / 2); y = size.height; position = Balloon.Position.below; } balloon.show(new RelativePoint(component,new Point(x,y)),position); }
/** * Asks to show balloon that contains information related to the given component. * * @param component component for which we want to show information * @param messageType balloon message type * @param message message to show */ public static void showBalloon(@NotNull JComponent component,@NotNull MessageType messageType,@NotNull String message) { final BalloonBuilder builder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message,messageType,null) .setdisposable(ApplicationManager.getApplication()) .setFadeoutTime(BALLOON_FADEOUT_TIME); Balloon balloon = builder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,position); }
private void showBalloon(Editor editor,String replacementPreviewText) { if (ApplicationManager.getApplication().isUnitTestMode()) { myReplacementPreviewText = replacementPreviewText; return; } ReplacementView replacementView = new ReplacementView(replacementPreviewText); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(replacementView); balloonBuilder.setFadeoutTime(0); balloonBuilder.setFillColor(IdetooltipManager.GRAPHITE_COLOR); balloonBuilder.setAnimationCycle(0); balloonBuilder.setHideOnClickOutside(false); balloonBuilder.setHideOnKeyOutside(false); balloonBuilder.setHideOnAction(false); balloonBuilder.setCloseButtonEnabled(true); myReplacementBalloon = balloonBuilder.createBalloon(); myReplacementBalloon.show(new ReplacementBalloonPositionTracker(editor),Balloon.Position.below); }
public void showNoSdkNotification(@NotNull final Project project) { final String text = "<html>No Python interpreter configured for the project<br><a href=\"\">Configure interpreter</a></html>"; final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance(). createHtmlTextBalloonBuilder(text,null,MessageType.WARNING.getPopupBackground(),new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent event) { if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { ApplicationManager.getApplication() .invokelater(new Runnable() { @Override public void run() { ShowSettingsUtil.getInstance().showSettingsDialog(project,"Project Interpreter"); } }); } } }); balloonBuilder.setHideOnLinkClick(true); final Balloon balloon = balloonBuilder.createBalloon(); StudyUtils.showCheckPopUp(project,balloon); }
public static void showBalloonForComponent(@NotNull Component component,position); }
/** * Asks to show balloon that contains information related to the given component. * * @param component component for which we want to show information * @param messageType balloon message type * @param message message to show */ public static void showBalloon(@NotNull JComponent component,null) .setdisposable(ApplicationManager.getApplication()) .setFadeoutTime(TimeUnit.SECONDS.toMillis(1)); Balloon balloon = builder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,position); }
private static void showWrongJavaVersionBaloon() { // Just a copy paste from ChangesViewBaloonProblemNotifier final JFrame frame = WindowManager.getInstance().findVisibleFrame(); final JComponent component = frame.getRootPane(); if (component == null) { return; } final Rectangle rect = component.getVisibleRect(); final Point p = new Point(rect.x + 30,rect.y + rect.height - 10); final RelativePoint point = new RelativePoint(component,p); final MessageType messageType = MessageType.ERROR; final BalloonBuilder builder = JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(IdeBundle.message("use.sun.jdk.prompt"),messageType.getDefaultIcon(),messageType.getPopupBackground(),null); builder.setFadeoutTime(-1); builder.createBalloon().show(point,Balloon.Position.above); }
private void showBalloon(FindResult cursor,Editor editor,String replacementPreviewText) { if (ApplicationManager.getApplication().isUnitTestMode()) { myReplacementPreviewText = replacementPreviewText; return; } ReplacementView replacementView = new ReplacementView(replacementPreviewText,cursor); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(replacementView); balloonBuilder.setFadeoutTime(0); balloonBuilder.setFillColor(IdetooltipManager.GRAPHITE_COLOR); balloonBuilder.setAnimationCycle(0); balloonBuilder.setHideOnClickOutside(false); balloonBuilder.setHideOnKeyOutside(false); balloonBuilder.setHideOnAction(false); balloonBuilder.setCloseButtonEnabled(true); myReplacementBalloon = balloonBuilder.createBalloon(); myReplacementBalloon.show(new ReplacementBalloonPositionTracker(editor),Balloon.Position.above); }
public static void showBalloon(@NotNull final Project project,@NotNull final MessageType messageType) { final JFrame frame = WindowManager.getInstance().getFrame(project.isDefault() ? null : project); if (frame == null) return; final JComponent component = frame.getRootPane(); if (component == null) return; final Rectangle rect = component.getVisibleRect(); final Point p = new Point(rect.x + rect.width - 10,rect.y + 10); final RelativePoint point = new RelativePoint(component,p); final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance(). createHtmlTextBalloonBuilder(message,null); balloonBuilder.setShowCallout(false).setCloseButtonEnabled(true) .createBalloon().show(point,Balloon.Position.atLeft); }
/** * Asks to show balloon that contains information related to the given component. * * @param component component for which we want to show information * @param messageType balloon message type * @param message message to show */ public static void showBalloon(@Nonnull JComponent component,@Nonnull MessageType messageType,@Nonnull String message) { final BalloonBuilder builder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message,position); }
private void showBalloon(Editor editor,Balloon.Position.above); }
private void onChangeResolved(@NotNull TextMergeChange change) { if (change.isResolved()) { onChangeRemoved(change); } else { onChangeAdded(change); } if (getChangesCount() == 0 && getConflictsCount() == 0) { LOG.assertTrue(getFirstUnresolvedChange(true,null) == null); ApplicationManager.getApplication().invokelater(new Runnable() { @Override public void run() { String message = "All changes have been processed.<br><a href=\"\">Save changes and finish merging</a>"; HyperlinkListener listener = new HyperlinkAdapter() { @Override protected void hyperlinkActivated(HyperlinkEvent e) { destroyChangedBlocks(); myMergeContext.finishMerge(MergeResult.RESOLVED); } }; JComponent component = getEditor(ThreeSide.BASE).getComponent(); Point point = new Point(component.getWidth() / 2,JBUI.scale(5)); Color bgColor = MessageType.INFO.getPopupBackground(); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message,bgColor,listener) .setAnimationCycle(200); Balloon balloon = balloonBuilder.createBalloon(); balloon.show(new RelativePoint(component,point),Balloon.Position.below); disposer.register(MyThreesideViewer.this,balloon); } }); } }
public void show(RelativePoint point,Balloon.Position position) { final GotItPanel panel = new GotItPanel(); panel.myTitle.setText(myTitle); panel.myMessage.setText(myMessage); if (myHyperlinkListener != null) { panel.myMessage.addHyperlinkListener(myHyperlinkListener); } panel.myButton.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); final BalloonBuilder builder = JBPopupFactory.getInstance().createBalloonBuilder(panel.myRoot); if (mydisposable != null) { builder.setdisposable(mydisposable); } final Balloon balloon = builder .setFillColor(UIUtil.getListBackground()) .setHideOnClickOutside(false) .setHideOnAction(false) .setHideOnFrameResize(false) .setHideOnKeyOutside(false) .setShowCallout(myShowCallout) .setBlockClicksThroughBalloon(true) .createBalloon(); panel.myButton.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { balloon.hide(); if (myCallback != null) { myCallback.run(); } } }); balloon.show(point,position); }
@NotNull @Override public BalloonBuilder setClickHandler(ActionListener listener,boolean cloSEOnClick) { myClickHandler = listener; myCloSEOnClick = cloSEOnClick; return this; }
private static void showError(final JTextField field,final String message) { BalloonBuilder balloonBuilder = JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(message,MessageType.ERROR.getDefaultIcon(),MessageType.ERROR.getPopupBackground(),null); balloonBuilder.setFadeoutTime(1500); final Balloon balloon = balloonBuilder.createBalloon(); final Rectangle rect = field.getBounds(); final Point p = new Point(0,rect.height); final RelativePoint point = new RelativePoint(field,p); balloon.show(point,Balloon.Position.below); disposer.register(ProjectManager.getInstance().getDefaultProject(),balloon); }
private static void showStatus(final Component component,final String message,MessageType messageType) { BalloonBuilder balloonBuilder = JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(message,null); balloonBuilder.setFadeoutTime(5000); final Balloon balloon = balloonBuilder.createBalloon(); final Rectangle rect = component.getBounds(); final Point p = new Point(rect.x,rect.y + rect.height); final RelativePoint point = new RelativePoint(component,balloon); }
private static void showWarning(@NotNull final IpnbFileEditor fileEditor,@Nullable final HyperlinkAdapter listener) { BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder( message,listener); final Balloon balloon = balloonBuilder.createBalloon(); ApplicationManager.getApplication().invokelater(new Runnable() { @Override public void run() { balloon.showInCenterOf(fileEditor.getruncellButton()); } }); }
public static void showPopup(@Nonnull final String text,@Nonnull final MessageType type) { SwingUtils.safeSwing(new Runnable() { @Override public void run() { final JBPopupFactory factory = JBPopupFactory.getInstance(); final BalloonBuilder builder = factory.createHtmlTextBalloonBuilder(StringEscapeUtils.escapeHtml(text),null); final Balloon balloon = builder.createBalloon(); balloon.setAnimationEnabled(true); final Component frame = WindowManager.getInstance().findVisibleFrame(); if (frame != null) balloon.show(new RelativePoint(frame,new Point(frame.getWidth(),frame.getHeight())),Balloon.Position.below); } }); }
private void showErrorBallon(Editor editor,String message) { BalloonBuilder builder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder("hello",MessageType.ERROR,null); Balloon balloon = builder.createBalloon(); balloon.setTitle(message); CaretModel caretModel = editor.getCaretModel(); Point point = editor.visualPositionToXY(caretModel.getVisualPosition()); RelativePoint where = new RelativePoint(point); balloon.show(where,Balloon.Position.below); }
private void showBalloon(AnActionEvent e,String html) { final Editor editor = e.getData(CommonDataKeys.EDITOR_EVEN_IF_INACTIVE); if(editor == null) return; final JBPopupFactory factory = JBPopupFactory.getInstance(); final BalloonBuilder builder = factory.createBalloonBuilder(new JLabel(html)); Balloon balloon = builder.createBalloon(); RelativePoint position = factory.guessBestPopupLocation(editor); balloon.show(position,Balloon.Position.below); }
protected void showBalloon() { final JComponent component = getComponent(); if (component == null) return; if (ApplicationManager.getApplication().isHeadlessEnvironment()) return; final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createDialogBalloonBuilder(component,null).setSmallVariant(true); myBalloon = balloonBuilder.createBalloon(); disposer.register(myProject,myBalloon); disposer.register(myBalloon,new disposable() { @Override public void dispose() { releaseIfNotRestart(); } }); final Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(myEditor); topLevelEditor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); final JBPopupFactory popupFactory = JBPopupFactory.getInstance(); myBalloon.show(new PositionTracker<Balloon>(topLevelEditor.getContentComponent()) { @Override public RelativePoint recalculateLocation(Balloon object) { if (myTarget != null && !popupFactory.isBestPopupLocationVisible(topLevelEditor)) { return myTarget; } final RelativePoint target = popupFactory.guessBestPopupLocation(topLevelEditor); if (target == null) return myTarget; final Point screenPoint = target.getScreenPoint(); int y = screenPoint.y; if (target.getPoint().getY() > topLevelEditor.getLineHeight() + myBalloon.getPreferredSize().getHeight()) { y -= topLevelEditor.getLineHeight(); } myTarget = new RelativePoint(new Point(screenPoint.x,y)); return myTarget; } },Balloon.Position.above); }
public void show(RelativePoint point,Balloon.Position position) { final GotItPanel panel = new GotItPanel(); panel.myTitle.setText(myTitle); panel.myMessage.setText(myMessage); panel.myButton.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); final BalloonBuilder builder = JBPopupFactory.getInstance().createBalloonBuilder(panel.myRoot); if (mydisposable != null) { builder.setdisposable(mydisposable); } builder.setFillColor(UIUtil.getListBackground()); builder.setHideOnClickOutside(false); builder.setHideOnAction(false); builder.setHideOnFrameResize(false); builder.setHideOnKeyOutside(false); builder.setShowCallout(myShowCallout); builder.setBlockClicksThroughBalloon(true); final Balloon balloon = builder.createBalloon(); panel.myButton.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { balloon.hide(); if (myCallback != null) { myCallback.run(); } } }); balloon.show(point,position); }
@Nonnull @Override public BalloonBuilder setClickHandler(ActionListener listener,boolean cloSEOnClick) { myClickHandler = listener; myCloSEOnClick = cloSEOnClick; return this; }
private static void showError(final JTextField field,final String message) { BalloonBuilder balloonBuilder = JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(message,balloon); }
private static void showStatus(final Component component,balloon); }
protected void showBalloon() { final JComponent component = getComponent(); if (component == null) return; if (ApplicationManager.getApplication().isHeadlessEnvironment()) return; final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createDialogBalloonBuilder(component,null).setSmallVariant(true); myBalloon = balloonBuilder.createBalloon(); final Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(myEditor); disposer.register(myProject,new disposable() { @Override public void dispose() { releaseIfNotRestart(); topLevelEditor.putUserData(PopupFactoryImpl.ANCHOR_POPUP_POSITION,null); } }); topLevelEditor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); final JBPopupFactory popupFactory = JBPopupFactory.getInstance(); myBalloon.show(new PositionTracker<Balloon>(topLevelEditor.getContentComponent()) { @Override public RelativePoint recalculateLocation(Balloon object) { if (myTarget != null && !popupFactory.isBestPopupLocationVisible(topLevelEditor)) { return myTarget; } if (myCaretRangeMarker != null && myCaretRangeMarker.isValid()) { topLevelEditor.putUserData(PopupFactoryImpl.ANCHOR_POPUP_POSITION,topLevelEditor.offsetToVisualPosition(myCaretRangeMarker.getStartOffset())); } final RelativePoint target = popupFactory.guessBestPopupLocation(topLevelEditor); final Point screenPoint = target.getScreenPoint(); int y = screenPoint.y; if (target.getPoint().getY() > topLevelEditor.getLineHeight() + myBalloon.getPreferredSize().getHeight()) { y -= topLevelEditor.getLineHeight(); } myTarget = new RelativePoint(new Point(screenPoint.x,Balloon.Position.above); }
protected void showBalloon() { NonFocusableCheckBox checkBox = new NonFocusableCheckBox(RefactoringBundle.message("delegation.panel.delegate.via.overloading.method")); checkBox.addActionListener(e -> { myDelegate = checkBox.isSelected(); updateCurrentInfo(); }); JPanel content = new JPanel(new BorderLayout()); content.add(new JBLabel("Performed signature modifications:"),BorderLayout.norTH); content.add(myPreview.getComponent(),BorderLayout.CENTER); updateMethodSignature(myStableChange); content.add(checkBox,BorderLayout.soUTH); final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createDialogBalloonBuilder(content,null).setSmallVariant(true); myBalloon = balloonBuilder.createBalloon(); myEditor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); myBalloon.show(new PositionTracker<Balloon>(myEditor.getContentComponent()) { @Override public RelativePoint recalculateLocation(Balloon object) { int offset = myStableChange.getmethod().getTextOffset(); VisualPosition visualPosition = myEditor.offsetToVisualPosition(offset); Point point = myEditor.visualPositionToXY(new VisualPosition(visualPosition.line,visualPosition.column)); return new RelativePoint(myEditor.getContentComponent(),point); } },Balloon.Position.above); disposer.register(myBalloon,() -> { EditorFactory.getInstance().releaseEditor(myPreview); myPreview = null; }); }
/** * @param event ActionSystem event */ public void actionPerformed(AnActionEvent event) { String[] sweepPaths = {}; String sweepPathsPrefString = SweepPreferences.getPaths(); if (sweepPathsPrefString != null && ! sweepPathsPrefString.isEmpty()) { sweepPaths = StringHelper.extractTreePathStringsFromPref(sweepPathsPrefString); } if (sweepPaths == null || sweepPaths.length == 0) { JOptionPane.showMessageDialog(null,"Please configure path(s) to be swept in the plugin preferences."); } else { Integer[] amountDeleted = this.sweepFoldersContent(sweepPaths); Balloon.Position pos = Balloon.Position.below; String balloonText = "Deleted " + amountDeleted[1] + " files / " + amountDeleted[0] + " directories"; JBColor backgroundColor = new JBColor(new Color(245,245,245),new Color(60,63,65)); BalloonBuilder builder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(balloonText,backgroundColor,null); Balloon balloon = builder.createBalloon(); balloon.setAnimationEnabled(true); Component eventComponent = event.getInputEvent().getComponent(); Point componentLocation = eventComponent.getLocation(); Integer x= new Double(componentLocation.getX()).intValue() + eventComponent.getWidth() + 40; Integer y= new Double(componentLocation.getY()).intValue() + eventComponent.getHeight() + 42; RelativePoint balloonPosition = new RelativePoint(new Point(x,y)); balloon.show(balloonPosition,pos); VirtualFileManager.getInstance().asyncRefresh(null); } }
public static void showTestResultPopUp(@NotNull final String text,Color color,@NotNull final Project project) { BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(text,color,null); final Balloon balloon = balloonBuilder.createBalloon(); StudyUtils.showCheckPopUp(project,balloon); }
@NotNull @Override public BalloonBuilder setHideOnAction(boolean hideOnAction) { myHideOnAction = hideOnAction; return this; }
@NotNull @Override public BalloonBuilder setDialogMode(boolean dialogMode) { myDialogMode = dialogMode; return this; }
@NotNull @Override public BalloonBuilder setBorderColor(@NotNull final Color color) { myBorder = color; return this; }
@NotNull @Override public BalloonBuilder setBorderInsets(@Nullable Insets insets) { myBorderInsets = insets; return this; }
@NotNull @Override public BalloonBuilder setFillColor(@NotNull final Color color) { myFill = color; return this; }
@NotNull @Override public BalloonBuilder setHideOnClickOutside(final boolean hide) { myHideOnMouSEOutside = hide; return this; }
@NotNull @Override public BalloonBuilder setHideOnKeyOutside(final boolean hide) { myHideOnKeyOutside = hide; return this; }
@NotNull @Override public BalloonBuilder setShowCallout(final boolean show) { myShowCallout = show; return this; }
com.intellij.openapi.ui.popup.BalloonHandler的实例源码
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody,@Nullable Icon icon,@Nullable HyperlinkListener listener) { return myInfoAndProgresspanel.notifyByBalloon(type,htmlBody,icon,listener); }
public BalloonHandler notifyByBalloon(MessageType type,String htmlBody,@Nullable HyperlinkListener listener) { final Balloon balloon = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder( htmlBody.replace("\n","<br>"),icon != null ? icon : type.getDefaultIcon(),type.getPopupBackground(),listener).createBalloon(); SwingUtilities.invokelater(new Runnable() { @Override public void run() { Component comp = InfoAndProgresspanel.this; if (comp.isShowing()) { int offset = comp.getHeight() / 2; Point point = new Point(comp.getWidth() - offset,comp.getHeight() - offset); balloon.show(new RelativePoint(comp,point),Balloon.Position.above); } else { final JRootPane rootPane = SwingUtilities.getRootPane(comp); if (rootPane != null && rootPane.isShowing()) { final Container contentPane = rootPane.getContentPane(); final Rectangle bounds = contentPane.getBounds(); final Point target = UIUtil.getCenterPoint(bounds,JBUI.size(1,1)); target.y = bounds.height - 3; balloon.show(new RelativePoint(contentPane,target),Balloon.Position.above); } } } }); return new BalloonHandler() { @Override public void hide() { SwingUtilities.invokelater(new Runnable() { @Override public void run() { balloon.hide(); } }); } }; }
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody) { return new BalloonHandler() { public void hide() { } }; }
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@Nullable HyperlinkListener listener) { return new BalloonHandler() { public void hide() { } }; }
public BalloonHandler notifyByBalloon(MessageType type,new Dimension(1,Balloon.Position.above); } } } }); return new BalloonHandler() { @Override public void hide() { SwingUtilities.invokelater(new Runnable() { @Override public void run() { balloon.hide(); } }); } }; }
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody) { return new BalloonHandler() { public void hide() { } }; }
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@Nullable HyperlinkListener listener) { return new BalloonHandler() { public void hide() { } }; }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nonnull String htmlBody) { return new BalloonHandler() { public void hide() { } }; }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nonnull String htmlBody,@javax.annotation.Nullable Icon icon,@javax.annotation.Nullable HyperlinkListener listener) { return new BalloonHandler() { public void hide() { } }; }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,listener); }
@Override public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody) { return notifyProgressByBalloon(type,null,null); }
public BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,listener); }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nonnull String htmlBody) { return null; }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nullable HyperlinkListener listener) { return null; }
@Override public BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nonnull String htmlBody) { return notifyProgressByBalloon(type,null); }
BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody);
BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@Nullable HyperlinkListener listener);
BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@NotNull String htmlBody);
BalloonHandler notifyProgressByBalloon(@NotNull MessageType type,@Nullable HyperlinkListener listener);
BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nonnull String htmlBody);
BalloonHandler notifyProgressByBalloon(@Nonnull MessageType type,@Nullable HyperlinkListener listener);
com.intellij.openapi.ui.popup.Balloon的实例源码
private void handleBadRequest(final HybrisHttpResult httpResult,final Project project) { if (httpResult.getStatusCode() != SC_OK) { final StatusBar statusBar = WindowManager.getInstance().getStatusBar(project); if (httpResult.getStatusCode() == SC_NOT_FOUND || httpResult.getStatusCode() == SC_MOVED_TEMPORARILY) { JBPopupFactory.getInstance().createHtmlTextBalloonBuilder( "Hybris Host URL '" + httpResult.getErrorMessage() + "' was incorrect. Please,check your settings.",MessageType.ERROR,null ).setFadeoutTime(FADEOUT_TIME) .createBalloon().show( RelativePoint.getCenterOf(statusBar.getComponent()),Balloon.Position.atRight ); } } }
@Override public void projectOpened() { ApplicationManager.getApplication().invokelater((DumbAwareRunnable)() -> ApplicationManager.getApplication().runWriteAction( (DumbAwareRunnable)() -> { if (PropertiesComponent.getInstance().getBoolean(ourShowPopup,true)) { final String content = "<html>If you'd like to learn more about PyCharm Edu," + "click <a href=\"https://www.jetbrains.com/pycharm-edu/quickstart/\">here</a> to watch a tutorial</html>"; final Notification notification = new Notification("Watch Tutorials!","",content,NotificationType.informatION,new NotificationListener.UrlopeningListener(true)); StartupManager.getInstance(myProject).registerPostStartupActivity(() -> Notifications.Bus.notify(notification)); Balloon balloon = notification.getBalloon(); if (balloon != null) { balloon.addListener(new JBPopupAdapter() { @Override public void onClosed(LightweightwindowEvent event) { notification.expire(); } }); } notification.whenExpired(() -> PropertiesComponent.getInstance().setValue(ourShowPopup,false,true)); } })); }
@Override public void generateProject(@NotNull Project project,@NotNull VirtualFile baseDir,@NotNull GravProjectSettings settings,@NotNull Module module) { StatusBar statusBar = WindowManager.getInstance().getStatusBar(project); VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(new File(settings.gravinstallationPath)); if (vf == null || !GravSdkType.isValidGravSDK(vf)) { JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder("Project Couldn't be created because Grav Installation isn't valid",null) .setFadeoutTime(3500) .createBalloon() .show(RelativePoint.getSouthEastOf(statusBar.getComponent()),Balloon.Position.above); } else { storage.setDefaultGravDownloadpath(settings.gravinstallationPath); PropertiesComponent.getInstance().setValue(LAST_USED_GRAV_HOME,new File(settings.gravinstallationPath).getAbsolutePath()); GravProjectGeneratorUtil projectGenerator = new GravProjectGeneratorUtil(); projectGenerator.generateProject(project,baseDir,settings,module); try { List<String> includePath = new ArrayList<>(); includePath.add(baseDir.getPath()); PHPIncludePathManager.getInstance(project).setIncludePath(includePath); } catch (Exception e) { e.printstacktrace(); } } }
@Override public void moduleCreated(@NotNull Module module) { StatusBar statusBar = WindowManager.getInstance().getStatusBar(project); String msg = String.format("Please wait while module for project %s is created",project.getName()); settings = GravProjectSettings.getInstance(project); JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(msg,MessageType.WARNING,null) .setFadeoutTime(4000) .createBalloon() .show(RelativePoint.getSouthEastOf(statusBar.getComponent()),Balloon.Position.above); VirtualFile[] roots1 = ModuleRootManager.getInstance(module).getContentRoots(); if (roots1.length != 0) { final VirtualFile src = roots1[0]; settings.withSrcDirectory = withSrcDirectory; settings.gravinstallationPath = getGravinstallPath().getPath(); // settings.withSrcDirectory = GravProjectGeneratorUtil generatorUtil = new GravProjectGeneratorUtil(); generatorUtil.generateProject(project,src,module); } }
private static void showMessage(final Project project,final MessageType messageType,final String format,final Object[] args) { StatusBar statusBar = windowManager.getStatusBar(project); if(statusBar == null || statusBar.getComponent() == null){ return; } String message = String.format(format,args); jbPopupFactory.createHtmlTextBalloonBuilder(message,messageType,null) .setFadeoutTime(7500) .createBalloon() .show(RelativePoint.getnorthEastOf(statusBar.getComponent()),Balloon.Position.atRight); if(messageType == MessageType.INFO){ log.info(message); } else if(messageType == MessageType.WARNING) { log.warn(message); } else{ log.debug(message); } }
private void displayUploadResultBalloonMessage(String fileName,Boolean isSuccess) { String message = fileName + " Uploaded Successfully"; MessageType messageType = MessageType.INFO; if (!isSuccess) { message = fileName + " Failed to Upload"; messageType = MessageType.ERROR; } JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder("<h3>" + message + "</h3>",null) .setFadeoutTime(3000) .createBalloon() .show(RelativePoint.getnorthEastOf(WindowManager.getInstance().getIdeFrame(project).getComponent()),Balloon.Position.above); }
private void installGtmWidget() { StatusBar statusBar = WindowManager.getInstance().getStatusBar(myProject); if (statusBar != null) { statusBar.addWidget(myStatusWidget,myProject); myStatusWidget.installed(); if (!GTMRecord.initGtmExePath()) { JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(GTMConfig.getInstance().gtmNotFound,ERROR,null) .setFadeoutTime(30000) .createBalloon() .show(RelativePoint.getSouthEastOf(statusBar.getComponent()),Balloon.Position.atRight); return; } if (!GTMRecord.checkVersion()) { JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(GTMConfig.getInstance().gtmVerOutdated,WARNING,Balloon.Position.atRight); } } }
public void showIncomingChatInvitation(@NotNull ChatInvitation chatInvitation,@NotNull IncomingChatInvitationNotification notification) { IncomingChatInvitationPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertIncomingChatInvitationPopup(chatInvitation); IncomingChatInvitationPopup popup = new IncomingChatInvitationPopup(popupModel); IncomingChatInvitationPopupListener incomingChatInvitationPopupListener = new IncomingChatInvitationPopupListener(this,chatInvitation); ListenerService.putListenerToComponent(popup,IIncomingChatInvitationPopup.Listener.class,incomingChatInvitationPopupListener); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,40,0)); balloonBuilder.setBorderInsets(new Insets(0,0)); balloonBuilder.setBorderColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setShadow(true); IdeFrame window = (IdeFrame) NotificationsManagerImpl.findWindowForBalloon(myProject); RelativePoint pointToShowPopup = null; if (window != null) pointToShowPopup = RelativePoint.getSouthEastOf(window.getComponent()); Balloon balloon = balloonBuilder.createBalloon(); balloon.show(pointToShowPopup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
public void showIncomingChatInvitation(@NotNull IncomingAnswer incomingTip,@NotNull IncomingTipNotification notification) { IIncomingTipPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertIncomingTipPopup(incomingTip); IncomingTipPopup popup = new IncomingTipPopup(popupModel); DataService.putData(popup,TrackingKeys.Location,new Locations.TipAnswerNotification(incomingTip.getSolution().getId())); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,0)); balloonBuilder.setBorderColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setShadow(true); IdeFrame window = (IdeFrame) NotificationsManagerImpl.findWindowForBalloon(myProject); RelativePoint pointToShowPopup = null; if (window != null) pointToShowPopup = RelativePoint.getSouthEastOf(window.getComponent()); Balloon balloon = balloonBuilder.createBalloon(); data.put(popup,incomingTip); notifications.put(popup,notification); balloons.put(popup,balloon); balloon.show(pointToShowPopup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
public void showIncomingHelpRequest(@NotNull IncomingHelpRequest helpRequest,@NotNull IncomingHelpRequestNotification notification) { IHelpRequestPopup.Model popupModel = IdeaSamebugPlugin.getInstance().conversionService.convertHelpRequestPopup(helpRequest); HelpRequestPopup popup = new HelpRequestPopup(popupModel); DataService.putData(popup,new Locations.HelpRequestNotification(helpRequest.getmatch().getHelpRequest().getId())); DataService.putData(popup,TrackingKeys.WriteTipTransaction,Funnels.newTransactionId()); HelpRequestPopupListener helpRequestPopupListener = new HelpRequestPopupListener(this); ListenerService.putListenerToComponent(popup,IHelpRequestPopup.Listener.class,helpRequestPopupListener); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(popup); balloonBuilder.setFillColor(ColorService.forCurrentTheme(ColorService.Background)); balloonBuilder.setContentInsets(new Insets(40,helpRequest); notifications.put(popup,Balloon.Position.atLeft); TrackingService.trace(SwingRawEvent.notificationShow(popup)); }
@Override protected void hyperlinkActivated(HyperlinkEvent e) { final Module moduleByName = ModuleManager.getInstance(myProject).findModuleByName(e.getDescription()); if (moduleByName != null) { myConfiguration.getConfigurationModule().setModule(moduleByName); try { Executor executor = myIsDebug ? DefaultDebugExecutor.getDebugExecutorInstance() : DefaultRunExecutor.getRunExecutorInstance(); ExecutionEnvironmentBuilder.create(myProject,executor,myConfiguration).contentToReuse(null).buildAndExecute(); Balloon balloon = myToolWindowManager.getToolWindowBalloon(myTestRunDebugId); if (balloon != null) { balloon.hide(); } } catch (ExecutionException e1) { LOG.error(e1); } } }
private void reportException(final String htmlContent) { Runnable balloonShower = new Runnable() { @Override public void run() { Balloon balloon = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(htmlContent,null). setShowCallout(false).setHideOnClickOutside(true).setHideOnAction(true).setHideOnFrameResize(true).setHideOnKeyOutside(true). createBalloon(); final Rectangle rect = myPanel.getPanel().getBounds(); final Point p = new Point(rect.x + rect.width - 100,rect.y + 50); final RelativePoint point = new RelativePoint(myPanel.getPanel(),p); balloon.show(point,Balloon.Position.below); disposer.register(myProject != null ? myProject : ApplicationManager.getApplication(),balloon); } }; ApplicationManager.getApplication().invokelater(balloonShower,new Condition() { @Override public boolean value(Object o) { return !(myProject == null || myProject.isDefault()) && ((!myProject.isopen()) || myProject.isdisposed()); } } ); }
public static void showBalloonForComponent(@NotNull Component component,@NotNull final String message,final MessageType type,final boolean atTop,@Nullable final disposable disposable) { final JBPopupFactory popupFactory = JBPopupFactory.getInstance(); if (popupFactory == null) return; BalloonBuilder balloonBuilder = popupFactory.createHtmlTextBalloonBuilder(message,type,null); balloonBuilder.setdisposable(disposable == null ? ApplicationManager.getApplication() : disposable); Balloon balloon = balloonBuilder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,size.width / 2); y = size.height; position = Balloon.Position.below; } balloon.show(new RelativePoint(component,new Point(x,y)),position); }
/** * Asks to show balloon that contains information related to the given component. * * @param component component for which we want to show information * @param messageType balloon message type * @param message message to show */ public static void showBalloon(@NotNull JComponent component,@NotNull MessageType messageType,@NotNull String message) { final BalloonBuilder builder = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message,null) .setdisposable(ApplicationManager.getApplication()) .setFadeoutTime(BALLOON_FADEOUT_TIME); Balloon balloon = builder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,position); }
@Override public void addNotify() { super.addNotify(); final String key = "toolwindow.stripes.buttons.info.shown"; if (UISettings.getInstance().HIDE_TOOL_STRIPES && !PropertiesComponent.getInstance().isTrueValue(key)) { PropertiesComponent.getInstance().setValue(key,String.valueOf(true)); final Alarm alarm = new Alarm(); alarm.addRequest(new Runnable() { @Override public void run() { GotItMessage.createMessage(UIBundle.message("tool.window.quick.access.title"),UIBundle.message( "tool.window.quick.access.message")) .setdisposable(ToolWindowsWidget.this) .show(new RelativePoint(ToolWindowsWidget.this,new Point(10,0)),Balloon.Position.above); disposer.dispose(alarm); } },20000); } }
private void fixActualPoint(Point actualPoint) { if (!isAwtTooltip()) return; if (!myIsRealPopup) return; Dimension size = myComponent.getPreferredSize(); Balloon.Position position = myHintHint.getPreferredPosition(); int shift = BalloonImpl.getPointerLength(position,false); switch (position) { case below: actualPoint.y += shift; break; case above: actualPoint.y -= (shift + size.height); break; case atLeft: actualPoint.x -= (shift + size.width); break; case atRight: actualPoint.y += shift; break; } }
private static boolean fitslayeredPane(JlayeredPane pane,JComponent component,RelativePoint desiredLocation,HintHint hintHint) { if (hintHint.isAwtTooltip()) { Dimension size = component.getPreferredSize(); Dimension panesize = pane.getSize(); Point target = desiredLocation.getPointOn(pane).getPoint(); Balloon.Position pos = hintHint.getPreferredPosition(); int pointer = BalloonImpl.getPointerLength(pos,false) + BalloonImpl.getnormalInset(); if (pos == Balloon.Position.above || pos == Balloon.Position.below) { boolean heightFit = target.y - size.height - pointer > 0 || target.y + size.height + pointer < panesize.height; return heightFit && size.width + pointer < panesize.width; } else { boolean widthFit = target.x - size.width - pointer > 0 || target.x + size.width + pointer < panesize.width; return widthFit && size.height + pointer < panesize.height; } } else { final Rectangle lpRect = new Rectangle(pane.getLocationOnScreen().x,pane.getLocationOnScreen().y,pane.getWidth(),pane.getHeight()); Rectangle componentRect = new Rectangle(desiredLocation.getScreenPoint().x,desiredLocation.getScreenPoint().y,component.getPreferredSize().width,component.getPreferredSize().height); return lpRect.contains(componentRect); } }
private void updateBalloonText() { final Point point = myVertical ? new Point(0,myPointerValue) : new Point(myPointerValue,0); myLabel.setText(myTitle + ": " + Unit.formatValue(myValue,myUnit)); if (myTooltipHint == null) { myTooltipHint = new LightweightHint(myLabel); myTooltipHint.setCancelOnClickOutside(false); myTooltipHint.setCancelOnOtherWindowOpen(false); final HintHint hint = new HintHint(this,point) .setPreferredPosition(myVertical ? Balloon.Position.atLeft : Balloon.Position.above) .setBorderColor(Color.BLACK) .setAwtTooltip(true) .setFont(UIUtil.getLabelFont().deriveFont(Font.BOLD)) .setTextBg(HintUtil.informatION_COLOR) .setShowImmediately(true); final Component owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner(); myTooltipHint.show(this,point.x,point.y,owner instanceof JComponent ? (JComponent)owner : null,hint); } else { myTooltipHint.setLocation(new RelativePoint(this,point)); } }
@Override public void show(PositionTracker<Balloon> tracker,Balloon.Position position) { AbstractPosition pos = BELOW; switch (position) { case atLeft: pos = AT_LEFT; break; case atRight: pos = AT_RIGHT; break; case below: pos = BELOW; break; case above: pos = ABOVE; break; } show(tracker,pos); }
private MyComponent(JComponent content,BalloonImpl balloon,EmptyBorder shapeBorder) { setopaque(false); setLayout(null); myBalloon = balloon; setFocusCycleRoot(true); putClientProperty(Balloon.KEY,BalloonImpl.this); myContent = new JPanel(new BorderLayout(2,2)); Wrapper contentWrapper = new Wrapper(content); if (myTitle != null) { myTitleLabel = new JLabel(myTitle,SwingConstants.CENTER); myTitleLabel.setForeground(UIManager.getColor("List.background")); myTitleLabel.setBorder(new EmptyBorder(0,4,4)); myContent.add(myTitleLabel,BorderLayout.norTH); contentWrapper.setBorder(new EmptyBorder(1,1,1)); } myContent.add(contentWrapper,BorderLayout.CENTER); myContent.setBorder(shapeBorder); myContent.setopaque(false); add(myContent); }
private List<ArrayList<Balloon>> createColumns(Rectangle layoutRec) { List<ArrayList<Balloon>> columns = new ArrayList<ArrayList<Balloon>>(); ArrayList<Balloon> eachColumn = new ArrayList<Balloon>(); columns.add(eachColumn); int eachColumnHeight = 0; for (Balloon each : myBalloons) { final Dimension eachSize = each.getPreferredSize(); if (eachColumnHeight + eachSize.height > layoutRec.getHeight()) { eachColumn = new ArrayList<Balloon>(); columns.add(eachColumn); eachColumnHeight = 0; } eachColumn.add(each); eachColumnHeight += eachSize.height; } return columns; }
private void queueShow(final JComponent c,final MouseEvent me,final boolean toCenter,int shift,int posChangeX,int posChangeY) { String aText = String.valueOf(c.getToolTipText(me)); final Idetooltip tooltip = new Idetooltip(c,me.getPoint(),null,/*new Object()*/c,aText) { @Override protected boolean beforeShow() { myCurrentEvent = me; if (!c.isShowing()) return false; String text = c.getToolTipText(myCurrentEvent); if (text == null || text.trim().isEmpty()) return false; JlayeredPane layeredPane = IJSwingUtilities.findParentOfType(c,JlayeredPane.class); final JEditorPane pane = initPane(text,new HintHint(me).setAwtTooltip(true),layeredPane); final Wrapper wrapper = new Wrapper(pane); setTipComponent(wrapper); return true; } }.setToCenter(toCenter).setCalloutShift(shift).setPositionChangeShift(posChangeX,posChangeY).setLayer(Balloon.Layer.top); show(tooltip,false); }
private static void showNotification(@NotNull DiffViewerBase viewer,@NotNull Notification notification) { JComponent component = viewer.getComponent(); Window window = UIUtil.getwindow(component); if (window instanceof IdeFrame && NotificationsManagerImpl.findWindowForBalloon(viewer.getProject()) == window) { notification.notify(viewer.getProject()); return; } Balloon balloon = NotificationsManagerImpl.createBalloon(component,notification,true); disposer.register(viewer,balloon); Dimension componentSize = component.getSize(); Dimension balloonSize = balloon.getPreferredSize(); int width = Math.min(balloonSize.width,componentSize.width); int height = Math.min(balloonSize.height,componentSize.height); // top-right corner,20px to the edges RelativePoint point = new RelativePoint(component,new Point(componentSize.width - 20 - width / 2,20 + height / 2)); balloon.show(point,Balloon.Position.above); }
private void addConfiguration(RunnerAndConfigurationSettings configuration) { if (!ProjectStartupRunner.canBeRun(configuration)) { final String message = "Can not add Run Configuration '" + configuration.getName() + "' to Startup Tasks," + " since it can not be started with 'Run' action."; final Balloon balloon = JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(message,null) .setHideOnClickOutside(true) .setFadeoutTime(3000) .setCloseButtonEnabled(true) .createBalloon(); final RelativePoint rp = new RelativePoint(myDecorator.getActionsPanel(),new Point(5,5)); balloon.show(rp,Balloon.Position.atLeft); return; } myModel.addConfiguration(configuration); refreshDataUpdateSelection(configuration); }
private void showBalloon(Editor editor,String replacementPreviewText) { if (ApplicationManager.getApplication().isUnitTestMode()) { myReplacementPreviewText = replacementPreviewText; return; } ReplacementView replacementView = new ReplacementView(replacementPreviewText); BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createBalloonBuilder(replacementView); balloonBuilder.setFadeoutTime(0); balloonBuilder.setFillColor(IdetooltipManager.GRAPHITE_COLOR); balloonBuilder.setAnimationCycle(0); balloonBuilder.setHideOnClickOutside(false); balloonBuilder.setHideOnKeyOutside(false); balloonBuilder.setHideOnAction(false); balloonBuilder.setCloseButtonEnabled(true); myReplacementBalloon = balloonBuilder.createBalloon(); myReplacementBalloon.show(new ReplacementBalloonPositionTracker(editor),Balloon.Position.below); }
public void showNoSdkNotification(@NotNull final Project project) { final String text = "<html>No Python interpreter configured for the project<br><a href=\"\">Configure interpreter</a></html>"; final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance(). createHtmlTextBalloonBuilder(text,MessageType.WARNING.getPopupBackground(),new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent event) { if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { ApplicationManager.getApplication() .invokelater(new Runnable() { @Override public void run() { ShowSettingsUtil.getInstance().showSettingsDialog(project,"Project Interpreter"); } }); } } }); balloonBuilder.setHideOnLinkClick(true); final Balloon balloon = balloonBuilder.createBalloon(); StudyUtils.showCheckPopUp(project,balloon); }
/** * Shows an information balloon in a reasonable place at the top right of the window. * * @param project our project * @param message the text,HTML markup allowed * @param messageType message type,changes the icon and the background. */ // Todo: move to a better place public static void showBalloon(Project project,String message,MessageType messageType) { // ripped from com.intellij.openapi.vcs.changes.ui.ChangesViewBalloonProblemNotifier final JFrame frame = WindowManager.getInstance().getFrame(project.isDefault() ? null : project); if (frame == null) return; final JComponent component = frame.getRootPane(); if (component == null) return; final Rectangle rect = component.getVisibleRect(); final Point p = new Point(rect.x + rect.width - 10,rect.y + 10); final RelativePoint point = new RelativePoint(component,p); JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message,messageType.getDefaultIcon(),messageType.getPopupBackground(),null) .setShowCallout(false).setCloseButtonEnabled(true) .createBalloon().show(point,Balloon.Position.atLeft); }
public void showHint() { myParentEditor.putUserData(KEY,this); Pair<Point,Short> position = guessposition(); JRootPane pane = myParentEditor.getComponent().getRootPane(); JComponent layeredPane = pane != null ? pane.getlayeredPane() : myParentEditor.getComponent(); HintHint hintHint = new HintHint(layeredPane,position.first) .setAwtTooltip(true) .setContentActive(true) .setExplicitClose(true) .setShowImmediately(true) .setPreferredPosition(position.second == HintManager.ABOVE ? Balloon.Position.above : Balloon.Position.below) .setTextBg(myParentEditor.getColoRSScheme().getDefaultBackground()) .setBorderInsets(new Insets(1,1)); int hintFlags = HintManager.HIDE_BY_OTHER_HINT | HintManager.HIDE_BY_ESCAPE | HintManager.UPDATE_BY_SCROLLING; HintManagerImpl.getInstanceImpl().showEditorHint(this,myParentEditor,position.first,hintFlags,hintHint); }
private void updateBalloonText() { final Point point = myVertical ? new Point(0,point)); } }
private void showPopup(DataContext dataContext,XmlOutput xmlOutput) { MessageType messageType = MessageType.INFO; String htmlMessage = ""; if (xmlOutput != null && xmlOutput.getRowSize() > 0 && xmlOutput.getColumnsSize() > 0) { if (xmlOutput.getTableName() == null || xmlOutput.getTableName().isEmpty()) { messageType = MessageType.WARNING; htmlMessage += "Table name is missing. Please try to synchronize database connection. <br/>"; } htmlMessage += "copied: " + xmlOutput.getRowSize() + " entries (selected " + xmlOutput.getColumnsSize() + " columns)"; } else { messageType = MessageType.ERROR; if (xmlOutput == null) { htmlMessage = "Failed to copy entries. No grid available."; } else if (xmlOutput.getRowSize() <= 0) { htmlMessage = "No rows selected."; } else if (xmlOutput.getColumnsSize() <= 0) { htmlMessage = "No columns selected."; } } JBPopupFactory.getInstance() .createHtmlTextBalloonBuilder(htmlMessage,null) .setFadeoutTime(7500) .createBalloon().show(JBPopupFactory.getInstance().guessBestPopupLocation(dataContext),Balloon.Position.atRight); }
public static void showBalloonForComponent(@NotNull Component component,position); }
/** * Asks to show balloon that contains information related to the given component. * * @param component component for which we want to show information * @param messageType balloon message type * @param message message to show */ public static void showBalloon(@NotNull JComponent component,null) .setdisposable(ApplicationManager.getApplication()) .setFadeoutTime(TimeUnit.SECONDS.toMillis(1)); Balloon balloon = builder.createBalloon(); Dimension size = component.getSize(); Balloon.Position position; int x; int y; if (size == null) { x = y = 0; position = Balloon.Position.above; } else { x = Math.min(10,position); }
private void fixActualPoint(Point actualPoint) { if (!isAwtTooltip()) return; if (!myIsRealPopup) return; Dimension size = myComponent.getPreferredSize(); Balloon.Position position = myHintHint.getPreferredPosition(); int shift = BalloonImpl.getPointerLength(position,false); switch (position) { case below: actualPoint.y += shift; break; case above: actualPoint.y -= (shift + size.height); break; case atLeft: actualPoint.x -= (shift + size.width); break; case atRight: actualPoint.y += shift; break; } }
private static boolean fitslayeredPane(JlayeredPane pane,component.getPreferredSize().height); return lpRect.contains(componentRect); } }
private void updateBalloonText() { final Point point = myVertical ? new Point(0,point)); } }
public void show(PositionTracker<Balloon> tracker,pos); }
private MyComponent(JComponent content,CENTER); myTitleLabel.setForeground(UIManager.getColor("List.background")); myTitleLabel.setBorder(new EmptyBorder(0,BorderLayout.CENTER); myContent.setBorder(shapeBorder); myContent.setopaque(false); add(myContent); }
private List<ArrayList<Balloon>> createColumns(Rectangle layoutRec) { List<ArrayList<Balloon>> columns = new ArrayList<ArrayList<Balloon>>(); ArrayList<Balloon> eachColumn = new ArrayList<Balloon>(); columns.add(eachColumn); int eachColumnHeight = 0; for (Balloon each : myBalloons) { final Dimension eachSize = each.getPreferredSize(); if (eachColumnHeight + eachSize.height > layoutRec.getHeight()) { eachColumn = new ArrayList<Balloon>(); columns.add(eachColumn); eachColumnHeight = 0; } eachColumn.add(each); eachColumnHeight += eachSize.height; } return columns; }
private void queueShow(final JComponent c,int posChangeY) { final Idetooltip tooltip = new Idetooltip(c,new Object()) { @Override protected boolean beforeShow() { myCurrentEvent = me; if (!c.isShowing()) return false; String text = c.getToolTipText(myCurrentEvent); if (text == null || text.trim().isEmpty()) return false; JlayeredPane layeredPane = IJSwingUtilities.findParentOfType(c,false); }
public void show(JlayeredPane aPane,Rectangle aRectangle,DnDEvent aEvent) { if (!Registry.is("ide.dnd.textHints")) return; final String result = aEvent.getExpectedDropResult(); if (result != null && result.length() > 0) { RelativePoint point = null; for (DropTargetHighlighter each : ourHightlighters) { if (each instanceof AbstractComponentHighlighter) { Rectangle rec = ((AbstractComponentHighlighter)each).getBounds(); point = new RelativePoint(aPane,new Point(rec.x + rec.width,rec.y + rec.height / 2)); break; } } if (point == null) { point = new RelativePoint(aPane,new Point(aRectangle.x + aRectangle.width,aRectangle.y + aRectangle.height / 2)); } myCurrentBalloon = JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(result,myMessageType,null).createBalloon(); myCurrentBalloon.show(point,Balloon.Position.atRight); } }
关于com.intellij.ui.popup.ClosableByLeftArrow的实例源码和looper.prepare 源码的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于com.intellij.openapi.ui.NullableComponent的实例源码、com.intellij.openapi.ui.popup.BalloonBuilder的实例源码、com.intellij.openapi.ui.popup.BalloonHandler的实例源码、com.intellij.openapi.ui.popup.Balloon的实例源码的相关知识,请在本站寻找。
本文标签: