diff src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java @ 377:877008c86e85

Add direct option
author innparusu
date Mon, 31 Aug 2015 17:04:36 +0900
parents 1e4285df9afb
children ea324e42bc78
line wrap: on
line diff
--- a/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java	Thu Aug 27 20:10:43 2015 +0900
+++ b/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java	Mon Aug 31 17:04:36 2015 +0900
@@ -26,6 +26,7 @@
     private boolean fixingSizeDisplay = false;
     private boolean logFile = false;
     private boolean filterSingleDisplay = false;
+    private boolean direct = false;
 
 
     public static void main(String[] args) throws SocketException, UnknownHostException {
@@ -59,8 +60,12 @@
                 setFixingSizeDisplay(v);
             if (treeProxy) {
                 if (hostName != null) {
-                    // send whereToConnect
-                    remoteRootStart(args, v);
+                    if (direct) {
+                        rootStart(args, new VncProxyService());
+                    } else {
+                        // send whereToConnect
+                        v.startTreeViewer(hostName, cui);
+                    }
                 }
                 // this viewer also works as tree root ( display mode -d flag )
                 // start with no connection waiting server change request
@@ -73,16 +78,12 @@
 
     public void rootStart(String[] args, ViewerInterface v) throws SocketException, UnknownHostException {
         v.setNoConnection(noConnection);  // should we accept host name here?
-        v.proxyStart(args, width, height, showTree, checkDelay, addSerialNum, fixingSizeDisplay, filterSingleDisplay);
+        v.proxyStart(args, hostName, width, height, showTree, checkDelay, addSerialNum, fixingSizeDisplay, filterSingleDisplay);
         v.getRfb().setHasViewer(viewer);
         if (!permitChangeScreen) v.getRfb().setPermitChangeScreen(false);
         v.getRfb().getAcceptThread().waitForShutdown();
     }
 
-    public void remoteRootStart(String[] args, ViewerInterface v) {
-        v.startTreeViewer(hostName, cui);
-    }
-
     private void modeSelect(String[] args) {
         viewer = true; // default
         for (int i = 0; i < args.length; i++) {
@@ -130,6 +131,10 @@
             } else if ("--host".equals(args[i])) {
                 hostName = args[++i];
                 treeProxy = true;
+            } else if ("--direct".equals(args[i])) {
+                // direct connect without whereToConnect message
+                // use is --host
+                direct = true;
             } else if ("--showTree".equals(args[i])) {
                 // show Tree node.
                 showTree = true;