okular
Okular::Generator Class Reference
#include <generator.h>

Detailed Description
[Abstract Class] The information generator.Most of class members are virtuals and some of them pure virtual. The pure virtuals provide the minimal functionalities for a Generator, that is being able to generate QPixmap for the Page 's of the Document.
Implementing the other functions will make the Generator able to provide more contents and/or functionalities (like text extraction).
Generation/query is requested by the Document class only, and that class stores the resulting data into Page s. The data will then be displayed by the GUI components (PageView, ThumbnailList, etc..).
- See also:
- PrintInterface, ConfigInterface, GuiInterface
Definition at line 183 of file generator.h.
Public Types | |
| enum | GeneratorFeature { Threaded, TextExtraction, ReadRawData, FontInfo, PageSizes, PrintNative, PrintPostscript, PrintToFile } |
| enum | PageSizeMetric { None, Points } |
Signals | |
| void | error (const QString &message, int duration) |
| void | notice (const QString &message, int duration) |
| void | warning (const QString &message, int duration) |
Public Member Functions | |
| virtual bool | canGeneratePixmap () const |
| virtual bool | canGenerateTextPage () const |
| bool | closeDocument () |
| virtual const QList < EmbeddedFile * > * | embeddedFiles () const |
| virtual ExportFormat::List | exportFormats () const |
| virtual bool | exportTo (const QString &fileName, const ExportFormat &format) |
| virtual FontInfo::List | fontsForPage (int page) |
| virtual const DocumentInfo * | generateDocumentInfo () |
| virtual const DocumentSynopsis * | generateDocumentSynopsis () |
| virtual void | generatePixmap (PixmapRequest *request) |
| virtual void | generateTextPage (Page *page) |
| Generator (QObject *parent, const QVariantList &args) | |
| bool | hasFeature (GeneratorFeature feature) const |
| virtual bool | isAllowed (Permission action) const |
| virtual bool | loadDocument (const QString &fileName, QVector< Page * > &pagesVector)=0 |
| virtual bool | loadDocumentFromData (const QByteArray &fileData, QVector< Page * > &pagesVector) |
| virtual QVariant | metaData (const QString &key, const QVariant &option) const |
| virtual void | pageSizeChanged (const PageSize &pageSize, const PageSize &oldPageSize) |
| virtual PageSize::List | pageSizes () const |
| virtual PageSizeMetric | pagesSizeMetric () const |
| virtual bool | print (QPrinter &printer) |
| virtual void | rotationChanged (Rotation orientation, Rotation oldOrientation) |
| virtual | ~Generator () |
Protected Slots | |
| void | requestFontData (const Okular::FontInfo &font, QByteArray *data) |
Protected Member Functions | |
| virtual bool | doCloseDocument ()=0 |
| const Document * | document () const |
| QVariant | documentMetaData (const QString &key, const QVariant &option=QVariant()) const |
| virtual QImage | image (PixmapRequest *page) |
| void | setFeature (GeneratorFeature feature, bool on=true) |
| void | signalPixmapRequestDone (PixmapRequest *request) |
| void | signalTextGenerationDone (Page *page, TextPage *textPage) |
| virtual TextPage * | textPage (Page *page) |
| void | updatePageBoundingBox (int page, const NormalizedRect &boundingBox) |
| QMutex * | userMutex () const |
Member Enumeration Documentation
Describe the possible optional features that a Generator can provide.
- Enumerator:
-
Threaded TextExtraction Whether the Generator can extract text from the document in the form of TextPage's. ReadRawData Whether the Generator can read a document directly from its raw data. FontInfo Whether the Generator can provide information about the fonts used in the document. PageSizes Whether the Generator can change the size of the document pages. PrintNative Whether the Generator supports native cross-platform printing (QPainter-based). PrintPostscript Whether the Generator supports postscript-based file printing. PrintToFile Whether the Generator supports export to PDF & PS through the Print Dialog.
Definition at line 197 of file generator.h.
This enum identifies the metric of the page size.
- Enumerator:
-
None The page size is not defined in a physical metric. Points The page size is given in 1/72 inches.
Definition at line 305 of file generator.h.
Constructor & Destructor Documentation
| Generator::Generator | ( | QObject * | parent, | |
| const QVariantList & | args | |||
| ) |
| Generator::~Generator | ( | ) | [virtual] |
Member Function Documentation
| bool Generator::canGeneratePixmap | ( | ) | const [virtual] |
This method returns whether the generator is ready to handle a new pixmap request.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 210 of file generator.cpp.
| bool Generator::canGenerateTextPage | ( | ) | const [virtual] |
This method returns whether the generator is ready to handle a new text page request.
Definition at line 249 of file generator.cpp.
| bool Generator::closeDocument | ( | ) |
This method is called when the document is closed and not used any longer.
- Returns:
- true on success, false otherwise.
Definition at line 180 of file generator.cpp.
| virtual bool Okular::Generator::doCloseDocument | ( | ) | [protected, pure virtual] |
This method is called when the document is closed and not used any longer.
- Returns:
- true on success, false otherwise.
Implemented in Okular::TextDocumentGenerator.
| const Document * Generator::document | ( | ) | const [protected] |
| QVariant Generator::documentMetaData | ( | const QString & | key, | |
| const QVariant & | option = QVariant() | |||
| ) | const [protected] |
Request a meta data of the Document, if available, like an internal setting.
Definition at line 384 of file generator.cpp.
| const QList< EmbeddedFile * > * Generator::embeddedFiles | ( | ) | const [virtual] |
Returns the 'list of embedded files' object of the document or 0 if no list of embedded files is available.
Definition at line 290 of file generator.cpp.
| void Okular::Generator::error | ( | const QString & | message, | |
| int | duration | |||
| ) | [signal] |
This signal should be emitted whenever an error occurred in the generator.
- Parameters:
-
message The message which should be shown to the user. duration The time that the message should be shown to the user.
| ExportFormat::List Generator::exportFormats | ( | ) | const [virtual] |
Returns the list of additional supported export formats.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 329 of file generator.cpp.
| bool Generator::exportTo | ( | const QString & | fileName, | |
| const ExportFormat & | format | |||
| ) | [virtual] |
This method is called to export the document in the given format and save it under the given fileName.
The format must be one of the supported export formats.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 334 of file generator.cpp.
| FontInfo::List Generator::fontsForPage | ( | int | page | ) | [virtual] |
Definition at line 285 of file generator.cpp.
| const DocumentInfo * Generator::generateDocumentInfo | ( | ) | [virtual] |
Returns the general information object of the document or 0 if no information are available.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 275 of file generator.cpp.
| const DocumentSynopsis * Generator::generateDocumentSynopsis | ( | ) | [virtual] |
Returns the 'table of content' object of the document or 0 if no table of content is available.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 280 of file generator.cpp.
| void Generator::generatePixmap | ( | PixmapRequest * | request | ) | [virtual] |
This method can be called to trigger the generation of a new pixmap as described by request.
We create the text page for every page that is visible to the user, so he can use the text extraction tools without a delay.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 216 of file generator.cpp.
| void Generator::generateTextPage | ( | Page * | page | ) | [virtual] |
This method can be called to trigger the generation of a text page for the given page.
The generation is done synchronous or asynchronous, depending on the type parameter and the capabilities of the generator (e.g. multithreading).
- See also:
- TextPage
Definition at line 255 of file generator.cpp.
| bool Generator::hasFeature | ( | GeneratorFeature | feature | ) | const |
| QImage Generator::image | ( | PixmapRequest * | page | ) | [protected, virtual] |
Returns the image of the page as specified in the passed pixmap request.
- Warning:
- this method may be executed in its own separated thread if the Threaded is enabled!
Definition at line 264 of file generator.cpp.
| bool Generator::isAllowed | ( | Permission | action | ) | const [virtual] |
This method returns whether given action (Permission) is allowed in this document.
Definition at line 300 of file generator.cpp.
| virtual bool Okular::Generator::loadDocument | ( | const QString & | fileName, | |
| QVector< Page * > & | pagesVector | |||
| ) | [pure virtual] |
Loads the document with the given fileName and fills the pagesVector with the parsed pages.
- Returns:
- true on success, false otherwise.
Implemented in Okular::TextDocumentGenerator.
| bool Generator::loadDocumentFromData | ( | const QByteArray & | fileData, | |
| QVector< Page * > & | pagesVector | |||
| ) | [virtual] |
Loads the document from the raw data fileData and fills the pagesVector with the parsed pages.
- Note:
- the Generator has to have the feature ReadRawData enabled
- Returns:
- true on success, false otherwise.
Definition at line 175 of file generator.cpp.
This method returns the meta data of the given key with the given option of the document.
Definition at line 323 of file generator.cpp.
| void Okular::Generator::notice | ( | const QString & | message, | |
| int | duration | |||
| ) | [signal] |
This signal should be emitted whenever the user should be noticed.
- Parameters:
-
message The message which should be shown to the user. duration The time that the message should be shown to the user.
| void Generator::pageSizeChanged | ( | const PageSize & | pageSize, | |
| const PageSize & | oldPageSize | |||
| ) | [virtual] |
This method is called when the page size has been changed by the user.
Definition at line 314 of file generator.cpp.
| PageSize::List Generator::pageSizes | ( | ) | const [virtual] |
| Generator::PageSizeMetric Generator::pagesSizeMetric | ( | ) | const [virtual] |
This method returns the metric of the page size.
Default is None.
Definition at line 295 of file generator.cpp.
| bool Generator::print | ( | QPrinter & | printer | ) | [virtual] |
This method is called to print the document to the given printer.
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 318 of file generator.cpp.
| void Generator::requestFontData | ( | const Okular::FontInfo & | font, | |
| QByteArray * | data | |||
| ) | [protected, slot] |
Gets the font data for the given font.
- Since:
- 0.8 (KDE 4.1)
Definition at line 410 of file generator.cpp.
This method is called when the orientation has been changed by the user.
Definition at line 305 of file generator.cpp.
| void Generator::setFeature | ( | GeneratorFeature | feature, | |
| bool | on = true | |||
| ) | [protected] |
| void Generator::signalPixmapRequestDone | ( | PixmapRequest * | request | ) | [protected] |
This method must be called when the pixmap request triggered by generatePixmap() has been finished.
Definition at line 345 of file generator.cpp.
This method must be called when a text generation has been finished.
Definition at line 356 of file generator.cpp.
Returns the text page for the given page.
- Warning:
- this method may be executed in its own separated thread if the Threaded is enabled!
Reimplemented in Okular::TextDocumentGenerator.
Definition at line 270 of file generator.cpp.
| void Generator::updatePageBoundingBox | ( | int | page, | |
| const NormalizedRect & | boundingBox | |||
| ) | [protected] |
Set the bounding box of a page after the page has already been handed to the Document.
Call this instead of Page::setBoundingBox() to ensure that all observers are notified.
- Since:
- 0.7 (KDE 4.1)
Definition at line 403 of file generator.cpp.
| QMutex * Generator::userMutex | ( | ) | const [protected] |
Return the pointer to a mutex the generator can use freely.
Definition at line 393 of file generator.cpp.
| void Okular::Generator::warning | ( | const QString & | message, | |
| int | duration | |||
| ) | [signal] |
This signal should be emitted whenever the user should be warned.
- Parameters:
-
message The message which should be shown to the user. duration The time that the message should be shown to the user.
The documentation for this class was generated from the following files:
KDE 4.2 API Reference