001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017: /**
018: * @author Pavel Dolgov
019: * @version $Revision$
020: */package org.apache.harmony.awt.wtk.windows;
021:
022: import java.awt.GraphicsDevice;
023:
024: import org.apache.harmony.awt.wtk.*;
025:
026: public class WinWTK extends WTK {
027:
028: static {
029: System.loadLibrary("gl"); //$NON-NLS-1$
030: }
031:
032: /**
033: * @see org.apache.harmony.awt.wtk.WTK#getGraphicsFactory()
034: */
035: @Override
036: public GraphicsFactory getGraphicsFactory() {
037: return graphicsFactory;
038: }
039:
040: /**
041: * @see org.apache.harmony.awt.wtk.WTK#getNativeEventQueue()
042: */
043: @Override
044: public NativeEventQueue getNativeEventQueue() {
045: return eventQueue;
046: }
047:
048: /**
049: * @see org.apache.harmony.awt.wtk.WTK#getWindowFactory()
050: */
051: @Override
052: public WindowFactory getWindowFactory() {
053: return eventQueue.factory;
054: }
055:
056: /**
057: * @see org.apache.harmony.awt.wtk.WTK#getCursorFactory()
058: */
059: @Override
060: public CursorFactory getCursorFactory() {
061: return cursorFactory;
062: }
063:
064: /**
065: * @see org.apache.harmony.awt.wtk.WTK#getNativeMouseInfo()
066: */
067: @Override
068: public NativeMouseInfo getNativeMouseInfo() {
069: return mouseInfo;
070: }
071:
072: /**
073: * @see org.apache.harmony.awt.wtk.WTK#getSystemProperties()
074: */
075: @Override
076: public SystemProperties getSystemProperties() {
077: return systemProperties;
078: }
079:
080: WinEventQueue getWinEventQueue() {
081: return eventQueue;
082: }
083:
084: /**
085: * @see org.apache.harmony.awt.wtk.WTK#getNativeRobot(java.awt.GraphicsDevice)
086: */
087: @Override
088: public NativeRobot getNativeRobot(GraphicsDevice screen) {
089: if (robot == null) {
090: robot = new WinRobot();
091: }
092: return robot;
093: }
094:
095: @Override
096: public NativeIM getNativeIM() {
097: if (im == null) {
098: im = new WinIM();
099: }
100: return im;
101: }
102:
103: public native boolean getLockingState(int keyCode);
104:
105: public native void setLockingState(int keyCode, boolean on);
106:
107: private final WinSystemProperties systemProperties = new WinSystemProperties();
108: private final WinEventQueue eventQueue = new WinEventQueue(
109: systemProperties);
110: private final GraphicsFactory graphicsFactory = new org.apache.harmony.awt.gl.windows.WinGraphics2DFactory();
111: private final CursorFactory cursorFactory = new WinCursorFactory(
112: eventQueue);
113: private final NativeMouseInfo mouseInfo = new WinMouseInfo();
114: private WinRobot robot;
115: private WinIM im;
116: }
|