Esempio n. 1
0
 def saveAndLoad(self, tasks, categories=None, notes=None):
     categories = categories or []
     notes = notes or []
     self.emptyTaskFile.tasks().extend(tasks)
     self.emptyTaskFile.categories().extend(categories)
     self.emptyTaskFile.notes().extend(notes)
     self.emptyTaskFile.save()
     self.emptyTaskFile.load()
     self.assertEqual([task.subject() for task in tasks], 
         [task.subject() for task in self.emptyTaskFile.tasks()])
     self.assertEqual([category.subject() for category in categories],
         [category.subject() for category in self.emptyTaskFile.categories()])
     self.assertEqual([note.subject() for note in notes],
         [note.subject() for note in self.emptyTaskFile.notes()])
Esempio n. 2
0
 def _createColumns(self):
     columns = [widgets.Column(name, columnHeader,
             width=self.getColumnWidth(name), 
             resizeCallback=self.onResizeColumn,
             renderCallback=renderCallback, 
             sortCallback=uicommand.ViewerSortByCommand(viewer=self, 
                 value=name.lower(), menuText=sortMenuText, 
                 helpText=sortHelpText),
             imageIndexCallback=imageIndexCallback,
             *eventTypes) \
         for name, columnHeader, sortMenuText, sortHelpText, eventTypes, renderCallback, imageIndexCallback in \
         ('subject', _('Subject'), _('&Subject'), _('Sort notes by subject'), 
             (note.Note.subjectChangedEventType(),), 
             lambda note: note.subject(recursive=False), 
             self.subjectImageIndex),
         ('description', _('Description'), _('&Description'), 
             _('Sort notes by description'), 
             (note.Note.descriptionChangedEventType(),), 
             lambda note: note.description(), lambda *args: -1),
         ('categories', _('Categories'), _('&Categories'), 
             _('Sort notes by categories'), 
             (note.Note.categoryAddedEventType(), 
              note.Note.categoryRemovedEventType(), 
              note.Note.categorySubjectChangedEventType(),
              note.Note.expansionChangedEventType()), 
             self.renderCategories, lambda *args: -1)]
     attachmentsColumn = widgets.Column('attachments', '', 
         note.Note.attachmentsChangedEventType(), # pylint: disable-msg=E1101
         width=self.getColumnWidth('attachments'),
         alignment=wx.LIST_FORMAT_LEFT,
         imageIndexCallback=self.attachmentImageIndex,
         headerImageIndex=self.imageIndex['paperclip_icon'],
         renderCallback=lambda note: '')
     columns.insert(2, attachmentsColumn)
     return columns
