fix progress scaling and remove unneeded project paramter from dvd media toolbox
[enigma2.git] / lib / python / Plugins / Extensions / DVDBurn / TitleList.py
index 92fac1bba1c4f9fb67eb647a88de58fc2a0ead48..2c2d16c83503b9b7ee3a540baf0b27390051355c 100644 (file)
@@ -1,9 +1,11 @@
-import DVDProject, TitleList, TitleCutter, ProjectSettings, DVDToolbox
+import DVDProject, TitleList, TitleCutter, ProjectSettings, DVDToolbox, Process
 from Screens.Screen import Screen
 from Screens.ChoiceBox import ChoiceBox
 from Screens.InputBox import InputBox
 from Screens.MessageBox import MessageBox
 from Screens.HelpMenu import HelpableScreen
 from Screens.Screen import Screen
 from Screens.ChoiceBox import ChoiceBox
 from Screens.InputBox import InputBox
 from Screens.MessageBox import MessageBox
 from Screens.HelpMenu import HelpableScreen
+from Screens.TaskView import JobView
+from Components.Task import job_manager
 from Components.ActionMap import HelpableActionMap, ActionMap
 from Components.Sources.List import List
 from Components.Sources.StaticText import StaticText
 from Components.ActionMap import HelpableActionMap, ActionMap
 from Components.Sources.List import List
 from Components.Sources.StaticText import StaticText
@@ -13,7 +15,7 @@ from Components.Label import Label
 from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_LEFT
 from Tools.Directories import resolveFilename, SCOPE_PLUGINS
 
 from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_LEFT
 from Tools.Directories import resolveFilename, SCOPE_PLUGINS
 
-class TitleList(Screen):
+class TitleList(Screen, HelpableScreen):
        skin = """
                <screen position="90,83" size="560,445" title="DVD Tool" >
                    <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
        skin = """
                <screen position="90,83" size="560,445" title="DVD Tool" >
                    <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
@@ -35,6 +37,7 @@ class TitleList(Screen):
 
        def __init__(self, session, project = None):
                Screen.__init__(self, session)
 
        def __init__(self, session, project = None):
                Screen.__init__(self, session)
+               HelpableScreen.__init__(self)
                
                self["titleactions"] = HelpableActionMap(self, "DVDTitleList",
                        {
                
                self["titleactions"] = HelpableActionMap(self, "DVDTitleList",
                        {
@@ -162,7 +165,7 @@ class TitleList(Screen):
                        self.updateTitleList()
 
        def toolbox(self):
                        self.updateTitleList()
 
        def toolbox(self):
-               self.session.open(DVDToolbox.DVDToolbox, self.project)
+               self.session.open(DVDToolbox.DVDToolbox)
 
        def settings(self):
                self.session.openWithCallback(self.settingsCB, ProjectSettings.ProjectSettings, self.project)
 
        def settings(self):
                self.session.openWithCallback(self.settingsCB, ProjectSettings.ProjectSettings, self.project)
@@ -184,24 +187,28 @@ class TitleList(Screen):
 
        def burnProject(self):
                if self.project.settings.authormode.getValue() == "data_ts":
 
        def burnProject(self):
                if self.project.settings.authormode.getValue() == "data_ts":
-                       import Process
-                       job = Process.BurnDataTS(self.session, self.project)
-                       from Screens.TaskView import JobView
-                       self.session.open(JobView, job)
+                       job = Process.DVDdataJob(self.project)
+                       job_manager.AddJob(job)
+                       job_manager.in_background = False
+                       self.session.openWithCallback(self.JobViewCB, JobView, job)
                else:
                        autochapter = self.project.settings.autochapter.getValue()
                        if autochapter > 0:
                                for title in self.project.titles:
                                        title.produceAutoChapter(autochapter)
                else:
                        autochapter = self.project.settings.autochapter.getValue()
                        if autochapter > 0:
                                for title in self.project.titles:
                                        title.produceAutoChapter(autochapter)
-                       import Process
-                       job = Process.Burn(self.session, self.project)
-                       from Screens.TaskView import JobView
-                       self.session.open(JobView, job)
+                       job = Process.DVDJob(self.project)
+                       job_manager.AddJob(job)
+                       job_manager.in_background = False
+                       self.session.openWithCallback(self.JobViewCB, JobView, job)
 
 
-       def previewMenu(self):
-               import Process
-               job = Process.PreviewMenu(self.session, self.project)
+       def JobViewCB(self, in_background):
+               job_manager.in_background = in_background
 
 
+       def previewMenu(self):
+               job = Process.DVDJob(self.project, menupreview=True)
+               job_manager.in_background = False
+               job_manager.AddJob(job)
+               
        def updateTitleList(self):
                res = [ ]
                totalsize = 0
        def updateTitleList(self):
                res = [ ]
                totalsize = 0