Remove libqxt from our svn. We don't depend on it anymore thanks to
[quassel.git] / src / contrib / libqxt-2007-10-24 / src / web / qxthtmltemplate.cpp
diff --git a/src/contrib/libqxt-2007-10-24/src/web/qxthtmltemplate.cpp b/src/contrib/libqxt-2007-10-24/src/web/qxthtmltemplate.cpp
deleted file mode 100644 (file)
index 1987b20..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) Qxt Foundation. Some rights reserved.
-**
-** This file is part of the QxtWeb  module of the Qt eXTension library
-**
-** This library is free software; you can redistribute it and/or modify it
-** under the terms of th Common Public License, version 1.0, as published by
-** IBM.
-**
-** This file is provided "AS IS", without WARRANTIES OR CONDITIONS OF ANY
-** KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
-** WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR
-** FITNESS FOR A PARTICULAR PURPOSE.
-**
-** You should have received a copy of the CPL along with this file.
-** See the LICENSE file and the cpl1.0.txt file included with the source
-** distribution for more information. If you did not receive a copy of the
-** license, contact the Qxt Foundation.
-**
-** <http://libqxt.org>  <foundation@libqxt.org>
-**
-****************************************************************************/
-
-/*!
-        \class QxtHtmlTemplate QxtHtmlTemplate
-        \ingroup QxtWeb
-        \brief Basic Html Template Engine
-
-        open a file containing html code and php style variables.
-        use the square bracket operators to assign content for a variable
-
-        \code
-        QxtHtmlTemplate index;
-        if(!index.open)
-                return 404;
-        index["content"]="hello world";
-        echo()<<index.render();
-        \endcode
-        the realatet html code would look like:
-        \code
-        <html>
-        <head>
-                <title>Test Page</title>
-        </head>
-                <?=content?>
-        </html>
-        \endcode
-
-        funny storry: whe are using this class to make our documentation (eat your own dogfood, you know ;).  
-        but when we where parsing exactly this file you read right now the first time, QxtHtmlTemplate got stuck in an infinite loop. guess why. becouse of that example above :D
-        So be warned: when you assign content to a variable that contains the variable name itself, render() will never return.
-                  
-
-*/
-
-/*!
-        \fn QxtHtmlTemplate::open(const QString& filename)
-        Returns true on sucess and false on failure.
-        note that it will also return false for an empty html file.
-
-        \fn QString QxtHtmlTemplate::render() const
-        Uses the variables you set and renders the opened file.
-        returns an empty string on failure.
-        Does NOT take care of not assigned variables, they will remain in the returned string
- */
-
-#include "qxthtmltemplate.h"
-#include <QFile>
-#include <QStringList>
-
-QxtHtmlTemplate::QxtHtmlTemplate() : QMap<QString,QString>()
-{}
-
-void QxtHtmlTemplate::load(const QString& d)
-{
-    data=d;
-}
-
-bool QxtHtmlTemplate::open(const QString& filename)
-{
-    QFile f(filename);
-    f.open(QIODevice::ReadOnly);
-    data = QString::fromLocal8Bit(f.readAll());
-    f.close();
-    if (data.isEmpty())
-        {
-        qWarning("QxtHtmlTemplate::open(\"%s\") empty or non existant",qPrintable(filename));
-        return false;
-        }
-    return true;
-}
-
-QString QxtHtmlTemplate::render() const
-{
-    ///try to preserve indention by parsing char by char and saving the last non-space character
-
-
-    QString output = data;
-    int lastnewline=0;
-
-
-    for (int i=0;i<output.count();i++)
-    {
-        if (output.at(i)=='\n')
-        {
-            lastnewline=i;
-        }
-
-        if (output.at(i)=='<' && output.at(i+1)=='?'  && output.at(i+2)=='=')
-        {
-            int j=i+3;
-            QString var;
-
-            for (int jj=j;jj<output.count();jj++)
-            {
-                if (output.at(jj)=='?' && output.at(jj+1)=='>')
-                {
-                    j=jj;
-                    break;
-                }
-                var+=output.at(jj);
-            }
-
-
-            if (j==i)
-            {
-                qWarning("QxtHtmlTemplate::render()  unterminated <?= ");
-                continue;
-            }
-
-
-            if(!contains(var))
-            {
-                qWarning("QxtHtmlTemplate::render()  unused variable \"%s\"",qPrintable(var));
-                continue;
-            }
-            output.replace(i,j-i+2,QString(value(var)).replace("\n","\n"+QString(i-lastnewline-1,QChar(' '))));
-
-        }
-
-
-    }
-
-    return output;
-}
-