mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Edit book: Compress images losslessly: Remember the last used compression quality for jpeg compression. Fixes #1796950 [[enhancement] editor, compress images losslessly, remember compression quality](https://bugs.launchpad.net/calibre/+bug/1796950)
This commit is contained in:
parent
c477444367
commit
baf0cbad6a
@ -523,6 +523,9 @@ class FileList(QTreeWidget):
|
||||
m.addAction(QIcon(I('modified.png')), _('Change the file extension for the selected files'), self.request_change_ext)
|
||||
m.addAction(QIcon(I('trash.png')), ngettext(
|
||||
'&Delete the selected file', '&Delete the {} selected files', num).format(num), self.request_delete)
|
||||
m.addAction(QIcon(I('edit-copy.png')), ngettext(
|
||||
'&Copy the selected file to another editor instance',
|
||||
'&Copy the {} selected files to another editor instance', num).format(num), self.copy_selected_files)
|
||||
m.addSeparator()
|
||||
|
||||
selected_map = defaultdict(list)
|
||||
@ -644,6 +647,9 @@ class FileList(QTreeWidget):
|
||||
ans.discard('')
|
||||
return ans
|
||||
|
||||
def copy_selected_files(self):
|
||||
pass
|
||||
|
||||
def request_delete(self):
|
||||
names = self.selected_names
|
||||
bad = names & current_container().names_that_must_not_be_removed
|
||||
|
@ -185,9 +185,10 @@ class CompressImages(Dialog):
|
||||
self.h2 = h = QHBoxLayout()
|
||||
l.addLayout(h)
|
||||
self.jq = jq = QSpinBox(self)
|
||||
jq.setMinimum(0), jq.setMaximum(100), jq.setValue(80), jq.setEnabled(False)
|
||||
jq.setMinimum(0), jq.setMaximum(100), jq.setValue(tprefs.get('jpeg_compression_quality_for_lossless_compression', 80)), jq.setEnabled(False)
|
||||
jq.setToolTip(_('The compression quality, 1 is high compression, 100 is low compression.\nImage'
|
||||
' quality is inversely correlated with compression quality.'))
|
||||
jq.valueChanged.connect(self.save_compression_quality)
|
||||
el.toggled.connect(jq.setEnabled)
|
||||
self.jql = la = QLabel(_('Compression &quality:'))
|
||||
la.setBuddy(jq)
|
||||
@ -195,6 +196,9 @@ class CompressImages(Dialog):
|
||||
l.addStretch(10)
|
||||
l.addWidget(self.bb)
|
||||
|
||||
def save_compression_quality(self):
|
||||
tprefs.set('jpeg_compression_quality_for_lossless_compression', self.jq.value())
|
||||
|
||||
@property
|
||||
def names(self):
|
||||
return {item.text() for item in self.images.selectedItems()}
|
||||
|
Loading…
x
Reference in New Issue
Block a user