eric7/E5XML/TasksWriter.py

branch
eric7
changeset 8351
7d13e08ddb3f
parent 8350
74a3b2a6a944
child 8352
879dc528461f
--- a/eric7/E5XML/TasksWriter.py	Fri May 21 20:14:48 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-# -*- coding: utf-8 -*-
-
-# Copyright (c) 2005 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
-#
-
-"""
-Module implementing the writer class for writing an XML tasks file.
-"""
-
-import time
-
-from E5Gui.E5Application import e5App
-
-from .XMLStreamWriterBase import XMLStreamWriterBase
-from .Config import tasksFileFormatVersion
-
-import Preferences
-import Utilities
-
-
-class TasksWriter(XMLStreamWriterBase):
-    """
-    Class implementing the writer class for writing an XML tasks file.
-    """
-    def __init__(self, device, forProject=False, projectName=""):
-        """
-        Constructor
-        
-        @param device reference to the I/O device to write to (QIODevice)
-        @param forProject flag indicating project related mode (boolean)
-        @param projectName name of the project (string)
-        """
-        XMLStreamWriterBase.__init__(self, device)
-        
-        self.name = projectName
-        self.forProject = forProject
-        
-    def writeXML(self):
-        """
-        Public method to write the XML to the file.
-        """
-        XMLStreamWriterBase.writeXML(self)
-        
-        self.writeDTD('<!DOCTYPE Tasks SYSTEM "Tasks-{0}.dtd">'.format(
-            tasksFileFormatVersion))
-        
-        # add some generation comments
-        if self.forProject:
-            self.writeComment(
-                " eric tasks file for project {0} ".format(self.name))
-            if Preferences.getProject("TimestampFile"):
-                self.writeComment(" Saved: {0} ".format(
-                    time.strftime('%Y-%m-%d, %H:%M:%S')))
-        else:
-            self.writeComment(" eric tasks file ")
-            self.writeComment(
-                " Saved: {0} ".format(time.strftime('%Y-%m-%d, %H:%M:%S')))
-        
-        # add the main tag
-        self.writeStartElement("Tasks")
-        self.writeAttribute("version", tasksFileFormatVersion)
-        
-        # write the project scan filter
-        if self.forProject:
-            self.writeTextElement(
-                "ProjectScanFilter",
-                e5App().getObject("TaskViewer").getTasksScanFilter())
-        
-        # do the tasks
-        tasks = (
-            e5App().getObject("TaskViewer").getProjectTasks()
-            if self.forProject else
-            e5App().getObject("TaskViewer").getGlobalTasks()
-        )
-        for task in tasks:
-            self.writeStartElement("Task")
-            self.writeAttribute("priority", str(task.priority.value))
-            self.writeAttribute("completed", str(task.completed))
-            self.writeAttribute("type", str(task.taskType.value))
-            self.writeAttribute("uid", task.uid)
-            if task.parentUid:
-                self.writeAttribute("parent_uid", task.parentUid)
-            if task.childCount() > 0:
-                self.writeAttribute("expanded", str(task.isExpanded()))
-            
-            self.writeTextElement("Summary", task.summary.strip())
-            self.writeTextElement("Description", task.description.strip())
-            self.writeTextElement("Created", time.strftime(
-                "%Y-%m-%d, %H:%M:%S", time.localtime(task.created)))
-            if task.filename:
-                self.writeStartElement("Resource")
-                self.writeTextElement(
-                    "Filename",
-                    Utilities.fromNativeSeparators(task.filename))
-                self.writeTextElement("Linenumber", str(task.lineno))
-                self.writeEndElement()
-            self.writeEndElement()
-        
-        self.writeEndElement()
-        self.writeEndDocument()

eric ide

mercurial