Move definition of valid_empty_formats to a better location

This commit is contained in:
Kovid Goyal 2015-03-29 08:20:30 +05:30
parent 1c945b2d19
commit 2168bb9102
3 changed files with 8 additions and 3 deletions

View File

@ -24,6 +24,8 @@ from calibre.utils.localization import lang_as_iso639_1
from calibre.utils.logging import DevNull from calibre.utils.logging import DevNull
from calibre.utils.zipfile import ZipFile, ZIP_STORED from calibre.utils.zipfile import ZipFile, ZIP_STORED
valid_empty_formats = {'epub', 'txt', 'docx', 'azw3'}
def create_toc(mi, opf, html_name, lang): def create_toc(mi, opf, html_name, lang):
uuid = '' uuid = ''
for u in opf.xpath('//*[@id="uuid_id"]'): for u in opf.xpath('//*[@id="uuid_id"]'):
@ -34,7 +36,9 @@ def create_toc(mi, opf, html_name, lang):
def create_book(mi, path, fmt='epub', opf_name='metadata.opf', html_name='start.xhtml', toc_name='toc.ncx'): def create_book(mi, path, fmt='epub', opf_name='metadata.opf', html_name='start.xhtml', toc_name='toc.ncx'):
''' Create an empty book in the specified format at the specified location. ''' ''' Create an empty book in the specified format at the specified location. '''
if fmt not in ['epub', 'azw3']: if fmt not in valid_empty_formats:
raise ValueError('Cannot create empty book in the %s format' % fmt)
if fmt not in {'epub', 'azw3'}:
return return
path = os.path.abspath(path) path = os.path.abspath(path)
lang = 'und' lang = 'und'

View File

@ -14,7 +14,7 @@ from PyQt5.Qt import QPixmap, QTimer
from calibre import as_unicode from calibre import as_unicode
from calibre.gui2 import (error_dialog, choose_files, choose_dir, from calibre.gui2 import (error_dialog, choose_files, choose_dir,
warning_dialog, info_dialog, gprefs) warning_dialog, info_dialog, gprefs)
from calibre.gui2.dialogs.add_empty_book import AddEmptyBookDialog, valid_empty_formats from calibre.gui2.dialogs.add_empty_book import AddEmptyBookDialog
from calibre.gui2.dialogs.confirm_delete import confirm from calibre.gui2.dialogs.confirm_delete import confirm
from calibre.gui2.dialogs.progress import ProgressDialog from calibre.gui2.dialogs.progress import ProgressDialog
from calibre.gui2.widgets import IMAGE_EXTENSIONS from calibre.gui2.widgets import IMAGE_EXTENSIONS
@ -79,6 +79,7 @@ class AddAction(InterfaceAction):
ma('add-formats', _('Add files to selected book records'), ma('add-formats', _('Add files to selected book records'),
triggered=self.add_formats, shortcut='Shift+A') triggered=self.add_formats, shortcut='Shift+A')
arm = self.add_archive_menu = self.add_menu.addMenu(_('Add an empty file to selected book records')) arm = self.add_archive_menu = self.add_menu.addMenu(_('Add an empty file to selected book records'))
from calibre.ebooks.oeb.polish.create import valid_empty_formats
for fmt in sorted(valid_empty_formats): for fmt in sorted(valid_empty_formats):
self.create_menu_action(arm, 'add-empty-' + fmt, self.create_menu_action(arm, 'add-empty-' + fmt,
_('Add empty {}').format(fmt.upper())).triggered.connect( _('Add empty {}').format(fmt.upper())).triggered.connect(

View File

@ -12,7 +12,6 @@ from calibre.gui2.complete2 import EditWithComplete
from calibre.utils.config import tweaks from calibre.utils.config import tweaks
from calibre.gui2 import gprefs from calibre.gui2 import gprefs
valid_empty_formats = {'epub', 'txt', 'docx', 'azw3'}
class AddEmptyBookDialog(QDialog): class AddEmptyBookDialog(QDialog):
@ -81,6 +80,7 @@ class AddEmptyBookDialog(QDialog):
self.format_label = QLabel(_('Also create an empty ebook in format:')) self.format_label = QLabel(_('Also create an empty ebook in format:'))
self._layout.addWidget(self.format_label, 8, 0, 1, 2) self._layout.addWidget(self.format_label, 8, 0, 1, 2)
c = self.format_value = QComboBox(self) c = self.format_value = QComboBox(self)
from calibre.ebooks.oeb.polish.create import valid_empty_formats
possible_formats = [''] + sorted(x.upper() for x in valid_empty_formats) possible_formats = [''] + sorted(x.upper() for x in valid_empty_formats)
c.addItems(possible_formats) c.addItems(possible_formats)
c.setToolTip(_('Also create an empty book format file that you can subsequently edit')) c.setToolTip(_('Also create an empty book format file that you can subsequently edit'))