summaryrefslogtreecommitdiffstats
path: root/src/tellico_utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tellico_utils.h')
-rw-r--r--src/tellico_utils.h80
1 files changed, 80 insertions, 0 deletions
diff --git a/src/tellico_utils.h b/src/tellico_utils.h
new file mode 100644
index 0000000..13250e6
--- /dev/null
+++ b/src/tellico_utils.h
@@ -0,0 +1,80 @@
+/***************************************************************************
+ copyright : (C) 2003-2006 by Robby Stephenson
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of version 2 of the GNU General Public License as *
+ * published by the Free Software Foundation; *
+ * *
+ ***************************************************************************/
+
+#ifndef TELLICO_UTILS_H
+#define TELLICO_UTILS_H
+
+#include <qnamespace.h>
+
+class KLibrary;
+
+class QColor;
+class QColorGroup;
+class QCursor;
+class QString;
+class QStringList;
+class QScrollView;
+
+/**
+ * This file contains utility functions.
+ *
+ * @author Robby Stephenson
+ */
+namespace Tellico {
+ /**
+ * Decode HTML entities. Only numeric entities are handled currently.
+ */
+ QString decodeHTML(QString text);
+ /**
+ * Return a random, and almost certainly unique UID.
+ *
+ * @param length The UID starts with "Tellico" and adds enough letters to be @p length long.
+ */
+ QString uid(int length=20, bool prefix=true);
+ uint toUInt(const QString& string, bool* ok);
+ /**
+ * Replace all occurrences of <i18n>text</i18n> with i18n("text")
+ */
+ QString i18nReplace(QString text);
+ /**
+ * Returns a list of the subdirectories in @param dir
+ * Symbolic links are ignored
+ */
+ QStringList findAllSubDirs(const QString& dir);
+ int stringHash(const QString& str);
+ /** take advantage string collisions to reduce memory
+ */
+ QString shareString(const QString& str);
+
+ extern QColor contrastColor;
+ void updateContrastColor(const QColorGroup& cg);
+ QColor blendColors(const QColor& color1, const QColor& color2, int percent);
+ QString minutes(int seconds);
+ QString saveLocation(const QString& dir);
+
+ KLibrary* openLibrary(const QString& libName);
+
+namespace GUI {
+ class CursorSaver {
+ public:
+ CursorSaver(const QCursor& cursor = Qt::waitCursor);
+ ~CursorSaver();
+ void restore();
+ private:
+ bool m_restored : 1;
+ };
+}
+
+}
+
+#endif