diff options
author | Adam Tkac <atkac@redhat.com> | 2009-03-13 13:11:51 +0000 |
---|---|---|
committer | Adam Tkac <atkac@redhat.com> | 2009-03-13 13:11:51 +0000 |
commit | d0e84634e0058af86d39f1609dff2089684247d7 (patch) | |
tree | c74c060f6cc64f5318f330e70861c2d7ce4e5b6f /java/src/com/tigervnc/vncviewer/VncCanvas2.java | |
parent | b184fc81d62fab3c2f909e8a15961ec0ca491b99 (diff) | |
download | tigervnc-d0e84634e0058af86d39f1609dff2089684247d7.tar.gz tigervnc-d0e84634e0058af86d39f1609dff2089684247d7.zip |
Rename java/src/com/tightvnc to java/src/com/tigervnc.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3672 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'java/src/com/tigervnc/vncviewer/VncCanvas2.java')
-rw-r--r-- | java/src/com/tigervnc/vncviewer/VncCanvas2.java | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/java/src/com/tigervnc/vncviewer/VncCanvas2.java b/java/src/com/tigervnc/vncviewer/VncCanvas2.java new file mode 100644 index 00000000..502d26fe --- /dev/null +++ b/java/src/com/tigervnc/vncviewer/VncCanvas2.java @@ -0,0 +1,65 @@ +// +// Copyright (C) 2006 Constantin Kaplinsky. All Rights Reserved. +// +// This is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This software is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this software; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. +// + +package com.tightvnc.vncviewer; + +import java.awt.*; +import java.io.*; + +// +// VncCanvas2 is a special version of VncCanvas which may use Java 2 API. +// + +class VncCanvas2 extends VncCanvas { + + public VncCanvas2(VncViewer v) throws IOException { + super(v); + disableFocusTraversalKeys(); + } + + public VncCanvas2(VncViewer v, int maxWidth_, int maxHeight_) + throws IOException { + + super(v, maxWidth_, maxHeight_); + disableFocusTraversalKeys(); + } + + public void paintScaledFrameBuffer(Graphics g) { + Graphics2D g2d = (Graphics2D)g; + g2d.setRenderingHint(RenderingHints.KEY_RENDERING, + RenderingHints.VALUE_RENDER_QUALITY); + g2d.drawImage(memImage, 0, 0, scaledWidth, scaledHeight, null); + } + + // + // Try to disable focus traversal keys (JVMs 1.4 and higher). + // + + private void disableFocusTraversalKeys() { + try { + Class[] argClasses = { Boolean.TYPE }; + java.lang.reflect.Method method = + getClass().getMethod("setFocusTraversalKeysEnabled", argClasses); + Object[] argObjects = { new Boolean(false) }; + method.invoke(this, argObjects); + } catch (Exception e) {} + } + +} + |