diff src/constants.h @ 3:8b4c49c92451

Add initial implementation that handles choices
author Andre Heinecke <andre.heinecke@intevation.de>
date Tue, 22 Mar 2016 10:39:19 +0100
parents
children 2559010c1202
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/constants.h	Tue Mar 22 10:39:19 2016 +0100
@@ -0,0 +1,78 @@
+#ifndef CONSTANTS_H
+#define CONSTANTS_H
+/* Copyright (C) 2016 by ETH Zürich
+ * Software engineering by Intevation GmbH
+ *
+ * This file is Free Software under the GNU GPL (v>=2)
+ * and comes with ABSOLUTELY NO WARRANTY!
+ * See LICENSE.txt for details.
+ */
+
+/** @file constants.h
+ * @brief Common definitions for this project.
+ *
+ * @details This file can be included to pull in common
+ * definitions in the application. */
+
+/**
+ * @brief The version of the software package.
+ *
+ * Usually defined as Build parameter.
+ */
+#ifndef VERSION
+#define VERSION "0.0.1"
+#endif
+
+/**
+* @brief The user visible application name.
+ *
+ * Usually defined as Build parameter.
+ **/
+#ifndef APPNAME
+#define APPNAME "unknown"
+#endif
+
+/**
+* @brief Short command line description. */
+#define DESCRIPTION "Convert output of clicker questionaires to different formats"
+
+/**
+* @brief Short copyright notice to show users. */
+#define COPYRIGHT "Copyright (C) 2016 ETH Zürich \n\n" \
+                  "This file is Free Software under the GNU GPL (v>=2)\n" \
+                  "and comes with ABSOLUTELY NO WARRANTY!\n"
+
+/**
+ * @brief The number of columns the document uses. */
+#define COLUMN_CNT 3
+/**
+ * @brief The width of the columns in characters. */
+#define COLUMN_WIDTHS { 45, 30, 30 }
+
+/**
+ * @brief Regular expression to define a question.
+ *
+ * A new question is the first unquoted string after the position
+ * that is followed after a newline by the word "Answer"
+ */
+#define QUESTION_PATTERN "([^\"]+)^(Answer.*$)", QRegularExpression::MultilineOption
+
+/**
+ * @brief Identifiying line that shows a question is a choice question. */
+#define CHOICE_IDENTIFIER "Answer,Votes,Percent"
+
+/**
+ * @brief The pattern used to match a multiple choice answer. */
+#define CHOICE_PATTERN "\"(.*)\",(\\d+),(\\d+\\.\\d+)"
+
+/**
+ * @brief The pattern used to match a free text answer. */
+#define FREETXT_PATTERN "\"([^\"]*)\"", QRegularExpression::MultilineOption
+
+#define TITLE_ROW_HEIGHT 30
+
+#define CHOICE_ROW_HEIGHT 30
+
+#define TEXT_IDENTIFIER "Answer"
+
+#endif // CONSTANTS_H
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)