home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VPage / Java.bin / CLASSES.ZIP / sun / awt / SunToolkit.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-07-08  |  3.5 KB  |  111 lines

  1. package sun.awt;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.EventQueue;
  7. import java.awt.Image;
  8. import java.awt.Toolkit;
  9. import java.net.URL;
  10. import java.util.Hashtable;
  11. import sun.awt.image.ByteArrayImageSource;
  12. import sun.awt.image.FileImageSource;
  13. import sun.awt.image.URLImageSource;
  14.  
  15. public abstract class SunToolkit extends Toolkit {
  16.    protected static EventQueue theEventQueue;
  17.    protected static final Hashtable peerMap = new Hashtable();
  18.    static Hashtable imgHash = new Hashtable();
  19.  
  20.    public SunToolkit() {
  21.       String var1 = Toolkit.getProperty("AWT.EventQueueClass", "java.awt.EventQueue");
  22.  
  23.       try {
  24.          theEventQueue = (EventQueue)Class.forName(var1).newInstance();
  25.       } catch (Exception var3) {
  26.          System.err.println("Failed loading " + var1 + ": " + var3);
  27.          theEventQueue = new EventQueue();
  28.       }
  29.    }
  30.  
  31.    protected static Object targetToPeer(Object var0) {
  32.       return var0 != null ? peerMap.get(var0) : null;
  33.    }
  34.  
  35.    protected static void targetDisposedPeer(Object var0, Object var1) {
  36.       if (var0 != null && var1 != null && peerMap.get(var0) == var1) {
  37.          peerMap.remove(var0);
  38.       }
  39.  
  40.    }
  41.  
  42.    public Dimension getScreenSize() {
  43.       return new Dimension(this.getScreenWidth(), this.getScreenHeight());
  44.    }
  45.  
  46.    protected abstract int getScreenWidth();
  47.  
  48.    protected abstract int getScreenHeight();
  49.  
  50.    public String[] getFontList() {
  51.       String[] var1 = new String[]{"Dialog", "SansSerif", "Serif", "Monospaced", "Helvetica", "TimesRoman", "Courier", "DialogInput", "ZapfDingbats"};
  52.       return var1;
  53.    }
  54.  
  55.    static synchronized Image getImageFromHash(Toolkit var0, URL var1) {
  56.       SecurityManager var2 = System.getSecurityManager();
  57.       if (var2 != null) {
  58.          var2.checkConnect(var1.getHost(), var1.getPort());
  59.       }
  60.  
  61.       Image var3 = (Image)imgHash.get(var1);
  62.       if (var3 == null) {
  63.          try {
  64.             var3 = var0.createImage(new URLImageSource(var1));
  65.             imgHash.put(var1, var3);
  66.          } catch (Exception var4) {
  67.          }
  68.       }
  69.  
  70.       return var3;
  71.    }
  72.  
  73.    static synchronized Image getImageFromHash(Toolkit var0, String var1) {
  74.       SecurityManager var2 = System.getSecurityManager();
  75.       if (var2 != null) {
  76.          var2.checkRead(var1);
  77.       }
  78.  
  79.       Image var3 = (Image)imgHash.get(var1);
  80.       if (var3 == null) {
  81.          try {
  82.             var3 = var0.createImage(new FileImageSource(var1));
  83.             imgHash.put(var1, var3);
  84.          } catch (Exception var4) {
  85.          }
  86.       }
  87.  
  88.       return var3;
  89.    }
  90.  
  91.    public Image getImage(String var1) {
  92.       return getImageFromHash(this, (String)var1);
  93.    }
  94.  
  95.    public Image getImage(URL var1) {
  96.       return getImageFromHash(this, (URL)var1);
  97.    }
  98.  
  99.    public Image createImage(byte[] var1, int var2, int var3) {
  100.       return ((Toolkit)this).createImage(new ByteArrayImageSource(var1, var2, var3));
  101.    }
  102.  
  103.    protected EventQueue getSystemEventQueueImpl() {
  104.       return theEventQueue;
  105.    }
  106.  
  107.    public static Container getNativeContainer(Component var0) {
  108.       return Toolkit.getNativeContainer(var0);
  109.    }
  110. }
  111.