1/** 2 * \mainpage 3 * 4 * KoText is a library for general use that extends the QText framework 5 * (codenamed scribe) with an enhanced text-layout which adds features 6 * required by ODF and general word-processing applications. 7 * 8 * You can use KoText at all places where you would normally use a 9 * QTextDocument as the main text layout class in scribe can be replaced 10 * on any QTextDocument instance using QTextDocument::setDocumentLayout(). 11 * This means you can use the Qt API as normal, but you will be 12 * able to use extra features like the plugins, the variables and the 13 * ODF loading and saving for all the ODF text-layout features. 14 * 15 * TextShape Flake-Plugin 16 * 17 * Closely coupled with the kotext library is the text plugin that is 18 * build on flake technology. All the user interaction dialogs and code 19 * will reside in that plugin, and the actual heavy lifting of the 20 * layout also is present only in that plugin. In other words; this 21 * library will supply you with the APIs but without having the text 22 * shape plugin loaded you can't show or layout the text. The goal is 23 * to keep it cheap to link to this library and only provide the bare 24 * minimum of functionality is the way to get there. The feature- 25 * package will be completed by the optional text-plugin. 26 * 27 * QTextDocument compatibility 28 * 29 * The actual content is stored in the QTextDocument, as mentioned before. 30 * In KoText we support a lot more features than Qt does in its layout 31 * and this library will allow you to enrich your document with those 32 * features. The core design goal is that you can use an externally 33 * created QTextDocument with KoText. This has the implication that all 34 * the extra content is stored inside the document. We add QTextFormat 35 * based properties for that as can be seen in the styles (see 36 * KoParagraphStyle::Properities for instance), and we allow managers to 37 * be stored on the document too. So for example a KoStyleManager will 38 * be stored as a property on the QTextDocument and you can access that 39 * using the KoTextDocument API. Note that you can use the 40 * KoTextDocument class while using only a QTextDocument instance. 41 * 42 * Plugins 43 * 44 * There are various plugins for KoText that make it possible for 3rd 45 * parties to extend the KoText functionality, see the techbase page; 46 * http://techbase.kde.org/Development/Tutorials/Calligra_Overview#Text_Plugins 47 * 48 * ODF compatibility 49 * 50 * Loading and saving of documents can be done to and from ODF using the 51 * open document classes. 52 * 53 * Important classes; 54 * 55 * KoTextDocumentLayout the main layout class to be set on the QTextDocument. 56 * 57 * KoInlineTextObject plugin base for inline objects (and variables) 58 * 59 * KoTextEditingPlugin plugin base for text editing plugins. 60 * 61 * KoText namespace. 62 */ 63 64// DOXYGEN_SET_PROJECT_NAME = KoText 65// DOXYGEN_SET_IGNORE_PREFIX = Ko K 66