< prev index next >

src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/MotifInternalFrameTitlePane.java

Print this page




  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package com.sun.java.swing.plaf.motif;
  27 
  28 import java.awt.*;
  29 import java.awt.event.*;
  30 import javax.swing.*;
  31 import javax.swing.border.*;
  32 import javax.swing.event.InternalFrameEvent;
  33 import javax.swing.plaf.basic.*;
  34 import java.util.EventListener;
  35 import java.beans.PropertyChangeListener;
  36 import java.beans.PropertyChangeEvent;
  37 import java.beans.VetoableChangeListener;
  38 import java.beans.PropertyVetoException;
  39 



  40 /**
  41  * Class that manages a Motif title bar
  42  *
  43  * @since 1.3
  44  */
  45 @SuppressWarnings("serial") // Superclass is not serializable across versions
  46 public class MotifInternalFrameTitlePane
  47     extends BasicInternalFrameTitlePane implements LayoutManager, ActionListener, PropertyChangeListener
  48 {
  49     SystemButton systemButton;
  50     MinimizeButton minimizeButton;
  51     MaximizeButton maximizeButton;
  52     JPopupMenu systemMenu;
  53     Title title;
  54     Color color;
  55     Color highlight;
  56     Color shadow;
  57 
  58     // The width and height of a title pane button
  59     public static final int BUTTON_SIZE = 19;  // 17 + 1 pixel border


 346             addMouseListener(new MouseListener() {
 347                 public void mouseClicked(MouseEvent e) {
 348                     forwardEventToParent(e);
 349                 }
 350                 public void mousePressed(MouseEvent e) {
 351                     forwardEventToParent(e);
 352                 }
 353                 public void mouseReleased(MouseEvent e) {
 354                     forwardEventToParent(e);
 355                 }
 356                 public void mouseEntered(MouseEvent e) {
 357                     forwardEventToParent(e);
 358                 }
 359                 public void mouseExited(MouseEvent e) {
 360                     forwardEventToParent(e);
 361                 }
 362             });
 363         }
 364         @SuppressWarnings("deprecation")
 365         void forwardEventToParent(MouseEvent e) {
 366             getParent().dispatchEvent(new MouseEvent(
 367                 getParent(), e.getID(), e.getWhen(), e.getModifiers(),
 368                 e.getX(), e.getY(),  e.getXOnScreen(),
 369                 e.getYOnScreen(), e.getClickCount(),
 370                 e.isPopupTrigger(),  MouseEvent.NOBUTTON));




 371         }
 372 
 373         public void paintComponent(Graphics g) {
 374             super.paintComponent(g);
 375             if (frame.isSelected()) {
 376                 g.setColor(UIManager.getColor("activeCaptionText"));
 377             } else {
 378                 g.setColor(UIManager.getColor("inactiveCaptionText"));
 379             }
 380             Dimension d = getSize();
 381             String frameTitle = frame.getTitle();
 382             if (frameTitle != null) {
 383                 MotifGraphicsUtils.drawStringInRect(frame, g, frameTitle,
 384                                                     0, 0, d.width, d.height,
 385                                                     SwingConstants.CENTER);
 386             }
 387         }
 388     }
 389 }


  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package com.sun.java.swing.plaf.motif;
  27 
  28 import java.awt.*;
  29 import java.awt.event.*;
  30 import javax.swing.*;
  31 import javax.swing.border.*;
  32 import javax.swing.event.InternalFrameEvent;
  33 import javax.swing.plaf.basic.*;
  34 import java.util.EventListener;
  35 import java.beans.PropertyChangeListener;
  36 import java.beans.PropertyChangeEvent;
  37 import java.beans.VetoableChangeListener;
  38 import java.beans.PropertyVetoException;
  39 
  40 import sun.awt.AWTAccessor;
  41 import sun.awt.AWTAccessor.MouseEventAccessor;
  42 
  43 /**
  44  * Class that manages a Motif title bar
  45  *
  46  * @since 1.3
  47  */
  48 @SuppressWarnings("serial") // Superclass is not serializable across versions
  49 public class MotifInternalFrameTitlePane
  50     extends BasicInternalFrameTitlePane implements LayoutManager, ActionListener, PropertyChangeListener
  51 {
  52     SystemButton systemButton;
  53     MinimizeButton minimizeButton;
  54     MaximizeButton maximizeButton;
  55     JPopupMenu systemMenu;
  56     Title title;
  57     Color color;
  58     Color highlight;
  59     Color shadow;
  60 
  61     // The width and height of a title pane button
  62     public static final int BUTTON_SIZE = 19;  // 17 + 1 pixel border


 349             addMouseListener(new MouseListener() {
 350                 public void mouseClicked(MouseEvent e) {
 351                     forwardEventToParent(e);
 352                 }
 353                 public void mousePressed(MouseEvent e) {
 354                     forwardEventToParent(e);
 355                 }
 356                 public void mouseReleased(MouseEvent e) {
 357                     forwardEventToParent(e);
 358                 }
 359                 public void mouseEntered(MouseEvent e) {
 360                     forwardEventToParent(e);
 361                 }
 362                 public void mouseExited(MouseEvent e) {
 363                     forwardEventToParent(e);
 364                 }
 365             });
 366         }
 367         @SuppressWarnings("deprecation")
 368         void forwardEventToParent(MouseEvent e) {
 369             MouseEvent newEvent = new MouseEvent(
 370                 getParent(), e.getID(), e.getWhen(), e.getModifiers(),
 371                 e.getX(), e.getY(),  e.getXOnScreen(),
 372                 e.getYOnScreen(), e.getClickCount(),
 373                 e.isPopupTrigger(),  MouseEvent.NOBUTTON);
 374             MouseEventAccessor meAccessor = AWTAccessor.getMouseEventAccessor();
 375             meAccessor.setCausedByTouchEvent(newEvent,
 376                 meAccessor.isCausedByTouchEvent(e));
 377             getParent().dispatchEvent(newEvent);
 378         }
 379 
 380         public void paintComponent(Graphics g) {
 381             super.paintComponent(g);
 382             if (frame.isSelected()) {
 383                 g.setColor(UIManager.getColor("activeCaptionText"));
 384             } else {
 385                 g.setColor(UIManager.getColor("inactiveCaptionText"));
 386             }
 387             Dimension d = getSize();
 388             String frameTitle = frame.getTitle();
 389             if (frameTitle != null) {
 390                 MotifGraphicsUtils.drawStringInRect(frame, g, frameTitle,
 391                                                     0, 0, d.width, d.height,
 392                                                     SwingConstants.CENTER);
 393             }
 394         }
 395     }
 396 }
< prev index next >