Implemented theme-bg option.
[drlaunch] / src / config.py
index 91e0a2e..c441d7e 100755 (executable)
@@ -59,6 +59,7 @@ class Config:
        self.id=id
 
        self.size = (2,2)
+       self.themebgsize = 96
        self.iconsize = 64
 #      self.iconspace = 42     # For 4 icons (height)
        self.iconspace = 36     # For 8 icons (width)
@@ -67,6 +68,7 @@ class Config:
        self.longpress=False
        self.animate=True
        self.nobg=False
+       self.themebg=False
 
        self.maxsz=(8,4)
 
@@ -106,6 +108,12 @@ class Config:
     def getNoBg(self):
        return(self.nobg)
 
+    def setThemeBg(self, themebg):
+       self.themebg=themebg
+
+    def getThemeBg(self):
+       return(self.themebg)
+
     def setApps(self, aps):
        """ apps is a dictionary of (x,y)=>appname """
        self.apps=aps
@@ -140,6 +148,7 @@ class Config:
            'longpress':    self.getLongpress(),
            'animate':      self.getAnimate(),
            'nobg':         self.getNoBg(),
+           'themebg':      self.getThemeBg(),
            }
 
        fn=get_config_fn()
@@ -191,6 +200,14 @@ class Config:
 
        return(dt)
 
+    def parse_v5(self, dt):
+       dt['version']=6
+
+       for i in dt['data']:
+           dt['data'][i]['themebg']=False
+
+       return(dt)
+
     def load_all(self):
        fn=get_config_fn()
 
@@ -214,6 +231,9 @@ class Config:
 
                if ret['version']==4:
                    ret=parse_v4(ret)
+
+               if ret['version']==5:
+                   ret=parse_v5(ret)
        except:
            ret=None
 
@@ -237,6 +257,7 @@ class Config:
        self.setLongpress(dt['longpress'])
        self.setAnimate(dt['animate'])
        self.setNoBg(dt['nobg'])
+       self.setThemeBg(dt['themebg'])
 
     def check_init(self):
        if self.id==None: