[Pychord-commits] r53 - trunk/pychord2

danilo at garage.maemo.org danilo at garage.maemo.org
Mon Mar 10 14:26:52 EET 2008


Author: danilo
Date: 2008-03-10 14:26:49 +0200 (Mon, 10 Mar 2008)
New Revision: 53

Added:
   trunk/pychord2/main_window.py
   trunk/pychord2/window_info.py
Log:
- Main window added
- ConfigWindow added

Added: trunk/pychord2/main_window.py
===================================================================
--- trunk/pychord2/main_window.py	                        (rev 0)
+++ trunk/pychord2/main_window.py	2008-03-10 12:26:49 UTC (rev 53)
@@ -0,0 +1,52 @@
+# -*- coding: utf-8 -*-
+from pgui import window
+from pgui import label
+from pgui import input
+#from pgui import locale
+from pgui import Tbutton
+from pgui import Ibutton
+from pgui import combo
+
+
+class main_window( window ):
+    
+    def __init__(self, screen, pyc):
+        window.__init__(self, None, screen )
+        self.setBackground((0,0,0))
+        
+        # Configuration handler
+        self.pyc = pyc
+        
+        btX = Ibutton(self,[730,10],"x.png")
+        btX.registerClickSlot(self.close)
+        self.addElement(btX)
+        
+        btI = Ibutton(self,[730,100],"i.png")
+        btI.registerClickSlot(self.ShowInfo)
+        self.addElement(btI)
+        
+        lblSearch = label(self,[20,30],"Search", ptsize = 50)
+        self.addElement(lblSearch)
+        
+        self.sbox = input(self, [20,80],"",width=650)
+        self.addElement(self.sbox)
+        
+        self.comboBox = combo(self,[20, 160],{'tab':'By Word','artist':'By Artist','song':'By Music'})
+        self.comboBox.select('tab')
+        self.addElement(self.comboBox)
+        
+        btS = Tbutton(self, [470,230],"Search", width = 200, height = 50)
+        btS.registerClickSlot(self.search)
+        self.addElement(btS)
+        
+    def search(self):
+        print self.comboBox.selected
+        window = window_searching(self.screen, self.comboBox.value, self.sbox.text, self.pyc )
+        window.show()
+        
+    def ShowInfo(self):
+        from window_info import window_info
+        window = window_info(self.screen, self.pyc)
+        window.show()
+        self.dirty = True
+        
\ No newline at end of file

Added: trunk/pychord2/window_info.py
===================================================================
--- trunk/pychord2/window_info.py	                        (rev 0)
+++ trunk/pychord2/window_info.py	2008-03-10 12:26:49 UTC (rev 53)
@@ -0,0 +1,106 @@
+# -*- coding: utf-8 -*-
+from pgui import window
+from pgui import label
+from pgui import input
+#from pgui import locale
+from pgui import Tbutton
+from pgui import Ibutton
+from pgui import combo
+
+
+class window_info( window ):
+    
+    def __init__(self, screen, pyc):
+        window.__init__(self, None, screen )
+        self.setBackground((0,0,0))
+        
+        self.pyc = pyc
+        
+        btX = Ibutton(self,[730,10],"x.png")
+        btX.registerClickSlot(self.close)
+        self.addElement(btX)
+        
+        # Title Label
+        lbl = label(self,[20,30],"Configuration", ptsize = 50)
+        self.addElement(lbl)
+        
+        lbl = label(self,[20,100],"Database File:")
+        self.addElement(lbl)
+        
+        self.adv = Tbutton(self,[600,30], "Advanced Options", ptsize = 15)
+        self.adv.registerClickSlot(self.onAdvClick)
+        self.addElement(self.adv)
+
+        
+        
+        self.DbFile = combo(self,[20, 130],{'/home/user/pychord.db':'Internal Memory','/media/mmc2/pychord.db':'Internal Memory Card','/media/mmc1/pychord.db':'External Memory Card'},
+                              width = 700)
+        self.DbFile.select('/home/user/pychord.db')
+        self.addElement(self.DbFile)
+        
+        
+        lbl = label(self,[20,210],"Song Directory")
+        self.addElement(lbl)
+        
+        self.SongDir = combo(self,[20, 240],
+                                  {'/home/user/MyDocs/pychord/':  'MyDocs/Pychord/         (Internal Memory)',
+                                   '/media/mmc2/pychord/':'Pychord/          (Internal Memory Card)',
+                                   '/media/mmc1/pychord/':'Pychord/          (External Memory Card)'},
+                              width = 700)
+        self.SongDir.select('/home/user/MyDocs/pychord/')
+        self.addElement(self.SongDir)
+        
+        btS = Tbutton(self, [470,410],"Save", width = 200, height = 50)
+        btS.registerClickSlot(self.save)
+        self.addElement(btS)
+        
+        btS = Tbutton(self, [200,410],"Update", width = 200, height = 50)
+        btS.registerClickSlot(self.updateSongs)
+        self.addElement(btS)
+        
+    # Show Advanced Options    
+    def onAdvClick(self):
+        self.delElement(self.DbFile)
+        self.delElement(self.SongDir)
+        
+        dbfile = self.DbFile.selected
+        self.DbFile = input(self, [20, 130], dbfile, width = 700)
+        self.addElement(self.DbFile)
+        
+        songdir = self.SongDir.selected
+        self.SongDir = input(self, [20, 240], songdir, width = 700)
+        self.addElement(self.SongDir)
+        
+        self.delElement(self.adv)
+        self.adv = None
+        
+        self.repaint()
+        
+        
+            
+    def save(self):
+        if self.adv == None:
+            self.pyc.opt['db'] = self.DbFile.text
+            self.pyc.opt['datadir'] = self.SongDir.text
+        else:
+            self.pyc.opt['db'] = self.DbFile.selected
+            self.pyc.opt['datadir'] = self.SongDir.selected
+        self.pyc.save()
+        
+    def updateSongs(self):
+        from pysql import pysql
+        p = pysql(self.pyc.opt['db'],self.pyc.opt['datadir'])
+        if self.cmbopt.value == 'replace':
+            p.create()
+            
+        uplabel = label(self,[300,200],"Updating", ptsize = 40, bgcolor = (255,0,0))
+        uplabel.draw(screen)
+        pygame.display.flip()
+        p.update()
+        uplabel = ilabel(self, [300,200],"   Updated  ", ptsize = 40, bgcolor = (0,0,255))
+        uplabel.draw(screen)
+        pygame.display.flip()
+        import time
+        time.sleep(3)        
+        
+        self.repaint()
\ No newline at end of file



More information about the Pychord-commits mailing list