annotate src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java @ 512:16f9b37ef43b

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 20 Feb 2019 15:49:28 +0900
parents 3fe7e1a372df
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
1 package com.glavsoft.viewer;
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
2
206
2b3eb4a9492f MyRfbProto reorganization
oc
parents: 188
diff changeset
3 import jp.ac.u_ryukyu.treevnc.VncProxyService;
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
4
260
847f2ed2a757 change standard output in file output
oc
parents: 257
diff changeset
5 import java.io.FileNotFoundException;
847f2ed2a757 change standard output in file output
oc
parents: 257
diff changeset
6 import java.io.PrintStream;
293
d1ceb4b7097a add function receive sound.
oc
parents: 273
diff changeset
7 import java.net.SocketException;
d1ceb4b7097a add function receive sound.
oc
parents: 273
diff changeset
8 import java.net.UnknownHostException;
260
847f2ed2a757 change standard output in file output
oc
parents: 257
diff changeset
9
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
10 public class TreeViewer {
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
11 private boolean treeProxy;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
12 private boolean viewer;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
13 private boolean cui = false;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
14 private int width;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
15 private int height;
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
16 private int fixingSizeWidth;
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
17 private int fixingSizeHeight;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
18 private String hostName = null;
261
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
19 private String logFileName = null;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
20 private boolean noConnection = false;
122
e2416a246c95 noScreenChange flag on command line ( should be on panel also )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 89
diff changeset
21 private boolean permitChangeScreen = true;
163
c850c2fce039 add showTreeNode method.
oc
parents: 159
diff changeset
22 private boolean showTree = false;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
23 private boolean checkDelay = false;
241
b21a7842a41d add option addSerialNum.
oc
parents: 240
diff changeset
24 private boolean addSerialNum = false;
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
25 private boolean fixingSizeDisplay = false;
267
5f697251860b add --filterSingleDisplay option.
oc
parents: 266
diff changeset
26 private boolean logFile = false;
5f697251860b add --filterSingleDisplay option.
oc
parents: 266
diff changeset
27 private boolean filterSingleDisplay = false;
377
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
28 private boolean direct = false;
506
3fe7e1a372df Multicast CUI
toubaru
parents: 491
diff changeset
29 private boolean useMulticast = false;
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
30
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
31
293
d1ceb4b7097a add function receive sound.
oc
parents: 273
diff changeset
32 public static void main(String[] args) throws SocketException, UnknownHostException {
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
33 new TreeViewer().vncStart(args);
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
34 }
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
35
293
d1ceb4b7097a add function receive sound.
oc
parents: 273
diff changeset
36 private void vncStart(String[] args) throws SocketException, UnknownHostException {
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
37 modeSelect(args);
261
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
38 if(logFile) {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
39 PrintStream out = null;
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
40 try {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
41 out = new PrintStream(logFileName + ".txt");
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
42 } catch (FileNotFoundException e) {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
43 e.printStackTrace();
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
44 }
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
45 System.setOut(out);
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
46 }
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
47 if (treeProxy && !viewer) {
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
48 // start treeManager only ( -p flag )
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
49 VncProxyService vps = new VncProxyService();
266
17eb729d64be fix --fixingSize option correspondence -p option.
oc
parents: 261
diff changeset
50 if(fixingSizeDisplay)
17eb729d64be fix --fixingSize option correspondence -p option.
oc
parents: 261
diff changeset
51 setFixingSizeDisplay(vps);
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
52 rootStart(args,vps);
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
53 return;
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
54 }
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
55 if (viewer) {
491
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
56 Viewer gui ;
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
57 ViewerInterface v ;
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
58 if (!cui) {
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
59 gui = new Viewer();
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
60 setviewonly(gui);
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
61 v = gui;
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
62 } else {
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
63 v = new CuiViewer();
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
64 }
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
65
225
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
66 setWidthAndHeight(v);
512
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 506
diff changeset
67 v.setUseMulticast(useMulticast);
301
ae7deb002b5f send and receive single display size
oc
parents: 293
diff changeset
68 // if(filterSingleDisplay)
266
17eb729d64be fix --fixingSize option correspondence -p option.
oc
parents: 261
diff changeset
69 if(fixingSizeDisplay)
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
70 setFixingSizeDisplay(v);
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
71 if (treeProxy) {
343
f1721ec54899 add remoteRootStart
oc
parents: 339
diff changeset
72 if (hostName != null) {
377
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
73 if (direct) {
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
74 rootStart(args, new VncProxyService());
474
f0bd5f2c4ba3 unique node id is now static.
one
parents: 455
diff changeset
75 return;
377
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
76 } else {
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
77 // send whereToConnect
379
ea324e42bc78 Add arguments to startTreeViewer method
innparusu
parents: 377
diff changeset
78 v.startTreeViewer(hostName, cui, addSerialNum);
377
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
79 }
343
f1721ec54899 add remoteRootStart
oc
parents: 339
diff changeset
80 }
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
81 // this viewer also works as tree root ( display mode -d flag )
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
82 // start with no connection waiting server change request
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
83 rootStart(args, v);
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
84 } else {
379
ea324e42bc78 Add arguments to startTreeViewer method
innparusu
parents: 377
diff changeset
85 v.startTreeViewer(hostName,cui, addSerialNum);
399
28d67bbfa9f1 Implement SelectionPanel processing
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 379
diff changeset
86
401
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
87 // selected "Start Display Mode" or "Start as TreeVNC Root" for start selection panel
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
88 if (v.getRfb().getConnectionParam().isDisplayMode()) {
400
845698fd6fb6 Remove synchronized
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 399
diff changeset
89 noConnection = true;
401
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
90 treeProxy = true;
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
91 viewer = true;
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
92 rootStart(args, v);
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
93 } else if (v.getRfb().getConnectionParam().isRootMode()) {
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
94 viewer = false;
94c520535ef1 Fix selection panel
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 400
diff changeset
95 treeProxy = true;
400
845698fd6fb6 Remove synchronized
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 399
diff changeset
96 rootStart(args, v);
845698fd6fb6 Remove synchronized
Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
parents: 399
diff changeset
97 }
223
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
98 }
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
99 }
3189e210a7ed indent fix.
oc
parents: 219
diff changeset
100 }
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
101
491
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
102 private void setviewonly(Viewer v) {
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
103 v.settings.setViewOnly(true);
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
104 }
13b08ea73237 fix cursor
oshiro
parents: 474
diff changeset
105
293
d1ceb4b7097a add function receive sound.
oc
parents: 273
diff changeset
106 public void rootStart(String[] args, ViewerInterface v) throws SocketException, UnknownHostException {
219
1edc11b2e8e6 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 206
diff changeset
107 v.setNoConnection(noConnection); // should we accept host name here?
455
6f3d3da40940 fix cui and hasViewer flag
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 448
diff changeset
108 v.proxyStart(args, hostName, width, height, showTree, checkDelay, addSerialNum, fixingSizeDisplay, filterSingleDisplay, viewer);
343
f1721ec54899 add remoteRootStart
oc
parents: 339
diff changeset
109 if (!permitChangeScreen) v.getRfb().setPermitChangeScreen(false);
219
1edc11b2e8e6 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 206
diff changeset
110 v.getRfb().getAcceptThread().waitForShutdown();
1edc11b2e8e6 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 206
diff changeset
111 }
1edc11b2e8e6 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 206
diff changeset
112
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
113 private void modeSelect(String[] args) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
114 viewer = true; // default
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
115 for (int i = 0; i < args.length; i++) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
116 if ("-p".equals(args[i]) || "-r".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
117 // no display. behave as root.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
118 // relay rfb update to clients.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
119 treeProxy = true;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
120 viewer = false;
79
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
121 } else if ("-d".equals(args[i])) {
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
122 // behave as root with display.
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
123 // use this on main display such as large tv.
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
124 noConnection = true;
79
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
125 treeProxy = true;
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
126 viewer = true;
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
127 } else if ("--cui".equals(args[i])) {
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
128 // use cui viewer
015321785ddf remove setType()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 78
diff changeset
129 cui = true;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
130 } else if ("-v".equals(args[i]) || "-c".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
131 // behave as client.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
132 // open display and connect to some tree node.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
133 viewer = true;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
134 } else if ("--version".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
135 System.out.println("version :" + Viewer.ver());
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
136 System.exit(0);
122
e2416a246c95 noScreenChange flag on command line ( should be on panel also )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 89
diff changeset
137 } else if ("-ns".equals(args[i])) {
e2416a246c95 noScreenChange flag on command line ( should be on panel also )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 89
diff changeset
138 permitChangeScreen = false;
e2416a246c95 noScreenChange flag on command line ( should be on panel also )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 89
diff changeset
139 } else if ("--noScreenChange".equals(args[i])) {
e2416a246c95 noScreenChange flag on command line ( should be on panel also )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 89
diff changeset
140 permitChangeScreen = false;
273
5bab82abcc4f fix --fixSize option name and input option arguments at console.
oc
parents: 271
diff changeset
141 } else if ("--fixSize".equals(args[i])) {
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
142 // retina display too large for TreeVNC.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
143 // restrict display size.
273
5bab82abcc4f fix --fixSize option name and input option arguments at console.
oc
parents: 271
diff changeset
144 fixingSizeWidth = Integer.parseInt(args[++i]);
5bab82abcc4f fix --fixSize option name and input option arguments at console.
oc
parents: 271
diff changeset
145 fixingSizeHeight = Integer.parseInt(args[++i]);
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
146 fixingSizeDisplay = true;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
147 } else if ("--width".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
148 width = Integer.parseInt(args[i+1]);
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
149 i++;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
150 } else if ("--height".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
151 height = Integer.parseInt(args[i+1]);
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
152 i++;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
153 } else if ("--host".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
154 hostName = args[++i];
339
4713559f5838 if have a parent, send serverChangeRequest and whereToConnect
oc
parents: 301
diff changeset
155 treeProxy = true;
377
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
156 } else if ("--direct".equals(args[i])) {
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
157 // direct connect without whereToConnect message
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
158 // use is --host
877008c86e85 Add direct option
innparusu
parents: 376
diff changeset
159 direct = true;
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
160 } else if ("--showTree".equals(args[i])) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
161 // show Tree node.
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
162 showTree = true;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
163 } else if ("--checkDelay".equals(args[i])) {
241
b21a7842a41d add option addSerialNum.
oc
parents: 240
diff changeset
164 // check flow of data delay.
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
165 checkDelay = true;
506
3fe7e1a372df Multicast CUI
toubaru
parents: 491
diff changeset
166 } else if ("--useMulticast".equals(args[i])) {
3fe7e1a372df Multicast CUI
toubaru
parents: 491
diff changeset
167 // check flow of data delay.
3fe7e1a372df Multicast CUI
toubaru
parents: 491
diff changeset
168 useMulticast = true;
241
b21a7842a41d add option addSerialNum.
oc
parents: 240
diff changeset
169 } else if ("--addSerialNum".equals(args[i])) {
b21a7842a41d add option addSerialNum.
oc
parents: 240
diff changeset
170 // add data serial number.
b21a7842a41d add option addSerialNum.
oc
parents: 240
diff changeset
171 addSerialNum = true;
261
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
172 } else if ("--logFile".equals(args[i])) {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
173 // add log file.
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
174 logFile = true;
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
175 try {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
176 this.logFileName = args[++i];
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
177 } catch (ArrayIndexOutOfBoundsException e) {
271
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
178 // not input file name.
261
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
179 System.out.println("Please put the log file name. If you do not put file name, set file name logFile.txt");
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
180 }
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
181 if (logFileName == null) {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
182 logFileName = "logFile";
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
183 } else if ("-".equals(logFileName.substring(0,1))) {
271
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
184 // not input file name.
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
185 // to continue to add option.
261
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
186 System.out.println("Please put the log file name. If you do not put file name, set file name logFile.txt");
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
187 logFileName = "logFile";
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
188 i++;
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
189 } else {
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
190 i++;
233c73b5b964 add option about set log file name.
oc
parents: 260
diff changeset
191 }
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
192 } else {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
193 System.out.println("(default) TreeVNCClient\n"
271
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
194 + "-v or -c: View shared screen.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
195 + "-p: (proxy) Share my screen and behave as tree root.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
196 + "-ns --noScreenChange: Viewers cannot change screen to thiers (default permite screen change)\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
197 + "-d: Show shared screen and behave as tree root.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
198 + "-r: Connect to fix to specified host and port.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
199 + "--host hostname: Set host name.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
200 + "--retina: Limit screen size for very large display.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
201 + "--width w: Set display width.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
202 + "--height h: Set display height.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
203 + "--showTree: Show connected tree node.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
204 + "--checkDelay: Check speed flow of data each node.\n"
506
3fe7e1a372df Multicast CUI
toubaru
parents: 491
diff changeset
205 + "--useMulticast: Use Multicast\n"
271
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
206 + "--logFile logFileName: Set log file name.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
207 + "--fixingSize w h: Fix share screen size.\n"
13a809ce1212 add option comment.
oc
parents: 267
diff changeset
208 + "--addSerialNum: Check lost data.\n");
376
1e4285df9afb Update README.txt
innparusu
parents: 343
diff changeset
209 System.exit(0);
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
210 }
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
211 }
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
212 }
71
36e116795e0c option -d mode is behave as root with display. use this on main display such as large tv.
one
parents: 65
diff changeset
213
225
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
214 public void setWidthAndHeight(ViewerInterface v) {
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
215 if(width != 0 || height != 0) {
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
216 v.setWidth(width);
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
217 v.setHeight(height);
5e3594021e79 fix --width --height mode.
oc
parents: 223
diff changeset
218 }
257
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
219 }
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
220
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
221 public void setFixingSizeDisplay(ViewerInterface v) {
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
222 v.setFixingSize(fixingSizeWidth, fixingSizeHeight);
11b59b223222 add function of fixing display size
oc
parents: 256
diff changeset
223 }
71
36e116795e0c option -d mode is behave as root with display. use this on main display such as large tv.
one
parents: 65
diff changeset
224
240
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
225 private boolean isInteger(String num) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
226 try {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
227 Integer.parseInt(num);
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
228 return true;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
229 } catch (NumberFormatException e) {
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
230 return false;
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
231 }
7310e7d7a45f add option --checkDelay.
oc
parents: 225
diff changeset
232 }
34
f70008073a03 add TreeViewer.java
one
parents:
diff changeset
233 }