summaryrefslogtreecommitdiff
path: root/src/frontend/cexportmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/frontend/cexportmanager.cpp')
-rw-r--r--src/frontend/cexportmanager.cpp844
1 files changed, 422 insertions, 422 deletions
diff --git a/src/frontend/cexportmanager.cpp b/src/frontend/cexportmanager.cpp
index 5c94c39..f1ceed6 100644
--- a/src/frontend/cexportmanager.cpp
+++ b/src/frontend/cexportmanager.cpp
@@ -44,503 +44,503 @@ using namespace Rendering;
using namespace Printing;
CExportManager::CExportManager(const QString& caption, const bool showProgress, const QString& progressLabel, const CSwordBackend::FilterOptions filterOptions, const CSwordBackend::DisplayOptions displayOptions) {
- m_caption = !caption.isEmpty() ? caption : QString::fromLatin1("BibleTime");
- m_progressLabel = progressLabel;
- m_filterOptions = filterOptions;
- m_displayOptions = displayOptions;
- m_showProgress = showProgress;
- m_progressDialog = 0;
+ m_caption = !caption.isEmpty() ? caption : QString::fromLatin1("BibleTime");
+ m_progressLabel = progressLabel;
+ m_filterOptions = filterOptions;
+ m_displayOptions = displayOptions;
+ m_showProgress = showProgress;
+ m_progressDialog = 0;
}
bool CExportManager::saveKey(CSwordKey* key, const Format format, const bool addText) {
- if (!key) {
- return false;
- }
- if (!key->module()) {
- return false;
- }
- const QString filename = getSaveFileName(format);
- if (filename.isEmpty()) {
- return false;
- }
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- QString text;
- QString startKey;
- QString stopKey;
-
- QList<CSwordModuleInfo*> modules;
- modules.append(key->module());
-
- CSwordVerseKey *vk = dynamic_cast<CSwordVerseKey*>(key);
- if (vk && vk->isBoundSet()) {
- text = render->renderKeyRange( QString::fromUtf8(vk->LowerBound()), QString::fromUtf8(vk->UpperBound()), modules );
- }
- else { //no range supported
- text = render->renderSingleKey(key->key(), modules);
- }
-
- if (!progressWasCancelled()) {
- CToolClass::savePlainFile(filename, text, false, (format==HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
- closeProgressDialog();
- return true;
- }
- return false;
+ if (!key) {
+ return false;
+ }
+ if (!key->module()) {
+ return false;
+ }
+ const QString filename = getSaveFileName(format);
+ if (filename.isEmpty()) {
+ return false;
+ }
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ QString text;
+ QString startKey;
+ QString stopKey;
+
+ QList<CSwordModuleInfo*> modules;
+ modules.append(key->module());
+
+ CSwordVerseKey *vk = dynamic_cast<CSwordVerseKey*>(key);
+ if (vk && vk->isBoundSet()) {
+ text = render->renderKeyRange( QString::fromUtf8(vk->LowerBound()), QString::fromUtf8(vk->UpperBound()), modules );
+ }
+ else { //no range supported
+ text = render->renderSingleKey(key->key(), modules);
+ }
+
+ if (!progressWasCancelled()) {
+ CToolClass::savePlainFile(filename, text, false, (format == HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
+ closeProgressDialog();
+ return true;
+ }
+ return false;
}
bool CExportManager::saveKeyList(sword::ListKey* list, CSwordModuleInfo* module, const Format format, const bool addText) {
- if (!list->Count())
- return false;
-
- const QString filename = getSaveFileName(format);
- if (filename.isEmpty()) {
- return false;
- }
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- CTextRendering::KeyTree tree;
-
- setProgressRange(list->Count());
- CTextRendering::KeyTreeItem::Settings itemSettings;
- itemSettings.highlight = false;
-
- *list = sword::TOP;
- while (!list->Error() && !progressWasCancelled()) {
- tree.append( new CTextRendering::KeyTreeItem(QString::fromLocal8Bit((const char*)(*list)) , module, itemSettings) );
- incProgress();
-
- (*list)++;
- }
-
- const QString text = render->renderKeyTree(tree);
-
- if (!progressWasCancelled()) {
- CToolClass::savePlainFile(filename, text, false, (format==HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
- closeProgressDialog();
- return true;
- }
- return false;
+ if (!list->Count())
+ return false;
+
+ const QString filename = getSaveFileName(format);
+ if (filename.isEmpty()) {
+ return false;
+ }
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ CTextRendering::KeyTree tree;
+
+ setProgressRange(list->Count());
+ CTextRendering::KeyTreeItem::Settings itemSettings;
+ itemSettings.highlight = false;
+
+ *list = sword::TOP;
+ while (!list->Error() && !progressWasCancelled()) {
+ tree.append( new CTextRendering::KeyTreeItem(QString::fromLocal8Bit((const char*)(*list)) , module, itemSettings) );
+ incProgress();
+
+ (*list)++;
+ }
+
+ const QString text = render->renderKeyTree(tree);
+
+ if (!progressWasCancelled()) {
+ CToolClass::savePlainFile(filename, text, false, (format == HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
+ closeProgressDialog();
+ return true;
+ }
+ return false;
}
bool CExportManager::saveKeyList(QList<CSwordKey*>& list, const Format format, const bool addText ) {
- if (!list.count())
- return false;
-
- const QString filename = getSaveFileName(format);
- if (filename.isEmpty()) {
- return false;
- }
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- CTextRendering::KeyTree tree;
-
- setProgressRange(list.count());
- CTextRendering::KeyTreeItem::Settings itemSettings;
- itemSettings.highlight = false;
-
- QListIterator<CSwordKey*> it(list);
- while (it.hasNext() && !progressWasCancelled()){
- CSwordKey* k = it.next();
- tree.append( new CTextRendering::KeyTreeItem(k->key(), k->module(), itemSettings) );
- incProgress();
- };
-
- const QString text = render->renderKeyTree(tree);
-
- if (!progressWasCancelled()) {
- CToolClass::savePlainFile(filename, text, false, (format==HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
- closeProgressDialog();
- return true;
- }
- return false;
+ if (!list.count())
+ return false;
+
+ const QString filename = getSaveFileName(format);
+ if (filename.isEmpty()) {
+ return false;
+ }
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ CTextRendering::KeyTree tree;
+
+ setProgressRange(list.count());
+ CTextRendering::KeyTreeItem::Settings itemSettings;
+ itemSettings.highlight = false;
+
+ QListIterator<CSwordKey*> it(list);
+ while (it.hasNext() && !progressWasCancelled()) {
+ CSwordKey* k = it.next();
+ tree.append( new CTextRendering::KeyTreeItem(k->key(), k->module(), itemSettings) );
+ incProgress();
+ };
+
+ const QString text = render->renderKeyTree(tree);
+
+ if (!progressWasCancelled()) {
+ CToolClass::savePlainFile(filename, text, false, (format == HTML) ? QTextCodec::codecForName("UTF-8") : QTextCodec::codecForLocale() );
+ closeProgressDialog();
+ return true;
+ }
+ return false;
}
bool CExportManager::copyKey(CSwordKey* key, const Format format, const bool addText) {
- if (!key) {
- return false;
- }
- if (!key->module()) {
- return false;
- }
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- QString text;
- QString startKey;
- QString stopKey;
-
- QList<CSwordModuleInfo*> modules;
- modules.append(key->module());
-
- CSwordVerseKey *vk = dynamic_cast<CSwordVerseKey*>(key);
- if (vk && vk->isBoundSet()) {
- text = render->renderKeyRange(
- QString::fromUtf8(vk->LowerBound()),
- QString::fromUtf8(vk->UpperBound()),
- modules
- );
- }
- else { //no range supported
- text = render->renderSingleKey(key->key(), modules);
- }
-
- QApplication::clipboard()->setText(text);
- return true;
+ if (!key) {
+ return false;
+ }
+ if (!key->module()) {
+ return false;
+ }
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ QString text;
+ QString startKey;
+ QString stopKey;
+
+ QList<CSwordModuleInfo*> modules;
+ modules.append(key->module());
+
+ CSwordVerseKey *vk = dynamic_cast<CSwordVerseKey*>(key);
+ if (vk && vk->isBoundSet()) {
+ text = render->renderKeyRange(
+ QString::fromUtf8(vk->LowerBound()),
+ QString::fromUtf8(vk->UpperBound()),
+ modules
+ );
+ }
+ else { //no range supported
+ text = render->renderSingleKey(key->key(), modules);
+ }
+
+ QApplication::clipboard()->setText(text);
+ return true;
}
bool CExportManager::copyKeyList(sword::ListKey* list, CSwordModuleInfo* module, const Format format, const bool addText) {
- if (!list->Count())
- return false;
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- CTextRendering::KeyTree tree;
- CTextRendering::KeyTreeItem::Settings itemSettings;
- itemSettings.highlight = false;
-
- *list = sword::TOP;
- while (!list->Error() && !progressWasCancelled()) {
- tree.append( new CTextRendering::KeyTreeItem(QString::fromLocal8Bit((const char*)(*list)) , module, itemSettings) );
-
- (*list)++;
- }
-
- const QString text = render->renderKeyTree(tree);
- QApplication::clipboard()->setText(text);
- return true;
+ if (!list->Count())
+ return false;
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ CTextRendering::KeyTree tree;
+ CTextRendering::KeyTreeItem::Settings itemSettings;
+ itemSettings.highlight = false;
+
+ *list = sword::TOP;
+ while (!list->Error() && !progressWasCancelled()) {
+ tree.append( new CTextRendering::KeyTreeItem(QString::fromLocal8Bit((const char*)(*list)) , module, itemSettings) );
+
+ (*list)++;
+ }
+
+ const QString text = render->renderKeyTree(tree);
+ QApplication::clipboard()->setText(text);
+ return true;
}
bool CExportManager::copyKeyList(QList<CSwordKey*>& list, const Format format, const bool addText ) {
- if (!list.count())
- return false;
-
- CSwordBackend::FilterOptions filterOptions = m_filterOptions;
- filterOptions.footnotes = false;
- filterOptions.strongNumbers = false;
- filterOptions.morphTags = false;
- filterOptions.lemmas = false;
- filterOptions.scriptureReferences = false;
- filterOptions.textualVariants = false;
-
- CHTMLExportRendering::Settings settings(addText);
- boost::scoped_ptr<CTextRendering> render (
- (format == HTML)
- ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
- : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
- );
-
- CTextRendering::KeyTree tree;
-
- CTextRendering::KeyTreeItem::Settings itemSettings;
- itemSettings.highlight = false;
-
- QListIterator<CSwordKey*> it(list);
- while (it.hasNext() && !progressWasCancelled()){
- CSwordKey* k = it.next();
- tree.append( new CTextRendering::KeyTreeItem(k->key(), k->module(), itemSettings) );
- incProgress();
- };
-
- const QString text = render->renderKeyTree(tree);
- QApplication::clipboard()->setText(text);
- if (!progressWasCancelled()){
- closeProgressDialog();
- }
- return true;
+ if (!list.count())
+ return false;
+
+ CSwordBackend::FilterOptions filterOptions = m_filterOptions;
+ filterOptions.footnotes = false;
+ filterOptions.strongNumbers = false;
+ filterOptions.morphTags = false;
+ filterOptions.lemmas = false;
+ filterOptions.scriptureReferences = false;
+ filterOptions.textualVariants = false;
+
+ CHTMLExportRendering::Settings settings(addText);
+ boost::scoped_ptr<CTextRendering> render (
+ (format == HTML)
+ ? new CHTMLExportRendering(settings, m_displayOptions, filterOptions)
+ : new CPlainTextExportRendering(settings, m_displayOptions, filterOptions)
+ );
+
+ CTextRendering::KeyTree tree;
+
+ CTextRendering::KeyTreeItem::Settings itemSettings;
+ itemSettings.highlight = false;
+
+ QListIterator<CSwordKey*> it(list);
+ while (it.hasNext() && !progressWasCancelled()) {
+ CSwordKey* k = it.next();
+ tree.append( new CTextRendering::KeyTreeItem(k->key(), k->module(), itemSettings) );
+ incProgress();
+ };
+
+ const QString text = render->renderKeyTree(tree);
+ QApplication::clipboard()->setText(text);
+ if (!progressWasCancelled()) {
+ closeProgressDialog();
+ }
+ return true;
}
bool CExportManager::printKeyList(sword::ListKey* list, CSwordModuleInfo* module, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions) {
- CPrinter::KeyTreeItem::Settings settings;
- CPrinter::KeyTree tree;
-
- QString startKey, stopKey;
- setProgressRange(list->Count());
-
- (*list) = sword::TOP;
- while (!list->Error() && !progressWasCancelled()) {
- sword::VerseKey* vk = dynamic_cast<sword::VerseKey*>(list);
- if (vk) {
- startKey = QString::fromUtf8((const char*)(vk->LowerBound()) );
- stopKey = QString::fromUtf8((const char*)(vk->UpperBound()) );
- tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
- }
- else {
- startKey = QString::fromUtf8((const char*)*list);
- tree.append( new CPrinter::KeyTreeItem(startKey, module, settings) );
- }
-
- (*list)++;
- incProgress();
- }
-
- boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
-
- if (!progressWasCancelled()) {
- printer->printKeyTree(tree);
- closeProgressDialog();
- return true;
- }
-
- return false;
+ CPrinter::KeyTreeItem::Settings settings;
+ CPrinter::KeyTree tree;
+
+ QString startKey, stopKey;
+ setProgressRange(list->Count());
+
+ (*list) = sword::TOP;
+ while (!list->Error() && !progressWasCancelled()) {
+ sword::VerseKey* vk = dynamic_cast<sword::VerseKey*>(list);
+ if (vk) {
+ startKey = QString::fromUtf8((const char*)(vk->LowerBound()) );
+ stopKey = QString::fromUtf8((const char*)(vk->UpperBound()) );
+ tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
+ }
+ else {
+ startKey = QString::fromUtf8((const char*) * list);
+ tree.append( new CPrinter::KeyTreeItem(startKey, module, settings) );
+ }
+
+ (*list)++;
+ incProgress();
+ }
+
+ boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
+
+ if (!progressWasCancelled()) {
+ printer->printKeyTree(tree);
+ closeProgressDialog();
+ return true;
+ }
+
+ return false;
}
bool CExportManager::printKey( CSwordModuleInfo* module, const QString& startKey, const QString& stopKey, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions ) {
- CPrinter::KeyTreeItem::Settings settings;
- settings.keyRenderingFace =
- displayOptions.verseNumbers
- ? CPrinter::KeyTreeItem::Settings::SimpleKey
- : CPrinter::KeyTreeItem::Settings::NoKey;
-
- CPrinter::KeyTree tree;
- if (startKey != stopKey) {
- tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
- }
- else {
- tree.append( new CPrinter::KeyTreeItem(startKey, module, settings) );
- }
-
- boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
- printer->printKeyTree(tree);
- return true;
+ CPrinter::KeyTreeItem::Settings settings;
+ settings.keyRenderingFace =
+ displayOptions.verseNumbers
+ ? CPrinter::KeyTreeItem::Settings::SimpleKey
+ : CPrinter::KeyTreeItem::Settings::NoKey;
+
+ CPrinter::KeyTree tree;
+ if (startKey != stopKey) {
+ tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
+ }
+ else {
+ tree.append( new CPrinter::KeyTreeItem(startKey, module, settings) );
+ }
+
+ boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
+ printer->printKeyTree(tree);
+ return true;
}
bool CExportManager::printKey( CSwordKey* key, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions) {
- CPrinter::KeyTreeItem::Settings settings;
- settings.keyRenderingFace =
- displayOptions.verseNumbers
- ? CPrinter::KeyTreeItem::Settings::SimpleKey
- : CPrinter::KeyTreeItem::Settings::NoKey;
-
- CPrinter::KeyTree tree;
- tree.append( new CPrinter::KeyTreeItem(key->key(), key->module(), settings) );
-
- boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
- printer->printKeyTree(tree);
- return true;
+ CPrinter::KeyTreeItem::Settings settings;
+ settings.keyRenderingFace =
+ displayOptions.verseNumbers
+ ? CPrinter::KeyTreeItem::Settings::SimpleKey
+ : CPrinter::KeyTreeItem::Settings::NoKey;
+
+ CPrinter::KeyTree tree;
+ tree.append( new CPrinter::KeyTreeItem(key->key(), key->module(), settings) );
+
+ boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
+ printer->printKeyTree(tree);
+ return true;
}
/** Prints a key using the hyperlink created by CReferenceManager. */
bool CExportManager::printByHyperlink( const QString& hyperlink, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions ) {
- QString moduleName;
- QString keyName;
- CReferenceManager::Type type;
-
- CReferenceManager::decodeHyperlink(hyperlink, moduleName, keyName, type);
- if (moduleName.isEmpty()) {
- moduleName = CReferenceManager::preferredModule(type);
- }
-
- CPrinter::KeyTree tree;
- CPrinter::KeyTreeItem::Settings settings;
- settings.keyRenderingFace =
- displayOptions.verseNumbers
- ? CPrinter::KeyTreeItem::Settings::SimpleKey
- : CPrinter::KeyTreeItem::Settings::NoKey;
-
- CSwordModuleInfo* module = backend()->findModuleByName(moduleName);
- Q_ASSERT(module);
-
- if (module) {
- //check if we have a range of entries or a single one
- if ((module->type() == CSwordModuleInfo::Bible) || (module->type() == CSwordModuleInfo::Commentary)) {
- sword::ListKey verses = sword::VerseKey().ParseVerseList((const char*)keyName.toUtf8(), "Genesis 1:1", true);
-
- for (int i = 0; i < verses.Count(); ++i) {
- sword::VerseKey* element = dynamic_cast<sword::VerseKey*>(verses.GetElement(i));
- if (element) {
- const QString startKey = QString::fromUtf8(element->LowerBound().getText());
- const QString stopKey = QString::fromUtf8(element->UpperBound().getText());
-
- tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
- }
- else if (verses.GetElement(i)) {
- const QString key = QString::fromUtf8(verses.GetElement(i)->getText());
-
- tree.append( new CPrinter::KeyTreeItem(key, module, settings) );
- }
- }
- }
- else {
- tree.append( new CPrinter::KeyTreeItem(keyName, module, settings) );
- }
- }
-
- boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
- printer->printKeyTree(tree);
- return true;
+ QString moduleName;
+ QString keyName;
+ CReferenceManager::Type type;
+
+ CReferenceManager::decodeHyperlink(hyperlink, moduleName, keyName, type);
+ if (moduleName.isEmpty()) {
+ moduleName = CReferenceManager::preferredModule(type);
+ }
+
+ CPrinter::KeyTree tree;
+ CPrinter::KeyTreeItem::Settings settings;
+ settings.keyRenderingFace =
+ displayOptions.verseNumbers
+ ? CPrinter::KeyTreeItem::Settings::SimpleKey
+ : CPrinter::KeyTreeItem::Settings::NoKey;
+
+ CSwordModuleInfo* module = backend()->findModuleByName(moduleName);
+ Q_ASSERT(module);
+
+ if (module) {
+ //check if we have a range of entries or a single one
+ if ((module->type() == CSwordModuleInfo::Bible) || (module->type() == CSwordModuleInfo::Commentary)) {
+ sword::ListKey verses = sword::VerseKey().ParseVerseList((const char*)keyName.toUtf8(), "Genesis 1:1", true);
+
+ for (int i = 0; i < verses.Count(); ++i) {
+ sword::VerseKey* element = dynamic_cast<sword::VerseKey*>(verses.GetElement(i));
+ if (element) {
+ const QString startKey = QString::fromUtf8(element->LowerBound().getText());
+ const QString stopKey = QString::fromUtf8(element->UpperBound().getText());
+
+ tree.append( new CPrinter::KeyTreeItem(startKey, stopKey, module, settings) );
+ }
+ else if (verses.GetElement(i)) {
+ const QString key = QString::fromUtf8(verses.GetElement(i)->getText());
+
+ tree.append( new CPrinter::KeyTreeItem(key, module, settings) );
+ }
+ }
+ }
+ else {
+ tree.append( new CPrinter::KeyTreeItem(keyName, module, settings) );
+ }
+ }
+
+ boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
+ printer->printKeyTree(tree);
+ return true;
}
-bool CExportManager::printKeyList(const QStringList& list,CSwordModuleInfo* module, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions) {
- CPrinter::KeyTreeItem::Settings settings;
- settings.keyRenderingFace =
- displayOptions.verseNumbers
- ? CPrinter::KeyTreeItem::Settings::SimpleKey
- : CPrinter::KeyTreeItem::Settings::NoKey;
+bool CExportManager::printKeyList(const QStringList& list, CSwordModuleInfo* module, CSwordBackend::DisplayOptions displayOptions, CSwordBackend::FilterOptions filterOptions) {
+ CPrinter::KeyTreeItem::Settings settings;
+ settings.keyRenderingFace =
+ displayOptions.verseNumbers
+ ? CPrinter::KeyTreeItem::Settings::SimpleKey
+ : CPrinter::KeyTreeItem::Settings::NoKey;
- CPrinter::KeyTree tree;
- setProgressRange(list.count());
+ CPrinter::KeyTree tree;
+ setProgressRange(list.count());
- const QStringList::const_iterator end = list.constEnd();
- for (QStringList::const_iterator it = list.constBegin(); (it != end) && !progressWasCancelled(); ++it) {
- tree.append( new CPrinter::KeyTreeItem(*it, module, settings) );
- incProgress();
- }
+ const QStringList::const_iterator end = list.constEnd();
+ for (QStringList::const_iterator it = list.constBegin(); (it != end) && !progressWasCancelled(); ++it) {
+ tree.append( new CPrinter::KeyTreeItem(*it, module, settings) );
+ incProgress();
+ }
- boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
+ boost::scoped_ptr<CPrinter> printer(new CPrinter(0, displayOptions, filterOptions));
- if (!progressWasCancelled()) {
- printer->printKeyTree(tree);
- closeProgressDialog();
- return true;
- }
+ if (!progressWasCancelled()) {
+ printer->printKeyTree(tree);
+ closeProgressDialog();
+ return true;
+ }
- return false;
+ return false;
}
/** Returns the string for the filedialogs to show the correct files. */
const QString CExportManager::filterString( const Format format ) {
- switch (format) {
- case HTML:
- return QObject::tr("HTML files") + QString(" (*.html *.htm);;") + QObject::tr("All files") + QString(" (*.*)");
- case Text:
- return QObject::tr("Text files") + QString(" (*.txt);;") + QObject::tr("All files") + QString(" (*.*)");
- default:
- return QObject::tr("All files") + QString(" (*.*)");
- }
+ switch (format) {
+ case HTML:
+ return QObject::tr("HTML files") + QString(" (*.html *.htm);;") + QObject::tr("All files") + QString(" (*.*)");
+ case Text:
+ return QObject::tr("Text files") + QString(" (*.txt);;") + QObject::tr("All files") + QString(" (*.*)");
+ default:
+ return QObject::tr("All files") + QString(" (*.*)");
+ }
}
/** Returns a filename to save a file. */
const QString CExportManager::getSaveFileName(const Format format) {
- return QFileDialog::getSaveFileName(0, QObject::tr("Save file"), "", filterString(format), 0);
+ return QFileDialog::getSaveFileName(0, QObject::tr("Save file"), "", filterString(format), 0);
}
/** Returns a string containing the linebreak for the current format. */
const QString CExportManager::lineBreak(const Format format) {
- if (static_cast<bool>(m_displayOptions.lineBreaks))
- return (format == HTML) ? QString::fromLatin1("<br/>\n") : QString::fromLatin1("\n");
+ if (static_cast<bool>(m_displayOptions.lineBreaks))
+ return (format == HTML) ? QString::fromLatin1("<br/>\n") : QString::fromLatin1("\n");
- return QString::null;
+ return QString::null;
}
/** No descriptions */
void CExportManager::setProgressRange( const int items ) {
- if (QProgressDialog* dlg = progressDialog()) {
- dlg->setMaximum(items);
- dlg->setValue(0);
- dlg->setMinimumDuration(0);
- dlg->show();
- // dlg->repaint();
- qApp->processEvents(); //do not lock the GUI!
- }
+ if (QProgressDialog* dlg = progressDialog()) {
+ dlg->setMaximum(items);
+ dlg->setValue(0);
+ dlg->setMinimumDuration(0);
+ dlg->show();
+ // dlg->repaint();
+ qApp->processEvents(); //do not lock the GUI!
+ }
}
/** Creates the progress dialog with the correct settings. */
QProgressDialog* CExportManager::progressDialog() {
- if (!m_showProgress) {
- return 0;
- }
+ if (!m_showProgress) {
+ return 0;
+ }
- if (!m_progressDialog) {
- m_progressDialog = new QProgressDialog(0, Qt::Dialog );
- m_progressDialog->setLabelText(m_progressLabel);
+ if (!m_progressDialog) {
+ m_progressDialog = new QProgressDialog(0, Qt::Dialog );
+ m_progressDialog->setLabelText(m_progressLabel);
- m_progressDialog->setWindowTitle("BibleTime");
- }
+ m_progressDialog->setWindowTitle("BibleTime");
+ }
- return m_progressDialog;
+ return m_progressDialog;
}
/** Increments the progress by one item. */
void CExportManager::incProgress() {
- if (QProgressDialog* dlg = progressDialog()) {
- dlg->setValue( dlg->value() + 1 );
- }
+ if (QProgressDialog* dlg = progressDialog()) {
+ dlg->setValue( dlg->value() + 1 );
+ }
}
/** No descriptions */
bool CExportManager::progressWasCancelled() {
- if (QProgressDialog* dlg = progressDialog()) {
- return dlg->wasCanceled();
- }
+ if (QProgressDialog* dlg = progressDialog()) {
+ return dlg->wasCanceled();
+ }
- return true;
+ return true;
}
/** Closes the progress dialog immediatly. */
void CExportManager::closeProgressDialog() {
- if (QProgressDialog* dlg = progressDialog()) {
- dlg->close();
- dlg->reset();
- }
+ if (QProgressDialog* dlg = progressDialog()) {
+ dlg->close();
+ dlg->reset();
+ }
- qApp->processEvents(); //do not lock the GUI!
+ qApp->processEvents(); //do not lock the GUI!
}