summaryrefslogtreecommitdiff
path: root/client/formatparser.cc
diff options
context:
space:
mode:
Diffstat (limited to 'client/formatparser.cc')
-rw-r--r--client/formatparser.cc195
1 files changed, 0 insertions, 195 deletions
diff --git a/client/formatparser.cc b/client/formatparser.cc
deleted file mode 100644
index 71f80ee..0000000
--- a/client/formatparser.cc
+++ /dev/null
@@ -1,195 +0,0 @@
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/***************************************************************************
- * resumeparser.cc
- *
- * Mon Oct 1 11:17:35 CEST 2007
- * Copyright 2007 Bent Bisballe Nyeng
- * deva@aasimon.org
- ****************************************************************************/
-
-/*
- * This file is part of Pracro.
- *
- * Pracro 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; either version 2 of the License, or
- * (at your option) any later version.
- *
- * Pracro 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.
- *
- * You should have received a copy of the GNU General Public License
- * along with Pracro; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-#include "formatparser.h"
-
-#include <QSqlRecord>
-#include <QVariant>
-#include <string.h>
-
-#include "lua.h"
-#include "macrowindow.h"
-#include "widgets/widget.h"
-
-static QString format_parser_lua(QString format, Widget *w)
-{
- /*
- LUA lua(w);
-
- return lua.runParser(format);
- */
-
- format = format;
- w = w;
-
- return "FIXME: formatparser.cc:44";
-}
-
-static QString format_parser_pracro(QString format, Widget *w)
-{
- QString resume;
- QString var;
-
- QChar *p = format.data();
- QChar *theend = p + format.size();
- while(p < theend) {
- switch((*p).toLatin1()) {
- case '$':
- p++;
- switch((*p).toLatin1()) {
- case '$':
- resume.append(*p);
- break;
-
- case '{':
- p++;
- var = "";
- // Parser
- while(p < theend && *p != '}') {
- var.append(*p);
- p++;
- }
- {
- Widget *widget = w->findWidget(var, true);
- if(widget) resume += widget->value();
- }
- break;
-
- default:
- resume.append(*p);
- break;
- }
- p++;
- break;
-
- case '\\':
- p++;
- switch((*p).toLatin1()) {
- case 't':
- resume.append('\t');
- break;
- case 'n':
- resume.append('\n');
- break;
- case 'r':
- resume.append('\r');
- break;
- case '\\':
- default:
- resume.append(*p);
- break;
- }
- p++;
- break;
-
- default:
- resume.append(QChar(*p));
- p++;
- break;
- }
- }
-
- return resume;
-}
-
-
-QString format_parser(QString format, QSqlQuery &query)
-{
- QString resume;
- QString var;
-
- QChar *p = format.data();
- QChar *theend = p + format.size();
- while(p < theend) {
- switch((*p).toLatin1()) {
- case '$':
- p++;
- switch((*p).toLatin1()) {
- case '$':
- resume.append(*p);
- break;
-
- case '{':
- p++;
- var = "";
- // Parser
- while(p < theend && *p != '}') {
- var.append(*p);
- p++;
- }
- {
- int idx = query.record().indexOf(var);
- if(idx == -1) {
- printf("Unknown field in format string %s\n", var.toStdString().c_str());
- } else {
- resume += query.value(idx).toString();
- }
- }
- break;
-
- default:
- resume.append(*p);
- break;
- }
- p++;
- break;
-
- case '\\':
- p++;
- switch((*p).toLatin1()) {
- case 't':
- resume.append('\t');
- break;
- case 'n':
- resume.append('\n');
- break;
- case 'r':
- resume.append('\r');
- break;
- case '\\':
- default:
- resume.append(*p);
- break;
- }
- p++;
- break;
-
- default:
- resume.append(QChar(*p));
- p++;
- break;
- }
- }
-
- return resume;
-}
-
-QString format_parser(QString format, Widget *w, QString language)
-{
- if(language == "pracro") return format_parser_pracro(format, w);
- if(language == "lua") return format_parser_lua(format, w);
- return "";
-}