home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / sun / awt / macos / MToolkit.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  7.7 KB  |  342 lines

  1. package sun.awt.macos;
  2.  
  3. import java.awt.AWTEvent;
  4. import java.awt.Button;
  5. import java.awt.Canvas;
  6. import java.awt.Checkbox;
  7. import java.awt.CheckboxMenuItem;
  8. import java.awt.Choice;
  9. import java.awt.Dialog;
  10. import java.awt.EventQueue;
  11. import java.awt.FileDialog;
  12. import java.awt.Font;
  13. import java.awt.FontMetrics;
  14. import java.awt.Frame;
  15. import java.awt.Image;
  16. import java.awt.Label;
  17. import java.awt.List;
  18. import java.awt.Menu;
  19. import java.awt.MenuBar;
  20. import java.awt.MenuItem;
  21. import java.awt.Panel;
  22. import java.awt.PopupMenu;
  23. import java.awt.PrintJob;
  24. import java.awt.ScrollPane;
  25. import java.awt.Scrollbar;
  26. import java.awt.TextArea;
  27. import java.awt.TextField;
  28. import java.awt.Window;
  29. import java.awt.datatransfer.Clipboard;
  30. import java.awt.image.ColorModel;
  31. import java.awt.image.ImageObserver;
  32. import java.awt.image.ImageProducer;
  33. import java.awt.peer.ButtonPeer;
  34. import java.awt.peer.CanvasPeer;
  35. import java.awt.peer.CheckboxMenuItemPeer;
  36. import java.awt.peer.CheckboxPeer;
  37. import java.awt.peer.ChoicePeer;
  38. import java.awt.peer.DialogPeer;
  39. import java.awt.peer.FileDialogPeer;
  40. import java.awt.peer.FontPeer;
  41. import java.awt.peer.FramePeer;
  42. import java.awt.peer.LabelPeer;
  43. import java.awt.peer.ListPeer;
  44. import java.awt.peer.MenuBarPeer;
  45. import java.awt.peer.MenuItemPeer;
  46. import java.awt.peer.MenuPeer;
  47. import java.awt.peer.PanelPeer;
  48. import java.awt.peer.PopupMenuPeer;
  49. import java.awt.peer.ScrollPanePeer;
  50. import java.awt.peer.ScrollbarPeer;
  51. import java.awt.peer.TextAreaPeer;
  52. import java.awt.peer.TextFieldPeer;
  53. import java.awt.peer.WindowPeer;
  54. import java.io.IOException;
  55. import java.util.EventObject;
  56. import java.util.Properties;
  57. import sun.awt.ObjectPeer;
  58. import sun.awt.SunToolkit;
  59. import sun.awt.image.ImageRepresentation;
  60.  
  61. public class MToolkit extends SunToolkit {
  62.    static ColorModel screenmodel;
  63.    static Clipboard clipboard;
  64.  
  65.    public MToolkit() {
  66.       SecurityManager.enablePrivilege("SuperUser");
  67.       System.loadLibrary("PowerPlantAWT");
  68.       SecurityManager.revertPrivilege();
  69.       this.init();
  70.    }
  71.  
  72.    public ButtonPeer createButton(Button var1) {
  73.       MButtonPeer var2 = new MButtonPeer(var1);
  74.       SunToolkit.peerMap.put(var1, var2);
  75.       return var2;
  76.    }
  77.  
  78.    public TextFieldPeer createTextField(TextField var1) {
  79.       MTextFieldPeer var2 = new MTextFieldPeer(var1);
  80.       SunToolkit.peerMap.put(var1, var2);
  81.       return var2;
  82.    }
  83.  
  84.    public LabelPeer createLabel(Label var1) {
  85.       MLabelPeer var2 = new MLabelPeer(var1);
  86.       SunToolkit.peerMap.put(var1, var2);
  87.       return var2;
  88.    }
  89.  
  90.    public ListPeer createList(List var1) {
  91.       MListPeer var2 = new MListPeer(var1);
  92.       SunToolkit.peerMap.put(var1, var2);
  93.       return var2;
  94.    }
  95.  
  96.    public CheckboxPeer createCheckbox(Checkbox var1) {
  97.       MCheckboxPeer var2 = new MCheckboxPeer(var1);
  98.       SunToolkit.peerMap.put(var1, var2);
  99.       return var2;
  100.    }
  101.  
  102.    public ScrollbarPeer createScrollbar(Scrollbar var1) {
  103.       MScrollbarPeer var2 = new MScrollbarPeer(var1);
  104.       SunToolkit.peerMap.put(var1, var2);
  105.       return var2;
  106.    }
  107.  
  108.    public ScrollPanePeer createScrollPane(ScrollPane var1) {
  109.       MScrollPanePeer var2 = new MScrollPanePeer(var1);
  110.       SunToolkit.peerMap.put(var1, var2);
  111.       return var2;
  112.    }
  113.  
  114.    public TextAreaPeer createTextArea(TextArea var1) {
  115.       MTextAreaPeer var2 = new MTextAreaPeer(var1);
  116.       SunToolkit.peerMap.put(var1, var2);
  117.       return var2;
  118.    }
  119.  
  120.    public ChoicePeer createChoice(Choice var1) {
  121.       MChoicePeer var2 = new MChoicePeer(var1);
  122.       SunToolkit.peerMap.put(var1, var2);
  123.       return var2;
  124.    }
  125.  
  126.    public FramePeer createFrame(Frame var1) {
  127.       MFramePeer var2 = new MFramePeer(var1);
  128.       SunToolkit.peerMap.put(var1, var2);
  129.       return var2;
  130.    }
  131.  
  132.    public CanvasPeer createCanvas(Canvas var1) {
  133.       MCanvasPeer var2 = new MCanvasPeer(var1);
  134.       SunToolkit.peerMap.put(var1, var2);
  135.       return var2;
  136.    }
  137.  
  138.    public PanelPeer createPanel(Panel var1) {
  139.       MPanelPeer var2 = new MPanelPeer(var1);
  140.       SunToolkit.peerMap.put(var1, var2);
  141.       return var2;
  142.    }
  143.  
  144.    public WindowPeer createWindow(Window var1) {
  145.       MWindowPeer var2 = new MWindowPeer(var1);
  146.       SunToolkit.peerMap.put(var1, var2);
  147.       return var2;
  148.    }
  149.  
  150.    public DialogPeer createDialog(Dialog var1) {
  151.       MDialogPeer var2 = new MDialogPeer(var1);
  152.       SunToolkit.peerMap.put(var1, var2);
  153.       return var2;
  154.    }
  155.  
  156.    public FileDialogPeer createFileDialog(FileDialog var1) {
  157.       MFileDialogPeer var2 = new MFileDialogPeer(var1);
  158.       SunToolkit.peerMap.put(var1, var2);
  159.       return var2;
  160.    }
  161.  
  162.    public MenuBarPeer createMenuBar(MenuBar var1) {
  163.       MMenuBarPeer var2 = new MMenuBarPeer(var1);
  164.       SunToolkit.peerMap.put(var1, var2);
  165.       return var2;
  166.    }
  167.  
  168.    public MenuPeer createMenu(Menu var1) {
  169.       MMenuPeer var2 = new MMenuPeer(var1);
  170.       SunToolkit.peerMap.put(var1, var2);
  171.       return var2;
  172.    }
  173.  
  174.    public PopupMenuPeer createPopupMenu(PopupMenu var1) {
  175.       MPopupMenuPeer var2 = new MPopupMenuPeer(var1);
  176.       SunToolkit.peerMap.put(var1, var2);
  177.       return var2;
  178.    }
  179.  
  180.    public MenuItemPeer createMenuItem(MenuItem var1) {
  181.       MMenuItemPeer var2 = new MMenuItemPeer(var1);
  182.       SunToolkit.peerMap.put(var1, var2);
  183.       return var2;
  184.    }
  185.  
  186.    public CheckboxMenuItemPeer createCheckboxMenuItem(CheckboxMenuItem var1) {
  187.       MCheckboxMenuItemPeer var2 = new MCheckboxMenuItemPeer(var1);
  188.       SunToolkit.peerMap.put(var1, var2);
  189.       return var2;
  190.    }
  191.  
  192.    static native void addNativeEventInfo(AWTEvent var0, int var1);
  193.  
  194.    static void postEvent(AWTEvent var0) {
  195.       EventQueue var1 = SunToolkit.theEventQueue;
  196.       Object var2 = ((EventObject)var0).getSource();
  197.       if (var2 != null) {
  198.          Object var3 = SunToolkit.targetToPeer(var2);
  199.          if (var3 != null && ((ObjectPeer)var3).getEventQueue() != null) {
  200.             var1 = ((ObjectPeer)var3).getEventQueue();
  201.          }
  202.       }
  203.  
  204.       var1.postEvent(var0);
  205.    }
  206.  
  207.    static boolean prepareScrImage(Image var0, int var1, int var2, ImageObserver var3) {
  208.       if (var1 != 0 && var2 != 0) {
  209.          MacImage var4 = (MacImage)var0;
  210.          if (((sun.awt.image.Image)var4).hasError()) {
  211.             if (var3 != null) {
  212.                var3.imageUpdate(var0, 192, -1, -1, -1, -1);
  213.             }
  214.  
  215.             return false;
  216.          } else {
  217.             if (var1 < 0) {
  218.                var1 = -1;
  219.             }
  220.  
  221.             if (var2 < 0) {
  222.                var2 = -1;
  223.             }
  224.  
  225.             ImageRepresentation var5 = var4.getImageRep();
  226.             return var5.prepare(var3);
  227.          }
  228.       } else {
  229.          return true;
  230.       }
  231.    }
  232.  
  233.    static int checkScrImage(Image var0, int var1, int var2, ImageObserver var3) {
  234.       MacImage var4 = (MacImage)var0;
  235.       int var5;
  236.       if (var1 != 0 && var2 != 0) {
  237.          if (var1 < 0) {
  238.             var1 = -1;
  239.          }
  240.  
  241.          if (var2 < 0) {
  242.             var2 = -1;
  243.          }
  244.  
  245.          var5 = var4.getImageRep().check(var3);
  246.       } else {
  247.          var5 = 32;
  248.       }
  249.  
  250.       return ((sun.awt.image.Image)var4).check(var3) | var5;
  251.    }
  252.  
  253.    public int checkImage(Image var1, int var2, int var3, ImageObserver var4) {
  254.       return checkScrImage(var1, var2, var3, var4);
  255.    }
  256.  
  257.    public boolean prepareImage(Image var1, int var2, int var3, ImageObserver var4) {
  258.       return prepareScrImage(var1, var2, var3, var4);
  259.    }
  260.  
  261.    public Image createImage(ImageProducer var1) {
  262.       return new MacImage(var1);
  263.    }
  264.  
  265.    static native ColorModel makeColorModel();
  266.  
  267.    static ColorModel getStaticColorModel() {
  268.       if (screenmodel == null) {
  269.          screenmodel = makeColorModel();
  270.       }
  271.  
  272.       return screenmodel;
  273.    }
  274.  
  275.    public ColorModel getColorModel() {
  276.       return getStaticColorModel();
  277.    }
  278.  
  279.    public native int getScreenResolution();
  280.  
  281.    protected native int getScreenWidth();
  282.  
  283.    protected native int getScreenHeight();
  284.  
  285.    public FontPeer getFontPeer(String var1, int var2) {
  286.       return new MFontPeer(var1, var2);
  287.    }
  288.  
  289.    public FontMetrics getFontMetrics(Font var1) {
  290.       return MacFontMetrics.getFontMetrics(var1);
  291.    }
  292.  
  293.    public PrintJob getPrintJob(Frame var1, String var2, Properties var3) {
  294.       SecurityManager var4 = System.getSecurityManager();
  295.       if (var4 != null) {
  296.          var4.checkPrintJobAccess();
  297.       }
  298.  
  299.       MPrintJob var5 = null;
  300.  
  301.       try {
  302.          var5 = new MPrintJob("AWT Print");
  303.       } catch (IOException var6) {
  304.       }
  305.  
  306.       return var5.initJob();
  307.    }
  308.  
  309.    public native void beep();
  310.  
  311.    public Clipboard getSystemClipboard() {
  312.       SecurityManager var1 = System.getSecurityManager();
  313.       if (var1 != null) {
  314.          var1.checkSystemClipboardAccess();
  315.       }
  316.  
  317.       if (clipboard == null) {
  318.          clipboard = new MacClipboard("System");
  319.       }
  320.  
  321.       return clipboard;
  322.    }
  323.  
  324.    protected native void loadSystemColors(int[] var1);
  325.  
  326.    public static final Object targetToPeer(Object var0) {
  327.       return SunToolkit.targetToPeer(var0);
  328.    }
  329.  
  330.    protected static void targetDisposedPeer(Object var0, Object var1) {
  331.       if (var0 != null && var1 != null && SunToolkit.peerMap.get(var0) == var1) {
  332.          SunToolkit.peerMap.remove(var0);
  333.       }
  334.  
  335.    }
  336.  
  337.    public native void init();
  338.  
  339.    public void sync() {
  340.    }
  341. }
  342.