summaryrefslogtreecommitdiff
path: root/utilities/diatheke/diafiltmgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utilities/diatheke/diafiltmgr.cpp')
-rw-r--r--utilities/diatheke/diafiltmgr.cpp227
1 files changed, 0 insertions, 227 deletions
diff --git a/utilities/diatheke/diafiltmgr.cpp b/utilities/diatheke/diafiltmgr.cpp
deleted file mode 100644
index 5f38379..0000000
--- a/utilities/diatheke/diafiltmgr.cpp
+++ /dev/null
@@ -1,227 +0,0 @@
-/******************************************************************************
- * diafiltmgr.cpp
- *
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- */
-
-#include <thmlplain.h>
-#include <gbfplain.h>
-#include <thmlgbf.h>
-#include <gbfthml.h>
-#include <thmlhtml.h>
-#include <gbfhtml.h>
-#include <plainhtml.h>
-#include <thmlhtmlhref.h>
-#include <gbfhtmlhref.h>
-#include <thmlrtf.h>
-#include <gbfrtf.h>
-#include <osisrtf.h>
-#include <osishtmlhref.h>
-#include <osisplain.h>
-#include <thmlosis.h>
-#include <gbfosis.h>
-
-#include <swmgr.h>
-
-#include "diafiltmgr.h"
-#include "thmlcgi.h"
-#include "gbfcgi.h"
-#include "osiscgi.h"
-
-DiathekeFilterMgr::DiathekeFilterMgr (char mark, char enc)
- : EncodingFilterMgr(enc) {
-
- markup = mark;
-
- CreateFilters(markup);
-}
-
-DiathekeFilterMgr::~DiathekeFilterMgr() {
- if (fromthml)
- delete (fromthml);
- if (fromgbf)
- delete (fromgbf);
- if (fromplain)
- delete (fromplain);
- if (fromosis)
- delete (fromosis);
-}
-
-void DiathekeFilterMgr::AddRenderFilters(SWModule *module, ConfigEntMap &section) {
- switch (module->Markup()) {
- case FMT_THML:
- if (fromthml)
- module->AddRenderFilter(fromthml);
- break;
- case FMT_GBF:
- if (fromgbf)
- module->AddRenderFilter(fromgbf);
- break;
- case FMT_PLAIN:
- if (fromplain)
- module->AddRenderFilter(fromplain);
- break;
- case FMT_OSIS:
- if (fromosis)
- module->AddRenderFilter(fromosis);
- break;
- }
- EncodingFilterMgr::AddRenderFilters(module, section);
-}
-
-
-char DiathekeFilterMgr::Markup(char mark) {
- if (mark && mark != markup) {
- markup = mark;
- ModMap::const_iterator module;
-
- SWFilter * oldplain = fromplain;
- SWFilter * oldthml = fromthml;
- SWFilter * oldgbf = fromgbf;
- SWFilter * oldosis = fromosis;
-
- CreateFilters(markup);
-
- for (module = getParentMgr()->Modules.begin(); module != getParentMgr()->Modules.end(); module++)
- switch (module->second->Markup()) {
- case FMT_THML:
- if (oldthml != fromthml) {
- if (oldthml) {
- if (!fromthml) {
- module->second->RemoveRenderFilter(oldthml);
- }
- else {
- module->second->ReplaceRenderFilter(oldthml, fromthml);
- }
- }
- else if (fromthml) {
- module->second->AddRenderFilter(fromthml);
- }
- }
- break;
- case FMT_GBF:
- if (oldgbf != fromgbf) {
- if (oldgbf) {
- if (!fromgbf) {
- module->second->RemoveRenderFilter(oldgbf);
- }
- else {
- module->second->ReplaceRenderFilter(oldgbf, fromgbf);
- }
- }
- else if (fromgbf) {
- module->second->AddRenderFilter(fromgbf);
- }
- break;
- }
- case FMT_PLAIN:
- if (oldplain != fromplain) {
- if (oldplain) {
- if (!fromplain) {
- module->second->RemoveRenderFilter(oldplain);
- }
- else {
- module->second->ReplaceRenderFilter(oldplain, fromplain);
- }
- }
- else if (fromplain) {
- module->second->AddRenderFilter(fromplain);
- }
- break;
- }
- case FMT_OSIS:
- if (oldosis != fromosis) {
- if (oldosis) {
- if (!fromosis) {
- module->second->RemoveRenderFilter(oldosis);
- }
- else {
- module->second->ReplaceRenderFilter(oldosis, fromosis);
- }
- }
- else if (fromosis) {
- module->second->AddRenderFilter(fromosis);
- }
- break;
- }
- }
-
- if (oldthml)
- delete oldthml;
- if (oldgbf)
- delete oldgbf;
- if (oldplain)
- delete oldplain;
- if (oldosis)
- delete oldosis;
- }
- return markup;
-}
-
-void DiathekeFilterMgr::CreateFilters(char markup) {
-
- switch (markup) {
- case FMT_CGI:
- fromplain = NULL;
- fromthml = new ThMLCGI();
- fromgbf = new GBFCGI();
- fromosis = new OSISCGI();
- break;
- case FMT_PLAIN:
- fromplain = NULL;
- fromthml = new ThMLPlain();
- fromgbf = new GBFPlain();
- fromosis = new OSISPlain();
- break;
- case FMT_THML:
- fromplain = NULL;
- fromthml = NULL;
- fromgbf = new GBFThML();
- fromosis = NULL;
- break;
- case FMT_GBF:
- fromplain = NULL;
- fromthml = new ThMLGBF();
- fromgbf = NULL;
- fromosis = NULL;
- break;
- case FMT_HTML:
- fromplain = new PLAINHTML();
- fromthml = new ThMLHTML();
- fromgbf = new GBFHTML();
- fromosis = NULL;
- break;
- case FMT_HTMLHREF:
- fromplain = NULL;
- fromthml = new ThMLHTMLHREF();
- fromgbf = new GBFHTMLHREF();
- fromosis = new OSISHTMLHREF();
- break;
- case FMT_RTF:
- fromplain = NULL;
- fromthml = new ThMLRTF();
- fromgbf = new GBFRTF();
- fromosis = new OSISRTF();
- break;
- case FMT_OSIS:
- fromplain = NULL;
- fromthml = new ThMLOSIS();
- fromgbf = new GBFOSIS();
- fromosis = NULL;
- break;
- }
-
-}