Merge from trunk

This commit is contained in:
Charles Haley 2010-05-07 23:40:57 +01:00
commit fc5c5eb3c7
28 changed files with 11910 additions and 8826 deletions

View File

@ -4,6 +4,65 @@
# for important features/bug fixes. # for important features/bug fixes.
# Also, each release can have new and improved recipes. # Also, each release can have new and improved recipes.
- version: 0.6.52
date: 2010-07-30
new features:
- title: "Support for the Kobo Reader and the HTC Desire"
- title: "PDB Input: Add support for PDB files created with incorrect encodings"
- title: "EPUB Output: Make the file size splitting algorithm more intelligent. If a split results in a tree that is very small, choose another split point."
- title: "Add an entry to the Fetch News menu to fetch all scheduled news"
tickets: [5436]
- title: "MOBI Output: When inserting metadata, hide the searchable version of the tags (append with ttt). They are still searchable, but not visible."
bug fixes:
- title: "HTML Input: Handle case sensitive file systems on OS X"
tickets: [5083]
- title: "EPUB Output: When rescaling PNG images, write out the rescaled data in PNG format as ADE cannot handle JPEG data in a PNG file"
- title: "SONY drivers: Fix corner case that could cause errors when transferring books with series to the device."
tickets: [5431]
- title: "Allow users to set the content server port to < 1025 (system ports) with a warning."
tickets: [5470]
- title: "Don't popup an error message when adding books if the cover is not a valid image"
- title: "SONY drivers: Fix bug that prevented detection SD cards that had the Sony Reader/database folders, but no cache.xml"
- title: "EPUB Input: Handle invalid EPUB files that have manifest entries pointing to non existent files"
tickets: [5444]
- title: "Fix the get cover/metadata from specific format buttons when the user has chosen to read metadata only from filenames"
tickets: [5445]
- title: "Conversion pipeline: More robust conversion of HTML tags to text when detecting structure"
- title: "Fix 'Open containing folder' does not work if the path name contains '#'"
tickets: [5424]
new recipes:
- title: The Old New Thing, Berlingske, ABC, Ultima Hora, China Daily, Dani
author: Darko Miletic
- title: Arbetaren, Ekot and Fria Tidningen
author: Joakim Lindskog
- title: Il Messaggero, Il Giornale and ADN Kronos
author: Gabriele Marini
- title: Onion AV Club
author: Stephen Williams
improved recipes:
- Jerusalem Post
- version: 0.6.51 - version: 0.6.51
date: 2010-04-30 date: 2010-04-30

View File

@ -2,7 +2,7 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
__appname__ = 'calibre' __appname__ = 'calibre'
__version__ = '0.6.90' __version__ = '0.6.91'
__author__ = "Kovid Goyal <kovid@kovidgoyal.net>" __author__ = "Kovid Goyal <kovid@kovidgoyal.net>"
import re import re

View File

@ -50,16 +50,20 @@ class CreateCustomColumn(QDialog, Ui_QCreateCustomColumn):
self.standard_colnames = standard_colnames self.standard_colnames = standard_colnames
for t in self.column_types: for t in self.column_types:
self.column_type_box.addItem(self.column_types[t]['text']) self.column_type_box.addItem(self.column_types[t]['text'])
self.column_type_box.currentIndexChanged.connect(self.datatype_changed)
if not self.editing_col: if not self.editing_col:
self.datatype_changed()
self.exec_() self.exec_()
return return
idx = parent.columns.currentRow() idx = parent.columns.currentRow()
if idx < 0: if idx < 0:
return self.simple_error(_('No column selected'), self.simple_error(_('No column selected'),
_('No column has been selected')) _('No column has been selected'))
return
col = unicode(parent.columns.item(idx).data(Qt.UserRole).toString()) col = unicode(parent.columns.item(idx).data(Qt.UserRole).toString())
if col not in parent.custcols: if col not in parent.custcols:
return self.simple_error('', _('Selected column is not a user-defined column')) self.simple_error('', _('Selected column is not a user-defined column'))
return
c = parent.custcols[col] c = parent.custcols[col]
self.column_name_box.setText(c['label']) self.column_name_box.setText(c['label'])
@ -72,8 +76,19 @@ class CreateCustomColumn(QDialog, Ui_QCreateCustomColumn):
self.column_type_box.setEnabled(False) self.column_type_box.setEnabled(False)
if ct == 'datetime': if ct == 'datetime':
self.date_format_box.setText(c['display'].get('date_format', '')) self.date_format_box.setText(c['display'].get('date_format', ''))
self.datatype_changed()
self.exec_() self.exec_()
def datatype_changed(self, *args):
try:
col_type = self.column_types[self.column_type_box.currentIndex()]['datatype']
except:
col_type = None
df_visible = col_type == 'datetime'
for x in ('box', 'default_label', 'label'):
getattr(self, 'date_format_'+x).setVisible(df_visible)
def accept(self): def accept(self):
col = unicode(self.column_name_box.text()) col = unicode(self.column_name_box.text())
col_heading = unicode(self.column_heading_box.text()) col_heading = unicode(self.column_heading_box.text())

