API documentation for plugins¶
Güçlü eklentiler oluşturmak için alt sınıf yapılabilir çeşitli soyut temel sınıfları tanımlar. Kullanışlı sınıflar şunlardır:
Eklenti¶
- class calibre.customize.Plugin(plugin_path)[kaynak]¶
Bir calibre eklentisi. Kullanışlı üyeleri şunları içerir:
self.installation_type
: Stores how the plugin was installed.self.plugin_path
: Stores path to the ZIP file that containsiçeren zip dosyasına yolu tutar
self.site_customization
: Kullanıcı tarafından girilen bir özelleştirmekarakter dizisini tutar.
Alt sınıflarda ezilmesi gereken metodlar:
Kullanışlı metodlar:
__enter__()
- supported_platforms = []¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- name = 'Trivial Plugin'¶
Bu eklentinin adı. Çalışması için Trivial Plugin dışında bir şeye ayarlamalısınız.
- version = (1, 0, 0)¶
Eklentinin 3-lü demet şeklinde sürümü (majör, minör, düzeltme)
- description = 'Kesinlikle hiçbir şey yapmaz'¶
Bu eklentinin ne yaptığını anlatan kısa karakter dizisi
- author = 'Bilinmiyor'¶
Eklentinin yazarı
- priority = 1¶
When more than one plugin exists for a filetype, the plugins are run in order of decreasing priority. Plugins with higher priority will be run first. The highest possible priority is
sys.maxsize
. Default priority is 1.
- minimum_calibre_version = (0, 4, 118)¶
Bu eklentinin gerektirdiği en eski calibre sürümü
- installation_type = None¶
The way this plugin is installed
- can_be_disabled = True¶
False ise, kullanıcının bu eklentiyi kapatma şansı olmayacaktır. Dikkatli kullanın.
- type = 'Temel '¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- initialize()[kaynak]¶
Calibre eklentileri ilklendirildiğinde bir defa çağrılır. Eklentiler yeni bir eklenti eklendiğinde her defasında yeniden ilklendirilirler. Ayrıca eklenti bir çalışan süreç içinde çalıştırılırsa, kitap ekleme süreci gibi, eklenti her yeni çalışma süreciyle ilklendirilecektir.
Perform any plugin specific initialization here, such as extracting resources from the plugin ZIP file. The path to the ZIP file is available as
self.plugin_path
.self.site_customization
bu noktada kullanılabilir değildir.
- config_widget()[kaynak]¶
Basit karakter dizisi temelli varsayılan özelleştirmeye güvenmek yerine bu metodu ve
save_settings()
metodunu eklentinizde uygulayarak özel bir yapılandırma iletişim penceresi kullanın.Bu metod, eğer uygulanırsa, bir QWidget döndürmelidir. Parçacık isteğe bağlı olarak bağımsız değişken almayan bir validate() metoduna sahip olabilir ve kullanıcı Tamama tıklayınca anında çağrılır. Değişiklikler yalnızca metod True döndürürse uygulanır.
Bir sebepten bu aşamada yapılandırma yapamazsanız, iki karakter dizisi içeren bir demet döndürün (ileti, detaylar), bunlar kullanıcıya uyarı penceresi olarak gösterilir ve süreç iptal edilir.
- save_settings(config_widget)[kaynak]¶
Kullanıcı tarafından config_widget ile belirtilen ayarları kaydet.
- Parametreler:
config_widget –
config_widget()
tarafından döndürülen parçacık.
- do_user_config(parent=None)[kaynak]¶
Bu metod bu eklenti için bir yapılandırma iletişim penceresi gösterir. Kullanıcı Tamama tıklarsa True, yoksa False döndürür. Değişiklikler otomatik olarak uygulanır.
- load_resources(names)[kaynak]¶
Bu eklenti bir ZIP dosyasıyla gelirse (kullanıcı tarafından eklenmiş eklenti), bu metod ZIP dosyasından kaynakları yüklemenizi sağlar.
Örneğin bir resmi yüklemek için:
pixmap = QPixmap() pixmap.loadFromData(self.load_resources(['images/icon.png'])['images/icon.png']) icon = QIcon(pixmap)
- Parametreler:
names – List of paths to resources in the ZIP file using / as separator
- Dönüşler:
A dictionary of the form
{name: file_contents}
. Any names that were not found in the ZIP file will not be present in the dictionary.
- customization_help(gui=False)[kaynak]¶
Bu eklentinin nasıl özelleştirileceği konusunda yardım veren bir metin. Varsayılan olarak
NotImplementedError
yükseltilir, bu da eklentinin özelleştirmeye ihtiyaç duymadığı anlamına gelir.Bu metodu alt sınıflarınızda yeniden uyguluyorsanız, kullanıcıdan bu eklenti için özelleştirme olarak kullanılacak bir karakter dizisi girmesi istenir. Özelleştirme karakter dizisi
self.site_customization
olarak kullanılabilir olacaktır.Site özelleştirmesi herşey olabilir, örneğin kullanıcının bilgisayarındaki bir ikiliğin yolu.
- Parametreler:
gui – True ise HTML yardımı döndür, yoksa düz metin yardımı.
- temporary_file(suffix)[kaynak]¶
Sistemde geçici bir dosya olan dosya-benzeri nesneyi döndür. Bu dosya kapandıktan sonra bile kullanılabilir olur ve yalnızca yorumlayıcı kapandığında silinir. Oluşturulan geçici dosyanın tam yoluna erişmek için dönen nesnenin
name
metodunu kullanın.- Parametreler:
suffix – Geçici dosyanın son eki.
FileTypePlugin¶
- class calibre.customize.FileTypePlugin(plugin_path)[kaynak]¶
Bases:
Plugin
Belirli bir dosya türü kümesiyle ilişkili eklenti.
- file_types = {}¶
Set of file types for which this plugin should be run. Use ‘*’ for all file types. For example:
{'lit', 'mobi', 'prc'}
- on_import = False¶
True ise, bu eklenti kitaplar veri tabanına eklendiğinde çalışır
- on_postimport = False¶
If True, this plugin is run after books are added to the database. In this case the postimport and postadd methods of the plugin are called.
- on_postconvert = False¶
If True, this plugin is run after a book is converted. In this case the postconvert method of the plugin is called.
- on_postdelete = False¶
If True, this plugin is run after a book file is deleted from the database. In this case the postdelete method of the plugin is called.
- on_preprocess = False¶
True ise, bu eklenti dönüştürme öncesi çalışır
- on_postprocess = False¶
True ise, bu eklenti dönüştürme çıktı eklentisi tarafından üretilen son dosyanın dönüştürmesi sonrası çalışır.
- type = 'Dosya türü'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- run(path_to_ebook)[kaynak]¶
Run the plugin. Must be implemented in subclasses. It should perform whatever modifications are required on the e-book and return the absolute path to the modified e-book. If no modifications are needed, it should return the path to the original e-book. If an error is encountered it should raise an Exception. The default implementation simply return the path to the original e-book. Note that the path to the original file (before any file type plugins are run, is available as self.original_path_to_file).
The modified e-book file should be created with the
temporary_file()
method.- Parametreler:
path_to_ebook – Absolute path to the e-book.
- Dönüşler:
Absolute path to the modified e-book.
- postimport(book_id, book_format, db)[kaynak]¶
Called post import, i.e., after the book file has been added to the database. Note that this is different from
postadd()
which is called when the book record is created for the first time. This method is called whenever a new file is added to a book record. It is useful for modifying the book record based on the contents of the newly added file.- Parametreler:
book_id – Eklenen kitabın veri tabanı kimliği.
book_format – Eklenen kitabın dosya türü.
db – Kitaplık veri tabanı.
- postconvert(book_id, book_format, db)[kaynak]¶
Called post conversion, i.e., after the conversion output book file has been added to the database. Note that it is run after a conversion only, not after a book is added. It is useful for modifying the book record based on the contents of the newly added file.
- Parametreler:
book_id – Eklenen kitabın veri tabanı kimliği.
book_format – Eklenen kitabın dosya türü.
db – Kitaplık veri tabanı.
- postdelete(book_id, book_format, db)[kaynak]¶
Called post deletion, i.e., after the book file has been deleted from the database. Note that it is not run when a book record is deleted, only when one or more formats from the book are deleted. It is useful for modifying the book record based on the format of the deleted file.
- Parametreler:
book_id – Eklenen kitabın veri tabanı kimliği.
book_format – Eklenen kitabın dosya türü.
db – Kitaplık veri tabanı.
- postadd(book_id, fmt_map, db)[kaynak]¶
Called post add, i.e. after a book has been added to the db. Note that this is different from
postimport()
, which is called after a single book file has been added to a book. postadd() is called only when an entire book record with possibly more than one book file has been created for the first time. This is useful if you wish to modify the book record in the database when the book is first added to calibre.- Parametreler:
book_id – Eklenen kitabın veri tabanı kimliği.
fmt_map – Map of file format to path from which the file format was added. Note that this might or might not point to an actual existing file, as sometimes files are added as streams. In which case it might be a dummy value or a non-existent path.
db – Library database
Metadata eklentileri¶
- class calibre.customize.MetadataReaderPlugin(*args, **kwargs)[kaynak]¶
Bases:
Plugin
Bir dosya türü kümesinden metadata okumayı uygulayan bir eklenti.
- file_types = {}¶
Set of file types for which this plugin should be run. For example:
set(['lit', 'mobi', 'prc'])
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- version = (6, 14, 1)¶
Eklentinin 3-lü demet şeklinde sürümü (majör, minör, düzeltme)
- author = 'Kovid Goyal'¶
Eklentinin yazarı
- type = 'Metaveri okuyucu'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- get_metadata(stream, type)[kaynak]¶
Return metadata for the file represented by stream (a file like object that supports reading). Raise an exception when there is an error with the input data.
- Parametreler:
type – The type of file. Guaranteed to be one of the entries in
file_types
.- Dönüşler:
A
calibre.ebooks.metadata.book.Metadata
object
- class calibre.customize.MetadataWriterPlugin(*args, **kwargs)[kaynak]¶
Bases:
Plugin
Bir dosya türü kümesinden metadata okumayı uygulayan bir eklenti.
- file_types = {}¶
Set of file types for which this plugin should be run. For example:
set(['lit', 'mobi', 'prc'])
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- version = (6, 14, 1)¶
Eklentinin 3-lü demet şeklinde sürümü (majör, minör, düzeltme)
- author = 'Kovid Goyal'¶
Eklentinin yazarı
- type = 'Metaveri yazıcı'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- set_metadata(stream, mi, type)[kaynak]¶
Set metadata for the file represented by stream (a file like object that supports reading). Raise an exception when there is an error with the input data.
- Parametreler:
type – The type of file. Guaranteed to be one of the entries in
file_types
.mi – A
calibre.ebooks.metadata.book.Metadata
object
Katalog eklentileri¶
- class calibre.customize.CatalogPlugin(plugin_path)[kaynak]¶
Bases:
Plugin
Bir katalog üreteci uygulayan eklenti.
- file_types = {}¶
Output file type for which this plugin should be run. For example: ‘epub’ or ‘xml’
- type = 'Katalog üreteci'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- cli_options = []¶
CLI parser options specific to this plugin, declared as namedtuple Option:
from collections import namedtuple Option = namedtuple(‘Option’, ‘option, default, dest, help’) cli_options = [Option(’–catalog-title’, default = ‘My Catalog’, dest = ‘catalog_title’, help = (_(‘Title of generated catalog. nDefault:’) + “ ‘” + ‘%default’ + “’”))] cli_options parsed in calibre.db.cli.cmd_catalog:option_parser()
- initialize()[kaynak]¶
If plugin is not a built-in, copy the plugin’s .ui and .py files from the ZIP file to $TMPDIR. Tab will be dynamically generated and added to the Catalog Options dialog in calibre.gui2.dialogs.catalog.py:Catalog
- run(path_to_output, opts, db, ids, notification=None)[kaynak]¶
Eklentiyi çalıştır. Alt sınıflarda uygulanmalıdır. file_types’da belirtilen biçimde kataloğu üretmelidir, ve üretilen katalog dosyasına mutlak yolu döndürmelidir. Bir hataya rastlanırsa bir Exception yükseltmelidir.
Üretilen katalog dosyası
temporary_file()
metoduyla oluşturulmalıdır.- Parametreler:
path_to_output – Üretilen katalog dosyasına mutlak yol.
opts – Anahtar kelime değişkenlerinden oluşan bir sözlük
db – Bir LibraryDatabase2 nesnesi
Metadata indirme eklentileri¶
- class calibre.ebooks.metadata.sources.base.Source(*args, **kwargs)[kaynak]¶
Bases:
Plugin
- type = 'Metadata kaynağı'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- author = 'Kovid Goyal'¶
Eklentinin yazarı
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- capabilities = frozenset({})¶
Bu eklenti tarafından desteklenen yetenek kümesi. Kullanışlı yetenekler: ‘identify’, ‘cover’
- touched_fields = frozenset({})¶
Bu eklenti tarafından tanımlama aşamasında indirilebilme potansiyeline sahip metadata alanları listesi
- has_html_comments = False¶
Eklentiniz HTML biçimli yorumlar döndürüyorsa bunu True olarak ayarlayın
- supports_gzip_transfer_encoding = False¶
Setting this to True means that the browser object will indicate that it supports gzip transfer encoding. This can speedup downloads but make sure that the source actually supports gzip transfer encoding correctly first
- ignore_ssl_errors = False¶
Set this to True to ignore HTTPS certificate errors when connecting to this source.
- cached_cover_url_is_reliable = True¶
Cached cover URLs can sometimes be unreliable (i.e. the download could fail or the returned image could be bogus). If that is often the case with this source, set to False
- options = ()¶
Option
nesneleri listesi. Bu eklenti için otomatik olarak yapılandırma parçacığı inşa etmek için kullanılacaklar
- config_help_message = None¶
Bu eklenti için ayar penceresinin üstünde gösterilecek bir karakter dizisi
- can_get_multiple_covers = False¶
True ise bu kaynak verilen sorgu için birden çok kapak döndürebilir
- auto_trim_covers = False¶
True olarak ayarlıysa bu eklenti tarafından indirilen kapaklar otomatik olarak düzeltilir.
- prefer_results_with_isbn = True¶
True olarak ayarlanırsa, ve bu kaynak bir sorgu için bazılarında ISBN’ler olan bazılarında olmayan birden çok sonuç döndürüyorsa, ISBN olmayan sonuçlar göz ardı edilir
- is_configured()[kaynak]¶
Eklentinizin kullanılmadan önce yapılandırılması gerekiyorsa False döndür. Örneğin bir kullanıcı adı/parola/API anahtarına ihtiyaç duyuyor olabilir.
- customization_help()[kaynak]¶
Bu eklentinin nasıl özelleştirileceği konusunda yardım veren bir metin. Varsayılan olarak
NotImplementedError
yükseltilir, bu da eklentinin özelleştirmeye ihtiyaç duymadığı anlamına gelir.Bu metodu alt sınıflarınızda yeniden uyguluyorsanız, kullanıcıdan bu eklenti için özelleştirme olarak kullanılacak bir karakter dizisi girmesi istenir. Özelleştirme karakter dizisi
self.site_customization
olarak kullanılabilir olacaktır.Site özelleştirmesi herşey olabilir, örneğin kullanıcının bilgisayarındaki bir ikiliğin yolu.
- Parametreler:
gui – True ise HTML yardımı döndür, yoksa düz metin yardımı.
- config_widget()[kaynak]¶
Basit karakter dizisi temelli varsayılan özelleştirmeye güvenmek yerine bu metodu ve
save_settings()
metodunu eklentinizde uygulayarak özel bir yapılandırma iletişim penceresi kullanın.Bu metod, eğer uygulanırsa, bir QWidget döndürmelidir. Parçacık isteğe bağlı olarak bağımsız değişken almayan bir validate() metoduna sahip olabilir ve kullanıcı Tamama tıklayınca anında çağrılır. Değişiklikler yalnızca metod True döndürürse uygulanır.
Bir sebepten bu aşamada yapılandırma yapamazsanız, iki karakter dizisi içeren bir demet döndürün (ileti, detaylar), bunlar kullanıcıya uyarı penceresi olarak gösterilir ve süreç iptal edilir.
- save_settings(config_widget)[kaynak]¶
Kullanıcı tarafından config_widget ile belirtilen ayarları kaydet.
- Parametreler:
config_widget –
config_widget()
tarafından döndürülen parçacık.
- get_author_tokens(authors, only_first_author=True)[kaynak]¶
Bir yazar listesi al ve bir AND arama sorgusu için kulanışlı olacak jeton listesi döndür. Bu fonksiyon ilk ad göbek adı soyad sırasında jeton döndürmeye çalışır, yazar isminde bir virgül varsa, ismin soyad, diğer ad biçiminde olduğunu farz eder.
- get_title_tokens(title, strip_joiners=True, strip_subtitle=False)[kaynak]¶
Bir başlık al ve bir AND arama sorgusu için kullanışlı jeton listesi döndür. Bağlaç(isteğe bağlı) ve noktalama işaretleri hariç.
- clean_downloaded_metadata(mi)[kaynak]¶
Bu metodu eklentinizin tanımlama metodunda Metadata nesnesini result_queue’ye koymadan önce metadata’yı normalleştirmek için çağırın. Tabi ki metadata kaynağınıza uygun özel bir algoritma da kullanabilirsiniz.
- get_book_url(identifiers)[kaynak]¶
Return a 3-tuple or None. The 3-tuple is of the form: (identifier_type, identifier_value, URL). The URL is the URL for the book identified by identifiers at this source. identifier_type, identifier_value specify the identifier corresponding to the URL. This URL must be browsable to by a human using a browser. It is meant to provide a clickable link for the user to easily visit the books page at this source. If no URL is found, return None. This method must be quick, and consistent, so only implement it if it is possible to construct the URL from a known scheme given identifiers.
- get_book_url_name(idtype, idval, url)[kaynak]¶
get_book_url()’nin döndürdüğü değerden okunabilir bir isim döndür.
- get_book_urls(identifiers)[kaynak]¶
Bu kitap için birden fazla url döndürmek isterseniz bu metodun üzerine yazın. 3’lü demet listesi döndürür. Varsayılan olarak bu metod basitçe
get_book_url()
çağırır.
- get_cached_cover_url(identifiers)[kaynak]¶
Return cached cover URL for the book identified by the identifiers dictionary or None if no such URL exists.
Bu metodun yalnızca doğrulanmış URL’ler döndürmesi gerektiğine dikkat edin, örn. genel kapak resmi veya bulunamadı hatasına yol açacak URL’ler olmamalı.
- id_from_url(url)[kaynak]¶
Parse a URL and return a tuple of the form: (identifier_type, identifier_value). If the URL does not match the pattern for the metadata source, return None.
- identify_results_keygen(title=None, authors=None, identifiers={})[kaynak]¶
Bir arama sorgusu (başlık, yazarlar, tanımlayıcılar) alarak Metadata nesnelerini sıralamaya yarayacak bir anahtar üretmeye yarayan bir fonksiyon döndür.
Bu anahtarlar
identify()
çağrısı sonucunu sıralamaya yarar.Varsayılan algoritma detayları için bknz
InternalMetadataCompareKeyGen
. Varsayılan algoritma uygun değilse bu fonksiyonu tekrar uygulayın.
- identify(log, result_queue, abort, title=None, authors=None, identifiers={}, timeout=30)[kaynak]¶
Identify a book by its Title/Author/ISBN/etc.
Tanımlayıcı(lar) belirtilmiş ve bir eşleşme bulunamamışsa ve bu metadata kaynağı ilgili tüm tanımlayıcılar kaydetmemişse (örneğin, bir kitabın tüm ISBN’leri), bu metod sadece başlık ve yazar (belirtildiklerini farz ederek) ile tekrar denemelidir.
Bu metadata kaynağı kapak da sağlıyorsa, kapağın URL’si kapak getirme API’si ile tekrar tekrar aynı ISBN/özel tanımlayıcı çağrısı yapıldığında getirilmek zorunda kalınmasın diye zulalanmalıdır. Zulalama API’sini bunun için kullanın.
Bu metod tarafından result_queue’ya konan her Metadata nesnesinin bu sorgu için metadata kaynağınca döndürülen sonuçların sırasını belirten bir tamsayı olan source_relevance özniteliği olmalıdır. Bu tam sayı
compare_identify_results()
tarafından kullanılacaktır. Sıra önemli değilse, tüm sonuçlar için sıfır olarak ayarlayın.Make sure that any cover/ISBN mapping information is cached before the Metadata object is put into result_queue.
- Parametreler:
log – Bir sistem günlüğü nesnesi, hata ayıklama bilgisi/hatası çıktılamak için kullanın
result_queue – Bir sonuç Kuyruğu, sonuçlar buna koyulmalı. Her sonuç bir Metadata nesnesidir
abort – Eğer abort.is_set() True döndürürse, işlemeyi durdur ve en kısa sürede dön
title – Kitabın başlığı, None olabilir
authors – Kitap için yazarlar listesi, None olabilir
identifiers – Diğer tanımlayıcıları içeren bir sözlük, en yaygın şekliyle {‘isbn’:’1234…’}
timeout – Saniye cinsinden zaman aşımı, hiçbir ağ isteği zaman aşımından uzun sürmemeli.
- Dönüşler:
Hataya rastlanmadıysa None, aksi halde hatanın kullanıcıya gösterilebilecek evrensel kodda temsili
- download_cover(log, result_queue, abort, title=None, authors=None, identifiers={}, timeout=30, get_best_cover=False)[kaynak]¶
Bir kapak indir ve result_queue’ya koy. Parametreler
identify()
metodundakiyle aynı anlamdadırlar. (self, cover_data)’yı result_queue’ya koy.Bu metod verimlilik için uygun olan her durumda zulalanmış kapak URL’lerini kullanmalıdır. Zulalı veri olmadığında, çoğu eklenti identify’ı çağırır ve onun sonuçlarını kullanır.
get_best_cover parametresi True ise ve bu eklenti birden çok kapak alabiliyorsa, yalnızca “en iyi” olanı almalı.
- class calibre.ebooks.metadata.sources.base.InternalMetadataCompareKeyGen(mi, source_plugin, title, authors, identifiers)[kaynak]¶
Bir arama sorgusu verildiğinde, Metadata nesnelerinin uygunluğunun karşılaştırması için bir sıralama anahtarı üret. Bu yalnızca aynı metadata kaynağından gelen sonuçları karşılaştırmak için kullanılır, farklı kaynaklar arasında değil.
Arama anahtarı artan sırada sıralamanın azalan uygunluk sırasında sıralama olduğundan emin olur.
Algoritma:
Sorguda olduğu gibi en az bir tanımlayıcısı olan sonuçları tercih et
Zulalanmış kapak URL’si olan sonuçları tercih et
Kullanılabilir alanların hepsi dolu olan sonuçları tercih et
Mevcut kullanıcı arayüzüyle aynı dilde olan sonuçları tercih et
Sorguyla başlığı birebir eşleşen sonuçları tercih et
Daha uzun yorumlu sonuçları tercih et (%10 uzunluktan fazlası)
- Sonucun uygunluğunu metadata kaynağının aramasından gelen rapor olarak kullan
motor
Dönüştürme eklentileri¶
- class calibre.customize.conversion.InputFormatPlugin(*args)[kaynak]¶
Bases:
Plugin
InputFormatPlugins bir belgeyi HTML+OPF+CSS+vs. ye dönüştürmekle sorumludurlar. Dönüştürmenin sonuçları UTF-8 ile kodlanmış olmak zorundadır. Esas olay
convert()
içinde gerçekleşir.- type = 'Girdi dönüşümü'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- can_be_disabled = False¶
False ise, kullanıcının bu eklentiyi kapatma şansı olmayacaktır. Dikkatli kullanın.
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- file_types = {}¶
Bu eklentinin çalışacağı dosya türü kümesi. Örneğin:
set(['azw', 'mobi', 'prc'])
- is_image_collection = False¶
True ise, bu girdi eklentisi HTML dosyası başına bir resim koleksiyonu üretir. Bu, dönüştürme metodunda, girdi dosyaları hem resim koleksiyonları hem resim olmayan koleksiyonlar olabiliyorsa dinamik olarak ayarlanabilir. True olarak ayarlarsanız, resim listesi döndüren get_images() metodunu uygulamalısınız.
- core_usage = 1¶
Number of CPU cores used by this plugin. A value of -1 means that it uses all available cores
- for_viewer = False¶
True olarak ayarlanırsa, girdi eklentisi çıktısını görüntülemeye uygun hale getirmek için özel işlemden geçirir
- output_encoding = 'utf-8'¶
Bu girdi eklentisinin dosyaları içinde oluşturduğu kodlama. None değeri kodlamanın belirtilmemiş olduğunu ve bağımsız şekilde algılanması gerektiğini belirtir
- common_options = {<calibre.customize.conversion.OptionRecommendation object>}¶
Tüm girdi biçim eklentilerince paylaşılan seçenekler. Alt sınıflarda ezmeyin. Bunun yerine
options
kullanın. Her seçenek birOptionRecommendation
örneği olmalıdır.
- options = {}¶
Bu eklentinin davranışını özelleştirecek seçenekler. Tüm seçenekler
OptionRecommendation
örneği olmalıdırlar.
- recommendations = {}¶
(seçenek_ismi, önerilen_değer, önerilen_seviye) biçiminde 3’lü demet kümesi
- get_images()[kaynak]¶
Bu eklenti bir resim koleksiyonunu destekliyorsa, resimlere mutlak yol listesini döndür. Resim listesi omurga ve İçindekiler ile aynı sıradadır.
- convert(stream, options, file_ext, log, accelerators)[kaynak]¶
This method must be implemented in sub-classes. It must return the path to the created OPF file or an
OEBBook
instance. All output should be contained in the current folder. If this plugin creates files outside the current folder they must be deleted/marked for deletion before this method returns.- Parametreler:
stream – Girdi dosyasını içeren dosya benzeri nesne.
options – Dönüştürme sürecini özelleştirecek seçenekler. Bu eklentice bildirilen tüm seçeneklere karşılık gelen özniteliklere sahip olacağı garantidir. Ek olarak, tamamlayıcı değerleri sıfırdan yukarı doğru alan ayrıntılı bir özniteliği olacaktır. Yüksek sayılar daha ayrıntılı demektir. Kullanışlı başka bir öznitelik de
calibre.customize.profiles.InputProfile
örneği olaninput_profile
özniteliğidir.file_ext – Girdinin uzantısı (. olmadan). Bu eklentice desteklenen dosya_türlerinden biri olması garantidir.
log –
calibre.utils.logging.Log
nesnesi. Tüm çıktı bu nesneyi kullanmalı.accelarators – Girdi eklentisinin kolayca alabileceği, dönüştürmenin sonraki aşamalarını hızlandıracak olan çeşitli bilgileri içeren sözlük.
- postprocess_book(oeb, opts, log)[kaynak]¶
Girdi eklentisinin kitap ayrıştırıldıktan sonra işlem yapmasına izin vermek için çağrılır.
- class calibre.customize.conversion.OutputFormatPlugin(*args)[kaynak]¶
Bases:
Plugin
OutputFormatPlugins are responsible for converting an OEB document (OPF+HTML) into an output e-book.
OEB belgesinin UTF-8 ile kodlanmış olduğu varsayılabilir. Ana olay
convert()
içinde gerçekleşir.- type = 'Çıktı dönüşümü'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- can_be_disabled = False¶
False ise, kullanıcının bu eklentiyi kapatma şansı olmayacaktır. Dikkatli kullanın.
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- file_type = None¶
Bu eklentinin çıktıladığı dosya türü (noktasız son ek)
- common_options = {<calibre.customize.conversion.OptionRecommendation object>}¶
Tüm girdi biçim eklentilerince paylaşılan seçenekler. Alt sınıflarda ezmeyin. Bunun yerine
options
kullanın. Her seçenek birOptionRecommendation
örneği olmalıdır.
- options = {}¶
Bu eklentinin davranışını özelleştirecek seçenekler. Tüm seçenekler
OptionRecommendation
örneği olmalıdırlar.
- recommendations = {}¶
(seçenek_ismi, önerilen_değer, önerilen_seviye) biçiminde 3’lü demet kümesi
- property description¶
str(object=’’) -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Create a new string object from the given object. If encoding or errors is specified, then the object must expose a data buffer that will be decoded using the given encoding and error handler. Otherwise, returns the result of object.__str__() (if defined) or repr(object). encoding defaults to sys.getdefaultencoding(). errors defaults to ‘strict’.
- convert(oeb_book, output, input_plugin, opts, log)[kaynak]¶
Render the contents of oeb_book (which is an instance of
calibre.ebooks.oeb.OEBBook
) to the file specified by output.- Parametreler:
output – Either a file like object or a string. If it is a string it is the path to a folder that may or may not exist. The output plugin should write its output into that folder. If it is a file like object, the output plugin should write its output into the file.
input_plugin – Dönüştürme boru hattının başında kullanılan girdi eklentisi.
opts – Dönüştürme seçenekleri. Bu eklentinin SeçenekÖnerilerine karşılık gelen öznitelikleri içermesi garantidir.
log – Günlük kaydedici. Hata ayıklama/bilgi vs. iletilerini bunu kullanarak yazdırın.
- specialize_options(log, opts, input_fmt)[kaynak]¶
Can be used to change the values of conversion options, as used by the conversion pipeline.
- specialize_css_for_output(log, opts, item, stylizer)[kaynak]¶
CSS düzleme işleminden sonra css’e değişiklik yapmak için kullanılabilir.
- Parametreler:
item – İşlenen öğe (HTML dosyası)
stylizer – Öğe için düzleştirilmiş biçemleri içeren Stylizer nesnesi. Herhangi bir öğenin biçemini stylizer.style(öğe) ile alabilirsiniz.
Device drivers¶
Tüm aygıt sürücüleri için taban sınıf DevicePlugin
dir. Ancak aygıtınız kendisini işletim sistemine USBMS sürücüsü olarak gösteriyorsa bu tür cihazları destekeleyecek her türlü mantığı uyguladığından USBMS sınıfını kullanmalısınız.
- class calibre.devices.interface.DevicePlugin(plugin_path)[kaynak]¶
Bases:
Plugin
Defines the interface that should be implemented by backends that communicate with an e-book reader.
- type = 'Cihaz arabirimi'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- FORMATS = ['lrf', 'rtf', 'pdf', 'txt']¶
Desteklenen biçimlerin sıralı listesi
- VENDOR_ID = 0¶
VENDOR_ID bir tam sayı, tamsayı listesi veya sözlük olabilir. Bir sözlükse, sözlüklerin sözlüğü olmalıdır, şu şekilde:
{ integer_vendor_id : { product_id : [list of BCDs], ... }, ... }
- PRODUCT_ID = 0¶
Bir tam sayı veya tam sayı listesi
- BCD = None¶
BCD BCD tabanlı aygıtlar arasında ayrı kalmaması için None olabilir, veya bu sürücü tarafından desteklenen tüm aygıtların BCD numaralarından oluşan liste olabilir.
- THUMBNAIL_HEIGHT = 68¶
Küçük resimlerin aygıttaki yüksekliği
- THUMBNAIL_COMPRESSION_QUALITY = 75¶
Compression quality for thumbnails. Set this closer to 100 to have better quality thumbnails with fewer compression artifacts. Of course, the thumbnails get larger as well.
- WANTS_UPDATED_THUMBNAILS = False¶
Aygıt sync_booklists sırasında kapak küçük resimlerini güncellemeye izin veriyorsa bunu True olarak ayarlayın. True olarak ayarlamak kitap eşleştirme sırasında device.py’ye kapak küçük resimlerini güncellemesini söyler
- CAN_SET_METADATA = ['title', 'authors', 'collections']¶
Kitaplardaki metadata’nın GUI ile ayarlanıp ayarlanamayacağı.
- CAN_DO_DEVICE_DB_PLUGBOARD = False¶
Aygıtın device_db metadata santralini ele alıp alamayacağı
- path_sep = '/'¶
Bu aygıttaki kitaplara olan yollar için yol ayracı
- icon = 'reader.png'¶
Bu aygıt için simge
- UserAnnotation¶
alias of
Annotation
- OPEN_FEEDBACK_MESSAGE = None¶
GUI displays this as a message if not None in the status bar. Useful if opening can take a long time
- VIRTUAL_BOOK_EXTENSIONS = frozenset({})¶
Aygıtta “sanal kitap” olan ve bu yüzden kitaplıkta görüntülenemeyen/kaydedilemeyen/eklenemeyen eklentiler kümesi. Örneğin:
frozenset(['kobo'])
- VIRTUAL_BOOK_EXTENSION_MESSAGE = None¶
Message to display to user for virtual book extensions.
- NUKE_COMMENTS = None¶
Kitabın aygıta yollanan kopyasında yorumlar tamamen silinsin mi. None değilse bunun yorumların değiştirileceği kısa bir metin olması gerekir.
- MANAGES_DEVICE_PRESENCE = False¶
If True indicates that this driver completely manages device detection, ejecting and so forth. If you set this to True, you must implement the detect_managed_devices and debug_managed_device_detection methods. A driver with this set to true is responsible for detection of devices, managing a blacklist of devices, a list of ejected devices and so forth. calibre will periodically call the detect_managed_devices() method and if it returns a detected device, calibre will call open(). open() will be called every time a device is returned even if previous calls to open() failed, therefore the driver must maintain its own blacklist of failed devices. Similarly, when ejecting, calibre will call eject() and then assuming the next call to detect_managed_devices() returns None, it will call post_yank_cleanup().
- SLOW_DRIVEINFO = False¶
True olarak ayarlandıysa, calibre kitap listeleri yüklendikten sonra sürücü bilgisi almak için
get_driveinfo()
çağıracaktır.
- ASK_TO_ALLOW_CONNECT = False¶
True olarak ayarlandıysa, calibre kullanıcıya aygıt ilk kez algılandığında aygıtı calibre ile yönetip isteyip istemediğini sorar. Bunu True olarak ayarlarsanız
get_device_uid()
veignore_connected_device()
veget_user_blacklisted_devices()
veset_user_blacklisted_devices()
uygulamalısınız
- user_feedback_after_callback = None¶
Bazı geri çağrılar çalıştırıldıktan sonra (şu an yalnızca upload_books) calibre’nin bir ileti penceresi açmasını sağlamak için bunu {‘title’:başlık, ‘msg’:ileti, ‘det_msg’:detaylı_ileti} biçiminde bir sözlük olarak ayarlayın. Kullanıcıyı bir sürü ileti ile sıkmamaya dikkat edin. Bu değişken her geri çağrıdan sonra kontrol edilir, yalnızca gerçekten ihtiyacınız olduğunda ayarlayın.
- classmethod get_open_popup_message()[kaynak]¶
GUI displays this as a non-modal popup. Should be an instance of OpenPopupMessage
- is_usb_connected(devices_on_system, debug=False, only_presence=False)[kaynak]¶
Bu eklenti ile ele alınan bir aygıt hali hazırda bağlıysa True, device_info döndür.
- Parametreler:
devices_on_system – Hali hazırda bağlı olan aygıtlar
- detect_managed_devices(devices_on_system, force_refresh=False)[kaynak]¶
Yalnızca MANAGES_DEVICE_PRESENCE True ise çağrılır.
Bu sürücünün ele alabileceği aygıtları tara. Bir aygıt bulunursa aygıt nesnesi döndürmelidir. Bu nesne open() metoduna connected_device olarak geçirilir. Aygıt bulunamazsa, None döndürür. Döndürülen nesne herşey olabilir, calibre bu nesneyi kullanmaz, sadece open()’a geçirilir.
Bu metod GUI tarafından aralıklarla çağrılır, fazla kaynak tüketmediğinden emin olun. Sistemi tekrar tekrar taramaktan kaçınmak için bir zula kullanın.
- Parametreler:
devices_on_system – Sistemde bulunan USB aygıtları kümesi.
force_refresh – True ise ve sürücü tekrar taramalardan kaçınmak için zula kullanıyorsa, zula temizlenmelidir.
- debug_managed_device_detection(devices_on_system, output)[kaynak]¶
Yalnızca MANAGES_DEVICE_PRESENCE True ise çağrılır.
Sistemde algılanan sürücüler hakkında bilgiyi dosya benzeri bir nesne olan çıktıya yazmalıdır.
Bir aygıt algılanmış ve başarıyla açılmışsa True, aksi halde False döndürmelidir.
- reset(key='-1', log_packets=False, report_progress=None, detected_device=None)[kaynak]¶
- Parametreler:
key – Aygıtın kilidini açacak tuş
log_packets – True ise aygıta giden/aygıttan gelen paket akışı kaydedilir
report_progress – Function that is called with a % progress (number between 0 and 100) for various tasks. If it is called with -1 that means that the task does not have any progress information
detected_device – Aygıt tarayıcıdan gelen aygıt bilgisi
- can_handle_windows(usbdevice, debug=False)[kaynak]¶
Optional method to perform further checks on a device to see if this driver is capable of handling it. If it is not it should return False. This method is only called after the vendor, product ids and the bcd have matched, so it can do some relatively time intensive checks. The default implementation returns True. This method is called only on Windows. See also
can_handle()
.Note that for devices based on USBMS this method by default delegates to
can_handle()
. So you only need to overridecan_handle()
in your subclass of USBMS.- Parametreler:
usbdevice – A usbdevice as returned by
calibre.devices.winusb.scan_usb_devices()
- can_handle(device_info, debug=False)[kaynak]¶
Unix version of
can_handle_windows()
.- Parametreler:
device_info – (vid, pid, bcd, imalatçı, ürün, seri numarası) demeti
- open(connected_device, library_uuid)[kaynak]¶
Tüm aygıta özel ilklendirmeleri yap. Aygıt algılandıktan sonra ama aygıtla iletişim kuran diğer fonksiyonlardan önce çağrılır. Örneğin: Kendilerini USB depolama aygıtı olarak tanıtan aygıtlarda, bu metod aygıtı bağlamakla veya aygıt otomatik bağlandıysa, nereye bağlandığını öğrenmekle sorumlu olur.
calibre.devices.usbms.device.Device.open()
metodunun bu fonksiyonun USB depolama aygıtlarıyla ilgili iyi bir örnek olacak uygulaması vardır.Bu metod kullanıcıya bir ileti göstermek için bir OpenFeedback istisnası yükseltebilir.
- Parametreler:
connected_device – The device that we are trying to open. It is a tuple of (vendor id, product id, bcd, manufacturer name, product name, device serial number). However, some devices have no serial number and on Windows only the first three fields are present, the rest are None.
library_uuid – Mevcut calibre kitaplığının UUID’si. Bir kitaplık yoksa None olabilir (örneğin komut satırından kullanıldığında).
- eject()[kaynak]¶
Aygıtın işletim sisteminden bağını ayır/çıkart. Bu aygıtla iletişim kurmaya çalışan GUI işlerinin olup olmadığını kontrol etmez.
NOT: Bu metod diğer aygıt metodlarıyla aynı iş ipliğinde çağrılamayabilir.
- set_progress_reporter(report_progress)[kaynak]¶
Süreç bilgisini raporlaması için bir fonksiyon ayarla.
- Parametreler:
report_progress – Function that is called with a % progress (number between 0 and 100) for various tasks. If it is called with -1 that means that the task does not have any progress information
- get_device_information(end_session=True)[kaynak]¶
Aygıtı aygıt bilgisi için sorgula. Bknz L{DeviceInfoQuery}.
- Dönüşler:
(device name, device version, software version on device, MIME type) The tuple can optionally have a fifth element, which is a drive information dictionary. See usbms.driver for an example.
- get_driveinfo()[kaynak]¶
driveinfo sözlüğünü döndür. Genellikle get_device_information() içinden çağrılır, ama bu sürücü için driveinfo yüklenmesi yavaşsa, SLOW_DRIVEINFO’yu ayarlamalıdır. Bu durumda, bu metod calibre tarafından kitap listeleri yüklendikten sonra çağrılır. Bunun aygıt iş ipliğinde çağrılmadığına dikkat edin, yani sürücü books() metodundaki aygıt bilgisini zulalamalı ve bu fonksiyon zulalanmış veriyi döndürmelidir.
- card_prefix(end_session=True)[kaynak]¶
Kartlar üstündeki yollara 2 elemanlı ön ek listesi döndür. Herhangi bir kart yoksa kart ön eki olarak None ayarlanır. ÖRN. (‘/place’, ‘/place2’) (None, ‘place2’) (‘place’, None) (None, None)
- total_space(end_session=True)[kaynak]¶
- 2 öğeli bir kartlar üstündeki yollara ön ekler listesi döndür. Herhangi bir kart mevcut değilse kart ön eki olarak None ayarlanır. ÖRN. (‘/place’, ‘/place2’) (None, ‘place2’) (‘place’, None) (None, None)
Cihaz hafızası
Hafıza Kartı A
Hafıza Kartı B
- Dönüşler:
(1, 2, 3) bayt toplam alanlı 3 elemanlı liste. Eğer herhangi bir aygıt bu konumlardan birine sahip değilse 0 döndürmelidir.
- free_space(end_session=True)[kaynak]¶
- Bağlantı noktalarında kullanılabilir olan boş alanı al:
Cihaz hafızası
Kart A
Kart B
- Dönüşler:
(1, 2, 3) bayt boş alanlı 3 elemanlı liste. Herhangi bir aygıt bu konumlardan birine sahip değilse -1 döndürmelidir.
- books(oncard=None, end_session=True)[kaynak]¶
Return a list of e-books on the device.
- Parametreler:
oncard – If ‘carda’ or ‘cardb’ return a list of e-books on the specific storage card, otherwise return list of e-books in main memory of device. If a card is specified and no books are on the card return empty list.
- Dönüşler:
Bir KitapListesi.
- upload_books(files, names, on_card=None, end_session=True, metadata=None)[kaynak]¶
Bir kitap listesini aygıta yükle. Aygıtta bir dosya zaten varsa, değiştirilmelidir. Bu metod aygıtta yeterli yer yoksa
FreeSpaceError
yükseltmelidir. FreeSpaceError’un metnion_card
None değilse “card” kelimesini içermelidir, aksi durumda “memory” kelimesini içermelidir.- Parametreler:
files – Bir yol listesi
names – Kitapların aygıta yüklendikten sonra sahip olması gereken isimlerin listesi. len(isimler) == len(dosyalar)
metadata – None değilse,
Metadata
nesneleri listesidir. Ana fikir kitabı aygıtta nereye koyacağını metadata kullanarak belirlemektir. len(metadata) == len(dosyalar). Sıradan kapaktan ayrı olarak (kapağa yol), ayrıca isteğe bağlı kullanılabilecek küçük resim özniteliği olabilir. Küçük resim özniteliği (genişlik, yükseklik, jpeg olarak kapak verisi) biçimindedir.
- Dönüşler:
3 elemanlı demetler listesi. Liste
add_books_to_metadata()
ya geçirilmek üzere düşünülmüştür.
- classmethod add_books_to_metadata(locations, metadata, booklists)[kaynak]¶
Kitaplistelerine konumlar ekle. Bu fonksiyon aygıtla iletişime geçmemelidir.
- Parametreler:
locations – L{upload_books} çağrısı sonucu
metadata –
Metadata
nesneleri listesi,upload_books()
için olanın aynısı.booklists – (
books(oncard=None)()
,books(oncard='carda')()
, :meth`books(oncard=’cardb’)`) çağrıları sonucunu içeren bir demet.
- classmethod remove_books_from_metadata(paths, booklists)[kaynak]¶
Kitapları metadata listesinden çıkar. Bu fonksiyon aygıtla iletişime geçmemelidir.
- Parametreler:
paths – aygıttaki kitaplara yollar.
booklists – (
books(oncard=None)()
,books(oncard='carda')()
, :meth`books(oncard=’cardb’)`) çağrıları sonucunu içeren bir demet.
- sync_booklists(booklists, end_session=True)[kaynak]¶
Aygıttaki metadata’yı güncelle.
- Parametreler:
booklists – (
books(oncard=None)()
,books(oncard='carda')()
, :meth`books(oncard=’cardb’)`) çağrıları sonucunu içeren bir demet.
- get_file(path, outfile, end_session=True)[kaynak]¶
Aygıtta
path
yolundaki dosyayı oku ve çıktı dosyasına yaz.- Parametreler:
outfile –
sys.stdout
benzeri bir dosya nesnesi veya biropen()
çağrısı sonucu.
- classmethod config_widget()[kaynak]¶
Bir QWidget döndürmelidir. QWidget aygıt arayüzü için ayarları içerir
- classmethod save_settings(settings_widget)[kaynak]¶
Ayarları diske kaydetmelidir.
config_widget()
içinde oluşturulan parçacığı alır ve tüm ayarları diske kaydeder.
- classmethod settings()[kaynak]¶
Bir opts nesnesi döndürmelidir. opts nesnesinin aygıt için biçimlerin sıralı listesi olan en az bir format_map özniteliği olmalıdır.
- set_plugboards(plugboards, pb_func)[kaynak]¶
sürücüye mevcut santral kümesini ve belirli bir santrali seçmek için fonksiyonu sağla. Bu metod add_books ve sync_booklists’den hemen önce çağrılır.
- pb_func şu imzaya sahip bir çağrılabilirdir:
def pb_func(aygıt_ismi, biçim, santraller)
Mevcut aygıt ismini (sınıf ismi veya DEVICE_PLUGBOARD_NAME), ilgilendiğiniz biçimi (‘gerçek’ bir biçim veya ‘device_db’), ve santralleri (bu metodu aldığınız yer de olan set_plugboards ile almıştınız) verirsiniz.
- Dönüşler:
None veya tekli bir santral örneği.
- set_driveinfo_name(location_code, name)[kaynak]¶
Driveinfo dosyasındaki aygıt adını ‘isim’ olarak ayarla. Bu ayar dosya tekrar oluşturulana veya ismi tekrar değiştirilene kadar kalacaktır.
Disk olmayan aygıtlar bu metodu get_device_information() metodundan dönen konum kodlarını temel alarak uygulamalıdırlar.
- prepare_addable_books(paths)[kaynak]¶
Bir yol listesi verildiğinde, başka bir yol listesi döndürür. Bu yollar kitapların eklenebilir sürümlerini gösterir.
Bir kitap hazırlanırken hata olursa, bir yol yerine, bu kitap için döndürülen liste içindeki konum üçlü demet olmalıdır: (asıl_yol, istisna örneği, geri izleme)
- startup()[kaynak]¶
Called when calibre is starting the device. Do any initialization required. Note that multiple instances of the class can be instantiated, and thus __init__ can be called multiple times, but only one instance will have this method called. This method is called on the device thread, not the GUI thread.
- shutdown()[kaynak]¶
Calibre kapanırken çağrılır, tam kapanırken ya da yeniden başlatılırken. Gerekli temizliği yapın. Bu metod GUI iş ipliğinde değil aygıt sürecinde çağrılır.
- get_device_uid()[kaynak]¶
Hazırda bağlı olan aygıt için benzersiz bir kimlik döndürmelidir (başarılı open() çağrısından hemen sonra çağrılır). ASK_TO_ALLOW_CONNECT = True ayarladıysanız bu metodu uygulamalısınız
- ignore_connected_device(uid)[kaynak]¶
Gelecekte uid (get_device_uid() çağrısı sonucu) ile tanımlanan aygıtı göz ardı etmeli. ASK_TO_ALLOW_CONNECT = True ayarladıysanız bu metodu uygulamalısınız. Bu fonksiyon open() metodunun hemen ardından çağrılır, yani open() bir durumu zulalarsa, sürücü bu bu durumu sıfırlamalıdır.
- get_user_blacklisted_devices()[kaynak]¶
Kullanıcının göz ardı edilmesini istediği tüm aygıtlar için aygıt uid’inden okunabilir isme haritayı döndür.
- set_user_blacklisted_devices(devices)[kaynak]¶
Bu sürücü tarafından göz ardı edilmesi gereken aygıt uid listesini ayarla.
- specialize_global_preferences(device_prefs)[kaynak]¶
Aygıtınız belirli bir tercihi ezmek istiyorsa bu metodu uygulayın. Ezilebilir tercih isteyen tüm çağrı sitelerinin prefs[‘bir şeyler’] yerine device_prefs[‘bir şeyler’] kullandığından emin olmalısınız. Metodunuz device_prefs.set_overrides(pref=val, pref=val, …) çağırlmalıdır. Mevcut durumda şunun için kullanılır: metadata yönetimi (prefs[‘manage_device_metadata’])
- set_library_info(library_name, library_uuid, field_metadata)[kaynak]¶
Mevcut calibre kitaplığıyla ilgili bilgi istiyorsanız bu metodu uygulayın. Bu metod açılışta ve bağlıyken calibre kitaplığı değiştiğinde çağrılır.
- is_dynamically_controllable()[kaynak]¶
Eklentiler başlatılırken aygıt yöneticisi tarafından çağrılır. Bu metod karakter dizisi döndürürse, a) aygıt yöneticisinin dinamik kontrol ara yüzünü destekler, ve b) bu isim eklentiyle konuşurken kullanılır.
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- start_plugin()[kaynak]¶
Bu metod eklentiyi başlatmak için çağrılır. Eklenti aygıt bağlantılarını her nasıl yapıyorsa öyle kabul etmeye başlamalıdır. Eklenti zaten bağlantı kabul ediyorsa, bir şey yapma.
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- stop_plugin()[kaynak]¶
Bu metod eklentiyi durdurmak için çağrılır. Eklenti artık bağlantı kabul etmemeli, ve arkasını temizlemelidir. shutdown’u bu metodun çağırması beklenebilir. Eklenti zaten bağlantı kabul etmiyorsa, bir şey yapma.
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- get_option(opt_string, default=None)[kaynak]¶
opt_string tarafından gösterilen seçeneğin değerini döndür. Bu metod eklenti başlatılmadığında çağrılabilir. Seçenek mevcut değilse None döndür.
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- set_option(opt_string, opt_value)[kaynak]¶
opt_string tarafından gösterilen seçeneğin değerini ayarla. Bu metod eklenti başlatılmadan çağrılabilir.
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- is_running()[kaynak]¶
Eklenti başlatıldıysa True döndür, yoksa false
Bu metod GUI sürecinde çağrılabilir. Bu metodu uygulayan bir sürücü iş ipliği güvenliği sağlamalıdır.
- synchronize_with_db(db, book_id, book_metadata, first_call)[kaynak]¶
Called during book matching when a book on the device is matched with a book in calibre’s db. The method is responsible for synchronizing data from the device to calibre’s db (if needed).
Metod iki değerli bir demet döndürmelidir. İlk değer calibre veri tabanı değiştiyse değişen kitap kimliklerinin kümesi veya değişmediyse None’dir. İlk değer boş bir kümeyse aygıttaki kitap metadata’sı calibre’nin metadata’sıyla güncellenir ve aygıta geri verilir, ama bu kitabın GUI tazelemesi yapılmaz. Calibre verisi doğruyken ve aygıta gönderilmesi gerekiyorken faydalıdır.
The second value is itself a 2-value tuple. The first value in the tuple specifies whether a book format should be sent to the device. The intent is to permit verifying that the book on the device is the same as the book in calibre. This value must be None if no book is to be sent, otherwise return the base file name on the device (a string like foobar.epub). Be sure to include the extension in the name. The device subsystem will construct a send_books job for all books with not- None returned values. Note: other than to later retrieve the extension, the name is ignored in cases where the device uses a template to generate the file name, which most do. The second value in the returned tuple indicated whether the format is future-dated. Return True if it is, otherwise return False. calibre will display a dialog to the user listing all future dated books.
Çok önemli: bu metod GUI sürecinde çalışır. Aygıt yöneticisinin iş ipliğine dikkat ederek iş ipliği güvenli olmalıdır.
book_id: kitap için veri tabanındaki calibre kimliği. book_metadata: aygıttan gelen kitap için Metadata nesnesi. first_call: Bir eşzamanlama sırasında bu ilk çağrıysa True, aksi halde False
- class calibre.devices.interface.BookList(oncard, prefix, settings)[kaynak]¶
Bases:
list
Kitap listesi. Her bir Book nesnesinin alanları olmalıdır
başlık
yazarlar
boyut (kitabın dosya boyutu)
datetime (UTC tarih demeti)
yol (aygıtta kitaba olan yol)
küçük resim (None olabilir) küçük resim ya resim verisini tutan bir karakter dizisi/bayt nesnesi olmalı ya da resme mutlak yolu (platforma göre) içeren bir image_path özniteliği olmalıdır
etiketler (bir karakter dizisi listesi, boş olabilir).
- supports_collections()[kaynak]¶
Aygıt bu kitap listesi için koleksiyonları destekliyorsa True döndür.
- add_book(book, replace_metadata)[kaynak]¶
Kitabı kitap listesine ekle. Amaç tüm aygıt-dahili metadatayı yönetmektir. Kitaplisteleri eşzamanlanmalıysa True döndür
- remove_book(book)[kaynak]¶
Bir kitabı kitap listesinden çıkar. Aynı zamanda tüm aygıt metadata’sını düzelt
- get_collections(collection_attributes)[kaynak]¶
collection_attributes’dan oluşturulan koleksiyon sözlüğü döndür. Sözlükteki her girdi koleksiyon_ismi:[kitap listesi] biçimindedir
Kitap listesi, serilerden oluşturulan koleksiyonlar dışında - bu durumda series_index kullanılır - kitap başlığına göre sıralanır.
- Parametreler:
collection_attributes – Kitap nesnesinin öznitelik listesi
USB Depolama temelli aygıtlar¶
Bu tarz aygıtlar için temel sınıf :class:`calibre.devices.usbms.driver.USBMS`dir. Bu sınıf bazı işlevlerini aşağıda belgelendiği gibi temel aldıkları sınıflardan alırlar. Genel basit bir USBMS tabanlı sürücü şuna benzer:
from calibre.devices.usbms.driver import USBMS
class PDNOVEL(USBMS):
name = 'Pandigital Novel device interface'
gui_name = 'PD Novel'
description = _('Communicate with the Pandigital Novel')
author = 'Kovid Goyal'
supported_platforms = ['windows', 'linux', 'osx']
FORMATS = ['epub', 'pdf']
VENDOR_ID = [0x18d1]
PRODUCT_ID = [0xb004]
BCD = [0x224]
THUMBNAIL_HEIGHT = 144
EBOOK_DIR_MAIN = 'eBooks'
SUPPORTS_SUB_DIRS = False
def upload_cover(self, path, filename, metadata):
coverdata = getattr(metadata, 'thumbnail', None)
if coverdata and coverdata[2]:
with open('%s.jpg' % os.path.join(path, filename), 'wb') as coverfile:
coverfile.write(coverdata[2])
- class calibre.devices.usbms.device.Device(plugin_path)[kaynak]¶
Bases:
DeviceConfig
,DevicePlugin
Bu sınıf kendini USB Depolama aygıtı olarak aktaran aygıtların tüm sürücüleri için genel mantığı sağlar. Tüm platformlarda geçerli USBMS bağlama/çıkarma uygulamalarını sağlar.
- VENDOR_ID = 0¶
VENDOR_ID bir tam sayı, tamsayı listesi veya sözlük olabilir. Bir sözlükse, sözlüklerin sözlüğü olmalıdır, şu şekilde:
{ integer_vendor_id : { product_id : [list of BCDs], ... }, ... }
- PRODUCT_ID = 0¶
Bir tam sayı veya tam sayı listesi
- BCD = None¶
BCD BCD tabanlı aygıtlar arasında ayrı kalmaması için None olabilir, veya bu sürücü tarafından desteklenen tüm aygıtların BCD numaralarından oluşan liste olabilir.
- WINDOWS_MAIN_MEM = None¶
String identifying the main memory of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
- WINDOWS_CARD_A_MEM = None¶
String identifying the first card of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
- WINDOWS_CARD_B_MEM = None¶
String identifying the second card of the device in the Windows PnP id strings This can be None, string, list of strings or compiled regex
- OSX_MAIN_MEM_VOL_PAT = None¶
Used by the new driver detection to disambiguate main memory from storage cards. Should be a regular expression that matches the main memory mount point assigned by macOS
- BACKLOADING_ERROR_MESSAGE = None¶
- MAX_PATH_LEN = 250¶
Aygıtta oluşturulan azami yol uzunluğu
- NEWS_IN_FOLDER = True¶
Haberleri kendi dizinine koy
- reset(key='-1', log_packets=False, report_progress=None, detected_device=None)[kaynak]¶
- Parametreler:
key – Aygıtın kilidini açacak tuş
log_packets – True ise aygıta giden/aygıttan gelen paket akışı kaydedilir
report_progress – Function that is called with a % progress (number between 0 and 100) for various tasks. If it is called with -1 that means that the task does not have any progress information
detected_device – Aygıt tarayıcıdan gelen aygıt bilgisi
- set_progress_reporter(report_progress)[kaynak]¶
Süreç bilgisini raporlaması için bir fonksiyon ayarla.
- Parametreler:
report_progress – Function that is called with a % progress (number between 0 and 100) for various tasks. If it is called with -1 that means that the task does not have any progress information
- card_prefix(end_session=True)[kaynak]¶
Kartlar üstündeki yollara 2 elemanlı ön ek listesi döndür. Herhangi bir kart yoksa kart ön eki olarak None ayarlanır. ÖRN. (‘/place’, ‘/place2’) (None, ‘place2’) (‘place’, None) (None, None)
- total_space(end_session=True)[kaynak]¶
- 2 öğeli bir kartlar üstündeki yollara ön ekler listesi döndür. Herhangi bir kart mevcut değilse kart ön eki olarak None ayarlanır. ÖRN. (‘/place’, ‘/place2’) (None, ‘place2’) (‘place’, None) (None, None)
Cihaz hafızası
Hafıza Kartı A
Hafıza Kartı B
- Dönüşler:
(1, 2, 3) bayt toplam alanlı 3 elemanlı liste. Eğer herhangi bir aygıt bu konumlardan birine sahip değilse 0 döndürmelidir.
- free_space(end_session=True)[kaynak]¶
- Bağlantı noktalarında kullanılabilir olan boş alanı al:
Cihaz hafızası
Kart A
Kart B
- Dönüşler:
(1, 2, 3) bayt boş alanlı 3 elemanlı liste. Herhangi bir aygıt bu konumlardan birine sahip değilse -1 döndürmelidir.
- windows_sort_drives(drives)[kaynak]¶
Called to disambiguate main memory and storage card for devices that do not distinguish between them on the basis of WINDOWS_CARD_NAME. For example: The EB600
- can_handle_windows(usbdevice, debug=False)[kaynak]¶
Optional method to perform further checks on a device to see if this driver is capable of handling it. If it is not it should return False. This method is only called after the vendor, product ids and the bcd have matched, so it can do some relatively time intensive checks. The default implementation returns True. This method is called only on Windows. See also
can_handle()
.Note that for devices based on USBMS this method by default delegates to
can_handle()
. So you only need to overridecan_handle()
in your subclass of USBMS.- Parametreler:
usbdevice – A usbdevice as returned by
calibre.devices.winusb.scan_usb_devices()
- open(connected_device, library_uuid)[kaynak]¶
Tüm aygıta özel ilklendirmeleri yap. Aygıt algılandıktan sonra ama aygıtla iletişim kuran diğer fonksiyonlardan önce çağrılır. Örneğin: Kendilerini USB depolama aygıtı olarak tanıtan aygıtlarda, bu metod aygıtı bağlamakla veya aygıt otomatik bağlandıysa, nereye bağlandığını öğrenmekle sorumlu olur.
calibre.devices.usbms.device.Device.open()
metodunun bu fonksiyonun USB depolama aygıtlarıyla ilgili iyi bir örnek olacak uygulaması vardır.Bu metod kullanıcıya bir ileti göstermek için bir OpenFeedback istisnası yükseltebilir.
- Parametreler:
connected_device – The device that we are trying to open. It is a tuple of (vendor id, product id, bcd, manufacturer name, product name, device serial number). However, some devices have no serial number and on Windows only the first three fields are present, the rest are None.
library_uuid – Mevcut calibre kitaplığının UUID’si. Bir kitaplık yoksa None olabilir (örneğin komut satırından kullanıldığında).
- eject()[kaynak]¶
Aygıtın işletim sisteminden bağını ayır/çıkart. Bu aygıtla iletişim kurmaya çalışan GUI işlerinin olup olmadığını kontrol etmez.
NOT: Bu metod diğer aygıt metodlarıyla aynı iş ipliğinde çağrılamayabilir.
- sanitize_callback(path)[kaynak]¶
Bağımsız aygıt sürücülerin
create_upload_path()
tarafından kullanılan yol düzenlemesini ezmesine izin veren geri çağrı.
- filename_callback(default, mi)[kaynak]¶
Sürücülerin
create_upload_path()
tarafından ayarlanan varsayılan dosya ismini değiştirmesine izin veren geri çağrı.
- class calibre.devices.usbms.driver.USBMS(plugin_path)[kaynak]¶
-
Tüm USBMS aygıtlar için temel sınıf. Gönderme/alma/metadata güncelleme/metadata zulalama/vs. için mantığı uygular
- description = 'Bir eKitap okuyucusu ile bağlantı kur.'¶
Bu eklentinin ne yaptığını anlatan kısa karakter dizisi
- author = 'John Schember'¶
Eklentinin yazarı
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- booklist_class¶
alias of
BookList
- book_class¶
alias of
Book
- FORMATS = []¶
Desteklenen biçimlerin sıralı listesi
- CAN_SET_METADATA = []¶
Kitaplardaki metadata’nın GUI ile ayarlanıp ayarlanamayacağı.
- get_device_information(end_session=True)[kaynak]¶
Aygıtı aygıt bilgisi için sorgula. Bknz L{DeviceInfoQuery}.
- Dönüşler:
(device name, device version, software version on device, MIME type) The tuple can optionally have a fifth element, which is a drive information dictionary. See usbms.driver for an example.
- set_driveinfo_name(location_code, name)[kaynak]¶
Driveinfo dosyasındaki aygıt adını ‘isim’ olarak ayarla. Bu ayar dosya tekrar oluşturulana veya ismi tekrar değiştirilene kadar kalacaktır.
Disk olmayan aygıtlar bu metodu get_device_information() metodundan dönen konum kodlarını temel alarak uygulamalıdırlar.
- books(oncard=None, end_session=True)[kaynak]¶
Return a list of e-books on the device.
- Parametreler:
oncard – If ‘carda’ or ‘cardb’ return a list of e-books on the specific storage card, otherwise return list of e-books in main memory of device. If a card is specified and no books are on the card return empty list.
- Dönüşler:
Bir KitapListesi.
- upload_books(files, names, on_card=None, end_session=True, metadata=None)[kaynak]¶
Bir kitap listesini aygıta yükle. Aygıtta bir dosya zaten varsa, değiştirilmelidir. Bu metod aygıtta yeterli yer yoksa
FreeSpaceError
yükseltmelidir. FreeSpaceError’un metnion_card
None değilse “card” kelimesini içermelidir, aksi durumda “memory” kelimesini içermelidir.- Parametreler:
files – Bir yol listesi
names – Kitapların aygıta yüklendikten sonra sahip olması gereken isimlerin listesi. len(isimler) == len(dosyalar)
metadata – None değilse,
Metadata
nesneleri listesidir. Ana fikir kitabı aygıtta nereye koyacağını metadata kullanarak belirlemektir. len(metadata) == len(dosyalar). Sıradan kapaktan ayrı olarak (kapağa yol), ayrıca isteğe bağlı kullanılabilecek küçük resim özniteliği olabilir. Küçük resim özniteliği (genişlik, yükseklik, jpeg olarak kapak verisi) biçimindedir.
- Dönüşler:
3 elemanlı demetler listesi. Liste
add_books_to_metadata()
ya geçirilmek üzere düşünülmüştür.
- upload_cover(path, filename, metadata, filepath)[kaynak]¶
Kitap kapağını aygıta yükle. Varsayılan uygulama hiçbir şey yapmaz.
- Parametreler:
path – The full path to the folder where the associated book is located.
filename – Kitap dosyasının uzantısız ismi.
metadata – kitaba ait metadata. Kapak için metadata.thumbnail kullanın
filepath – The full path to the e-book file
- add_books_to_metadata(locations, metadata, booklists)[kaynak]¶
Kitaplistelerine konumlar ekle. Bu fonksiyon aygıtla iletişime geçmemelidir.
- Parametreler:
locations – L{upload_books} çağrısı sonucu
metadata –
Metadata
nesneleri listesi,upload_books()
için olanın aynısı.booklists – (
books(oncard=None)()
,books(oncard='carda')()
, :meth`books(oncard=’cardb’)`) çağrıları sonucunu içeren bir demet.
- remove_books_from_metadata(paths, booklists)[kaynak]¶
Kitapları metadata listesinden çıkar. Bu fonksiyon aygıtla iletişime geçmemelidir.
- Parametreler:
paths – aygıttaki kitaplara yollar.
booklists – (
books(oncard=None)()
,books(oncard='carda')()
, :meth`books(oncard=’cardb’)`) çağrıları sonucunu içeren bir demet.
User interface actions¶
If you are adding your own plugin in a ZIP file, you should subclass both InterfaceActionBase and InterfaceAction. The
load_actual_plugin()
method of your InterfaceActionBase subclass must return an instantiated object of your InterfaceBase subclass.
- class calibre.gui2.actions.InterfaceAction(parent, site_customization)[kaynak]¶
Bases:
QObject
Grafik kullanıcı arayüzüne alınabilecek bir “eylemi” temsil eden bir eklenti. Araç çubuğundaki tüm öğeler ve içerik menüsü bu eklentilerce uygulanır.
Bu sınıfın bu eklentiler için taban sınıf olduğunu unutmayın, ancak, eklentiyi calibre’nin eklenti sistemiyle birleştirmek için, asıl eklentiye referans eden bir kapsayıcı sınıf yapmalısınız. Örnekler için
calibre.customize.builtins
modülüne göz atın.İki
InterfaceAction
nesnesi aynı isme sahipse, yüksek öncelikli olan önce gelir.Sub-classes should implement the
genesis()
,library_changed()
,location_selected()
,shutting_down()
,initialization_complete()
andtag_browser_context_action()
methods.İlklendirildikten sonra, bu eklentinin
gui
üyesi ile ana calibre GUI’sine erişimi vardır. Diğer eklentilere isimle erişebilirsiniz, örneğin:self.gui.iactions['Save To Disk']
Asıl eklentiye erişmek için,
interface_action_base_plugin
özniteliğini kullanın, bu öznitelik yalnızca eklenti kendisi ilklendirildiğinde kullanılabilir olur. do_user_config() gibi eklenti sınıfından metodlar kullanmak istediğinizde faydalıdır.action_spec
tarafından belirtilen QActionself.qaction
olarak otomatik olarak oluşturulur ve kullanılabilir.- name = 'Implement me'¶
Eklenti adı. Aynı isme sahip iki eklenti varsa, yüksek öncelikli olan seçilir.
- priority = 1¶
Eklenti önceliği. Aynı isme sahip iki eklenti varsa, yüksek öncelikli olan seçilir.
- popup_type = 1¶
Bu eklentinin araç çubuğuna eklenmesi durumu için menü açılır pencere türü
- auto_repeat = False¶
Bu eylemin kısayol tuşu basılı tutulduğunda otomatik olarak yinelenip yinelenmeyeceği.
- action_spec = ('text', 'icon', None, None)¶
Of the form: (text, icon_path, tooltip, keyboard shortcut). icon, tooltip and keyboard shortcut can be None. keyboard shortcut must be either a string, None or tuple of shortcuts. If None, a keyboard shortcut corresponding to the action is not registered. If you pass an empty tuple, then the shortcut is registered with no default key binding.
True ise, bir menü self.qaction’a otomatik olarak oluşturulur ve eklenir
True ise, self.qaction’un bir kopyası self.qaction’un menüsüne eklenir. Bu eylemin metninin self.qaction’dakinden farklı olmasını isterseniz, bu değişkeni yeni metne ayarlayın
- dont_add_to = frozenset({})¶
Bu eylemin eklenmemesi gereken konumlar kümesi. Muhtemel konumlar listesi için :attr:`all_locations`a göz atın
- dont_remove_from = frozenset({})¶
Bu eylemin çıkarılmaması gereken konumlar kümesi. Muhtemel konumlar listesi için :attr:`all_locations`a göz atın
- action_type = 'global'¶
‘current’ türünden bir eylem mevcut görünüm üzerinde hareket, ‘global’ ise mevcut görnüm değil bir bütün olarak calibre üzerinde hareket anlamına gelir
- accepts_drops = False¶
True ise, bu interfaceAction sürükle bırak eylemleriyle etkileşme şansına sahip olacaktır. Detaylar için
accept_enter_event()
, :meth`:accept_drag_move_event`,drop_event()
metodlarına göz atın.
- accept_enter_event(event, mime_data)[kaynak]¶
Bu metod bu arayüz eylemi sürükleme olayını yapabilme becerisine sahipse True döndürmeli. Olayda kabul et/göz ardı et çağırmayın, bu calibre UI’si tarafından halledilir.
- accept_drag_move_event(event, mime_data)[kaynak]¶
Bu metod bu arayüz eylemi sürükleme olayını yapabilme becerisine sahipse True döndürmeli. Olayda kabul et/göz ardı et çağırmayın, bu calibre UI’si tarafından halledilir.
- drop_event(event, mime_data)[kaynak]¶
Bu metod bazı kullanışlı eylemler gerçekleştirmeli ve bu arayüz bırak eylemini yapabilme becerisine sahipse True döndürmeli. Olayda kabul et/göz ardı et çağırmayın, bu calibre UI’si tarafından halledilir. Bu fonksiyonda engelleyici/uzun işlemler yapmayın. Bunun yerine bir sinyal yayın veeya bir QTimer.singleShot kullanın ve çabucak dönün. Örnekler için dahili eylemlere göz atabilirsiniz.
Convenience method to easily add actions to a QMenu. Returns the created QAction. This action has one extra attribute calibre_shortcut_unique_name which if not None refers to the unique name under which this action is registered with the keyboard manager.
- Parametreler:
menu – Yeni oluşturulan eylemin ekleneceği QMenu
unique_name – A unique name for this action, this must be globally unique, so make it as descriptive as possible. If in doubt, add an UUID to it.
text – Eylem metni.
icon – Either a QIcon or a file name. The file name is passed to the QIcon.ic() builtin, so you do not need to pass the full path to the images folder.
shortcut – Bir karakter dizisi, karakter dizisi listesi, None veya False. False ise, bu eylem için klavye kısayolu kaydedilmez. None ise, varsayılan bağlayıcısı olmayan bir klavye kısayolu kaydedilir. Karakter dizisi ve karakter dizisi listeleri belirtilen varsayılan tuş atamasını kaydeder.
description – Bu eylem için tanım. Araç ipuçlarını ayarlamak için kullanılır.
triggered – Oluşturulan eylemin tetiklenen sinyaline bağlanmak üzere bir çağrılabilir.
shortcut_name – The text displayed to the user when customizing the keyboard shortcuts for this action. By default it is set to the value of
text
.persist_shortcut – Shortcuts for actions that don’t always appear, or are library dependent, may disappear when other keyboard shortcuts are edited unless
`persist_shortcut`
is set True.
- load_resources(names)[kaynak]¶
Bu eklenti bir ZIP dosyasıyla gelirse (kullanıcı tarafından eklenmiş eklenti), bu metod ZIP dosyasından kaynakları yüklemenizi sağlar.
Örneğin bir resmi yüklemek için:
pixmap = QPixmap() pixmap.loadFromData(tuple(self.load_resources(['images/icon.png']).values())[0]) icon = QIcon(pixmap)
- Parametreler:
names – List of paths to resources in the ZIP file using / as separator
- Dönüşler:
A dictionary of the form
{name : file_contents}
. Any names that were not found in the ZIP file will not be present in the dictionary.
- genesis()[kaynak]¶
Bu eklentiyi kur. Yalnızca ilklendirme aşamasında bir kere çağrılır. self.gui kullanılabilirdir.
action_spec
tarafından belirtilen eylemself.qaction
ile kullanılabilir.
- location_selected(loc)[kaynak]¶
Calibre’de gösterilen kitap listesi her değiştiğinde çağrılır. Şu an loc için değerler:
kitaplık, ana, kart ve kartb
.Bu metod bu eylemi ve alt eylemlerini konuma uygun olarak açmalı/kapamalı.
- library_about_to_change(olddb, db)[kaynak]¶
Mevcut kitaplık değiştiğinde çağrılır.
- Parametreler:
olddb – The LibraryDatabase corresponding to the previous library.
db – The LibraryDatabase corresponding to the new library.
- library_changed(db)[kaynak]¶
Mevcut kitaplık değiştiğinde çağrılır.
- Parametreler:
db – Mevcut kitaplığa karşılık gelen LibraryDatabase.
- gui_layout_complete()[kaynak]¶
Ana GUI’nin yerleşimi tamamlandığında her eylem için bir kere çağrılır. Eyleminiz yerleşimde değişiklik yapmalıysa, bu değişiklikler
initialization_complete()
yerine burada olmalıdır.
- initialization_complete()[kaynak]¶
Ana GUI ilklendirmesi bittiğinde her eylem için bir kere çağrılır.
- tag_browser_context_action(index)[kaynak]¶
Called when displaying the context menu in the Tag browser.
index
is the QModelIndex that points to the Tag browser item that was right clicked. Test it for validity with index.valid() and get the underlying TagTreeItem object with index.data(Qt.ItemDataRole.UserRole). Any action objects yielded by this method will be added to the context menu.
- class calibre.customize.InterfaceActionBase(*args, **kwargs)[kaynak]¶
Bases:
Plugin
- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- author = 'Kovid Goyal'¶
Eklentinin yazarı
- type = 'Kullanıcı arayüzü eylemi'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- can_be_disabled = False¶
False ise, kullanıcının bu eklentiyi kapatma şansı olmayacaktır. Dikkatli kullanın.
Preferences plugins¶
- class calibre.customize.PreferencesPlugin(plugin_path)[kaynak]¶
Bases:
Plugin
Tercihler iletişim penceresinde gösterilen bir parçacığı temsil eden eklenti.
Bu eklentinin sadece bir önemli metodu var
create_widget()
. Eklentinin çeşitli alanları UI’de nasıl kategorilendiğini kontrol eder.- supported_platforms = ['windows', 'osx', 'linux']¶
Bu eklentinin çalıştığı platformların listesi. Örneğin:
['windows', 'osx', 'linux']
- author = 'Kovid Goyal'¶
Eklentinin yazarı
- type = 'Tercihler'¶
Eklenti türü. Eklentileri GUI’de kategorize etmek için kullanılır
- can_be_disabled = False¶
False ise, kullanıcının bu eklentiyi kapatma şansı olmayacaktır. Dikkatli kullanın.
- config_widget = None¶
ConfigWidget adında ConfigWidgetInterface’yi uygulayan sınıfı içeren modüle yolu içe aktar.
create_widget()
tarafından kullanılır.
- name_order = 100¶
Bu eklentinin :attr:`gui_name`si bir kategorideki isimler listesinde nerede bulunmalı
- category = None¶
Bu eklentinin bulunması gereken kategori
- gui_category = None¶
Bu eklenti için kullanıcıya gösterilecek kategori ismi
- gui_name = None¶
Bu eklenti için kullanıcıya gösterilecek isim
- icon = None¶
Eklenti simgesi, mutlak yol olmalıdır
- description = None¶
Araç ipuçları ve benzerleri için kullanılacak tanımlama
- create_widget(parent=None)[kaynak]¶
Bu tercih grubunu ayarlamak için kullanılan asıl Qt parçacığını oluştur ve döndür. Parçacık :class:`calibre.gui2.preferences.ConfigWidgetInterface`yi uygulamalıdır.
Varsayılan uygulama parçacığı ilklendirmek için
config_widget
kullanır.
- class calibre.gui2.preferences.ConfigWidgetInterface[kaynak]¶
Bu sınıf Tercihler iletişim penceresinde gösterilen tüm parçacıkların uygulaması gereken arayüzü tanımlar. Bu arayüzü uygulayan ve çeşitli kolaylık sağlayıcı metod tanımlayan
ConfigWidgetBase
taban sınıfına göz atın.- changed_signal = None¶
Bu sinyal kullanıcı bu parçacıkta her değişiklik yaptığında yayılmalıdır
- supports_restoring_to_defaults = True¶
restore_to_defaults()
metodu uygulanmışsa True olarak ayarla.
- restore_defaults_desc = "Varsayılan ayarları yükle. Bu işlemi tamamlamak için Tamam'a tıklamalısınız."¶
The tooltip for the “Restore defaults” button
- restart_critical = False¶
True ise Tercihler iletişim penceresi kullanıcının daha fazla tercih ayarlamasına izin vermez. Yalnızca
commit()
True döndürdüğünde etkilidir.
- genesis(gui)[kaynak]¶
Parçacık görüntülenmeden önce bir kere çağrılır, gerekli tüm kurulumu gerçekleştirmelidir.
- Parametreler:
gui – Ana calibre grafik kullanıcı arayüzü
- initialize()[kaynak]¶
Should set all config values to their initial values (the values stored in the config files). A “return” statement is optional. Return False if the dialog is not to be shown.
- commit()[kaynak]¶
Değişen ayarları kaydet. Değişiklikler yeniden başlatma gerektiriyorsa True döndür, aksi halde False. Bir hata olduğunu belirtmek için bir
AbortCommit
istisnası yükselt. Hatanın ne olduğu ve nasıl düzeltileceğiyle ilgili kullanıcıya bilgi vermek sizin sorumluluğunuzdadır.
- class calibre.gui2.preferences.ConfigWidgetBase(parent=None)[kaynak]¶
Kolayca standart kontrol kutuları, açılır kapanır kutular, metin alanları benzeri parçacıklar eklemek için kod içeren temel sınıf.
register()
metoduna göz atın.Bu sınıf kaydedilen ayarlar için bildirim değişikliği, varsayılana geri dönme, gui nesneleri ve ayar nesneleri arası geçişleri vs. otomatik yönetir.
Eğer yapılandırma parçacığınız bu sınıftan türemiş fakat kaydedilmemiş ayarlar içeriyorsa,
ConfigWidgetInterface
metodlarını ezmeli ve ezilen metodlar içinden taban sınıfın metodlarını çağırmalısınız.- changed_signal¶
Bu sinyal kullanıcı bu parçacıkta her değişiklik yaptığında yayılmalıdır
- supports_restoring_to_defaults = True¶
restore_to_defaults()
metodu uygulanmışsa True olarak ayarla.
- restart_critical = False¶
True ise Tercihler iletişim penceresi kullanıcının daha fazla tercih ayarlamasına izin vermez. Yalnızca
commit()
True döndürdüğünde etkilidir.
- register(name, config_obj, gui_name=None, choices=None, restart_required=False, empty_string_is_None=True, setting=<class 'calibre.gui2.preferences.Setting'>)[kaynak]¶
Bir ayar kaydet.
- Parametreler:
name – Ayar adı
config – Ayarı okuyan/yazan yapılandırma nesnesi
gui_name – Ayarın değiştirilebilmesi için bir arayüz sunan GUI nesnesinin adı. Varsayılan olarak
'opt_' + isim
beklenir.choices – Bu ayar çoklu seçim (açılır kutu) temelli bir ayarsa, seçimler listesi. Liste
[(gui ismi, değer), ...]
şeklinde ikili demetler listesidirsetting – Bu ayarı yönetmekle sorumlu sınıf. Varsayılan sınıf nerdeyse tüm durumları ele alır, yani bu parametre nadiren kullanılır.
- initialize()[kaynak]¶
Should set all config values to their initial values (the values stored in the config files). A “return” statement is optional. Return False if the dialog is not to be shown.