Mercurial > hg > Members > riono > TreeVNC_ja_comment
diff src/main/java/jp/ac/u_ryukyu/treevnc/ScreenChangeSelectionPanel.java @ 406:0eea469c6349
Add ScreenChangeSelectionPanel
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 09 Nov 2015 15:44:53 +0900 |
parents | |
children | 7cd416d6a152 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/ScreenChangeSelectionPanel.java Mon Nov 09 15:44:53 2015 +0900 @@ -0,0 +1,74 @@ +package jp.ac.u_ryukyu.treevnc; + +import com.glavsoft.rfb.protocol.ProtocolContext; +import com.glavsoft.viewer.swing.SwingViewerWindow; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; + +public class ScreenChangeSelectionPanel extends JFrame implements ActionListener, ItemListener { + + private JPanel panel = new JPanel(); + private JButton button = new JButton("Share Screen"); + private int counter; + private Checkbox[] check = new Checkbox[20]; + private CheckboxGroup ch = new CheckboxGroup(); + private Container contentPane = getContentPane(); + private double width = 750; + private double height = 500; + + private SwingViewerWindow viewerWindow; + private ProtocolContext context; + + + public ScreenChangeSelectionPanel(SwingViewerWindow viewerWindow, ProtocolContext context) { + this.context = context; + this.viewerWindow = viewerWindow; + setTitle("Select Share Screen"); + setResizable(false); + } + + public void setButton() { + panel.add(button); + button.addActionListener(this); + contentPane.add(panel, BorderLayout.CENTER); + } + + public void checkBox(String str) { + if (counter == 0) + check[counter] = new Checkbox(str, true, ch); + else + check[counter] = new Checkbox(str, false, ch); + check[counter].addItemListener(this); + panel.add(check[counter]); + panel.setLayout(new GridLayout(counter + 2, 0)); + panel.setLocation((int) width - 250, (int) height - 80); + counter++; + } + @Override + public void actionPerformed(ActionEvent e) { + for (int i = 0; i < counter; i++) { + if (check[i].getState()) { + viewerWindow.screenChangeRequest(context, i); + setVisible(false); + } + } + } + + public void visible() { + Point point = new Point(); + point.setLocation(width - 250, height - 80); + setLocation(point.getLocation()); + pack(); + setVisible(true); + } + + @Override + public void itemStateChanged(ItemEvent e) { + + } +}