filters
variablezone.cc00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <kdebug.h>
00027
00028 #include "variablezone.h"
00029 #include "para.h"
00030 #include "document.h"
00031
00032
00033
00034
00035 VariableZone::VariableZone(Para* para): VariableFormat(para)
00036 {
00037 setPara(para);
00038 setSize(para->getSize());
00039 setWeight(para->getWeight());
00040 setItalic(para->isItalic());
00041 setUnderlined(para->getUnderlineType());
00042 setStrikeout(para->isStrikeout());
00043 }
00044
00045
00046
00047
00048 VariableZone::VariableZone(QString text, Para* para): VariableFormat(para)
00049 {
00050 setTexte(text);
00051
00052
00053
00054
00055
00056
00057 }
00058
00059
00060
00061
00062 VariableZone::~VariableZone()
00063 {
00064 kdDebug(30522) << "Destruction of an area" << endl;
00065 }
00066
00067
00068
00069
00070
00071
00072
00073 void VariableZone::analyse(const QDomNode balise)
00074 {
00075 kdDebug(30522) << "FORMAT" << endl;
00076
00077
00078
00079
00080 analyseFormat(balise);
00081
00082
00083 setTexte(getTexte().mid(getPos(), getLength()));
00084
00085 kdDebug(30522) << getTexte().length() << endl;
00086 kdDebug(30522) << getTexte().latin1() << endl;
00087 kdDebug(30522) << "END FORMAT" << endl;
00088 }
00089
00090
00091
00092
00093
00094
00095 void VariableZone::generate(QTextStream &out)
00096 {
00097
00098 if(useFormat())
00099 generate_format_begin(out);
00100
00101
00102 kdDebug(30522) << "type : " << getType() << endl;
00103 if((getType() == VAR_DATE) && !isFix())
00104 out << "\\today" << endl;
00105 else if(getType() == VAR_FOOTNOTE)
00106 {
00107 if(getNotetype() == "footnote")
00108 out << "\\,\\footnote{";
00109 else if(getNotetype() == "endnote")
00110 out << "\\,\\endnote{";
00111
00112 Element* footnote = getRoot()->searchFootnote(getFrameset());
00113 if(footnote != NULL)
00114 {
00115 footnote->generate(out);
00116 }
00117 Config::instance()->writeIndent(out);
00118 out << "}";
00119 }
00120 else if(getType() == VAR_NOTE)
00121 {
00122 out << "\\marginpar{\\scriptsize ";
00123 if(Config::instance()->mustUseLatin1())
00124 display(escapeLatin1(getNote()), out);
00125 else if(Config::instance()->mustUseUnicode())
00126 display(getNote(), out);
00127 out << "}" << endl;
00128 }
00129 else
00130 {
00131 if(Config::instance()->mustUseLatin1())
00132 display(escapeLatin1(getText()), out);
00133 else if(Config::instance()->mustUseUnicode())
00134 display(getText(), out);
00135 }
00136 if(useFormat())
00137 generate_format_end(out);
00138
00139 }
00140
|