summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Sergey Starosek <sergey.starosek@gmail.com>2014-06-28 12:14:36 +0400
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-06-28 06:29:20 -0700
commit22d56889bbed5616d40d4a1391750b94ec500b9e (patch)
tree2e4bbc5ab3fb338e970fc3c71af5f0dbf88409f8
parentc84b40664de756b103e3304fb015edc05049ae39 (diff)
downloadsubsurface-22d56889bbed5616d40d4a1391750b94ec500b9e.tar.gz
Fallback to loading theme icons from resources
Since not all platforms support theme icons, we need to pack them into resources and fallback to that resource theme. There seems to be a bug in Qt (https://bugreports.qt-project.org/browse/QTBUG-16697), thus default theme name (hicolor) does not work. So we test for 'window-close' theme icon on startup and if not found, set theme name to 'subsurface' Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--icons/subsurface/32x32/actions/go-down.pngbin0 -> 649 bytes
-rw-r--r--icons/subsurface/32x32/actions/go-up.pngbin0 -> 622 bytes
-rw-r--r--icons/subsurface/32x32/actions/window-close.pngbin0 -> 338 bytes
-rw-r--r--icons/subsurface/index.theme7
-rw-r--r--qt-ui/mainwindow.cpp3
-rw-r--r--qt-ui/usermanual.ui4
-rw-r--r--subsurface.qrc6
7 files changed, 17 insertions, 3 deletions
diff --git a/icons/subsurface/32x32/actions/go-down.png b/icons/subsurface/32x32/actions/go-down.png
new file mode 100644
index 000000000..0d08df9cb
--- /dev/null
+++ b/icons/subsurface/32x32/actions/go-down.png
Binary files differ
diff --git a/icons/subsurface/32x32/actions/go-up.png b/icons/subsurface/32x32/actions/go-up.png
new file mode 100644
index 000000000..397511707
--- /dev/null
+++ b/icons/subsurface/32x32/actions/go-up.png
Binary files differ
diff --git a/icons/subsurface/32x32/actions/window-close.png b/icons/subsurface/32x32/actions/window-close.png
new file mode 100644
index 000000000..2d02aaf3e
--- /dev/null
+++ b/icons/subsurface/32x32/actions/window-close.png
Binary files differ
diff --git a/icons/subsurface/index.theme b/icons/subsurface/index.theme
new file mode 100644
index 000000000..e7835db51
--- /dev/null
+++ b/icons/subsurface/index.theme
@@ -0,0 +1,7 @@
+[Icon Theme]
+Name=Subsurface
+Comment=Subsurface fallback theme
+Directories=32x32/actions
+
+[32x32/actions]
+Size=32
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index ed0488986..146dced4b 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -70,6 +70,9 @@ MainWindow::MainWindow() : QMainWindow(),
m_Instance = this;
ui.setupUi(this);
setWindowIcon(QIcon(":subsurface-icon"));
+ if (!QIcon::hasThemeIcon("window-close")) {
+ QIcon::setThemeName("subsurface");
+ }
connect(ui.ListWidget, SIGNAL(currentDiveChanged(int)), this, SLOT(current_dive_changed(int)));
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), this, SLOT(readSettings()));
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), ui.ListWidget, SLOT(update()));
diff --git a/qt-ui/usermanual.ui b/qt-ui/usermanual.ui
index 506b5c2ca..e8f0095f5 100644
--- a/qt-ui/usermanual.ui
+++ b/qt-ui/usermanual.ui
@@ -74,7 +74,7 @@
<string/>
</property>
<property name="icon">
- <iconset theme="go-previous">
+ <iconset theme="go-up">
<normaloff/>
</iconset>
</property>
@@ -98,7 +98,7 @@
<string/>
</property>
<property name="icon">
- <iconset theme="go-next">
+ <iconset theme="go-down">
<normaloff/>
</iconset>
</property>
diff --git a/subsurface.qrc b/subsurface.qrc
index 47a8ce414..48dce73dd 100644
--- a/subsurface.qrc
+++ b/subsurface.qrc
@@ -53,6 +53,10 @@
<file alias="icon_ceiling_dc">icons/pc.png</file>
<file alias="icon_ead">icons/ead.png</file>
<file alias="icon_HR">icons/icon-HR.png</file>
- <file alias="calendar">icons/calendarbg.png</file>
+ <file alias="calendar">icons/calendarbg.png</file>
+ <file>icons/subsurface/index.theme</file>
+ <file>icons/subsurface/32x32/actions/go-down.png</file>
+ <file>icons/subsurface/32x32/actions/go-up.png</file>
+ <file>icons/subsurface/32x32/actions/window-close.png</file>
</qresource>
</RCC>