Mercurial > hg > Members > riono > TreeVNC_ja_comment
comparison src/viewer_swing/java/com/glavsoft/viewer/swing/SwingViewerWindow.java @ 274:f80c9789f63e
get single display size in multidisplay
author | oc |
---|---|
date | Tue, 06 Jan 2015 15:31:14 +0900 |
parents | 11b59b223222 |
children | 2d39a1f9558d |
comparison
equal
deleted
inserted
replaced
273:5bab82abcc4f | 274:f80c9789f63e |
---|---|
42 import javax.swing.border.Border; | 42 import javax.swing.border.Border; |
43 import javax.swing.border.EmptyBorder; | 43 import javax.swing.border.EmptyBorder; |
44 | 44 |
45 import java.awt.*; | 45 import java.awt.*; |
46 import java.awt.event.*; | 46 import java.awt.event.*; |
47 import java.util.ArrayList; | |
47 import java.util.LinkedList; | 48 import java.util.LinkedList; |
48 import java.util.List; | 49 import java.util.List; |
49 import java.util.concurrent.Executors; | 50 import java.util.concurrent.Executors; |
50 import java.util.concurrent.ScheduledExecutorService; | 51 import java.util.concurrent.ScheduledExecutorService; |
51 import java.util.concurrent.ScheduledFuture; | 52 import java.util.concurrent.ScheduledFuture; |
846 public void actionPerformed(ActionEvent e) { | 847 public void actionPerformed(ActionEvent e) { |
847 // before change server, data from previous server | 848 // before change server, data from previous server |
848 // should be stopped. | 849 // should be stopped. |
849 viewer.setCuiVersion(false); | 850 viewer.setCuiVersion(false); |
850 | 851 |
852 // main screen is rectangles[0] | |
853 ArrayList<Rectangle> rectangles = new ArrayList<Rectangle>(); | |
854 GraphicsConfiguration[] gc = null; | |
855 GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); | |
856 GraphicsDevice[] gs = ge.getScreenDevices(); | |
857 for (int j = 0; j < gs.length; j++) { | |
858 GraphicsDevice gd = gs[j]; | |
859 gc = gd.getConfigurations(); | |
860 for (int i=0; i < gc.length; i++) { | |
861 rectangles.add(gc[i].getBounds()); | |
862 } | |
863 } | |
864 | |
851 Dimension size = frame.getSize(); | 865 Dimension size = frame.getSize(); |
852 viewer.setFrameSize(size.width, size.height); | 866 viewer.setFrameSize(size.width, size.height); |
853 | 867 |
854 if (viewer.getRfb().isTreeManager()) { | 868 if (viewer.getRfb().isTreeManager()) { |
855 try { | 869 try { |
858 System.out.println("can't change server :" + e1.getMessage()); | 872 System.out.println("can't change server :" + e1.getMessage()); |
859 } | 873 } |
860 return; | 874 return; |
861 } | 875 } |
862 String adr = viewer.getRfb().getMyAddress(); | 876 String adr = viewer.getRfb().getMyAddress(); |
863 context.sendMessage(new ScreenChangeRequest(adr, viewer.getRfb().getId(), size.width, size.height)); | 877 context.sendMessage(new ScreenChangeRequest(adr, viewer.getRfb().getId(), (int) rectangles.get(0).getWidth(), (int) rectangles.get(0).getHeight())); |
864 } | 878 } |
865 }); | 879 }); |
866 kbdButtons.add(screenButton); | 880 kbdButtons.add(screenButton); |
867 | 881 |
868 | 882 |