View File

@ -10,7 +10,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>528</width> <width>528</width>
<height>194</height> <height>199</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@ -116,12 +116,17 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="toolTip"> <property name="toolTip">
<string>Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 1-2 'Y's for year.</string> <string>&lt;p&gt;Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's for year.&lt;/p&gt;
&lt;p&gt;For example:
&lt;ul&gt;
&lt;li&gt; ddd, d MMM yyyy gives Mon, 5 Jan 2010&lt;li&gt;
&lt;li&gt;dd MMMM yy gives 05 January 10&lt;/li&gt;
&lt;/ul&gt; </string>
</property> </property>
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QLabel" name="label_5"> <widget class="QLabel" name="date_format_default_label">
<property name="toolTip"> <property name="toolTip">
<string>Use MMM yyyy for month + year, yyyy for year only</string> <string>Use MMM yyyy for month + year, yyyy for year only</string>
</property> </property>
@ -133,9 +138,9 @@
</layout> </layout>
</item> </item>
<item row="4" column="0"> <item row="4" column="0">
<widget class="QLabel" name="label_4"> <widget class="QLabel" name="date_format_label">
<property name="text"> <property name="text">
<string>Format for dates</string> <string>Format for &amp;dates</string>
</property> </property>
<property name="buddy"> <property name="buddy">
<cstring>date_format_box</cstring> <cstring>date_format_box</cstring>

View File

@ -513,3 +513,23 @@ removed from the text it can throw off the paragraph unwrapping.
Some limitations of PDF input is complex, multi-column, and image based documents are not supported. Some limitations of PDF input is complex, multi-column, and image based documents are not supported.
Extraction of vector images and tables from within the document is also not supported. Extraction of vector images and tables from within the document is also not supported.
Comic Book Collections
~~~~~~~~~~~~~~~~~~~~~~~~~
A comic book collection is a .cbc file. A .cbc file is a zip file that contains other CBZ/CBR files. In addition the
.cbc file must contain a simple text file called comics.txt, encoded in UTF-8. The comics.txt file must contain
a list of the comics files inside the .cbc file, in the form filename:title, as shown below::
one.cbz:Chapter One
two.cbz:Chapter Two
three.cbz:Chapter Three
The .cbc file will then contain::
comics.txt
one.cbz
two.cbz
three.cbz
|app| will automatically convert this .cbc file into a e-book with a Table of Contents pointing to each entry in comics.txt.

View File

@ -81,7 +81,7 @@ Device Integration
What devices does |app| support? What devices does |app| support?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
At the moment |app| has full support for the SONY PRS 300/500/505/600/700/900, Barnes & Noble Nook, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Entourage Edge, Longshine ShineBook, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, PocketBook 360, Italica, eClicto, Iriver Story, Airis dBook, Hanvon N515, Binatone Readme, Teclast K3, SpringDesign Alex, various Android phones and the iPhone/iPad. In addition, using the :guilabel:`Save to disk` function you can use it with any ebook reader that exports itself as a USB disk. At the moment |app| has full support for the SONY PRS 300/500/505/600/700/900, Barnes & Noble Nook, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Entourage Edge, Longshine ShineBook, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, PocketBook 360, Italica, eClicto, Iriver Story, Airis dBook, Hanvon N515, Binatone Readme, Teclast K3, SpringDesign Alex, Kobo Reader, various Android phones and the iPhone/iPad. In addition, using the :guilabel:`Save to disk` function you can use it with any ebook reader that exports itself as a USB disk.
How can I help get my device supported in |app|? How can I help get my device supported in |app|?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff