From ba48602aa9bf137c778078fa7fcaff4a2f2ad7f4 Mon Sep 17 00:00:00 2001
From: imdano <>
Date: Tue, 17 Jul 2007 07:19:10 +0000
Subject: [PATCH] fixed a screw up in my indentation in edgy.py, changed tabs
to 4 spaces everywhere it wasn't already
---
autoconnect.py | 4 +-
dapper.py | 26 ++---
edgy.py | 281 ++++++++++++++++++++++++-------------------------
misc.py | 220 +++++++++++++++++++-------------------
tray.py | 6 +-
5 files changed, 267 insertions(+), 270 deletions(-)
diff --git a/autoconnect.py b/autoconnect.py
index 58529a2..89143a4 100644
--- a/autoconnect.py
+++ b/autoconnect.py
@@ -4,7 +4,7 @@ import gobject
import dbus
import dbus.service
if getattr(dbus, 'version', (0,0,0)) >= (0,41,0):
- import dbus.glib
+ import dbus.glib
#############
#declare our connections to our daemon.
@@ -21,4 +21,4 @@ wired = dbus.Interface(proxy_obj, 'org.wicd.daemon.wired')
print daemon.Hello()
if wireless.CheckIfWirelessConnecting() == False and wired.CheckIfWiredConnecting() == False:
- print wireless.AutoConnect(True)
+ print wireless.AutoConnect(True)
diff --git a/dapper.py b/dapper.py
index ec25ddc..5c7c57d 100644
--- a/dapper.py
+++ b/dapper.py
@@ -5,30 +5,30 @@
## but that is not the preferred method
import os,sys
if __name__ == '__main__':
- os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
+ os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
import gtk
import egg.trayicon
import gobject, dbus, dbus.service
if getattr(dbus, 'version', (0,0,0)) >= (0,41,0):
- import dbus.glib
+ import dbus.glib
#############
#declare the connections to our daemon.
#without them nothing useful will happen
#the daemon should be running as root
bus = dbus.SystemBus()
try:
- print 'attempting to connect daemon...'
- proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
- print 'success'
+ print 'attempting to connect daemon...'
+ proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
+ print 'success'
except:
- print 'daemon not running, running gksudo ./daemon.py...'
- import misc,time
- misc.PromptToStartDaemon()
- time.sleep(1)
- try:
- proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
- except:
- print 'daemon still not running, aborting.'
+ print 'daemon not running, running gksudo ./daemon.py...'
+ import misc,time
+ misc.PromptToStartDaemon()
+ time.sleep(1)
+ try:
+ proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
+ except:
+ print 'daemon still not running, aborting.'
#daemon = dbus.Interface(proxy_obj, 'org.wicd.daemon')
wireless = dbus.Interface(proxy_obj, 'org.wicd.daemon.wireless')
wired = dbus.Interface(proxy_obj, 'org.wicd.daemon.wired')
diff --git a/edgy.py b/edgy.py
index 7bc44bc..1d5afb1 100755
--- a/edgy.py
+++ b/edgy.py
@@ -16,10 +16,10 @@
########
import os,sys
if __name__ == '__main__':
- os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
+ os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
import gtk, gobject, dbus, dbus.service, os, sys, locale, gettext, signal, time
if getattr(dbus, 'version', (0,0,0)) >= (0,41,0):
- import dbus.glib
+ import dbus.glib
#############
#declare the connections to our daemon.
@@ -28,18 +28,18 @@ if getattr(dbus, 'version', (0,0,0)) >= (0,41,0):
#some connections aren't used so they are commented
bus = dbus.SystemBus()
try:
- print 'attempting to connect daemon...'
- proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
- print 'success'
+ print 'attempting to connect daemon...'
+ proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
+ print 'success'
except:
- print 'daemon not running, running gksudo ./daemon.py...'
- import misc
- misc.PromptToStartDaemon()
- time.sleep(5)
- try:
- proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
- except:
- print 'daemon still not running, aborting.'
+ print 'daemon not running, running gksudo ./daemon.py...'
+ import misc
+ misc.PromptToStartDaemon()
+ time.sleep(5)
+ try:
+ proxy_obj = bus.get_object('org.wicd.daemon', '/org/wicd/daemon')
+ except:
+ print 'daemon still not running, aborting.'
daemon = dbus.Interface(proxy_obj, 'org.wicd.daemon') # Had to uncomment it
wireless = dbus.Interface(proxy_obj, 'org.wicd.daemon.wireless')
wired = dbus.Interface(proxy_obj, 'org.wicd.daemon.wired')
@@ -50,10 +50,10 @@ local_path = os.path.realpath(os.path.dirname(sys.argv[0])) + '/translations'
langs = []
lc, encoding = locale.getdefaultlocale()
if (lc):
- langs = [lc]
+ langs = [lc]
osLanguage = os.environ.get('LANGUAGE', None)
if (osLanguage):
- langs += osLanguage.split(":")
+ langs += osLanguage.split(":")
langs += ["en_US"]
lang = gettext.translation('wicd', local_path, languages=langs, fallback = True)
_ = lang.gettext
@@ -68,146 +68,143 @@ pic=None
lastWinId = 0
def open_wicd_gui():
- global lastWinId
- ret = 0
- if lastWinId != 0:
- os.kill(lastWinId,signal.SIGQUIT)
- ret = os.waitpid(lastWinId,0)[1]
- lastWinId = 0
- if ret == 0:
- lastWinId = os.spawnlpe(os.P_NOWAIT, './gui.py', os.environ)
+ global lastWinId
+ ret = 0
+ if lastWinId != 0:
+ os.kill(lastWinId,signal.SIGQUIT)
+ ret = os.waitpid(lastWinId,0)[1]
+ lastWinId = 0
+ if ret == 0:
+ lastWinId = os.spawnlpe(os.P_NOWAIT, './gui.py', os.environ)
def set_signal_image():
- global LastStrength
- global stillWired #keeps us from resetting the wired info over and over
- global network #declared as global so it gets initialized before initial use
+ global LastStrength
+ global stillWired #keeps us from resetting the wired info over and over
+ global network #declared as global so it gets initialized before initial use
- # Disable logging if debugging isn't on to prevent log spam
- if not daemon.GetDebugMode():
- config.DisableLogging()
-
- wired_ip = wired.GetWiredIP()
- if wired.CheckPluggedIn() == True and wired_ip:
- if stillWired == False: # Only set image/tooltip if it hasn't been set already
- tr.set_from_file("images/wired.png")
- tr.set_tooltip(language['connected_to_wired'].replace('$A',wired_ip))
- stillWired = True
- lock = ''
- else:
- stillWired = False
-
- wireless_ip = wireless.GetWirelessIP()
- #If ip returns as None, we are probably returning from hibernation and need to force signal to 0 to avoid crashing
- if wireless_ip != None:
- signal = int(wireless.GetCurrentSignalStrength())
- else:
- signal = 0
-
- #only update if the signal strength has changed because doing I/O calls is expensive,
- #and the icon flickers
- if (signal != LastStrength or network != wireless.GetCurrentNetwork()) and wireless_ip != None:
- LastStrength = signal
- lock = '' #set the string to '' so that when it is put in "high-signal" + lock + ".png", there will be nothing
- curNetID = wireless.GetCurrentNetworkID() #the network ID needs to be checked because a negative value here will break the tray
- if signal > 0 and curNetID > -1 and wireless.GetWirelessProperty(curNetID,"encryption"):
- lock = '-lock' #set the string to '-lock' so that it will display the lock picture
- network = str(wireless.GetCurrentNetwork())
- tr.set_tooltip(language['connected_to_wireless'].replace('$A',network).replace('$B',str(signal)).replace('$C',str(wireless_ip)))
- if signal > 75:
- tr.set_from_file("images/high-signal" + lock + ".png")
- elif signal > 50:
- tr.set_from_file("images/good-signal" + lock + ".png")
- elif signal > 25:
- tr.set_from_file("images/low-signal" + lock + ".png")
- elif signal > 0:
- tr.set_from_file("images/bad-signal" + lock + ".png")
- elif signal == 0:
- tr.set_from_file("images/no-signal.png")
- elif wireless_ip == None:
- tr.set_from_file("images/no-signal.png")
- tr.set_tooltip(language['not_connected'])
- #Auto-reconnect code - not sure how well this works. I know that without the ForcedDisconnect check it reconnects you when
- #a disconnect is forced. People who have disconnection problems need to test it to determine if it actually works.
- #First it will attempt to reconnect to the last known wireless network, and if that fails it should run a scan and try to
- #connect to any network set to autoconnect. It will continuously rescan until a network is found or the user manually reconnects
- #This behavior could prove to be annoying, so we'll keep it in the experimental build for now
- if wireless.GetAutoReconnect() == True and wireless.CheckIfWirelessConnecting() == False and wireless.GetForcedDisconnect() == False:
- curNetID = wireless.GetCurrentNetworkID()
- if curNetID > -1: #value of -1 is typically caused by hibernation and breaks the tray if passed to daemon
- wireless.ConnectWireless(wireless.GetCurrentNetworkID())
- if wireless.GetCurrentSignalStrength() != 0:
- print "Successfully autoreconnected."
- else:
- print "Couldn't reconnect to last used network, scanning for an autoconnect network..."
- print wireless.AutoConnect(True)
- else:
- print "Scanning for an autoconnect network..."
- print wireless.AutoConnect(True)
+ # Disable logging if debugging isn't on to prevent log spam
+ if not daemon.GetDebugMode():
+ config.DisableLogging()
+
+ wired_ip = wired.GetWiredIP()
+ if wired.CheckPluggedIn() == True and wired_ip:
+ if stillWired == False: # Only set image/tooltip if it hasn't been set already
+ tr.set_from_file("images/wired.png")
+ tr.set_tooltip(language['connected_to_wired'].replace('$A',wired_ip))
+ stillWired = True
+ lock = ''
+ else:
+ stillWired = False
+ wireless_ip = wireless.GetWirelessIP()
+ #If ip returns as None, we are probably returning from hibernation and need to force signal to 0 to avoid crashing
+ if wireless_ip != None:
+ signal = int(wireless.GetCurrentSignalStrength())
+ else:
+ signal = 0
+
+ #only update if the signal strength has changed because doing I/O calls is expensive,
+ #and the icon flickers
+ if (signal != LastStrength or network != wireless.GetCurrentNetwork()) and wireless_ip != None:
+ LastStrength = signal
+ lock = '' #set the string to '' so that when it is put in "high-signal" + lock + ".png", there will be nothing
+ curNetID = wireless.GetCurrentNetworkID() #the network ID needs to be checked because a negative value here will break the tray
+ if signal > 0 and curNetID > -1 and wireless.GetWirelessProperty(curNetID,"encryption"):
+ lock = '-lock' #set the string to '-lock' so that it will display the lock picture
+ network = str(wireless.GetCurrentNetwork())
+ tr.set_tooltip(language['connected_to_wireless'].replace('$A',network).replace('$B',str(signal)).replace('$C',str(wireless_ip)))
+ if signal > 75:
+ tr.set_from_file("images/high-signal" + lock + ".png")
+ elif signal > 50:
+ tr.set_from_file("images/good-signal" + lock + ".png")
+ elif signal > 25:
+ tr.set_from_file("images/low-signal" + lock + ".png")
+ elif signal > 0:
+ tr.set_from_file("images/bad-signal" + lock + ".png")
+ elif signal == 0:
+ tr.set_from_file("images/no-signal.png")
+ #Auto-reconnect code - not sure how well this works. I know that without the ForcedDisconnect check it reconnects you when
+ #a disconnect is forced. People who have disconnection problems need to test it to determine if it actually works.
+ #First it will attempt to reconnect to the last known wireless network, and if that fails it should run a scan and try to
+ #connect to any network set to autoconnect. It will continuously rescan until a network is found or the user manually reconnects
+ #This behavior could prove to be annoying, so we'll keep it in the experimental build for now
+ if wireless.GetAutoReconnect() == True and wireless.CheckIfWirelessConnecting() == False and wireless.GetForcedDisconnect() == False:
+ curNetID = wireless.GetCurrentNetworkID()
+ if curNetID > -1: #value of -1 is typically caused by hibernation and breaks the tray if passed to daemon
+ wireless.ConnectWireless(wireless.GetCurrentNetworkID())
+ if wireless.GetCurrentSignalStrength() != 0:
+ print "Successfully autoreconnected."
+ else:
+ print "Couldn't reconnect to last used network, scanning for an autoconnect network..."
+ print wireless.AutoConnect(True)
+
+ elif wireless_ip == None:
+ tr.set_from_file("images/no-signal.png")
+ tr.set_tooltip(language['not_connected'])
- if not daemon.GetDebugMode():
- config.EnableLogging()
+ if not daemon.GetDebugMode():
+ config.EnableLogging()
- return True
+ return True
class TrackerStatusIcon(gtk.StatusIcon):
- def __init__(self):
- gtk.StatusIcon.__init__(self)
- menu = '''
-
-
-
-
-
- '''
- actions = [
- ('Menu', None, 'Menu'),
- ('Connect', gtk.STOCK_CONNECT, '_Connect...', None, 'Connect to network', self.on_preferences),
- ('About', gtk.STOCK_ABOUT, '_About...', None, 'About wicd-tray-icon', self.on_about),
- ('Quit',gtk.STOCK_QUIT,'_Quit',None,'Quit wicd-tray-icon', self.on_quit),
-
- ]
- ag = gtk.ActionGroup('Actions')
- ag.add_actions(actions)
- self.manager = gtk.UIManager()
- self.manager.insert_action_group(ag, 0)
- self.manager.add_ui_from_string(menu)
- self.menu = self.manager.get_widget('/Menubar/Menu/About').props.parent
- self.current_icon_path = ''
- self.set_from_file("images/no-signal.png")
- self.set_visible(True)
- self.connect('activate', self.on_activate)
- self.connect('popup-menu', self.on_popup_menu)
+ def __init__(self):
+ gtk.StatusIcon.__init__(self)
+ menu = '''
+
+
+
+
+
+ '''
+ actions = [
+ ('Menu', None, 'Menu'),
+ ('Connect', gtk.STOCK_CONNECT, '_Connect...', None, 'Connect to network', self.on_preferences),
+ ('About', gtk.STOCK_ABOUT, '_About...', None, 'About wicd-tray-icon', self.on_about),
+ ('Quit',gtk.STOCK_QUIT,'_Quit',None,'Quit wicd-tray-icon', self.on_quit),
+
+ ]
+ ag = gtk.ActionGroup('Actions')
+ ag.add_actions(actions)
+ self.manager = gtk.UIManager()
+ self.manager.insert_action_group(ag, 0)
+ self.manager.add_ui_from_string(menu)
+ self.menu = self.manager.get_widget('/Menubar/Menu/About').props.parent
+ self.current_icon_path = ''
+ self.set_from_file("images/no-signal.png")
+ self.set_visible(True)
+ self.connect('activate', self.on_activate)
+ self.connect('popup-menu', self.on_popup_menu)
- def on_activate(self, data):
- open_wicd_gui()
+ def on_activate(self, data):
+ open_wicd_gui()
- def on_quit(self,widget):
- sys.exit()
+ def on_quit(self,widget):
+ sys.exit()
- def on_popup_menu(self, status, button, time):
- self.menu.popup(None, None, None, button, time)
+ def on_popup_menu(self, status, button, time):
+ self.menu.popup(None, None, None, button, time)
- def on_preferences(self, data):
- open_wicd_gui()
+ def on_preferences(self, data):
+ open_wicd_gui()
- def on_about(self, data):
- dialog = gtk.AboutDialog()
- dialog.set_name('wicd tray icon')
- dialog.set_version('0.2')
- dialog.set_comments('an icon that shows your network connectivity')
- dialog.set_website('http://wicd.sourceforge.net')
- dialog.run()
- dialog.destroy()
+ def on_about(self, data):
+ dialog = gtk.AboutDialog()
+ dialog.set_name('wicd tray icon')
+ dialog.set_version('0.2')
+ dialog.set_comments('an icon that shows your network connectivity')
+ dialog.set_website('http://wicd.sourceforge.net')
+ dialog.run()
+ dialog.destroy()
- def set_from_file(self,path):
- if path != self.current_icon_path:
- self.current_icon_path = path
- gtk.StatusIcon.set_from_file(self,path)
+ def set_from_file(self,path):
+ if path != self.current_icon_path:
+ self.current_icon_path = path
+ gtk.StatusIcon.set_from_file(self,path)
LastStrength = -2
stillWired = False
diff --git a/misc.py b/misc.py
index 675e44c..fbcb624 100644
--- a/misc.py
+++ b/misc.py
@@ -2,138 +2,138 @@
#pretty much useless to anyone else...
#but if it is useful, feel free to use under the terms of the GPL
#
-# This is released under the
-# GNU General Public License
-# The terms can be found at
-# http://www.gnu.org/copyleft/gpl.html
+# This is released under the
+# GNU General Public License
+# The terms can be found at
+# http://www.gnu.org/copyleft/gpl.html
#
-# Copyright (C) 2007 Adam Blackburn
+# Copyright (C) 2007 Adam Blackburn
#
import os,sys
if __name__ == '__main__':
- os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
+ os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
import re
def Run(cmd,include_std_error=False):
- if not include_std_error:
- f = os.popen( cmd , "r")
- return f.read()
- else:
- input,out_err = os.popen4( cmd, 'r')
- return out_err.read()
+ if not include_std_error:
+ f = os.popen( cmd , "r")
+ return f.read()
+ else:
+ input,out_err = os.popen4( cmd, 'r')
+ return out_err.read()
def IsValidIP(ip):
- if ip != None: #make sure there is an IP
- if ip.count('.') == 3: #make sure the IP can be parsed (or at least it has the proper dots)
- ipNumbers = ip.split('.') #split it up
- if not '' in ipNumbers: #make sure the IP isn't something like 127..0.1
- return ipNumbers
- return False
+ if ip != None: #make sure there is an IP
+ if ip.count('.') == 3: #make sure the IP can be parsed (or at least it has the proper dots)
+ ipNumbers = ip.split('.') #split it up
+ if not '' in ipNumbers: #make sure the IP isn't something like 127..0.1
+ return ipNumbers
+ return False
def PromptToStartDaemon():
- gksudo_args = ['gksudo', '--message', 'Wicd needs to access your computer\'s network cards.','--','./daemon.py']
- os.spawnvpe(os.P_NOWAIT, 'gksudo', gksudo_args, os.environ)
+ gksudo_args = ['gksudo', '--message', 'Wicd needs to access your computer\'s network cards.','--','./daemon.py']
+ os.spawnvpe(os.P_NOWAIT, 'gksudo', gksudo_args, os.environ)
def RunRegex(regex,string):
- m = regex.search( string )
- if m:
- return m.groups()[0]
- else:
- return None
+ m = regex.search( string )
+ if m:
+ return m.groups()[0]
+ else:
+ return None
def WriteLine(file,text):
- file.write(text + "\n")
+ file.write(text + "\n")
def ReadFile(filename):
- if not os.path.exists(filename):
- return None
- file = open(filename,'r')
- data = file.read().strip()
- file.close()
- return str(data)
+ if not os.path.exists(filename):
+ return None
+ file = open(filename,'r')
+ data = file.read().strip()
+ file.close()
+ return str(data)
def Noneify(variable):
- #set string Nones to real Nones
- if variable == "None" or variable == "":
- return None
- if variable == "True": # or variable == "1": # or variable == 1:
- return True
- if variable == "False": #or variable == "0": # or variable == 0:
- return False
- #if str(variable).isdigit() == True:
- # return int(variable)
- if str(variable) == "1":
- return True
- if str(variable) == "0":
- return False
- #otherwise...
- return variable
+ #set string Nones to real Nones
+ if variable == "None" or variable == "":
+ return None
+ if variable == "True": # or variable == "1": # or variable == 1:
+ return True
+ if variable == "False": #or variable == "0": # or variable == 0:
+ return False
+ #if str(variable).isdigit() == True:
+ # return int(variable)
+ if str(variable) == "1":
+ return True
+ if str(variable) == "0":
+ return False
+ #otherwise...
+ return variable
def ParseEncryption(network):
- #list = open("encryption/templates/active","r")
- #types = list.readlines()
- #for i in types:
- enctemplate = open("encryption/templates/" + network["enctype"])
- template = enctemplate.readlines()
- #set these to nothing so that we can hold them outside the loop
- z = "ap_scan=1\n"
- y = 0
- #loop through the lines in the template, selecting ones to use
- for x in template:
- x = x.strip("\n")
- if y>4:
- #blah blah replace stuff
- x = x.replace("$_SCAN","0")
- for t in network:
- if Noneify(network[t]) != None: #don't bother if z's value is None cause it will cause errors
- x = x.replace("$_" + str(t).upper(),str(network[t]))
- z = z + "\n" + x
- y+=1
- #write the data to the files
- #then chmod them so they can't be read by evil little munchkins
- fileness = open("encryption/configurations/" + network["bssid"].replace(":","").lower(),"w")
- os.chmod("encryption/configurations/" + network["bssid"].replace(":","").lower(),0600)
- os.chown("encryption/configurations/" + network["bssid"].replace(":","").lower(), 0, 0)
- #we could do this above, but we'd like to permod (permission mod) them before we write, so that it can't be read
- fileness.write(z)
- fileness.close()
+ #list = open("encryption/templates/active","r")
+ #types = list.readlines()
+ #for i in types:
+ enctemplate = open("encryption/templates/" + network["enctype"])
+ template = enctemplate.readlines()
+ #set these to nothing so that we can hold them outside the loop
+ z = "ap_scan=1\n"
+ y = 0
+ #loop through the lines in the template, selecting ones to use
+ for x in template:
+ x = x.strip("\n")
+ if y>4:
+ #blah blah replace stuff
+ x = x.replace("$_SCAN","0")
+ for t in network:
+ if Noneify(network[t]) != None: #don't bother if z's value is None cause it will cause errors
+ x = x.replace("$_" + str(t).upper(),str(network[t]))
+ z = z + "\n" + x
+ y+=1
+ #write the data to the files
+ #then chmod them so they can't be read by evil little munchkins
+ fileness = open("encryption/configurations/" + network["bssid"].replace(":","").lower(),"w")
+ os.chmod("encryption/configurations/" + network["bssid"].replace(":","").lower(),0600)
+ os.chown("encryption/configurations/" + network["bssid"].replace(":","").lower(), 0, 0)
+ #we could do this above, but we'd like to permod (permission mod) them before we write, so that it can't be read
+ fileness.write(z)
+ fileness.close()
def LoadEncryptionMethods():
- encryptionTypes = {}
- types = open("encryption/templates/active","r")
- enctypes = types.readlines()
- for x in enctypes:
- #skip some lines, we don't care who the author is/was, etc
- #we don't care about version either
- x = x.strip("\n")
- current = open("encryption/templates/" + x,"r")
- line = current.readlines()
- typeID = len(encryptionTypes) #this is so we know where in the array to add data
- encryptionTypes[typeID] = {}
- encryptionTypes[typeID][0] = line[0][7:].strip("\n")
- encryptionTypes[typeID][1] = x
- encryptionTypes[typeID][2] = {}
- requiredFields = line[3][8:]
- requiredFields = requiredFields.strip("\n")
- requiredFields = requiredFields.split(" ")
- index = -1
- for current in requiredFields:
- #the pretty names will start with an * so we can
- #seperate them with that
- if current[0] == "*":
- #make underscores spaces
- #and remove the *
- encryptionTypes[typeID][2][index][0] = current.replace("_"," ").lstrip("*")
- else:
- #add to the list of things that are required
- index = len(encryptionTypes[typeID][2])
- encryptionTypes[typeID][2][index] = {}
- encryptionTypes[typeID][2][index][1] = current
- return encryptionTypes
+ encryptionTypes = {}
+ types = open("encryption/templates/active","r")
+ enctypes = types.readlines()
+ for x in enctypes:
+ #skip some lines, we don't care who the author is/was, etc
+ #we don't care about version either
+ x = x.strip("\n")
+ current = open("encryption/templates/" + x,"r")
+ line = current.readlines()
+ typeID = len(encryptionTypes) #this is so we know where in the array to add data
+ encryptionTypes[typeID] = {}
+ encryptionTypes[typeID][0] = line[0][7:].strip("\n")
+ encryptionTypes[typeID][1] = x
+ encryptionTypes[typeID][2] = {}
+ requiredFields = line[3][8:]
+ requiredFields = requiredFields.strip("\n")
+ requiredFields = requiredFields.split(" ")
+ index = -1
+ for current in requiredFields:
+ #the pretty names will start with an * so we can
+ #seperate them with that
+ if current[0] == "*":
+ #make underscores spaces
+ #and remove the *
+ encryptionTypes[typeID][2][index][0] = current.replace("_"," ").lstrip("*")
+ else:
+ #add to the list of things that are required
+ index = len(encryptionTypes[typeID][2])
+ encryptionTypes[typeID][2][index] = {}
+ encryptionTypes[typeID][2][index][1] = current
+ return encryptionTypes
def noneToString(text):
- '''used for putting text in a text box if the value to put in is 'None' the box will be blank'''
- if text == None or text == "None" or text == "":
- return "None"
- else:
- return str(text)
+ '''used for putting text in a text box if the value to put in is 'None' the box will be blank'''
+ if text == None or text == "None" or text == "":
+ return "None"
+ else:
+ return str(text)
diff --git a/tray.py b/tray.py
index f9385c5..e060956 100644
--- a/tray.py
+++ b/tray.py
@@ -1,9 +1,9 @@
#!/usr/bin/python
import os,sys
if __name__ == '__main__':
- os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
+ os.chdir(os.path.dirname(os.path.normpath(os.path.join(os.getcwd(),sys.argv[0]))))
import gtk
if gtk.gtk_version[0] >= 2 and gtk.gtk_version[1] >= 10:
- import edgy
+ import edgy
else:
- import dapper
+ import dapper