Example #1
0
def addserverdialog(db):
    server_type=browse.var(interop.anchor['servertype'].default)
    brw=browse.DialogBrowse(desktop.main_window,u'Konfigurace serverů')
    brw.vbox(border=5)
    brw.label(text=u'Typ serveru:')
    brw.combo(model=list(interop.anchor['servertype']),valuemodel=server_type,autosave=True)
    brw.defokcancel()
    brw.endsizer()
    if brw.run()==wx.ID_OK:
        songdb.DBServer.insertobject(db,{'type':server_type.get().name})
        db.commit()
        interop.send_flag('reloaddb')
Example #2
0
 def updateserver(self,ev):
     try:
         dlg=wx.ProgressDialog(u"Aktualizace ze serveru",u"Aktualizace ze serveru",parent=desktop.main_window)
         db, serverid = self.serverctrl.getcurdbtuple()
         server = db.server(serverid).iserver()
         self.getcurdb().clearserver(serverid)
         s = server.download_db()
         xml = etree.parse(StringIO(s))
         self.getcurdb().importxml(xml, serverid)
         interop.send_flag('reloaddb')
     finally:
         dlg.Destroy()
Example #3
0
def editgroupdialog(group):
    brw=browse.DialogBrowse(desktop.main_window,u'Upravit skupinu')
    brw.vbox()
    brw.grid(rows=2,cols=2,border=5)
    brw.label(text=u'Jméno')
    brw.edit(model=browse.attr(group,'name'))
    brw.label(text=u'Web')
    brw.edit(model=browse.attr(group,'url'))
    brw.endsizer()
    brw.defokcancel()
    brw.endsizer()
    if brw.run()==wx.ID_OK:
        group.commit()
        interop.send_flag('reloaddb')
Example #4
0
def editsong(song):
    brw=browse.DialogBrowse(desktop.main_window,u'Úprava písně')
    brw.vbox()
    brw.hbox(border=5)
    brw.label(text=u'Název:')
    brw.edit(model=browse.attr(song,'title'))
    brw.label(text=u'Autor:')
    brw.edit(model=browse.attr(song,'author'))
    brw.label(text=u'Skupina:')
    brw.combo(model=songdb.DBGroup.enum(song.db),valuemodel=browse.attr(song,'groupobj'))
    brw.endsizer()
    brw.memo(proportion=1,size=(-1,300),model=browse.attr(song,'text'))
    brw.hbox(border=5,layoutflags=wx.CENTER)
    brw.button(text='OK',event=lambda ev:brw.ok())
    brw.button(text='Storno',event=lambda ev:brw.cancel())
    brw.endsizer()
    brw.endsizer()
    if brw.run()==wx.ID_OK:
        song.commit()
        interop.send_flag('reloaddb')
Example #5
0
def addgroupdialog(db):   
    server=browse.var(dbobject.EmptyDBObject())
    name=browse.var('??')
    url=browse.var('')
    brw=browse.DialogBrowse(desktop.main_window,u'Přidat skupinu')
    brw.vbox()
    brw.grid(rows=2,cols=2,border=5)
    brw.label(text=u'Server (už nepůjde měnit)')
    #print [songdb.EmptyDBObject()]+songdb.DBServer.enum(db)
    brw.combo(model=([dbobject.EmptyDBObject()]+songdb.DBServer.enum(db)),valuemodel=server)
    brw.label(text=u'Jméno')
    brw.edit(model=name)
    brw.label(text=u'Web')
    brw.edit(model=url)
    brw.endsizer()
    brw.defokcancel()
    brw.endsizer()
    if brw.run()==wx.ID_OK:
        songdb.DBGroup.insertobject(db,{'name':name.get(),'url':url.get(),'serverid':server.get().id})
        db.commit()
        interop.send_flag('reloaddb')
Example #6
0
def dbimportdialog(db):
    def addfile(ev):
        file=utils.open_dialog(desktop.main_window,'*.*')
        if file:
            brw['files'].append(file)

    files=[]
    filter=browse.var(interop.anchor['importfilter'].default)
    server=browse.var(dbobject.EmptyDBObject())

    brw=browse.DialogBrowse(desktop.main_window,u'Import')
    brw.vbox(border=5)
    brw.label(text=u'Soubory:')
    brw.listbox(model=files,id='files')
    brw.button(text=u'Přidat',event=addfile)

    brw.hbox(border=5)
    brw.label(text=u'Filtry:')
    brw.combo(model=list(interop.anchor['importfilter']),valuemodel=filter)
    brw.endsizer()

    brw.hbox(border=5)
    brw.label(text=u'Server:')
    brw.combo(model=[dbobject.EmptyDBObject()]+songdb.DBServer.enum(db),valuemodel=server)
    brw.endsizer()

    brw.defokcancel()
    brw.endsizer()

    if brw.run()==wx.ID_OK:
        try:
            dlg=wx.ProgressDialog(u"Import písní",u"Import písní",parent=desktop.main_window)
            xml=filter.get().getsongxml(files)
            db.importxml(xml,server.get().id)
        finally:
            dlg.Destroy()
        interop.send_flag('reloaddb')
Example #7
0
def recreate_menu():
    interop.send_flag('recreate_menu')
Example #8
0
def editserverdialog(server):
    server_object=server.iserver()
    if server_object.edit():
        server.assign(server_object)
        server.commit()
        interop.send_flag('reloaddb')
Example #9
0
 def clearserver(self,ev):
     self.getcurdb().clearserver(self.serverctrl.getcurdbtuple()[1])
     interop.send_flag('reloaddb')
Example #10
0
 def wantformat(self):
     interop.send_flag('format_songbook')