mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Merge from trunk
This commit is contained in:
commit
81bcfdb83b
@ -478,7 +478,7 @@ from calibre.devices.teclast.driver import TECLAST_K3, NEWSMY, IPAPYRUS, \
|
||||
from calibre.devices.sne.driver import SNE
|
||||
from calibre.devices.misc import PALMPRE, AVANT, SWEEX, PDNOVEL, KOGAN, \
|
||||
GEMEI, VELOCITYMICRO, PDNOVEL_KOBO, Q600, LUMIREAD, ALURATEK_COLOR, \
|
||||
TREKSTOR
|
||||
TREKSTOR, EEEREADER
|
||||
from calibre.devices.folder_device.driver import FOLDER_DEVICE_FOR_CONFIG
|
||||
from calibre.devices.kobo.driver import KOBO
|
||||
from calibre.devices.bambook.driver import BAMBOOK
|
||||
@ -605,6 +605,7 @@ plugins += [
|
||||
ALURATEK_COLOR,
|
||||
BAMBOOK,
|
||||
TREKSTOR,
|
||||
EEEREADER,
|
||||
ITUNES,
|
||||
]
|
||||
plugins += [x for x in list(locals().values()) if isinstance(x, type) and \
|
||||
|
@ -244,3 +244,23 @@ class TREKSTOR(USBMS):
|
||||
VENDOR_NAME = 'TREKSTOR'
|
||||
WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = 'EBOOK_PLAYER_7'
|
||||
|
||||
class EEEREADER(USBMS):
|
||||
|
||||
name = 'Asus EEE Reader device interface'
|
||||
gui_name = 'EEE Reader'
|
||||
description = _('Communicate with the EEE Reader')
|
||||
author = 'Kovid Goyal'
|
||||
supported_platforms = ['windows', 'osx', 'linux']
|
||||
|
||||
# Ordered list of supported formats
|
||||
FORMATS = ['epub', 'fb2', 'txt', 'pdf']
|
||||
|
||||
VENDOR_ID = [0x0b05]
|
||||
PRODUCT_ID = [0x178f]
|
||||
BCD = [0x0319]
|
||||
|
||||
EBOOK_DIR_MAIN = 'Books'
|
||||
|
||||
VENDOR_NAME = 'LINUX'
|
||||
WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = 'FILE-STOR_GADGET'
|
||||
|
||||
|
@ -479,6 +479,7 @@ class Editor(QWidget): # {{{
|
||||
QWidget.__init__(self, parent)
|
||||
self.toolbar1 = QToolBar(self)
|
||||
self.toolbar2 = QToolBar(self)
|
||||
self.toolbar3 = QToolBar(self)
|
||||
self.editor = EditorWidget(self)
|
||||
self.tabs = QTabWidget(self)
|
||||
self.tabs.setTabPosition(self.tabs.South)
|
||||
@ -493,6 +494,7 @@ class Editor(QWidget): # {{{
|
||||
l.setContentsMargins(0, 0, 0, 0)
|
||||
l.addWidget(self.toolbar1)
|
||||
l.addWidget(self.toolbar2)
|
||||
l.addWidget(self.toolbar3)
|
||||
l.addWidget(self.editor)
|
||||
self._layout.addWidget(self.tabs)
|
||||
self.tabs.addTab(self.wyswyg, _('Normal view'))
|
||||
@ -500,19 +502,7 @@ class Editor(QWidget): # {{{
|
||||
self.tabs.currentChanged[int].connect(self.change_tab)
|
||||
self.highlighter = Highlighter(self.code_edit.document())
|
||||
|
||||
for x in ('bold', 'italic', 'underline', 'strikethrough',
|
||||
'superscript', 'subscript', 'indent', 'outdent'):
|
||||
ac = getattr(self.editor, 'action_'+x)
|
||||
if x in ('superscript', 'indent'):
|
||||
self.toolbar2.addSeparator()
|
||||
self.toolbar2.addAction(ac)
|
||||
self.toolbar2.addSeparator()
|
||||
|
||||
for x in ('left', 'center', 'right', 'justified'):
|
||||
ac = getattr(self.editor, 'action_align_'+x)
|
||||
self.toolbar2.addAction(ac)
|
||||
self.toolbar2.addSeparator()
|
||||
|
||||
# toolbar1 {{{
|
||||
self.toolbar1.addAction(self.editor.action_undo)
|
||||
self.toolbar1.addAction(self.editor.action_redo)
|
||||
self.toolbar1.addAction(self.editor.action_select_all)
|
||||
@ -523,21 +513,39 @@ class Editor(QWidget): # {{{
|
||||
for x in ('copy', 'cut', 'paste'):
|
||||
ac = getattr(self.editor, 'action_'+x)
|
||||
self.toolbar1.addAction(ac)
|
||||
self.toolbar1.addSeparator()
|
||||
|
||||
self.toolbar1.addSeparator()
|
||||
self.toolbar1.addAction(self.editor.action_background)
|
||||
# }}}
|
||||
|
||||
# toolbar2 {{{
|
||||
for x in ('', 'un'):
|
||||
ac = getattr(self.editor, 'action_%sordered_list'%x)
|
||||
self.toolbar1.addAction(ac)
|
||||
self.toolbar1.addSeparator()
|
||||
self.toolbar2.addAction(ac)
|
||||
self.toolbar2.addSeparator()
|
||||
for x in ('superscript', 'subscript', 'indent', 'outdent'):
|
||||
self.toolbar2.addAction(getattr(self.editor, 'action_' + x))
|
||||
if x in ('subscript', 'outdent'):
|
||||
self.toolbar2.addSeparator()
|
||||
|
||||
self.toolbar1.addAction(self.editor.action_color)
|
||||
self.toolbar1.addAction(self.editor.action_background)
|
||||
self.toolbar1.addSeparator()
|
||||
|
||||
self.toolbar1.addAction(self.editor.action_block_style)
|
||||
w = self.toolbar1.widgetForAction(self.editor.action_block_style)
|
||||
self.toolbar2.addAction(self.editor.action_block_style)
|
||||
w = self.toolbar2.widgetForAction(self.editor.action_block_style)
|
||||
w.setPopupMode(w.InstantPopup)
|
||||
self.toolbar2.addAction(self.editor.action_insert_link)
|
||||
# }}}
|
||||
|
||||
# toolbar3 {{{
|
||||
for x in ('bold', 'italic', 'underline', 'strikethrough'):
|
||||
ac = getattr(self.editor, 'action_'+x)
|
||||
self.toolbar3.addAction(ac)
|
||||
self.toolbar3.addSeparator()
|
||||
|
||||
for x in ('left', 'center', 'right', 'justified'):
|
||||
ac = getattr(self.editor, 'action_align_'+x)
|
||||
self.toolbar3.addAction(ac)
|
||||
self.toolbar3.addSeparator()
|
||||
self.toolbar3.addAction(self.editor.action_color)
|
||||
# }}}
|
||||
|
||||
self.code_edit.textChanged.connect(self.code_dirtied)
|
||||
self.editor.page().contentsChanged.connect(self.wyswyg_dirtied)
|
||||
|
@ -769,7 +769,7 @@ class DocumentView(QWebView): # {{{
|
||||
self.to_bottom = True
|
||||
if epf:
|
||||
self.flipper.initialize(self.current_page_image(), False)
|
||||
self.manager.previous_document()
|
||||
self.manager.previous_document()
|
||||
else:
|
||||
opos = self.document.ypos
|
||||
upper_limit = opos - delta_y
|
||||
@ -783,8 +783,8 @@ class DocumentView(QWebView): # {{{
|
||||
if epf:
|
||||
self.flipper(self.current_page_image(),
|
||||
duration=self.document.page_flip_duration)
|
||||
if self.manager is not None:
|
||||
self.manager.scrolled(self.scroll_fraction)
|
||||
if self.manager is not None:
|
||||
self.manager.scrolled(self.scroll_fraction)
|
||||
|
||||
def next_page(self):
|
||||
if self.flipper.running and not self.is_auto_repeat_event:
|
||||
|
Loading…
x
Reference in New Issue
Block a user