Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <QRegExp>
00025 #include <QSizePolicy>
00026
00027 #include "klfprogerr.h"
00028
00029 #include "ui_klfprogerr.h"
00030
00031
00032 KLFProgErr::KLFProgErr(QWidget *parent, QString errtext)
00033 : QDialog(parent, Qt::Sheet)
00034 {
00035 u = new Ui::KLFProgErr;
00036 u->setupUi(this);
00037 setObjectName("KLFProgErr");
00038
00039 setWindowModality(Qt::WindowModal);
00040 setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred));
00041
00042 u->txtError->setWordWrapMode(QTextOption::WrapAnywhere);
00043 u->txtError->setText(errtext);
00044 }
00045
00046 QTextEdit * KLFProgErr::textEditWidget()
00047 {
00048 return u->txtError;
00049 }
00050
00051
00052 KLFProgErr::~KLFProgErr()
00053 {
00054 delete u;
00055 }
00056
00057 void KLFProgErr::showEvent(QShowEvent *)
00058 {
00059 }
00060
00061 void KLFProgErr::showError(QWidget *parent, QString errtext)
00062 {
00063 KLFProgErr dlg(parent, errtext);
00064 dlg.exec();
00065 }
00066
00067
00068
00069
00070
00071
00072 QString KLFProgErr::extractLatexError(const QString& str)
00073 {
00074
00075 QRegExp latexerr("\\n(\\!.*)\\n\\n");
00076 if (latexerr.indexIn(str)) {
00077 QString s = latexerr.cap(1);
00078 s.replace(QRegExp("^([^\\n]+)"), "<b>\\1</b>");
00079 return "<pre>"+s+"</pre>";
00080 }
00081 return str;
00082 }
00083