< prev index next >

src/java.desktop/share/classes/javax/swing/ToolTipManager.java

Print this page




 736         while (!(component instanceof Frame)) {
 737             component = component.getParent();
 738         }
 739         return (Frame)component;
 740     }
 741 
 742   private FocusListener createFocusChangeListener(){
 743     return new FocusAdapter(){
 744       public void focusLost(FocusEvent evt){
 745         hideTipWindow();
 746         insideComponent = null;
 747         JComponent c = (JComponent)evt.getSource();
 748         c.removeFocusListener(focusChangeListener);
 749       }
 750     };
 751   }
 752 
 753   // Returns: 0 no adjust
 754   //         -1 can't fit
 755   //         >0 adjust value by amount returned

 756   private int getPopupFitWidth(Rectangle popupRectInScreen, Component invoker){
 757     if (invoker != null){
 758       Container parent;
 759       for (parent = invoker.getParent(); parent != null; parent = parent.getParent()){
 760         // fix internal frame size bug: 4139087 - 4159012
 761         if(parent instanceof JFrame || parent instanceof JDialog ||
 762            parent instanceof JWindow) { // no check for awt.Frame since we use Heavy tips
 763           return getWidthAdjust(parent.getBounds(),popupRectInScreen);
 764         } else if (parent instanceof JApplet || parent instanceof JInternalFrame) {
 765           if (popupFrameRect == null){
 766             popupFrameRect = new Rectangle();
 767           }
 768           Point p = parent.getLocationOnScreen();
 769           popupFrameRect.setBounds(p.x,p.y,
 770                                    parent.getBounds().width,
 771                                    parent.getBounds().height);
 772           return getWidthAdjust(popupFrameRect,popupRectInScreen);
 773         }
 774       }
 775     }
 776     return 0;
 777   }
 778 
 779   // Returns:  0 no adjust
 780   //          >0 adjust by value return

 781   private int getPopupFitHeight(Rectangle popupRectInScreen, Component invoker){
 782     if (invoker != null){
 783       Container parent;
 784       for (parent = invoker.getParent(); parent != null; parent = parent.getParent()){
 785         if(parent instanceof JFrame || parent instanceof JDialog ||
 786            parent instanceof JWindow) {
 787           return getHeightAdjust(parent.getBounds(),popupRectInScreen);
 788         } else if (parent instanceof JApplet || parent instanceof JInternalFrame) {
 789           if (popupFrameRect == null){
 790             popupFrameRect = new Rectangle();
 791           }
 792           Point p = parent.getLocationOnScreen();
 793           popupFrameRect.setBounds(p.x,p.y,
 794                                    parent.getBounds().width,
 795                                    parent.getBounds().height);
 796           return getHeightAdjust(popupFrameRect,popupRectInScreen);
 797         }
 798       }
 799     }
 800     return 0;




 736         while (!(component instanceof Frame)) {
 737             component = component.getParent();
 738         }
 739         return (Frame)component;
 740     }
 741 
 742   private FocusListener createFocusChangeListener(){
 743     return new FocusAdapter(){
 744       public void focusLost(FocusEvent evt){
 745         hideTipWindow();
 746         insideComponent = null;
 747         JComponent c = (JComponent)evt.getSource();
 748         c.removeFocusListener(focusChangeListener);
 749       }
 750     };
 751   }
 752 
 753   // Returns: 0 no adjust
 754   //         -1 can't fit
 755   //         >0 adjust value by amount returned
 756  @SuppressWarnings("deprecation")
 757   private int getPopupFitWidth(Rectangle popupRectInScreen, Component invoker){
 758     if (invoker != null){
 759       Container parent;
 760       for (parent = invoker.getParent(); parent != null; parent = parent.getParent()){
 761         // fix internal frame size bug: 4139087 - 4159012
 762         if(parent instanceof JFrame || parent instanceof JDialog ||
 763            parent instanceof JWindow) { // no check for awt.Frame since we use Heavy tips
 764           return getWidthAdjust(parent.getBounds(),popupRectInScreen);
 765         } else if (parent instanceof JApplet || parent instanceof JInternalFrame) {
 766           if (popupFrameRect == null){
 767             popupFrameRect = new Rectangle();
 768           }
 769           Point p = parent.getLocationOnScreen();
 770           popupFrameRect.setBounds(p.x,p.y,
 771                                    parent.getBounds().width,
 772                                    parent.getBounds().height);
 773           return getWidthAdjust(popupFrameRect,popupRectInScreen);
 774         }
 775       }
 776     }
 777     return 0;
 778   }
 779 
 780   // Returns:  0 no adjust
 781   //          >0 adjust by value return
 782   @SuppressWarnings("deprecation")
 783   private int getPopupFitHeight(Rectangle popupRectInScreen, Component invoker){
 784     if (invoker != null){
 785       Container parent;
 786       for (parent = invoker.getParent(); parent != null; parent = parent.getParent()){
 787         if(parent instanceof JFrame || parent instanceof JDialog ||
 788            parent instanceof JWindow) {
 789           return getHeightAdjust(parent.getBounds(),popupRectInScreen);
 790         } else if (parent instanceof JApplet || parent instanceof JInternalFrame) {
 791           if (popupFrameRect == null){
 792             popupFrameRect = new Rectangle();
 793           }
 794           Point p = parent.getLocationOnScreen();
 795           popupFrameRect.setBounds(p.x,p.y,
 796                                    parent.getBounds().width,
 797                                    parent.getBounds().height);
 798           return getHeightAdjust(popupFrameRect,popupRectInScreen);
 799         }
 800       }
 801     }
 802     return 0;


< prev index next >