From 2d2ec5fb51feded1e81e8dcf9214c1e075068387 Mon Sep 17 00:00:00 2001 From: John Schember Date: Sat, 12 Dec 2009 22:30:16 -0500 Subject: [PATCH] Support Ganaxa Ger2 ereader. --- src/calibre/customize/builtins.py | 5 +++-- src/calibre/devices/cybookg3/driver.py | 16 ++++++++++++++++ src/calibre/devices/eb600/driver.py | 17 ++++++++++++++++- 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index 25a5fd0910..1067d72357 100644 --- a/src/calibre/customize/builtins.py +++ b/src/calibre/customize/builtins.py @@ -404,7 +404,7 @@ from calibre.devices.bebook.driver import BEBOOK, BEBOOK_MINI from calibre.devices.blackberry.driver import BLACKBERRY from calibre.devices.cybookg3.driver import CYBOOKG3, CYBOOK_OPUS from calibre.devices.eb600.driver import EB600, COOL_ER, SHINEBOOK, \ - POCKETBOOK360 + POCKETBOOK360, GER2 from calibre.devices.iliad.driver import ILIAD from calibre.devices.irexdr.driver import IREXDR1000 from calibre.devices.jetbook.driver import JETBOOK @@ -476,7 +476,8 @@ plugins += [ ESLICK, NUUT2, IRIVER_STORY, - POCKETBOOK360 + POCKETBOOK360, + GER2, ] plugins += [x for x in list(locals().values()) if isinstance(x, type) and \ x.__name__.endswith('MetadataReader')] diff --git a/src/calibre/devices/cybookg3/driver.py b/src/calibre/devices/cybookg3/driver.py index 6b5e5ff4ed..54f7f93579 100644 --- a/src/calibre/devices/cybookg3/driver.py +++ b/src/calibre/devices/cybookg3/driver.py @@ -78,6 +78,14 @@ class CYBOOKG3(USBMS): return zip(paths, cycle([on_card])) + @classmethod + def can_handle(cls, device_info, debug=False): + USBMS.can_handle(device_info, debug) + if islinux: + if device_info[3] == 'Bookeen' and device_info[4] == 'Cybook Gen3': + return True + return False + class CYBOOK_OPUS(CYBOOKG3): @@ -103,3 +111,11 @@ class CYBOOK_OPUS(CYBOOKG3): EBOOK_DIR_MAIN = 'eBooks' EBOOK_DIR_CARD_A = 'eBooks' SUPPORTS_SUB_DIRS = True + + @classmethod + def can_handle(cls, device_info, debug=False): + USBMS.can_handle(device_info, debug) + if islinux: + if device_info[3] == 'Bookeen': + return True + return False diff --git a/src/calibre/devices/eb600/driver.py b/src/calibre/devices/eb600/driver.py index 1e36775bb2..e0c031f30c 100644 --- a/src/calibre/devices/eb600/driver.py +++ b/src/calibre/devices/eb600/driver.py @@ -21,7 +21,7 @@ class EB600(USBMS): name = 'Netronix EB600 Device Interface' description = _('Communicate with the EB600 eBook reader.') - author = _('Kovid Goyal') + author = 'Kovid Goyal' supported_platforms = ['windows', 'osx', 'linux'] # Ordered list of supported formats @@ -97,3 +97,18 @@ class POCKETBOOK360(EB600): OSX_MAIN_MEM = 'Philips Mass Storge Media' OSX_CARD_A_MEM = 'Philips Mass Storge Media' +class GER2(EB600): + + name = 'Ganaxa GeR2 Device Interface' + gui_name = 'Ganaxa GeR2' + supported_platforms = ['windows'] + + FORMATS = ['pdf'] + + VENDOR_ID = [0xbda] + PRODUCT_ID = [0x703] + BCD = [0x132] + + VENDOR_NAME = 'GANAXA' + WINDOWS_MAIN_MEN = 'GER2_________-FD' + WINDOWS_CARD_A_MEM = 'GER2_________-SD'