home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / win95 / sieciowe / hotja32.lzh / hotjava / classsrc / awt / nativedisplayitem.java < prev    next >
Text File  |  1995-08-11  |  2KB  |  102 lines

  1. /*
  2.  * @(#)NativeDisplayItem.java    1.17 95/02/02 Sami Shaio
  3.  *
  4.  * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19. package awt;
  20.  
  21. import java.io.*;
  22.  
  23. /**
  24.  * This class is used to create a DisplayItem object that encapsulates a
  25.  * native gui element. It translates the protocols used on DisplayItem
  26.  * to those that Component understands.
  27.  *
  28.  * @see DisplayItem
  29.  * @see Component
  30.  * @version 1.17 02 Feb 1995
  31.  * @author Sami Shaio
  32.  */
  33. public class NativeDisplayItem extends DisplayItem {
  34.     Component    component;
  35.  
  36.     public NativeDisplayItem() {}
  37.  
  38.     public NativeDisplayItem(Component c) {
  39.     setComponent(c);
  40.     }
  41.  
  42.     /** Sets the component for this item. */
  43.     public void setComponent(Component c) {
  44.     c.unMap();
  45.     component = c;
  46.     width = c.width;
  47.     height = c.height;
  48.     x = y = 0;
  49.     }
  50.  
  51.     public Component getComponent() {
  52.     return component;
  53.     }
  54.  
  55.     public void move(int x, int y) {
  56.     super.move(x, y);
  57.     }
  58.  
  59.    public void reshape(int x, int y, int w, int h) {
  60.     super.reshape(x, y, w, h);
  61.     if (component != null && parent != null) {
  62.         component.reshape(x + parent.scrollX, y + parent.scrollY, w, h);
  63.     }
  64.     }
  65.  
  66.     public void resize(int w, int h) {
  67.     super.resize(w, h);
  68.     if (component != null) {
  69.         component.resize(w, h);
  70.     }
  71.     }
  72.  
  73.     public void deactivate() {
  74.     unMap();
  75.     component.move(0, 0);
  76.     }
  77.  
  78.     public void setColor(Color c) {
  79.     component.setForeground(c);
  80.     }
  81.  
  82.     public void map() {
  83.     component.map();
  84.     }
  85.  
  86.     public void unMap() {
  87.     component.unMap();
  88.     }
  89.  
  90.     public void destroy() {
  91.     component.dispose();
  92.     component = null;
  93.     }
  94.  
  95.     public void paint(Window window, int x, int y) {
  96.     if (!component.mapped && component != null) {
  97.         component.move(x, y);
  98.         map();
  99.     }
  100.     }
  101. }
  102.