mirror of
https://bitbucket.org/smil3y/kde-extraapps.git
synced 2025-02-23 18:32:53 +00:00
32 lines
1.4 KiB
Text
32 lines
1.4 KiB
Text
The most global class is 'Project'. It is a singleton and keeps project-related data/settings
|
|
'Settings' is also a singleton (src/prefs).
|
|
|
|
==LokalizeMainWindow==
|
|
'LokalizeMainWindow' is the main window with multitabs interface.
|
|
Uses QMdiArea for tabbing interface, and guiFactory()->addClient()/guiFactory()->removeClient()
|
|
to merge actions from tabs (editor, project overview, tm-search tab), and StatusBarProxy to deliver info from tabs.
|
|
Tabs are KMainWindows + KXmlGuiCleints.
|
|
|
|
==Project Overview tab==
|
|
Hacks KDirLister to merge contents from two dirs.
|
|
uses kdesdk/strigi-analyzer/po to scan translation files
|
|
|
|
==Editor tab==
|
|
'EditorTab' is a dispatcher (controller) for one catalog editing window (tab).
|
|
'EditorView' is msgid/msgstr viewer/editor for it.
|
|
'MsgCtxtView', 'GlossaryView' and other QDockWidget derivatives provide specialized features.
|
|
All specialized actions should go into views (QDockWidgets) or separate classes used from views.
|
|
|
|
'Catalog' is a controller+proxymodel for CatalogStorage translation files
|
|
'CatalogStorage' is interface for different storage models (QVector for gettext, QDom for xliff)
|
|
|
|
==Translation Memory==
|
|
Implemented as series of jobs running in second thread (src/tm/jobs.cpp).
|
|
See initDB() for database schema
|
|
|
|
==Glossary==
|
|
SAX parser/generator based. Tries to preserve unknown metadata on saving when possible.
|
|
|
|
|
|
API docs:
|
|
http://api.kde.org/4.x-api/kdesdk-apidocs/lokalize/html/annotated.html
|