Esempio n. 3
0
 def _createColumns(self):
     subjectColumn = widgets.Column('subject', _('Subject'), 
         width=self.getColumnWidth('subject'), 
         resizeCallback=self.onResizeColumn,
         renderCallback=lambda note: note.subject(),
         sortCallback=uicommand.ViewerSortByCommand(viewer=self, 
             value='subject', menuText=_('&Subject'), 
             helpText=_('Sort notes by subject')),
         imageIndicesCallback=self.subjectImageIndices,
         editCallback=self.onEditSubject,
         editControl=inplace_editor.SubjectCtrl)
     descriptionColumn = widgets.Column('description', _('Description'),
         note.Note.descriptionChangedEventType(),
         width=self.getColumnWidth('description'), 
         resizeCallback=self.onResizeColumn,
         renderCallback=lambda note: note.description(),
         sortCallback=uicommand.ViewerSortByCommand(viewer=self, 
             value='description', menuText=_('&Description'), 
             helpText=_('Sort notes by description')),
         editCallback=self.onEditDescription,
         editControl=inplace_editor.DescriptionCtrl)
     attachmentsColumn = widgets.Column('attachments', '', 
         note.Note.attachmentsChangedEventType(),  # pylint: disable=E1101
         width=self.getColumnWidth('attachments'),
         alignment=wx.LIST_FORMAT_LEFT,
         imageIndicesCallback=self.attachmentImageIndices,  # pylint: disable=E1101
         headerImageIndex=self.imageIndex['paperclip_icon'],
         renderCallback=lambda note: '')
     categoriesColumn = widgets.Column('categories', _('Categories'),
         note.Note.categoryAddedEventType(), 
         note.Note.categoryRemovedEventType(), 
         note.Note.categorySubjectChangedEventType(),
         note.Note.expansionChangedEventType(),
         width=self.getColumnWidth('categories'),
         resizeCallback=self.onResizeColumn,
         renderCallback=self.renderCategories,
         sortCallback=uicommand.ViewerSortByCommand(viewer=self, 
             value='categories', menuText=_('&Categories'), 
             helpText=_('Sort notes by categories')))
     creationDateTimeColumn = widgets.Column('creationDateTime', 
         _('Creation date'), width=self.getColumnWidth('creationDateTime'),
         resizeCallback=self.onResizeColumn,
         renderCallback=self.renderCreationDateTime,
         sortCallback=uicommand.ViewerSortByCommand(viewer=self,
             value='creationDateTime', menuText=_('&Creation date'),
             helpText=_('Sort notes by creation date')))
     modificationDateTimeColumn = widgets.Column('modificationDateTime', 
         _('Modification date'), 
         width=self.getColumnWidth('modificationDateTime'),
         resizeCallback=self.onResizeColumn,
         renderCallback=self.renderModificationDateTime,
         sortCallback=uicommand.ViewerSortByCommand(viewer=self,
             value='modificationDateTime', menuText=_('&Modification date'),
             helpText=_('Sort notes by last modification date')),
         *note.Note.modificationEventTypes())
     return [subjectColumn, descriptionColumn, attachmentsColumn, 
             categoriesColumn, creationDateTimeColumn, 
             modificationDateTimeColumn]
Esempio n. 4
0
 def _createColumns(self):
     columns = [widgets.Column(name, columnHeader,
             width=self.getColumnWidth(name),
             resizeCallback=self.onResizeColumn,
             renderCallback=renderCallback,
             sortCallback=uicommand.ViewerSortByCommand(viewer=self,
                 value=name.lower(), menuText=sortMenuText,
                 helpText=sortHelpText),
             imageIndexCallback=imageIndexCallback,
             *eventTypes) \
         for name, columnHeader, sortMenuText, sortHelpText, eventTypes, renderCallback, imageIndexCallback in \
         ('subject', _('Subject'), _('&Subject'), _('Sort notes by subject'),
             (note.Note.subjectChangedEventType(),),
             lambda note: note.subject(recursive=False),
             self.subjectImageIndex),
         ('description', _('Description'), _('&Description'),
             _('Sort notes by description'),
             (note.Note.descriptionChangedEventType(),),
             lambda note: note.description(), lambda *args: -1),
         ('categories', _('Categories'), _('&Categories'),
             _('Sort notes by categories'),
             (note.Note.categoryAddedEventType(),
              note.Note.categoryRemovedEventType(),
              note.Note.categorySubjectChangedEventType(),
              note.Note.expansionChangedEventType()),
             self.renderCategories, lambda *args: -1)]
     attachmentsColumn = widgets.Column(
         'attachments',
         '',
         note.Note.attachmentsChangedEventType(
         ),  # pylint: disable-msg=E1101
         width=self.getColumnWidth('attachments'),
         alignment=wx.LIST_FORMAT_LEFT,
         imageIndexCallback=self.attachmentImageIndex,
         headerImageIndex=self.imageIndex['paperclip_icon'],
         renderCallback=lambda note: '')
     columns.insert(2, attachmentsColumn)
     return columns
Esempio n. 5
0
 def addPage(self, note):
     page = NoteEditBook(self._interior, note, self._categories)
     self._interior.AddPage(page, note.subject())
Esempio n. 6
0
 def addPage(self, note):
     page = NoteEditBook(self._interior, note, self._settings, 
                         self._taskFile.categories(), self._taskFile)
     self._interior.AddPage(page, note.subject())