From 49d48d669acd9f1d3cbb8c2bd62c974fe21f42f5 Mon Sep 17 00:00:00 2001
From: "benjamin.jakimow@geo.hu-berlin.de" <q8DTkxUg-BB>
Date: Fri, 20 Jan 2017 19:01:44 +0100
Subject: [PATCH] shows + icons in own project click on icon copies path to
 Clipboard

---
 make/iconselect.py | 37 +++++++++++++++++++++++++++----------
 1 file changed, 27 insertions(+), 10 deletions(-)

diff --git a/make/iconselect.py b/make/iconselect.py
index e15b5a38..5515d8b4 100644
--- a/make/iconselect.py
+++ b/make/iconselect.py
@@ -4,9 +4,9 @@ from PyQt4.QtGui import *
 #from PyQt4.QtWidgets import *
 
 
-class Widget(QWidget):
+class AvailableIcons(QWidget):
     def __init__(self, parent=None):
-        super(Widget, self).__init__()
+        super(AvailableIcons, self).__init__()
 
         icons = [
             'SP_ArrowBack',
@@ -81,25 +81,42 @@ class Widget(QWidget):
             'SP_VistaShield'
         ]
 
-        colSize = 4
+        colSize = 35
 
         layout = QGridLayout()
 
         count = 0
-        for i in icons:
-            btn = QPushButton(i)
-            btn.setIcon(self.style().standardIcon(getattr(QStyle, i)))
 
+        for name in icons:
+            btn = QPushButton()
+            btn.setIcon(self.style().standardIcon(getattr(QStyle, name)))
+            btn.clicked.connect(lambda : QApplication.clipboard().setText(name))
+            btn.setToolTip(name)
             layout.addWidget(btn, count / colSize, count % colSize)
             count += 1
 
-        self.setLayout(layout)
+        i = QDirIterator(":", QDirIterator.Subdirectories)
+        while i.hasNext():
+            path = i.next()
+            btn = QPushButton()
+            btn.clicked.connect(lambda: QApplication.clipboard().setText(path))
+            btn.setToolTip(path)
+            btn.setIcon(QIcon(path))
+            layout.addWidget(btn, count / colSize, count % colSize)
+            count += 1
 
+        self.setLayout(layout)
+from PyQt4.QtCore import *
+i = QDirIterator(":/timeseriesviewer", QDirIterator.Subdirectories)
+while i.hasNext(): print(i.next())
 
-if __name__ == '__main__':
+def run():
     app = QApplication(sys.argv)
 
-    dialog = Widget()
+    dialog = AvailableIcons()
+    dialog.setWindowModality(Qt.ApplicationModal)
     dialog.show()
 
-    app.exec_()
\ No newline at end of file
+    app.exec_()
+if __name__ == '__main__':
+    run()
\ No newline at end of file
-- 
GitLab