Mercurial > hg > Members > you > TreeVNC
view src/treeVnc/ClipboardFrame.java @ 62:b2492abdae2a Version1.0 tip
Added tag TreeVNC_version1.0 for changeset 318ec7415073
author | Taninari YU <you@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 12 Aug 2012 22:13:39 +0900 |
parents | 20c53b836ff8 |
children |
line wrap: on
line source
package treeVnc; // // Copyright (C) 2001 HorizonLive.com, Inc. All Rights Reserved. // Copyright (C) 1999 AT&T Laboratories Cambridge. 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. // // // Clipboard frame. // import java.awt.*; import java.awt.event.*; class ClipboardFrame extends Frame implements WindowListener, ActionListener { /** * */ private static final long serialVersionUID = 1L; TextArea textArea; Button clearButton, closeButton; String selection; VncViewer viewer; // // Constructor. // ClipboardFrame(VncViewer v) { super("TightVNC Clipboard"); viewer = v; GridBagLayout gridbag = new GridBagLayout(); setLayout(gridbag); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridwidth = GridBagConstraints.REMAINDER; gbc.fill = GridBagConstraints.BOTH; gbc.weighty = 1.0; textArea = new TextArea(5, 40); gridbag.setConstraints(textArea, gbc); add(textArea); gbc.fill = GridBagConstraints.HORIZONTAL; gbc.weightx = 1.0; gbc.weighty = 0.0; gbc.gridwidth = 1; clearButton = new Button("Clear"); gridbag.setConstraints(clearButton, gbc); add(clearButton); clearButton.addActionListener(this); closeButton = new Button("Close"); gridbag.setConstraints(closeButton, gbc); add(closeButton); closeButton.addActionListener(this); pack(); addWindowListener(this); } // // Set the cut text from the RFB server. // void setCutText(String text) { selection = text; textArea.setText(text); if (isVisible()) { textArea.selectAll(); } } // // When the focus leaves the window, see if we have new cut text and // if so send it to the RFB server. // public void windowDeactivated (WindowEvent evt) { if (selection != null && !selection.equals(textArea.getText())) { selection = textArea.getText(); viewer.setCutText(selection); } } // // Close our window properly. // public void windowClosing(WindowEvent evt) { setVisible(false); } // // Ignore window events we're not interested in. // public void windowActivated(WindowEvent evt) {} public void windowOpened(WindowEvent evt) {} public void windowClosed(WindowEvent evt) {} public void windowIconified(WindowEvent evt) {} public void windowDeiconified(WindowEvent evt) {} // // Respond to button presses // public void actionPerformed(ActionEvent evt) { if (evt.getSource() == clearButton) { textArea.setText(""); } else if (evt.getSource() == closeButton) { setVisible(false); } } }