Project/Project.py

changeset 151
00c27aeede62
parent 122
34a81cd4420b
child 152
ee3a13a0ad59
diff -r 6ca76837a2d4 -r 00c27aeede62 Project/Project.py
--- a/Project/Project.py	Tue Mar 23 07:48:45 2010 +0000
+++ b/Project/Project.py	Wed Mar 24 08:43:48 2010 +0000
@@ -114,7 +114,7 @@
     keynames = [
         "PROGLANGUAGE", "MIXEDLANGUAGE", "PROJECTTYPE",
         "SPELLLANGUAGE", "SPELLWORDS", "SPELLEXCLUDES", 
-        "DESCRIPTION", "VERSION",
+        "DESCRIPTION", "VERSION", "HASH",
         "AUTHOR", "EMAIL",
         "SOURCES", "FORMS", "RESOURCES",
         "TRANSLATIONS", "TRANSLATIONPATTERN", "TRANSLATIONSBINPATH", 
@@ -300,8 +300,9 @@
         for key in self.__class__.keynames:
             self.pdata[key] = []
         self.pdata["AUTHOR"] = ['']
-        self.pdata["EMAIL"] = ['']
-        self.pdata["PROGLANGUAGE"] = ["Python"]
+        self.pdata["EMAIL"] = ['']
+        self.pdata["HASH"] = ['']
+        self.pdata["PROGLANGUAGE"] = ["Python3"]
         self.pdata["MIXEDLANGUAGE"] = [False]
         self.pdata["PROJECTTYPE"] = ["Qt4"]
         self.pdata["SPELLLANGUAGE"] = \
@@ -621,7 +622,15 @@
             for fn in self.pdata["OTHERS"]:
                 dn = os.path.dirname(fn)
                 if dn not in self.otherssubdirs:
-                    self.otherssubdirs.append(dn)
+                    self.otherssubdirs.append(dn)
+            
+            # create hash value, if it doesn't have one
+            if not self.pdata["HASH"][0]:
+                hash = str(QCrytographicHash.hash(
+                    QByteArray(self.ppath), QCryptographicHash.Sha1),
+                    encoding = "utf-8")
+                self.pdata["HASH"] = [hash]
+                self.setDirty(True)
             
         return res
 
@@ -2251,7 +2260,12 @@
             self.pluginGrp.setEnabled(self.pdata["PROJECTTYPE"][0] == "E4Plugin")
             
             self.emit(SIGNAL("projectAboutToBeCreated"))
-            
+            
+            hash = str(QCrytographicHash.hash(
+                QByteArray(self.ppath), QCryptographicHash.Sha1),
+                encoding = "utf-8")
+            self.pdata["HASH"] = [hash]
+            
             # create the project directory if it doesn't exist already
             if not os.path.isdir(self.ppath):
                 try:

eric ide

mercurial