summaryrefslogtreecommitdiffstats
path: root/ui-macos/models.py
diff options
context:
space:
mode:
authorAvery Pennarun <apenwarr@gmail.com>2011-02-01 03:40:40 -0800
committerAvery Pennarun <apenwarr@gmail.com>2011-02-01 03:55:19 -0800
commita238f7636c90e516a3e45345cb92ccc3172ae269 (patch)
tree445d61d9f97cb872fe7c99edcc276c3b6ef1ad71 /ui-macos/models.py
parent62e1ac4b466489936abcfb47d03c09e626319f4d (diff)
ui-macos: include routing type in each connection title.
This makes it extra clear when a connection is for "all routes" vs. custom vs. auto.
Diffstat (limited to 'ui-macos/models.py')
-rw-r--r--ui-macos/models.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/ui-macos/models.py b/ui-macos/models.py
index a8bc79f..ad8e538 100644
--- a/ui-macos/models.py
+++ b/ui-macos/models.py
@@ -92,11 +92,28 @@ class SshuttleServer(NSObject):
if self.autoNets() == NET_MANUAL and not len(list(self.nets())):
return False
return True
+
+ def title(self):
+ host = self.host()
+ if not host:
+ return host
+ an = self.autoNets()
+ suffix = ""
+ if an == NET_ALL:
+ suffix = " (all traffic)"
+ elif an == NET_MANUAL:
+ n = self.nets()
+ suffix = ' (%d subnet%s)' % (len(n), len(n)!=1 and 's' or '')
+ return self.host() + suffix
+ def setTitle_(self, v):
+ # title is always auto-generated
+ config_changed()
def host(self):
return getattr(self, '_k_host', None)
def setHost_(self, v):
self._k_host = v
+ self.setTitle_(None)
config_changed()
@objc.accessor
def validateHost_error_(self, value, error):
@@ -109,6 +126,7 @@ class SshuttleServer(NSObject):
return getattr(self, '_k_nets', [])
def setNets_(self, v):
self._k_nets = v
+ self.setTitle_(None)
config_changed()
def netsHidden(self):
#print 'checking netsHidden'
@@ -123,6 +141,7 @@ class SshuttleServer(NSObject):
self._k_autoNets = v
self.setNetsHidden_(-1)
self.setUseDns_(v == NET_ALL)
+ self.setTitle_(None)
config_changed()
def autoHosts(self):