| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package java.awt; |
| |
| //???AWT |
| //import java.awt.datatransfer.Clipboard; |
| //import java.awt.dnd.DragGestureEvent; |
| //import java.awt.dnd.DragGestureListener; |
| //import java.awt.dnd.DragGestureRecognizer; |
| //import java.awt.dnd.DragSource; |
| //import java.awt.dnd.InvalidDnDOperationException; |
| //import java.awt.dnd.peer.DragSourceContextPeer; |
| import java.awt.im.InputMethodHighlight; |
| import java.awt.image.ColorModel; //import java.awt.peer.*; |
| //import java.beans.PropertyChangeSupport; |
| import java.util.HashMap; |
| import java.util.Map; |
| import java.util.Properties; |
| |
| import org.apache.harmony.awt.ComponentInternals; //import org.apache.harmony.awt.datatransfer.DTK; |
| import org.apache.harmony.awt.wtk.GraphicsFactory; |
| import org.apache.harmony.awt.wtk.NativeEventQueue; |
| import org.apache.harmony.awt.wtk.WindowFactory; |
| |
| /** |
| * The HeadlessToolkit class is a subclass of ToolkitImpl to be used for |
| * graphical environments that lack keyboard and mouse capabilities. |
| * |
| * @since Android 1.0 |
| */ |
| public final class HeadlessToolkit extends ToolkitImpl { |
| |
| // ???AWT |
| /* |
| * @Override protected ButtonPeer createButton(Button a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected CheckboxPeer createCheckbox(Checkbox a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected CheckboxMenuItemPeer |
| * createCheckboxMenuItem(CheckboxMenuItem a0) throws HeadlessException { |
| * throw new HeadlessException(); } |
| * @Override protected ChoicePeer createChoice(Choice a0) throws |
| * HeadlessException { throw new HeadlessException(); } public Cursor |
| * createCustomCursor(Image img, Point hotSpot, String name) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected DialogPeer createDialog(Dialog a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override public <T extends DragGestureRecognizer> T |
| * createDragGestureRecognizer( Class<T> recognizerAbstractClass, DragSource |
| * ds, Component c, int srcActions, DragGestureListener dgl) { return null; |
| * } |
| * @Override public DragSourceContextPeer |
| * createDragSourceContextPeer(DragGestureEvent dge) throws |
| * InvalidDnDOperationException { throw new InvalidDnDOperationException(); |
| * } |
| * @Override protected FileDialogPeer createFileDialog(FileDialog a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected FramePeer createFrame(Frame a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected LabelPeer createLabel(Label a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected ListPeer createList(List a0) throws HeadlessException |
| * { throw new HeadlessException(); } |
| * @Override protected MenuPeer createMenu(Menu a0) throws HeadlessException |
| * { throw new HeadlessException(); } |
| * @Override protected MenuBarPeer createMenuBar(MenuBar a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected MenuItemPeer createMenuItem(MenuItem a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected PopupMenuPeer createPopupMenu(PopupMenu a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected ScrollbarPeer createScrollbar(Scrollbar a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected ScrollPanePeer createScrollPane(ScrollPane a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected TextAreaPeer createTextArea(TextArea a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected TextFieldPeer createTextField(TextField a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| * @Override protected WindowPeer createWindow(Window a0) throws |
| * HeadlessException { throw new HeadlessException(); } |
| */ |
| |
| @Override |
| public Dimension getBestCursorSize(int prefWidth, int prefHeight) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public ColorModel getColorModel() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public GraphicsFactory getGraphicsFactory() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public boolean getLockingKeyState(int keyCode) throws UnsupportedOperationException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public int getMaximumCursorColors() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public int getMenuShortcutKeyMask() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| // ???AWT |
| /* |
| * @Override NativeEventQueue getNativeEventQueue() throws HeadlessException |
| * { throw new HeadlessException(); } |
| * @Override public PrintJob getPrintJob(Frame frame, String jobtitle, |
| * JobAttributes jobAttributes, PageAttributes pageAttributes) throws |
| * IllegalArgumentException { throw new IllegalArgumentException(); } |
| * @Override public PrintJob getPrintJob(Frame frame, String jobtitle, |
| * Properties props) throws NullPointerException { throw new |
| * NullPointerException(); } |
| */ |
| |
| @Override |
| public Insets getScreenInsets(GraphicsConfiguration gc) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public int getScreenResolution() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public Dimension getScreenSize() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| // ???AWT |
| /* |
| * @Override public Clipboard getSystemClipboard() throws HeadlessException |
| * { throw new HeadlessException(); } |
| * @Override public Clipboard getSystemSelection() throws HeadlessException |
| * { throw new HeadlessException(); } |
| * @Override WindowFactory getWindowFactory() throws HeadlessException { |
| * throw new HeadlessException(); } |
| */ |
| |
| @Override |
| protected void init() { |
| lockAWT(); |
| try { |
| ComponentInternals.setComponentInternals(new ComponentInternalsImpl()); |
| // ???AWT: new EventQueue(this); // create the system EventQueue |
| // ???AWT: dispatcher = new Dispatcher(this); |
| desktopProperties = new HashMap<String, Object>(); |
| // ???AWT: desktopPropsSupport = new PropertyChangeSupport(this); |
| // ???AWT: awtEventsManager = new AWTEventsManager(); |
| // ???AWT: dispatchThread = new HeadlessEventDispatchThread(this, |
| // dispatcher); |
| // ???AWT: dtk = DTK.getDTK(); |
| dispatchThread.start(); |
| } finally { |
| unlockAWT(); |
| } |
| } |
| |
| @Override |
| public boolean isDynamicLayoutActive() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| protected boolean isDynamicLayoutSet() throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public boolean isFrameStateSupported(int state) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| protected void loadSystemColors(int[] systemColors) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public Map<java.awt.font.TextAttribute, ?> mapInputMethodHighlight( |
| InputMethodHighlight highlight) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| Map<java.awt.font.TextAttribute, ?> mapInputMethodHighlightImpl(InputMethodHighlight highlight) |
| throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public void setDynamicLayout(boolean dynamic) throws HeadlessException { |
| throw new HeadlessException(); |
| } |
| |
| @Override |
| public void setLockingKeyState(int keyCode, boolean on) throws UnsupportedOperationException { |
| throw new HeadlessException(); |
| } |
| } |