summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baczynski <danielbaczynski8@gmail.com>2015-03-25 00:16:20 (GMT)
committerKevin Smith <git@kismith.co.uk>2015-03-26 07:39:31 (GMT)
commit85e53159321ab3e013dd2fc0a16748ed6755b119 (patch)
tree6ed333198bb756c8e1946505663ae0c95e72223b /Swift/QtUI/QtEmoticonsGrid.h
parentb23f4fb9bee49f93bbba6a9039f0f764664125cd (diff)
downloadswift-85e53159321ab3e013dd2fc0a16748ed6755b119.zip
swift-85e53159321ab3e013dd2fc0a16748ed6755b119.tar.bz2
Add emoticons input popup
This is simple popup menu added to chat window where it is possible to choose an emoticon. To activate click on the smiling face next to input field. When emoticon is selected its text equivalent is appended to input. License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details. Test-Information: Tested on Ubuntu 14.10 with KDE and Qt 4.8.6 Change-Id: I6c5907959970398c9c38591f64ceec20efcbf409
Diffstat (limited to 'Swift/QtUI/QtEmoticonsGrid.h')
-rw-r--r--Swift/QtUI/QtEmoticonsGrid.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/Swift/QtUI/QtEmoticonsGrid.h b/Swift/QtUI/QtEmoticonsGrid.h
new file mode 100644
index 0000000..b045b26
--- /dev/null
+++ b/Swift/QtUI/QtEmoticonsGrid.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2015 Daniel Baczynski
+ * Licensed under the Simplified BSD license.
+ * See Documentation/Licenses/BSD-simplified.txt for more information.
+ */
+
+#pragma once
+
+#include <map>
+#include <string>
+
+#include <QGridLayout>
+#include <QLabel>
+#include <QSize>
+#include <QString>
+
+#include <Swift/QtUI/QtEmoticonCell.h>
+
+class QWidget;
+
+namespace Swift {
+
+ class QtEmoticonsGrid : public QGridLayout {
+ Q_OBJECT
+ public:
+ explicit QtEmoticonsGrid(const std::map<std::string, std::string>& emoticons, QWidget* parent = 0);
+ virtual ~QtEmoticonsGrid();
+
+ signals:
+ void emoticonClicked(QString emoticonAsText);
+
+ public slots:
+ void emoticonClickedSlot(QString emoticonAsText);
+
+ private:
+ void makeUniqueEmoticonsMap(const std::map<std::string, std::string>& emoticons);
+
+ std::map<std::string, std::string> uniqueEmoticons_;
+ };
+}