# HG changeset patch # User Tatsuki IHA # Date 1444680304 -32400 # Node ID 28d67bbfa9f1c7202b821c4e34aa5774b1ea2c49 # Parent b3ef6d14b2b782646bb001c1e01d04486113aaab Implement SelectionPanel processing diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 .idea/workspace.xml --- a/.idea/workspace.xml Mon Oct 12 19:50:54 2015 +0900 +++ b/.idea/workspace.xml Tue Oct 13 05:05:04 2015 +0900 @@ -3,10 +3,11 @@ - - + + + @@ -23,9 +24,6 @@ - - - @@ -37,8 +35,8 @@ - - + + @@ -49,18 +47,57 @@ - - + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -69,69 +106,46 @@ - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -140,84 +154,43 @@ - - + + - - + + - - + + + + + - - - - - - - - - - - - - - - - - - - - - - + + - - - - + + - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - - + + @@ -226,9 +199,24 @@ - + - + + + + + + + + + + + + + + + + @@ -236,18 +224,8 @@ - - - - - - - - - - - - + + @@ -256,7 +234,7 @@ - + @@ -575,7 +553,6 @@ + + + - @@ -636,6 +616,7 @@ + @@ -685,100 +666,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -827,166 +714,11 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - @@ -1006,7 +738,7 @@ - + @@ -1067,6 +799,26 @@ - - - @@ -1287,48 +1010,48 @@ - + - + - - + + - - - - + + + + - - + + + - + - + - @@ -1356,9 +1079,6 @@ - @@ -1369,7 +1089,7 @@ file://$PROJECT_DIR$/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java - 483 + 486 @@ -1381,7 +1101,7 @@ file://$PROJECT_DIR$/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java - 414 + 417 @@ -1405,7 +1125,7 @@ file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java - 522 + 523 @@ -1423,7 +1143,7 @@ file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java - 808 + 809 @@ -1550,21 +1270,51 @@ file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java - 913 + 914 file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java - 932 + 933 + + file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/FindRoot.java + 57 + + + + file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeVncRootSelectionPanel.java + 37 + + + + file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/FindRoot.java + 42 + + + + file://$PROJECT_DIR$/src/main/java/jp/ac/u_ryukyu/treevnc/TreeVncRootSelectionPanel.java + 46 + + + + file://$PROJECT_DIR$/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java + 369 + + - @@ -1573,115 +1323,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - + - + - + - + @@ -1689,14 +1368,14 @@ - + - + @@ -1704,14 +1383,14 @@ - + - + @@ -1721,57 +1400,42 @@ - + - + - - - - - - - - - - - - - - - + - - + - + - + @@ -1779,14 +1443,14 @@ - + - + @@ -1794,7 +1458,7 @@ - + @@ -1802,7 +1466,7 @@ - + @@ -1810,7 +1474,7 @@ - + @@ -1818,7 +1482,7 @@ - + @@ -1826,7 +1490,7 @@ - + @@ -1834,7 +1498,7 @@ - + @@ -1842,15 +1506,33 @@ - + - + + + + + + + + + + + + + + + + + + + - + @@ -1891,56 +1573,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + - + - + + + - + @@ -1948,98 +1616,233 @@ - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + - + - + - - + + + + + + + + + + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + - - + + - + - - - - - - - - - - + + - - - + + + + + + + + + + + + + + + + + + + + - - + + - - - - + + diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java Mon Oct 12 19:50:54 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java Tue Oct 13 05:05:04 2015 +0900 @@ -12,23 +12,25 @@ private int portNumber = ConnectionParams.DEFAULT_VNC_ROOT; private TreeRFBProto rfb; private String myHostName; - + private boolean rootMode = false; + + private boolean displayMode = false; + public CreateConnectionParam(TreeRFBProto rfb) { this.rfb = rfb; rfb.setConnectionParam(this); } public synchronized void findTreeVncRoot() { - rfb.createRootSelectionPanel(this); - FindRoot getBcast = new FindRoot(rfb.acceptPort,this); - getBcast.findRoot(); + FindRoot getBcast = new FindRoot(rfb.acceptPort,this); + rfb.createRootSelectionPanel(this, getBcast); // wait for RootSelection try { wait(); } catch (InterruptedException e) { System.out.println("any thread interrupt when wait for FindRoot " + e.getMessage()); } - } + } /** * To find parent, send WHERE_TO_CONNECT command to the TreeVNC root @@ -71,8 +73,22 @@ } public void setRootMode() { - } + rootMode = true; + } + + public boolean isRootMode() { + return rootMode; + } public void setDisplayMode() { + displayMode = true; } + + public boolean isDisplayMode() { + return displayMode; + } + + public synchronized void restart() { + notify(); + } } diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java Mon Oct 12 19:50:54 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRFBProto.java Tue Oct 13 05:05:04 2015 +0900 @@ -439,9 +439,10 @@ } } - public void createRootSelectionPanel(CreateConnectionParam cp) { - rootSelectionPanel = new TreeVncRootSelectionPanel(null); + public void createRootSelectionPanel(CreateConnectionParam cp, FindRoot getBcast) { + rootSelectionPanel = new TreeVncRootSelectionPanel(getBcast); rootSelectionPanel.setCp(cp); + rootSelectionPanel.visible(); } public void close() { diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 src/main/java/jp/ac/u_ryukyu/treevnc/TreeVncRootSelectionPanel.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/TreeVncRootSelectionPanel.java Mon Oct 12 19:50:54 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/TreeVncRootSelectionPanel.java Tue Oct 13 05:05:04 2015 +0900 @@ -42,23 +42,23 @@ panel.add(startRootButton); panel.add(startDisplayButton); startRootButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - cp.setRootMode(); - cp.notify(); - findRoot.interrupt(); - } - }); + @Override + public void actionPerformed(ActionEvent e) { + cp.setRootMode(); + cp.restart(); + unVisible(); + } + }); - startDisplayButton.addActionListener(new ActionListener() { + startDisplayButton.addActionListener(new ActionListener() { @Override - public void actionPerformed(ActionEvent e) { - cp.setDisplayMode(); - cp.notify(); - findRoot.interrupt(); - } + public synchronized void actionPerformed(ActionEvent e) { + cp.setDisplayMode(); + findRoot.findRoot(); + } }); - } + contentPane.add(panel, BorderLayout.CENTER); + } public void ipRegister() { setSize(); diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java Mon Oct 12 19:50:54 2015 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java Tue Oct 13 05:05:04 2015 +0900 @@ -71,6 +71,10 @@ rootStart(args, v); } else { v.startTreeViewer(hostName,cui, addSerialNum); + + // selected "Start as TreeVNC Root" for start selection panel + noConnection = true; + rootStart(args, v); } } } diff -r b3ef6d14b2b7 -r 28d67bbfa9f1 src/viewer_swing/java/com/glavsoft/viewer/Viewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Mon Oct 12 19:50:54 2015 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Tue Oct 13 05:05:04 2015 +0900 @@ -366,6 +366,9 @@ cp.setHostName(hostName); } else { cp.findTreeVncRoot(); + if (cp.isRootMode()) { + return; + } } cp.sendWhereToConnect(this); isTreeVNC = true;