[kstars] kstars: Fixes icons on systems that cannot load icons from system

Jasem Mutlaq mutlaqja at ikarustech.com
Sat Oct 1 21:22:13 UTC 2016


Git commit 5b821a293398f43ad482ff7f8842b034c466ccc4 by Jasem Mutlaq, on behalf of Robert Lancaster.
Committed on 01/10/2016 at 21:19.
Pushed by mutlaqja into branch 'master'.

Fixes icons on systems that cannot load icons from system
 themes using the fromTheme method like OS X, Windows, and some Linux Distros.
  If there is no system theme, it tries to set the theme to one of the bundled
 themes if possible, but also adds the fallback method for loading icons
 without a theme to each icon if that doesn't work.   Added an icons directory
 to keep the theme icons and toolbar icons separate from the other data.
 Included two bundled custom themes, based on breeze and oxygen.  Also fixed
 the call to the "geographic" icon and the "edit indi profile" icon since they
 may have been referencing the wrong icons.

CCMAIL:kstars-devel at kde.org

M  +1    -1    kstars/auxiliary/imageviewer.cpp
M  +1    -1    kstars/data/CMakeLists.txt
D  +-    --    kstars/data/advanced.png
D  +-    --    kstars/data/catalog.png
D  +-    --    kstars/data/cbound.png
D  +-    --    kstars/data/clines.png
D  +-    --    kstars/data/cnames.png
D  +-    --    kstars/data/colors.png
D  +-    --    kstars/data/constellationart.png
D  +-    --    kstars/data/deepsky.png
D  +-    --    kstars/data/fitsviewer.png
D  +-    --    kstars/data/flag.png
D  +-    --    kstars/data/fov.png
D  +-    --    kstars/data/glstarbase.png
D  +-    --    kstars/data/grid.png
D  +-    --    kstars/data/guides.png
D  +-    --    kstars/data/hgrid.png
D  +-    --    kstars/data/histogram.png
D  +-    --    kstars/data/horizon.png
R  +-    --    kstars/data/icons/ekos.png [from: kstars/data/ekos.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_align.png [from: kstars/data/ekos_align.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_ccd.png [from: kstars/data/ekos_ccd.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_focus.png [from: kstars/data/ekos_focus.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_guide.png [from: kstars/data/ekos_guide.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_mount.png [from: kstars/data/ekos_mount.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_scheduler.png [from: kstars/data/ekos_scheduler.png - 100% similarity]
R  +-    --    kstars/data/icons/ekos_setup.png [from: kstars/data/ekos_setup.png - 100% similarity]
R  +-    --    kstars/data/icons/go-ne.png [from: kstars/data/go-ne.png - 100% similarity]
R  +-    --    kstars/data/icons/go-nw.png [from: kstars/data/go-nw.png - 100% similarity]
R  +-    --    kstars/data/icons/go-se.png [from: kstars/data/go-se.png - 100% similarity]
R  +-    --    kstars/data/icons/go-sw.png [from: kstars/data/go-sw.png - 100% similarity]
D  +-    --    kstars/data/indi.png
M  +133  -33   kstars/data/kstars.qrc
D  +-    --    kstars/data/mw.png
D  +-    --    kstars/data/planets.png
D  +-    --    kstars/data/satellites.png
D  +-    --    kstars/data/solarsystem.png
D  +-    --    kstars/data/stars.png
D  +-    --    kstars/data/supernovae.png
D  +-    --    kstars/data/xplanet.png
M  +3    -3    kstars/dialogs/locationdialog.cpp
M  +2    -2    kstars/ekos/align.cpp
M  +19   -19   kstars/ekos/capture.cpp
M  +3    -3    kstars/ekos/ekosmanager.cpp
M  +1    -1    kstars/ekos/mosaic.cpp
M  +9    -31   kstars/ekos/mount.cpp
M  +1    -1    kstars/ekos/opsekos.cpp
M  +30   -30   kstars/ekos/scheduler.cpp
M  +35   -28   kstars/fitsviewer/fitsviewer.cpp
M  +6    -6    kstars/indi/drivermanager.cpp
M  +1    -1    kstars/indi/guimanager.cpp
M  +1    -1    kstars/indi/indiproperty.cpp
M  +2    -2    kstars/indi/opsindi.cpp
M  +3    -3    kstars/indi/streamwg.cpp
M  +1    -1    kstars/kstars.cpp
M  +28   -11   kstars/kstarsactions.cpp
M  +51   -27   kstars/kstarsinit.cpp
M  +2    -2    kstars/oal/observeradd.cpp
M  +1    -1    kstars/skymap.cpp
M  +1    -1    kstars/tools/altvstime.cpp
M  +1    -1    kstars/tools/conjunctions.cpp
M  +15   -15   kstars/tools/horizonmanager.cpp
M  +10   -10   kstars/tools/observinglist.cpp
M  +6    -6    kstars/tools/planetviewer.cpp
M  +10   -10   kstars/tools/scriptbuilder.cpp
M  +1    -1    kstars/tools/skycalendar.cpp

http://commits.kde.org/kstars/5b821a293398f43ad482ff7f8842b034c466ccc4

diff --git a/kstars/auxiliary/imageviewer.cpp b/kstars/auxiliary/imageviewer.cpp
index 83f89ed..5dcfb6e 100644
--- a/kstars/auxiliary/imageviewer.cpp
+++ b/kstars/auxiliary/imageviewer.cpp
@@ -154,7 +154,7 @@ void ImageViewer::init(QString caption, QString capText)
 
     QPushButton *invertB = new QPushButton(i18n("Invert colors"));
     invertB->setToolTip(i18n("Reverse colors of the image. This is useful to enhance contrast at times. This affects only the display and not the saving."));
-    QPushButton *saveB   = new QPushButton(QIcon::fromTheme("document-save"), i18n("Save"));
+    QPushButton *saveB   = new QPushButton(QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png")), i18n("Save"));
     saveB->setToolTip(i18n("Save the image to disk"));
 
     buttonBox->addButton(invertB, QDialogButtonBox::ActionRole);
diff --git a/kstars/data/CMakeLists.txt b/kstars/data/CMakeLists.txt
index bf9aed5..f9ca5a2 100644
--- a/kstars/data/CMakeLists.txt
+++ b/kstars/data/CMakeLists.txt
@@ -63,7 +63,7 @@ install(FILES
     wzstars.png wzgeo.png wzscope.png wzdownload.png chart.colors
     classic.colors moonless-night.colors night.colors
     tips TZrules.dat valaav.txt Interesting.dat PlanetFacts.dat
-    advinterface.dat satellites.dat	histogram.png go-nw.png go-ne.png go-sw.png go-se.png glossary.xml defaultflag.gif
+    advinterface.dat satellites.dat glossary.xml defaultflag.gif
     DESTINATION  ${KDE_INSTALL_DATADIR}/kstars
 )
 
diff --git a/kstars/data/advanced.png b/kstars/data/advanced.png
deleted file mode 100644
index e53e8b2..0000000
Binary files a/kstars/data/advanced.png and /dev/null differ
diff --git a/kstars/data/catalog.png b/kstars/data/catalog.png
deleted file mode 100644
index 2d6bf22..0000000
Binary files a/kstars/data/catalog.png and /dev/null differ
diff --git a/kstars/data/cbound.png b/kstars/data/cbound.png
deleted file mode 100644
index b4a8cb4..0000000
Binary files a/kstars/data/cbound.png and /dev/null differ
diff --git a/kstars/data/clines.png b/kstars/data/clines.png
deleted file mode 100644
index 935ba26..0000000
Binary files a/kstars/data/clines.png and /dev/null differ
diff --git a/kstars/data/cnames.png b/kstars/data/cnames.png
deleted file mode 100644
index bec8544..0000000
Binary files a/kstars/data/cnames.png and /dev/null differ
diff --git a/kstars/data/colors.png b/kstars/data/colors.png
deleted file mode 100644
index 373e723..0000000
Binary files a/kstars/data/colors.png and /dev/null differ
diff --git a/kstars/data/constellationart.png b/kstars/data/constellationart.png
deleted file mode 100644
index 967b2fc..0000000
Binary files a/kstars/data/constellationart.png and /dev/null differ
diff --git a/kstars/data/deepsky.png b/kstars/data/deepsky.png
deleted file mode 100644
index c33515f..0000000
Binary files a/kstars/data/deepsky.png and /dev/null differ
diff --git a/kstars/data/fitsviewer.png b/kstars/data/fitsviewer.png
deleted file mode 100644
index 4e9da94..0000000
Binary files a/kstars/data/fitsviewer.png and /dev/null differ
diff --git a/kstars/data/flag.png b/kstars/data/flag.png
deleted file mode 100644
index 9d5134e..0000000
Binary files a/kstars/data/flag.png and /dev/null differ
diff --git a/kstars/data/fov.png b/kstars/data/fov.png
deleted file mode 100644
index 41e1bd7..0000000
Binary files a/kstars/data/fov.png and /dev/null differ
diff --git a/kstars/data/glstarbase.png b/kstars/data/glstarbase.png
deleted file mode 100644
index d9b10c0..0000000
Binary files a/kstars/data/glstarbase.png and /dev/null differ
diff --git a/kstars/data/grid.png b/kstars/data/grid.png
deleted file mode 100644
index 61a155a..0000000
Binary files a/kstars/data/grid.png and /dev/null differ
diff --git a/kstars/data/guides.png b/kstars/data/guides.png
deleted file mode 100644
index 8b4c67c..0000000
Binary files a/kstars/data/guides.png and /dev/null differ
diff --git a/kstars/data/hgrid.png b/kstars/data/hgrid.png
deleted file mode 100644
index cf01f62..0000000
Binary files a/kstars/data/hgrid.png and /dev/null differ
diff --git a/kstars/data/histogram.png b/kstars/data/histogram.png
deleted file mode 100644
index 2d4f22c..0000000
Binary files a/kstars/data/histogram.png and /dev/null differ
diff --git a/kstars/data/horizon.png b/kstars/data/horizon.png
deleted file mode 100644
index 0825ff6..0000000
Binary files a/kstars/data/horizon.png and /dev/null differ
diff --git a/kstars/data/ekos.png b/kstars/data/icons/ekos.png
similarity index 100%
rename from kstars/data/ekos.png
rename to kstars/data/icons/ekos.png
diff --git a/kstars/data/ekos_align.png b/kstars/data/icons/ekos_align.png
similarity index 100%
rename from kstars/data/ekos_align.png
rename to kstars/data/icons/ekos_align.png
diff --git a/kstars/data/ekos_ccd.png b/kstars/data/icons/ekos_ccd.png
similarity index 100%
rename from kstars/data/ekos_ccd.png
rename to kstars/data/icons/ekos_ccd.png
diff --git a/kstars/data/ekos_focus.png b/kstars/data/icons/ekos_focus.png
similarity index 100%
rename from kstars/data/ekos_focus.png
rename to kstars/data/icons/ekos_focus.png
diff --git a/kstars/data/ekos_guide.png b/kstars/data/icons/ekos_guide.png
similarity index 100%
rename from kstars/data/ekos_guide.png
rename to kstars/data/icons/ekos_guide.png
diff --git a/kstars/data/ekos_mount.png b/kstars/data/icons/ekos_mount.png
similarity index 100%
rename from kstars/data/ekos_mount.png
rename to kstars/data/icons/ekos_mount.png
diff --git a/kstars/data/ekos_scheduler.png b/kstars/data/icons/ekos_scheduler.png
similarity index 100%
rename from kstars/data/ekos_scheduler.png
rename to kstars/data/icons/ekos_scheduler.png
diff --git a/kstars/data/ekos_setup.png b/kstars/data/icons/ekos_setup.png
similarity index 100%
rename from kstars/data/ekos_setup.png
rename to kstars/data/icons/ekos_setup.png
diff --git a/kstars/data/go-ne.png b/kstars/data/icons/go-ne.png
similarity index 100%
rename from kstars/data/go-ne.png
rename to kstars/data/icons/go-ne.png
diff --git a/kstars/data/go-nw.png b/kstars/data/icons/go-nw.png
similarity index 100%
rename from kstars/data/go-nw.png
rename to kstars/data/icons/go-nw.png
diff --git a/kstars/data/go-se.png b/kstars/data/icons/go-se.png
similarity index 100%
rename from kstars/data/go-se.png
rename to kstars/data/icons/go-se.png
diff --git a/kstars/data/go-sw.png b/kstars/data/icons/go-sw.png
similarity index 100%
rename from kstars/data/go-sw.png
rename to kstars/data/icons/go-sw.png
diff --git a/kstars/data/indi.png b/kstars/data/indi.png
deleted file mode 100644
index e9c5949..0000000
Binary files a/kstars/data/indi.png and /dev/null differ
diff --git a/kstars/data/kstars.qrc b/kstars/data/kstars.qrc
index c65f434..7383e90 100644
--- a/kstars/data/kstars.qrc
+++ b/kstars/data/kstars.qrc
@@ -1,37 +1,137 @@
 <RCC>
-    <qresource prefix="/icons">
-        <file>catalog.png</file>
-        <file>cbound.png</file>
-        <file>clines.png</file>
-        <file>cnames.png</file>
-        <file>colors.png</file>
-        <file>constellationart.png</file>
-        <file>deepsky.png</file>
-        <file>ekos_align.png</file>
-        <file>ekos_ccd.png</file>
-        <file>ekos_focus.png</file>
-        <file>ekos_guide.png</file>
-        <file>ekos_mount.png</file>
-        <file>ekos_scheduler.png</file>
-        <file>ekos_setup.png</file>
-        <file>ekos.png</file>
-        <file>fitsviewer.png</file>
-        <file>flag.png</file>
-        <file>fov.png</file>
-        <file>grid.png</file>
-        <file>guides.png</file>
-        <file>hgrid.png</file>
-        <file>horizon.png</file>
-        <file>indi.png</file>
-        <file>kstars.png</file>
-        <file>mw.png</file>
-        <file>planets.png</file>
-        <file>satellites.png</file>
-        <file>solarsystem.png</file>
-        <file>stars.png</file>
-        <file>supernovae.png</file>
-        <file>xplanet.png</file>
-        <file>advanced.png</file>
+    <qresource prefix="/">
+        <file>icons/catalog.png</file>
+        <file>icons/cbound.png</file>
+        <file>icons/clines.png</file>
+        <file>icons/cnames.png</file>
+        <file>icons/colors.png</file>
+        <file>icons/constellationart.png</file>
+        <file>icons/deepsky.png</file>
+        <file>icons/ekos_align.png</file>
+        <file>icons/ekos_ccd.png</file>
+        <file>icons/ekos_focus.png</file>
+        <file>icons/ekos_guide.png</file>
+        <file>icons/ekos_mount.png</file>
+        <file>icons/ekos_scheduler.png</file>
+        <file>icons/ekos_setup.png</file>
+        <file>icons/ekos.png</file>
+        <file>icons/fitsviewer.png</file>
+        <file>icons/flag.png</file>
+        <file>icons/fov.png</file>
+        <file>icons/grid.png</file>
+        <file>icons/guides.png</file>
+        <file>icons/hgrid.png</file>
+        <file>icons/horizon.png</file>
+        <file>icons/indi.png</file>
+        <file>icons/mw.png</file>
+        <file>icons/planets.png</file>
+        <file>icons/satellites.png</file>
+        <file>icons/solarsystem.png</file>
+        <file>icons/stars.png</file>
+        <file>icons/supernovae.png</file>
+        <file>icons/xplanet.png</file>
+        <file>icons/advanced.png</file>
+        <file>icons/breeze/index.theme</file>
+        <file>icons/breeze/default/accessories-calculator.svg</file>
+        <file>icons/breeze/default/application-exit.svg</file>
+        <file>icons/breeze/default/applications-internet.svg</file>
+        <file>icons/breeze/default/arrow-down.svg</file>
+        <file>icons/breeze/default/arrow-right.svg</file>
+        <file>icons/breeze/default/arrow-right-double.svg</file>
+        <file>icons/breeze/default/arrow-left.svg</file>
+        <file>icons/breeze/default/arrow-left-double.svg</file>
+        <file>icons/breeze/default/arrow-up.svg</file>
+        <file>icons/breeze/default/chronometer.svg</file>
+        <file>icons/breeze/default/clock.svg</file>
+        <file>icons/breeze/default/computer.svg</file>
+        <file>icons/breeze/default/crosshairs.svg</file>
+        <file>icons/breeze/default/dialog-cancel.svg</file>
+        <file>icons/breeze/default/dialog-ok-apply.svg</file>
+        <file>icons/breeze/default/document-edit.svg</file>
+        <file>icons/breeze/default/document-encrypt.svg</file>
+        <file>icons/breeze/default/document-export.svg</file>
+        <file>icons/breeze/default/document-new.svg</file>
+        <file>icons/breeze/default/document-open-folder.svg</file>
+        <file>icons/breeze/default/document-open.svg</file>
+        <file>icons/breeze/default/document-print.svg</file>
+        <file>icons/breeze/default/document-properties.svg</file>
+        <file>icons/breeze/default/document-save-as.svg</file>
+        <file>icons/breeze/default/document-save.svg</file>
+        <file>icons/breeze/default/download.svg</file>
+        <file>icons/breeze/default/edit-clear.svg</file>
+        <file>icons/breeze/default/edit-copy.svg</file>
+        <file>icons/breeze/default/edit-delete.svg</file>
+        <file>icons/breeze/default/edit-find.svg</file>
+        <file>icons/breeze/default/edit-undo.svg</file>
+        <file>icons/breeze/default/edit-redo.svg</file>
+        <file>icons/breeze/default/favorites.svg</file>
+        <file>icons/breeze/default/go-down.svg</file>
+        <file>icons/breeze/default/go-next.svg</file>
+        <file>icons/breeze/default/go-previous.svg</file>
+        <file>icons/breeze/default/go-up.svg</file>
+        <file>icons/breeze/default/help-hint.svg</file>
+        <file>icons/breeze/default/list-add.svg</file>
+        <file>icons/breeze/default/list-remove.svg</file>
+        <file>icons/breeze/default/media-playback-pause.svg</file>
+        <file>icons/breeze/default/media-playback-start.svg</file>
+        <file>icons/breeze/default/media-playback-stop.svg</file>
+        <file>icons/breeze/default/media-skip-backward.svg</file>
+        <file>icons/breeze/default/media-skip-forward.svg</file>
+        <file>icons/breeze/default/modem.svg</file>
+        <file>icons/breeze/default/network-connect.svg</file>
+        <file>icons/breeze/default/network-disconnect.svg</file>
+        <file>icons/breeze/default/network-server.svg</file>
+        <file>icons/breeze/default/object-flip-horizontal.svg</file>
+        <file>icons/breeze/default/object-flip-vertical.svg</file>
+        <file>icons/breeze/default/object-locked.svg</file>
+        <file>icons/breeze/default/object-rotate-left.svg</file>
+        <file>icons/breeze/default/object-rotate-right.svg</file>
+        <file>icons/breeze/default/process-stop.svg</file>
+        <file>icons/breeze/default/run-build.svg</file>
+        <file>icons/breeze/default/security-high.svg</file>
+        <file>icons/breeze/default/security-low.svg</file>
+        <file>icons/breeze/default/security-medium.svg</file>
+        <file>icons/breeze/default/snap-orthogonal.svg</file>
+        <file>icons/breeze/default/svn-update.svg</file>
+        <file>icons/breeze/default/system-reboot.svg</file>
+        <file>icons/breeze/default/system-run.svg</file>
+        <file>icons/breeze/default/tools-wizard.svg</file>
+        <file>icons/breeze/default/transform-move.svg</file>
+        <file>icons/breeze/default/view-fullscreen.svg</file>
+        <file>icons/breeze/default/view-history.svg</file>
+        <file>icons/breeze/default/view-preview.svg</file>
+        <file>icons/breeze/default/view-refresh.svg</file>
+        <file>icons/breeze/default/view-restore.svg</file>
+        <file>icons/breeze/default/view-statistics.svg</file>
+        <file>icons/breeze/default/window-close.svg</file>
+        <file>icons/breeze/default/zoom-draw.svg</file>
+        <file>icons/breeze/default/zoom-fit-best.svg</file>
+        <file>icons/breeze/default/zoom-in.svg</file>
+        <file>icons/breeze/default/zoom-original.svg</file>
+        <file>icons/breeze/default/zoom-out.svg</file>
+        <file>icons/breeze/default/kstars_grid.svg</file>
+        <file>icons/breeze/default/kstars_guides.svg</file>
+        <file>icons/breeze/default/kstars_advanced.svg</file>
+        <file>icons/breeze/default/kstars_hgrid.svg</file>
+        <file>icons/breeze/default/kstars_catalog.svg</file>
+        <file>icons/breeze/default/kstars_horizon.svg</file>
+        <file>icons/breeze/default/kstars_cbound.svg</file>
+        <file>icons/breeze/default/kstars_indi.svg</file>
+        <file>icons/breeze/default/kstars_clines.svg</file>
+        <file>icons/breeze/default/kstars_mw.svg</file>
+        <file>icons/breeze/default/kstars_cnames.svg</file>
+        <file>icons/breeze/default/kstars_planets.svg</file>
+        <file>icons/breeze/default/kstars_colors.svg</file>
+        <file>icons/breeze/default/kstars_satellites.svg</file>
+        <file>icons/breeze/default/kstars_constellationart.svg</file>
+        <file>icons/breeze/default/kstars_solarsystem.svg</file>
+        <file>icons/breeze/default/kstars_deepsky.svg</file>
+        <file>icons/breeze/default/kstars_stars.svg</file>
+        <file>icons/breeze/default/kstars_ekos.svg</file>
+        <file>icons/breeze/default/kstars_supernovae.svg</file>
+        <file>icons/breeze/default/kstars_fitsviewer.svg</file>
+        <file>icons/breeze/default/kstars_xplanet.svg</file>
+        <file>icons/breeze/default/kstars_flag.svg</file>
     </qresource>
     <qresource prefix="/kconfig">
         <file>kstars.knsrc</file>
diff --git a/kstars/data/mw.png b/kstars/data/mw.png
deleted file mode 100644
index 4358107..0000000
Binary files a/kstars/data/mw.png and /dev/null differ
diff --git a/kstars/data/planets.png b/kstars/data/planets.png
deleted file mode 100644
index c7fa497..0000000
Binary files a/kstars/data/planets.png and /dev/null differ
diff --git a/kstars/data/satellites.png b/kstars/data/satellites.png
deleted file mode 100644
index abbd209..0000000
Binary files a/kstars/data/satellites.png and /dev/null differ
diff --git a/kstars/data/solarsystem.png b/kstars/data/solarsystem.png
deleted file mode 100644
index c7dc711..0000000
Binary files a/kstars/data/solarsystem.png and /dev/null differ
diff --git a/kstars/data/stars.png b/kstars/data/stars.png
deleted file mode 100644
index 62bc95f..0000000
Binary files a/kstars/data/stars.png and /dev/null differ
diff --git a/kstars/data/supernovae.png b/kstars/data/supernovae.png
deleted file mode 100644
index 68584ef..0000000
Binary files a/kstars/data/supernovae.png and /dev/null differ
diff --git a/kstars/data/xplanet.png b/kstars/data/xplanet.png
deleted file mode 100644
index 599bf75..0000000
Binary files a/kstars/data/xplanet.png and /dev/null differ
diff --git a/kstars/dialogs/locationdialog.cpp b/kstars/dialogs/locationdialog.cpp
index 146f2f9..40e8838 100644
--- a/kstars/dialogs/locationdialog.cpp
+++ b/kstars/dialogs/locationdialog.cpp
@@ -68,9 +68,9 @@ LocationDialog::LocationDialog( QWidget* parent ) :
             ld->DSTRuleBox->addItem( key );
     }
 
-    ld->AddCityButton->setIcon(QIcon::fromTheme("list-add"));
-    ld->RemoveButton->setIcon(QIcon::fromTheme("list-remove"));
-    ld->UpdateButton->setIcon(QIcon::fromTheme("svn-update"));
+    ld->AddCityButton->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
+    ld->RemoveButton->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
+    ld->UpdateButton->setIcon(QIcon::fromTheme("svn-update", QIcon(":/icons/breeze/default/svn-update.png")));
 
     connect( ld->CityFilter, SIGNAL( textChanged( const QString & ) ), this, SLOT( enqueueFilterCity() ) );
     connect( ld->ProvinceFilter, SIGNAL( textChanged( const QString & ) ), this, SLOT( enqueueFilterCity() ) );
diff --git a/kstars/ekos/align.cpp b/kstars/ekos/align.cpp
index 81067a9..58013a7 100644
--- a/kstars/ekos/align.cpp
+++ b/kstars/ekos/align.cpp
@@ -114,8 +114,8 @@ Align::Align()
     else
         nothingR->setChecked(true);
 
-    syncBoxesB->setIcon(QIcon::fromTheme("edit-copy"));
-    clearBoxesB->setIcon(QIcon::fromTheme("edit-clear"));
+    syncBoxesB->setIcon(QIcon::fromTheme("edit-copy", QIcon(":/icons/breeze/default/edit-copy.png")));
+    clearBoxesB->setIcon(QIcon::fromTheme("edit-clear", QIcon(":/icons/breeze/default/edit-clear.png")));
 
     raBox->setDegType(false); //RA box should be HMS-style
 
diff --git a/kstars/ekos/capture.cpp b/kstars/ekos/capture.cpp
index 7b38022..8ae8120 100644
--- a/kstars/ekos/capture.cpp
+++ b/kstars/ekos/capture.cpp
@@ -119,8 +119,8 @@ Capture::Capture()
     connect(startB, SIGNAL(clicked()), this, SLOT(toggleSequence()));
     connect(pauseB, SIGNAL(clicked()), this, SLOT(pause()));
 
-    startB->setIcon(QIcon::fromTheme("media-playback-start"));
-    pauseB->setIcon(QIcon::fromTheme("media-playback-pause"));
+    startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png") ));
+    pauseB->setIcon(QIcon::fromTheme("media-playback-pause", QIcon(":/icons/breeze/default/media-playback-pause.png") ));
 
     connect(binXIN, SIGNAL(valueChanged(int)), binYIN, SLOT(setValue(int)));
 
@@ -151,17 +151,17 @@ Capture::Capture()
     connect(resetFrameB, SIGNAL(clicked()), this, SLOT(resetFrame()));
     connect(calibrationB, SIGNAL(clicked()), this, SLOT(openCalibrationDialog()));
 
-    addToQueueB->setIcon(QIcon::fromTheme("list-add"));
-    removeFromQueueB->setIcon(QIcon::fromTheme("list-remove"));
-    queueUpB->setIcon(QIcon::fromTheme("go-up"));
-    queueDownB->setIcon(QIcon::fromTheme("go-down"));
-    selectFITSDirB->setIcon(QIcon::fromTheme("document-open-folder"));
-    queueLoadB->setIcon(QIcon::fromTheme("document-open"));
-    queueSaveB->setIcon(QIcon::fromTheme("document-save"));
-    queueSaveAsB->setIcon(QIcon::fromTheme("document-save-as"));
-    resetB->setIcon(QIcon::fromTheme("system-reboot"));
-    resetFrameB->setIcon(QIcon::fromTheme("view-refresh"));
-    calibrationB->setIcon(QIcon::fromTheme("run-build"));
+    addToQueueB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png") ));
+    removeFromQueueB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png") ));
+    queueUpB->setIcon(QIcon::fromTheme("go-up", QIcon(":/icons/breeze/default/go-up.png") ));
+    queueDownB->setIcon(QIcon::fromTheme("go-down", QIcon(":/icons/go-down.png") ));
+    selectFITSDirB->setIcon(QIcon::fromTheme("document-open-folder", QIcon(":/icons/breeze/default/document-open-folder.png") ));
+    queueLoadB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png") ));
+    queueSaveB->setIcon(QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png") ));
+    queueSaveAsB->setIcon(QIcon::fromTheme("document-save-as", QIcon(":/icons/breeze/default/document-save-as.png") ));
+    resetB->setIcon(QIcon::fromTheme("system-reboot", QIcon(":/icons/breeze/default/system-reboot.png") ));
+    resetFrameB->setIcon(QIcon::fromTheme("view-refresh", QIcon(":/icons/breeze/default/view-refresh.png") ));
+    calibrationB->setIcon(QIcon::fromTheme("run-build", QIcon(":/icons/breeze/default/run-build.png") ));
 
     addToQueueB->setToolTip(i18n("Add job to sequence queue"));
     removeFromQueueB->setToolTip(i18n("Remove job from sequence queue"));
@@ -266,7 +266,7 @@ void Capture::pause()
     appendLogText(i18n("Sequence shall be paused after current exposure is complete."));
     pauseB->setEnabled(false);
 
-    startB->setIcon(QIcon::fromTheme("media-playback-start"));
+    startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png") ));
     startB->setToolTip(i18n("Resume Sequence"));
 }
 
@@ -274,7 +274,7 @@ void Capture::toggleSequence()
 {
     if (state == CAPTURE_PAUSED)
     {
-        startB->setIcon(QIcon::fromTheme("media-playback-stop"));
+        startB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png") ));
         startB->setToolTip(i18n("Stop Sequence"));
         pauseB->setEnabled(true);
 
@@ -373,7 +373,7 @@ void Capture::start()
     state = CAPTURE_PROGRESS;
     emit newStatus(Ekos::CAPTURE_PROGRESS);
 
-    startB->setIcon(QIcon::fromTheme("media-playback-stop"));
+    startB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png") ));
     startB->setToolTip(i18n("Stop Sequence"));
     pauseB->setEnabled(true);
 
@@ -442,7 +442,7 @@ void Capture::stop(bool abort)
 
     if (abort)
     {
-        startB->setIcon(QIcon::fromTheme("media-playback-start"));
+        startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png") ));
         startB->setToolTip(i18n("Start Sequence"));
         pauseB->setEnabled(false);
     }
@@ -2604,7 +2604,7 @@ void Capture::editJob(QModelIndex i)
 
    appendLogText(i18n("Editing job #%1...", i.row()+1));
 
-   addToQueueB->setIcon(QIcon::fromTheme("dialog-ok-apply"));
+   addToQueueB->setIcon(QIcon::fromTheme("dialog-ok-apply", QIcon(":/icons/breeze/default/dialog-ok-apply.png") ));
    addToQueueB->setToolTip(i18n("Apply job changes."));
    removeFromQueueB->setToolTip(i18n("Cancel job changes."));
 
@@ -2618,7 +2618,7 @@ void Capture::resetJobEdit()
        appendLogText(i18n("Editing job canceled."));
 
    jobUnderEdit = false;
-   addToQueueB->setIcon(QIcon::fromTheme("list-add"));
+   addToQueueB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png") ));
 
    addToQueueB->setToolTip(i18n("Add job to sequence queue"));
    removeFromQueueB->setToolTip(i18n("Remove job from sequence queue"));
diff --git a/kstars/ekos/ekosmanager.cpp b/kstars/ekos/ekosmanager.cpp
index 143a28a..65782ca 100644
--- a/kstars/ekos/ekosmanager.cpp
+++ b/kstars/ekos/ekosmanager.cpp
@@ -127,9 +127,9 @@ EkosManager::EkosManager(QWidget *parent) : QDialog(parent)
     connect(profileCombo, SIGNAL(activated(QString)), this, SLOT(saveDefaultProfile(QString)));
 
     // Set Profile icons
-    addProfileB->setIcon(QIcon::fromTheme("list-add"));
-    editProfileB->setIcon(QIcon::fromTheme("edit-entry"));
-    deleteProfileB->setIcon(QIcon::fromTheme("list-remove"));
+    addProfileB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
+    editProfileB->setIcon(QIcon::fromTheme("document-edit", QIcon(":/icons/indi.png")));
+    deleteProfileB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
 
     // Load all drivers
     loadDrivers();
diff --git a/kstars/ekos/mosaic.cpp b/kstars/ekos/mosaic.cpp
index ab282af..68be4a8 100644
--- a/kstars/ekos/mosaic.cpp
+++ b/kstars/ekos/mosaic.cpp
@@ -220,7 +220,7 @@ Mosaic::Mosaic(Scheduler *scheduler)
     scene.addItem(mosaicTile);
     mosaicView->setScene(&scene);
 
-    selectJobsDirB->setIcon(QIcon::fromTheme("document-open-folder"));
+    selectJobsDirB->setIcon(QIcon::fromTheme("document-open-folder", QIcon(":/icons/breeze/default/document-open-folder.png")));
 
     //mosaicView->setResizeAnchor(QGraphicsView::AnchorViewCenter);
 
diff --git a/kstars/ekos/mount.cpp b/kstars/ekos/mount.cpp
index 6d2537b..f33ce82 100644
--- a/kstars/ekos/mount.cpp
+++ b/kstars/ekos/mount.cpp
@@ -42,43 +42,21 @@ Mount::Mount()
 
     currentTelescope = NULL;
 
-    stopB->setIcon(QIcon::fromTheme("process-stop"));
-    northB->setIcon(QIcon::fromTheme("go-up"));
-    westB->setIcon(QIcon::fromTheme("go-previous"));
-    eastB->setIcon(QIcon::fromTheme("go-next"));
-    southB->setIcon(QIcon::fromTheme("go-down"));
+    stopB->setIcon(QIcon::fromTheme("process-stop", QIcon(":/icons/breeze/default/process-stop.png")));
+    northB->setIcon(QIcon::fromTheme("go-up", QIcon(":/icons/breeze/default/go-up.png")));
+    westB->setIcon(QIcon::fromTheme("go-previous", QIcon(":/icons/breeze/default/go-previous.png")));
+    eastB->setIcon(QIcon::fromTheme("go-next", QIcon(":/icons/breeze/default/go-next.png")));
+    southB->setIcon(QIcon::fromTheme("go-down", QIcon(":/icons/breeze/default/go-down.png")));
 
     abortDispatch = -1;
 
     minAltLimit->setValue(Options::minimumAltLimit());
     maxAltLimit->setValue(Options::maximumAltLimit());
 
-
-    QFile tempFile;
-
-    if (KSUtils::openDataFile( tempFile, "go-nw.png" ) )
-    {
-        northwestB->setIcon(QIcon(tempFile.fileName()));
-        tempFile.close();
-    }
-
-    if (KSUtils::openDataFile( tempFile, "go-ne.png" ) )
-    {
-        northeastB->setIcon(QIcon(tempFile.fileName()));
-        tempFile.close();
-    }
-
-    if (KSUtils::openDataFile( tempFile, "go-sw.png" ) )
-    {
-        southwestB->setIcon(QIcon(tempFile.fileName()));
-        tempFile.close();
-    }
-
-    if (KSUtils::openDataFile( tempFile, "go-se.png" ) )
-    {
-        southeastB->setIcon(QIcon(tempFile.fileName()));
-        tempFile.close();
-    }
+    northwestB->setIcon(QIcon(":/icons/go-nw.png"));
+    northeastB->setIcon(QIcon(":/icons/go-nw.png"));
+    southwestB->setIcon(QIcon(":/icons/go-sw.png"));
+    southeastB->setIcon(QIcon(":/icons/go-se.png"));
 
     connect(northB, SIGNAL(pressed()), this, SLOT(move()));
     connect(northB, SIGNAL(released()), this, SLOT(stop()));
diff --git a/kstars/ekos/opsekos.cpp b/kstars/ekos/opsekos.cpp
index a5ffcd7..4f78c8a 100644
--- a/kstars/ekos/opsekos.cpp
+++ b/kstars/ekos/opsekos.cpp
@@ -31,7 +31,7 @@ OpsEkos::OpsEkos()
     //Get a pointer to the KConfigDialog
     m_ConfigDialog = KConfigDialog::exists( "settings" );
 
-    selectPHD2B->setIcon(QIcon::fromTheme("document-open"));
+    selectPHD2B->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
 
     connect( m_ConfigDialog->button(QDialogButtonBox::Apply), SIGNAL( clicked() ), SLOT( slotApply() ) );
     connect( m_ConfigDialog->button(QDialogButtonBox::Ok), SIGNAL( clicked() ), SLOT( slotApply() ) );
diff --git a/kstars/ekos/scheduler.cpp b/kstars/ekos/scheduler.cpp
index ff2cffb..71f716f 100644
--- a/kstars/ekos/scheduler.cpp
+++ b/kstars/ekos/scheduler.cpp
@@ -129,7 +129,7 @@ Scheduler::Scheduler()
 
     moon = dynamic_cast<KSMoon*> (KStarsData::Instance()->skyComposite()->findByName("Moon"));
 
-    sleepLabel->setPixmap(QIcon::fromTheme("chronometer").pixmap(QSize(32,32)));
+    sleepLabel->setPixmap(QIcon::fromTheme("chronometer", QIcon(":/icons/breeze/default/chronometer.png")).pixmap(QSize(32,32)));
     sleepLabel->hide();
 
     schedulerTimer.setInterval(UPDATE_PERIOD_MS);
@@ -146,26 +146,26 @@ Scheduler::Scheduler()
     raBox->setDegType(false); //RA box should be HMS-style
 
 
-    addToQueueB->setIcon(QIcon::fromTheme("list-add"));
+    addToQueueB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
     addToQueueB->setToolTip(i18n("Add observation job to list."));
 
-    removeFromQueueB->setIcon(QIcon::fromTheme("list-remove"));
+    removeFromQueueB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
     removeFromQueueB->setToolTip(i18n("Remove observation job from list."));
 
-    evaluateOnlyB->setIcon(QIcon::fromTheme("tools-wizard"));
-    mosaicB->setIcon(QIcon::fromTheme("zoom-draw"));
+    evaluateOnlyB->setIcon(QIcon::fromTheme("tools-wizard", QIcon(":/icons/breeze/default/tools-wizard.png")));
+    mosaicB->setIcon(QIcon::fromTheme("zoom-draw", QIcon(":/icons/breeze/default/zoom-draw.png")));
 
-    queueSaveAsB->setIcon(QIcon::fromTheme("document-save-as"));
-    queueSaveB->setIcon(QIcon::fromTheme("document-save"));
-    queueLoadB->setIcon(QIcon::fromTheme("document-open"));
+    queueSaveAsB->setIcon(QIcon::fromTheme("document-save-as", QIcon(":/icons/breeze/default/document-save-as.png")));
+    queueSaveB->setIcon(QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png")));
+    queueLoadB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
 
-    loadSequenceB->setIcon(QIcon::fromTheme("document-open"));
-    selectStartupScriptB->setIcon(QIcon::fromTheme("document-open"));
-    selectShutdownScriptB->setIcon(QIcon::fromTheme("document-open"));
-    selectFITSB->setIcon(QIcon::fromTheme("document-open"));
+    loadSequenceB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
+    selectStartupScriptB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
+    selectShutdownScriptB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
+    selectFITSB->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
 
-    startupB->setIcon(QIcon::fromTheme("media-playback-start"));
-    shutdownB->setIcon(QIcon::fromTheme("media-playback-start"));
+    startupB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
+    shutdownB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
 
     connect(startupB, SIGNAL(clicked()), this, SLOT(runStartupProcedure()));
     connect(shutdownB, SIGNAL(clicked()), this, SLOT(runShutdownProcedure()));
@@ -183,8 +183,8 @@ Scheduler::Scheduler()
     connect(queueTable, SIGNAL(clicked(QModelIndex)), this, SLOT(loadJob(QModelIndex)));
     connect(queueTable, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(resetJobState(QModelIndex)));
 
-    startB->setIcon(QIcon::fromTheme("media-playback-start"));
-    pauseB->setIcon(QIcon::fromTheme("media-playback-pause"));
+    startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
+    pauseB->setIcon(QIcon::fromTheme("media-playback-pause", QIcon(":/icons/breeze/default/media-playback-pause.png")));
 
     connect(startB,SIGNAL(clicked()),this,SLOT(toggleScheduler()));
     connect(pauseB,SIGNAL(clicked()),this,SLOT(pause()));
@@ -732,7 +732,7 @@ void Scheduler::loadJob(QModelIndex i)
 
    appendLogText(i18n("Editing job #%1...", i.row()+1));
 
-   addToQueueB->setIcon(QIcon::fromTheme("edit-undo"));
+   addToQueueB->setIcon(QIcon::fromTheme("edit-undo", QIcon(":/icons/breeze/default/edit-undo.png")));
    addToQueueB->setStyleSheet("background-color:orange;}");
    addToQueueB->setEnabled(true);
    startB->setEnabled(false);
@@ -755,7 +755,7 @@ void Scheduler::resetJobEdit()
 
     watchJobChanges(false);
 
-    addToQueueB->setIcon(QIcon::fromTheme("list-add"));
+    addToQueueB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
     addToQueueB->setStyleSheet(QString());
     addToQueueB->setToolTip(i18n("Add observation job to list."));
     queueTable->clearSelection();
@@ -918,7 +918,7 @@ void Scheduler::stop()
     sleepLabel->hide();
     pi->stopAnimation();
 
-    startB->setIcon(QIcon::fromTheme("media-playback-start"));
+    startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
     startB->setToolTip(i18n("Start Scheduler"));
     pauseB->setEnabled(false);
     //startB->setText("Start Scheduler");
@@ -939,7 +939,7 @@ void Scheduler::start()
         state = SCHEDULER_RUNNIG;
         appendLogText(i18n("Scheduler resumed."));
 
-        startB->setIcon(QIcon::fromTheme("media-playback-stop"));
+        startB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png")));
         startB->setToolTip(i18n("Stop Scheduler"));
         return;
     }
@@ -966,7 +966,7 @@ void Scheduler::start()
     sleepLabel->hide();
 
     //startB->setText("Stop Scheduler");
-    startB->setIcon(QIcon::fromTheme("media-playback-stop"));
+    startB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png")));
     startB->setToolTip(i18n("Stop Scheduler"));
     pauseB->setEnabled(true);
 
@@ -1006,7 +1006,7 @@ void Scheduler::pause()
     appendLogText(i18n("Scheduler paused."));
     pauseB->setEnabled(false);
 
-    startB->setIcon(QIcon::fromTheme("media-playback-start"));
+    startB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
     startB->setToolTip(i18n("Resume Scheduler"));
 }
 
@@ -1615,19 +1615,19 @@ void Scheduler::checkWeather()
                 qDebug() << "Scheduler: " << statusString;
 
             if (weatherStatus == IPS_OK)
-                weatherLabel->setPixmap(QIcon::fromTheme("security-high").pixmap(QSize(32,32)));
+                weatherLabel->setPixmap(QIcon::fromTheme("security-high", QIcon(":/icons/breeze/default/security-high.png")).pixmap(QSize(32,32)));
             else if (weatherStatus == IPS_BUSY)
             {
-                weatherLabel->setPixmap(QIcon::fromTheme("security-medium").pixmap(QSize(32,32)));
+                weatherLabel->setPixmap(QIcon::fromTheme("security-medium", QIcon(":/icons/breeze/default/security-medium.png")).pixmap(QSize(32,32)));
                 KNotification::event( QLatin1String( "WeatherWarning" ) , i18n("Weather conditions in warning zone"));
             }
             else if (weatherStatus == IPS_ALERT)
             {
-                weatherLabel->setPixmap(QIcon::fromTheme("security-low").pixmap(QSize(32,32)));
+                weatherLabel->setPixmap(QIcon::fromTheme("security-low", QIcon(":/icons/breeze/default/security-low.png")).pixmap(QSize(32,32)));
                 KNotification::event( QLatin1String( "WeatherAlert" ) , i18n("Weather conditions are critical. Observatory shutdown is imminent"));
             }
             else
-                weatherLabel->setPixmap(QIcon::fromTheme("chronometer").pixmap(QSize(32,32)));
+                weatherLabel->setPixmap(QIcon::fromTheme("chronometer", QIcon(":/icons/breeze/default/chronometer.png")).pixmap(QSize(32,32)));
 
             weatherLabel->show();
             weatherLabel->setToolTip(statusString);
@@ -4501,7 +4501,7 @@ void Scheduler::checkStartupProcedure()
             else if (startupState == STARTUP_ERROR)
                 appendLogText(i18n("Manual startup procedure terminated due to errors."));
 
-            startupB->setIcon(QIcon::fromTheme("media-playback-start"));
+            startupB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
         }
 }
 
@@ -4512,7 +4512,7 @@ void Scheduler::runStartupProcedure()
         if (KMessageBox::questionYesNo(NULL, i18n("Are you sure you want to execute the startup procedure manually?")) == KMessageBox::Yes)
         {
             appendLogText(i18n("Warning! Executing startup procedure manually..."));
-            startupB->setIcon(QIcon::fromTheme("media-playback-stop"));
+            startupB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png")));
             startupState = STARTUP_IDLE;
             checkStartupState();
             QTimer::singleShot(1000, this, SLOT(checkStartupProcedure()));
@@ -4577,7 +4577,7 @@ void Scheduler::checkShutdownProcedure()
                 appendLogText(i18n("Manual shutdown procedure terminated due to errors."));
 
             shutdownState = SHUTDOWN_IDLE;
-            shutdownB->setIcon(QIcon::fromTheme("media-playback-start"));
+            shutdownB->setIcon(QIcon::fromTheme("media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png")));
         }
 
 }
@@ -4589,7 +4589,7 @@ void Scheduler::runShutdownProcedure()
         if (KMessageBox::questionYesNo(NULL, i18n("Are you sure you want to execute the shutdown procedure manually?")) == KMessageBox::Yes)
         {
             appendLogText(i18n("Warning! Executing shutdown procedure manually..."));
-            shutdownB->setIcon(QIcon::fromTheme("media-playback-stop"));
+            shutdownB->setIcon(QIcon::fromTheme("media-playback-stop", QIcon(":/icons/breeze/default/media-playback-stop.png")));
             shutdownState = SHUTDOWN_IDLE;
             checkShutdownState();
             QTimer::singleShot(1000, this, SLOT(checkShutdownProcedure()));
diff --git a/kstars/fitsviewer/fitsviewer.cpp b/kstars/fitsviewer/fitsviewer.cpp
index 5a5d7a9..222fb1a 100644
--- a/kstars/fitsviewer/fitsviewer.cpp
+++ b/kstars/fitsviewer/fitsviewer.cpp
@@ -77,7 +77,7 @@ FITSViewer::FITSViewer (QWidget *parent)
 
     fitsTab->setTabsClosable(true);
 
-    setWindowIcon(QIcon::fromTheme("kstars_fitsviewer"));
+    setWindowIcon(QIcon::fromTheme("kstars_fitsviewer", QIcon(":/icons/fitsviewer.png")));
 
     setCentralWidget(fitsTab);
 
@@ -104,48 +104,45 @@ FITSViewer::FITSViewer (QWidget *parent)
 
     action = actionCollection()->addAction("rotate_right", this, SLOT(rotateCW()));
     action->setText(i18n("Rotate Right"));
-    action->setIcon(QIcon::fromTheme("object-rotate-right"));
+    action->setIcon(QIcon::fromTheme("object-rotate-right", QIcon(":/icons/breeze/default/object-rotate-right.png")));
 
     action = actionCollection()->addAction("rotate_left", this, SLOT(rotateCCW()));
     action->setText(i18n("Rotate Left"));
-    action->setIcon(QIcon::fromTheme("object-rotate-left"));
+    action->setIcon(QIcon::fromTheme("object-rotate-left", QIcon(":/icons/breeze/default/object-rotate-left.png")));
 
     action = actionCollection()->addAction("flip_horizontal", this, SLOT(flipHorizontal()));
     action->setText(i18n("Flip Horizontal"));
-    action->setIcon(QIcon::fromTheme("object-flip-horizontal"));
+    action->setIcon(QIcon::fromTheme("object-flip-horizontal", QIcon(":/icons/breeze/default/object-flip-horizontal.png")));
 
     action = actionCollection()->addAction("flip_vertical", this, SLOT(flipVertical()));
     action->setText(i18n("Flip Vertical"));
-    action->setIcon(QIcon::fromTheme("object-flip-vertical"));
-
-    QFile tempFile;
+    action->setIcon(QIcon::fromTheme("object-flip-vertical", QIcon(":/icons/breeze/default/object-flip-vertical.png")));
 
     action = actionCollection()->addAction("image_histogram");
     action->setText(i18n("Histogram"));
     connect(action, SIGNAL(triggered(bool)), SLOT (histoFITS()));
     actionCollection()->setDefaultShortcut(action, QKeySequence::Replace);
 
-    if (KSUtils::openDataFile( tempFile, "histogram.png" ) )
-    {
-        action->setIcon(QIcon(tempFile.fileName()));
-        tempFile.close();
-    }
-    else
-        action->setIcon(QIcon::fromTheme("tools-wizard"));
+    action->setIcon(QIcon(":/icons/histogram.png"));
 
-    KStandardAction::open(this,   SLOT(openFile()),   actionCollection());
+    action = KStandardAction::open(this,   SLOT(openFile()),   actionCollection());
+    action->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")));
+    
     saveFileAction    = KStandardAction::save(this,   SLOT(saveFile()),   actionCollection());
-    saveFileAsAction  = KStandardAction::saveAs(this, SLOT(saveFileAs()), actionCollection());
+    saveFileAction->setIcon(QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png")));
+
+    action=saveFileAsAction  = KStandardAction::saveAs(this, SLOT(saveFileAs()), actionCollection());
+    saveFileAsAction->setIcon(QIcon::fromTheme("document-save_as", QIcon(":/icons/breeze/default/document-save-as.png")));
 
     action = actionCollection()->addAction("fits_header");
     actionCollection()->setDefaultShortcut(action, QKeySequence(Qt::CTRL+Qt::Key_H));
-    action->setIcon(QIcon::fromTheme("document-properties"));
+    action->setIcon(QIcon::fromTheme("document-properties", QIcon(":/icons/breeze/default/document-properties.png")));
     action->setText(i18n( "FITS Header"));
     connect(action, SIGNAL(triggered(bool) ), SLOT(headerFITS()));
 
     action = actionCollection()->addAction("fits_debayer");
     actionCollection()->setDefaultShortcut(action, QKeySequence(Qt::CTRL+Qt::Key_D));
-    action->setIcon(QIcon::fromTheme("view-preview"));
+    action->setIcon(QIcon::fromTheme("view-preview", QIcon(":/icons/breeze/default/view-preview.png")));
     action->setText(i18n( "Debayer..."));
     connect(action, SIGNAL(triggered(bool) ), SLOT(debayerFITS()));
 
@@ -153,24 +150,34 @@ FITSViewer::FITSViewer (QWidget *parent)
     action->setText(i18n("Auto stretch"));
     connect(action, SIGNAL(triggered(bool)), SLOT (stretchFITS()));
     actionCollection()->setDefaultShortcut(action, QKeySequence::SelectAll);
-    action->setIcon(QIcon::fromTheme("transform-move"));
-
-    KStandardAction::close(this,  SLOT(close()),  actionCollection());
-
-    KStandardAction::copy(this,   SLOT(copyFITS()),   actionCollection());
-
-    KStandardAction::zoomIn(this,     SLOT(ZoomIn()),      actionCollection());
-    KStandardAction::zoomOut(this,    SLOT(ZoomOut()),     actionCollection());
-    KStandardAction::actualSize(this, SLOT(ZoomDefault()), actionCollection());
+    action->setIcon(QIcon::fromTheme("transform-move", QIcon(":/icons/breeze/default/transform-move.png")));
+
+    action = KStandardAction::close(this,  SLOT(close()),  actionCollection());
+    action->setIcon(QIcon::fromTheme("window-close", QIcon(":/icons/breeze/default/window-close.png")));
+    
+    action = KStandardAction::copy(this,   SLOT(copyFITS()),   actionCollection());
+    action->setIcon(QIcon::fromTheme("edit-copy", QIcon(":/icons/breeze/default/edit-copy.png")));
+    
+    action=KStandardAction::zoomIn(this,     SLOT(ZoomIn()),      actionCollection());
+    action->setIcon(QIcon::fromTheme("zoom-in", QIcon(":/icons/breeze/default/zoom-in.png")));
+    
+    action=KStandardAction::zoomOut(this,    SLOT(ZoomOut()),     actionCollection());
+    action->setIcon(QIcon::fromTheme("zoom-out", QIcon(":/icons/breeze/default/zoom-out.png")));
+    
+    action=KStandardAction::actualSize(this, SLOT(ZoomDefault()), actionCollection());
+    action->setIcon(QIcon::fromTheme("zoom-fit-best", QIcon(":/icons/breeze/default/zoom-fit-best.svg")));
 
     QAction *kundo = KStandardAction::undo(undoGroup, SLOT(undo()), actionCollection());
+    kundo->setIcon(QIcon::fromTheme("edit-undo", QIcon(":/icons/breeze/default/edit-undo.png")));
+    
     QAction *kredo = KStandardAction::redo(undoGroup, SLOT(redo()), actionCollection());
+    kredo->setIcon(QIcon::fromTheme("edit-redo", QIcon(":/icons/breeze/default/edit-redo.png")));
 
     connect(undoGroup, SIGNAL(canUndoChanged(bool)), kundo, SLOT(setEnabled(bool)));
     connect(undoGroup, SIGNAL(canRedoChanged(bool)), kredo, SLOT(setEnabled(bool)));
 
     action = actionCollection()->addAction("image_stats");
-    action->setIcon(QIcon::fromTheme("view-statistics"));
+    action->setIcon(QIcon::fromTheme("view-statistics", QIcon(":/icons/breeze/default/view-statistics.png")));
     action->setText(i18n( "Statistics"));
     connect(action, SIGNAL(triggered(bool)), SLOT(statFITS()));
 
diff --git a/kstars/indi/drivermanager.cpp b/kstars/indi/drivermanager.cpp
index 4d55653..70ac9eb 100644
--- a/kstars/indi/drivermanager.cpp
+++ b/kstars/indi/drivermanager.cpp
@@ -60,13 +60,13 @@ DriverManagerUI::DriverManagerUI(QWidget *parent) : QFrame(parent)
 
     clientTreeWidget->setSortingEnabled(false);
 
-    runningPix = QIcon::fromTheme( "system-run" );
-    stopPix    = QIcon::fromTheme( "dialog-cancel" );
-    localMode  = QIcon::fromTheme( "computer" );
-    serverMode = QIcon::fromTheme( "network-server" );
+    runningPix = QIcon::fromTheme( "system-run" , QIcon(":/icons/breeze/default/system-run.png"));
+    stopPix    = QIcon::fromTheme( "dialog-cancel" , QIcon(":/icons/breeze/default/dialog-cancel.png"));
+    localMode  = QIcon::fromTheme( "computer" , QIcon(":/icons/breeze/default/computer.png"));
+    serverMode = QIcon::fromTheme( "network-server" , QIcon(":/icons/breeze/default/network-server.png"));
 
-    connected           = QIcon::fromTheme( "network-connect" );
-    disconnected        = QIcon::fromTheme( "network-disconnect" );
+    connected           = QIcon::fromTheme( "network-connect" , QIcon(":/icons/breeze/default/network-connect.png"));
+    disconnected        = QIcon::fromTheme( "network-disconnect" , QIcon(":/icons/breeze/default/network-disconnect.png"));
 
     connect(localTreeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(makePortEditable(QTreeWidgetItem*,int)));
 }
diff --git a/kstars/indi/guimanager.cpp b/kstars/indi/guimanager.cpp
index ca80b1f..cdee8c9 100644
--- a/kstars/indi/guimanager.cpp
+++ b/kstars/indi/guimanager.cpp
@@ -64,7 +64,7 @@ GUIManager::GUIManager(QWidget *parent) : QWidget(parent, Qt::Window)
 
     mainLayout->addWidget(mainTabWidget);
 
-    setWindowIcon(QIcon::fromTheme("kstars_indi"));
+    setWindowIcon(QIcon::fromTheme("kstars_indi", QIcon(":/icons/indi.png")));
 
     setWindowTitle(i18n("INDI Control Panel"));
     setAttribute(Qt::WA_ShowModal, false);
diff --git a/kstars/indi/indiproperty.cpp b/kstars/indi/indiproperty.cpp
index 03ce9b6..3fc5494 100644
--- a/kstars/indi/indiproperty.cpp
+++ b/kstars/indi/indiproperty.cpp
@@ -341,7 +341,7 @@ void INDI_P::buildBLOBGUI()
     PHBox->addItem(horSpacer);
 
     enableBLOBC = new QCheckBox();
-    enableBLOBC->setIcon(QIcon::fromTheme("modem"));
+    enableBLOBC->setIcon(QIcon::fromTheme("modem", QIcon(":/icons/breeze/default/modem.png")));
     enableBLOBC->setChecked(true);
     enableBLOBC->setToolTip(i18n("Enable binary data transfer from this property to KStars and vice-versa."));
 
diff --git a/kstars/indi/opsindi.cpp b/kstars/indi/opsindi.cpp
index 48272f8..f75b667 100644
--- a/kstars/indi/opsindi.cpp
+++ b/kstars/indi/opsindi.cpp
@@ -39,8 +39,8 @@ OpsINDI::OpsINDI()
     else
         kcfg_fitsDir->setText ( Options::fitsDir());
 
-    selectFITSDirB->setIcon( QIcon::fromTheme( "document-open-folder" ) );
-    selectDriversDirB->setIcon( QIcon::fromTheme( "document-open-folder" ) );
+    selectFITSDirB->setIcon( QIcon::fromTheme( "document-open-folder", QIcon(":/icons/breeze/default/document-open-folder.png")) );
+    selectDriversDirB->setIcon( QIcon::fromTheme( "document-open-folder", QIcon(":/icons/breeze/default/document-open-folder.png")) );
 
     connect(selectFITSDirB, SIGNAL(clicked()), this, SLOT(saveFITSDirectory()));
     connect(selectDriversDirB, SIGNAL(clicked()), this, SLOT(saveDriversDirectory()));    
diff --git a/kstars/indi/streamwg.cpp b/kstars/indi/streamwg.cpp
index 5cbc2f2..202219a 100644
--- a/kstars/indi/streamwg.cpp
+++ b/kstars/indi/streamwg.cpp
@@ -49,9 +49,9 @@ StreamWG::StreamWG(QWidget * parent) : QWidget(parent)
 
     streamFrame      = new VideoWG(videoFrame);
 
-    playPix    = QIcon::fromTheme( "media-playback-start" );
-    pausePix   = QIcon::fromTheme( "media-playback-pause" );
-    capturePix = QIcon::fromTheme( "media-record" );
+    playPix    = QIcon::fromTheme( "media-playback-start", QIcon(":/icons/breeze/default/media-playback-start.png"));
+    pausePix   = QIcon::fromTheme( "media-playback-pause", QIcon(":/icons/breeze/default/media-playback-pause.png"));
+    capturePix = QIcon::fromTheme( "media-record", QIcon(":/icons/breeze/default/media-record.png"));
 
     foreach (const QByteArray &format, QImageWriter::supportedImageFormats())
     imgFormatCombo->addItem(QString(format));
diff --git a/kstars/kstars.cpp b/kstars/kstars.cpp
index 8754873..6e8ce58 100644
--- a/kstars/kstars.cpp
+++ b/kstars/kstars.cpp
@@ -206,7 +206,7 @@ void KStars::clearCachedFindDialog() {
 void KStars::applyConfig( bool doApplyFocus ) {
     if ( Options::isTracking() ) {
         actionCollection()->action("track_object")->setText( i18n( "Stop &Tracking" ) );
-        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt") );
+        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt", QIcon(":/icons/breeze/default/document-encrypt.png")) );
     }
 
     actionCollection()->action("coordsys")->setText(
diff --git a/kstars/kstarsactions.cpp b/kstars/kstarsactions.cpp
index 5378f00..291b95f 100644
--- a/kstars/kstarsactions.cpp
+++ b/kstars/kstarsactions.cpp
@@ -653,20 +653,35 @@ void KStars::slotViewOps() {
     opcolors     = new OpsColors();
     opadvanced   = new OpsAdvanced();
 
-    dialog->addPage(opcatalog, i18n("Catalogs"), "kstars_catalog");
-    dialog->addPage(opsolsys, i18n("Solar System"), "kstars_solarsystem");
-    dialog->addPage(opssatellites, i18n("Satellites"), "kstars_satellites");
-    dialog->addPage(opssupernovae, i18n("Supernovae"), "kstars_supernovae");
-    dialog->addPage(opguides, i18n("Guides"), "kstars_guides");
-    dialog->addPage(opcolors, i18n("Colors"), "kstars_colors");
+    KPageWidgetItem *page;
+    
+    page = dialog->addPage(opcatalog, i18n("Catalogs"), "kstars_catalog");
+    page->setIcon(QIcon::fromTheme("kstars_catalog", QIcon(":/icons/catalog.png")));
+                         
+    page = dialog->addPage(opsolsys, i18n("Solar System"), "kstars_solarsystem");
+    page->setIcon(QIcon::fromTheme("kstars_solarsystem", QIcon(":/icons/solarsystem.png")));
+    
+    page = dialog->addPage(opssatellites, i18n("Satellites"), "kstars_satellites");
+    page->setIcon(QIcon::fromTheme("kstars_satellites", QIcon(":/icons/satellites.png")));
+    
+    page = dialog->addPage(opssupernovae, i18n("Supernovae"), "kstars_supernovae");
+    page->setIcon(QIcon::fromTheme("kstars_supernovae", QIcon(":/icons/supernovae.png")));
+    
+    page = dialog->addPage(opguides, i18n("Guides"), "kstars_guides");
+    page->setIcon(QIcon::fromTheme("kstars_guides", QIcon(":/icons/guides.png")));
+    
+    page = dialog->addPage(opcolors, i18n("Colors"), "kstars_colors");
+    page->setIcon(QIcon::fromTheme("kstars_colors", QIcon(":/icons/colors.png")));
 
     #ifdef HAVE_INDI
     opsindi = new OpsINDI();
-    dialog->addPage(opsindi, i18n("INDI"), "kstars_indi");
+    page= dialog->addPage(opsindi, i18n("INDI"), "kstars_indi");
+    page->setIcon(QIcon::fromTheme("kstars_indi", QIcon(":/icons/indi.png")));
 
     #ifdef HAVE_CFITSIO
     opsekos = new OpsEkos();
     KPageWidgetItem *ekosOption = dialog->addPage(opsekos, i18n("Ekos"), "kstars_ekos");
+    ekosOption->setIcon(QIcon::fromTheme("kstars_ekos", QIcon(":/icons/ekos.png")));
     if (m_EkosManager)
         m_EkosManager->setOptionsWidget(ekosOption);
     #endif
@@ -675,10 +690,12 @@ void KStars::slotViewOps() {
 
 #ifdef HAVE_XPLANET
     opsxplanet = new OpsXplanet( this );
-    dialog->addPage(opsxplanet, i18n("Xplanet"), "kstars_xplanet");
+    page = dialog->addPage(opsxplanet, i18n("Xplanet"), "kstars_xplanet");
+    page->setIcon(QIcon::fromTheme("kstars_xplanet", QIcon(":/icons/xplanet.png")));
 #endif
 
-    dialog->addPage(opadvanced, i18n("Advanced"), "kstars_advanced");
+    page=dialog->addPage(opadvanced, i18n("Advanced"), "kstars_advanced");
+    page->setIcon(QIcon::fromTheme("kstars_advanced", QIcon(":/icons/advanced.png")));
 
     dialog->show();
 }
@@ -1086,7 +1103,7 @@ void KStars::slotTrack() {
     if ( Options::isTracking() ) {
         Options::setIsTracking( false );
         actionCollection()->action("track_object")->setText( i18n( "Engage &Tracking" ) );
-        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-decrypt") );
+        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-decrypt", QIcon(":/icons/breeze/default/document-encrypt.png")) );
 
         KSPlanetBase* planet = dynamic_cast<KSPlanetBase*>( map()->focusObject() );
         if( planet && data()->temporaryTrail ) {
@@ -1104,7 +1121,7 @@ void KStars::slotTrack() {
         map()->setFocusPoint( map()->clickedPoint() );
         Options::setIsTracking( true );
         actionCollection()->action("track_object")->setText( i18n( "Stop &Tracking" ) );
-        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt") );
+        actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt", QIcon(":/icons/breeze/default/document-encrypt.png")) );
     }
 
     map()->forceUpdate();
diff --git a/kstars/kstarsinit.cpp b/kstars/kstarsinit.cpp
index 3357c4a..cdbcf0b 100644
--- a/kstars/kstarsinit.cpp
+++ b/kstars/kstarsinit.cpp
@@ -133,49 +133,63 @@ namespace {
 
 void KStars::initActions() {
     //KIconLoader::global()->addAppDir( "kstars" );
+    
+    //This will check if there is an icon for a very common action to see if a theme is loaded.
+    //If one is not detected, it tries to set the theme to the one specified here.
+    static const char * GENERIC_ICON_TO_CHECK = "document-open";
+    static const char * ICON_THEME = "breeze";
+    if (!QIcon::hasThemeIcon(GENERIC_ICON_TO_CHECK)) {
+        QIcon::setThemeName(ICON_THEME);
+    }
+    
+    
     QAction *ka;
 
     // ==== File menu ================
     ka = KNS3::standardAction(i18n("Download New Data..."), this, SLOT(slotDownload()), actionCollection(), "get_data")
         << QKeySequence( Qt::CTRL+Qt::Key_N );
+    ka ->setIcon(QIcon::fromTheme("favorites" , QIcon(":/icons/breeze/default/favorites.png")));
     ka->setWhatsThis(i18n("Downloads new data"));
     ka->setToolTip(ka->whatsThis());
     ka->setStatusTip(ka->whatsThis());
 
+    
 #ifdef HAVE_CFITSIO
     actionCollection()->addAction("open_file", this, SLOT(slotOpenFITS()) )
         << i18n("Open FITS...")
-        << QIcon::fromTheme("document-open")
+        << QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_O );
 #endif
     actionCollection()->addAction("export_image", this, SLOT( slotExportImage() ) )
         << i18n("&Save Sky Image...")
-        << QIcon::fromTheme("document-export-image")
+        << QIcon::fromTheme("document-export-image", QIcon(":/icons/breeze/default/document-export.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_I );
     actionCollection()->addAction("run_script", this, SLOT( slotRunScript() ))
         << i18n("&Run Script...")
-        << QIcon::fromTheme("system-run" )
+        << QIcon::fromTheme("system-run", QIcon(":/icons/breeze/default/system-run.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_R );
     actionCollection()->addAction("printing_wizard", this, SLOT(slotPrintingWizard() ) )
             << i18nc("start Printing Wizard", "Printing &Wizard");
-    actionCollection()->addAction( KStandardAction::Print, "print", this, SLOT( slotPrint() ) );
+    ka = actionCollection()->addAction( KStandardAction::Print, "print", this, SLOT( slotPrint() ) );
+    ka->setIcon( QIcon::fromTheme("document-print", QIcon(":/icons/breeze/default/document-print.png")));
     //actionCollection()->addAction( KStandardAction::Quit,  "quit",  this, SLOT(close) );
-    actionCollection()->addAction( KStandardAction::Quit,  "quit",  qApp, SLOT(closeAllWindows()));
+    ka = actionCollection()->addAction( KStandardAction::Quit,  "quit",  qApp, SLOT(closeAllWindows()));
+    ka->setIcon( QIcon::fromTheme("application-exit", QIcon(":/icons/breeze/default/application-exit.png")));
 
     // ==== Time Menu ================
     actionCollection()->addAction("time_to_now", this, SLOT( slotSetTimeToNow() ))
         << i18n("Set Time to &Now")
         << QKeySequence( Qt::CTRL+Qt::Key_E )
-        << QIcon::fromTheme("clock");
+        << QIcon::fromTheme("clock", QIcon(":/icons/breeze/default/clock.png"));
 
     actionCollection()->addAction("time_dialog", this, SLOT( slotSetTime() ) )
         << i18nc("set Clock to New Time", "&Set Time..." )
         << QKeySequence( Qt::CTRL+Qt::Key_S )
-        << QIcon::fromTheme("view-history");
+        << QIcon::fromTheme("view-history", QIcon(":/icons/breeze/default/view-history.png"));
 
     ka = actionCollection()->add<KToggleAction>("clock_startstop")
         << i18n("Stop &Clock" )
-        << QIcon::fromTheme("media-playback-pause" );
+        << QIcon::fromTheme("media-playback-pause" , QIcon(":/icons/breeze/default/media-playback-pause.png"));
     if ( ! StartClockRunning )
         ka->toggle();
     QObject::connect( ka, SIGNAL( triggered() ), this, SLOT( slotToggleTimer() ) );
@@ -184,11 +198,11 @@ void KStars::initActions() {
     QObject::connect(data()->clock(), SIGNAL(clockToggled(bool)), this, SLOT(updateTime()) );
     actionCollection()->addAction("time_step_forward", this, SLOT( slotStepForward() ) )
         << i18n("Advance one step forward in time")
-        << QIcon::fromTheme("media-skip-forward" )
+        << QIcon::fromTheme("media-skip-forward" , QIcon(":/icons/breeze/default/media-skip-forward.png"))
         << QKeySequence( Qt::Key_Greater, Qt::Key_Period );
     actionCollection()->addAction("time_step_backward", this, SLOT( slotStepBackward() ) )
         << i18n("Advance one step backward in time")
-        << QIcon::fromTheme("media-skip-backward" )
+        << QIcon::fromTheme("media-skip-backward" , QIcon(":/icons/breeze/default/media-skip-backward.png"))
         << QKeySequence( Qt::Key_Less, Qt::Key_Comma );
 
     // ==== Pointing Menu ================
@@ -210,29 +224,36 @@ void KStars::initActions() {
 
     actionCollection()->addAction("find_object", this, SLOT( slotFind() ) )
         << i18n("&Find Object...")
-        << QIcon::fromTheme("edit-find")
+        << QIcon::fromTheme("edit-find", QIcon(":/icons/breeze/default/edit-find.png") )
         << QKeySequence( Qt::CTRL+Qt::Key_F );
     actionCollection()->addAction("track_object", this, SLOT( slotTrack() ) )
         << i18n("Engage &Tracking")
-        << QIcon::fromTheme("object-locked" )
+        << QIcon::fromTheme("object-locked", QIcon(":/icons/breeze/default/object-locked.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_T  );
     actionCollection()->addAction("manual_focus", this, SLOT( slotManualFocus() ) )
         << i18n("Set Coordinates &Manually..." )
         << QKeySequence( Qt::CTRL+Qt::Key_M );
 
+    QAction *action;
+    
     // ==== View Menu ================
-    actionCollection()->addAction( KStandardAction::ZoomIn,  "zoom_in",  map(), SLOT( slotZoomIn() ) );
-    actionCollection()->addAction( KStandardAction::ZoomOut, "zoom_out", map(), SLOT( slotZoomOut() ) );
+    action = actionCollection()->addAction( KStandardAction::ZoomIn,  "zoom_in",  map(), SLOT( slotZoomIn() ) );
+    action->setIcon(QIcon::fromTheme("zoom-in", QIcon(":/icons/breeze/default/zoom-in.png")));
+
+    action = actionCollection()->addAction( KStandardAction::ZoomOut, "zoom_out", map(), SLOT( slotZoomOut() ) );
+    action->setIcon(QIcon::fromTheme("zoom-out", QIcon(":/icons/breeze/default/zoom-out.png")));
+    
     actionCollection()->addAction("zoom_default", map(), SLOT( slotZoomDefault() ) )
         << i18n("&Default Zoom")
-        << QIcon::fromTheme("zoom-fit-best" )
+        << QIcon::fromTheme("zoom-fit-best", QIcon(":/icons/breeze/default/zoom-fit-best.svg"))
         << QKeySequence( Qt::CTRL+Qt::Key_Z );
     actionCollection()->addAction("zoom_set", this, SLOT( slotSetZoom() ) )
         << i18n("&Zoom to Angular Size..." )
-        << QIcon::fromTheme("zoom-original" )
+        << QIcon::fromTheme("zoom-original", QIcon(":/icons/breeze/default/zoom-original.png"))
         << QKeySequence( Qt::CTRL+Qt::SHIFT+Qt::Key_Z );
 
-    actionCollection()->addAction( KStandardAction::FullScreen, this, SLOT( slotFullScreen() ) );
+    action = actionCollection()->addAction( KStandardAction::FullScreen, this, SLOT( slotFullScreen() ) );
+    action->setIcon( QIcon::fromTheme("view-fullscreen", QIcon(":/icons/breeze/default/view-fullscreen.png")));
 
     actionCollection()->addAction("coordsys", this, SLOT( slotCoordSys() ) )
         << (Options::useAltAz() ? i18n("Switch to star globe view (Equatorial &Coordinates)"): i18n("Switch to horizonal view (Horizontal &Coordinates)"))
@@ -340,18 +361,21 @@ void KStars::initActions() {
     fovActionMenu = actionCollection()->add<KActionMenu>("fovsymbols" );
     fovActionMenu->setText( i18n("&FOV Symbols" ) );
     fovActionMenu->setDelayed(false);
-    fovActionMenu->setIcon(QIcon::fromTheme("crosshairs"));
+    fovActionMenu->setIcon(QIcon::fromTheme("crosshairs", QIcon(":/icons/breeze/default/crosshairs.png")));
     FOVManager::readFOVs();
     repopulateFOV();
 
     actionCollection()->addAction("geolocation", this, SLOT( slotGeoLocator() ) )
         << i18nc("Location on Earth", "&Geographic..." )
-        << QIcon::fromTheme("applications-internet" )
+        << QIcon::fromTheme("kstars_planets" , QIcon(":/icons/breeze/default/applications-internet.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_G );
-    actionCollection()->addAction( KStandardAction::Preferences, "configure", this, SLOT( slotViewOps() ) );
+    ka = actionCollection()->addAction( KStandardAction::Preferences, "configure", this, SLOT( slotViewOps() ) );
+    //I am not sure what icon preferences is supposed to be.
+    //ka->setIcon( QIcon::fromTheme("", QIcon(":/icons/breeze/default/.png")));
+    
     actionCollection()->addAction("startwizard", this, SLOT( slotWizard() ) )
         << i18n("Startup Wizard..." )
-        << QIcon::fromTheme("tools-wizard" );
+        << QIcon::fromTheme("tools-wizard", QIcon(":/icons/breeze/default/tools-wizard.png"));
 
     // Manual data entry
     actionCollection()->addAction( "manual_add_dso", this, SLOT( slotAddDeepSkyObject() ) )
@@ -370,7 +394,7 @@ void KStars::initActions() {
     //Tools Menu:
     actionCollection()->addAction("astrocalculator", this, SLOT( slotCalculator() ) )
         << i18n("Calculator")
-        << QIcon::fromTheme("accessories-calculator" )
+        << QIcon::fromTheme("accessories-calculator", QIcon(":/icons/breeze/default/accessories-calculator.png"))
         << QKeySequence( Qt::CTRL+Qt::Key_C );
 
    /* FIXME Enable once port to KF5 is complete for moonphasetool
@@ -446,11 +470,11 @@ void KStars::initActions() {
 #ifndef Q_OS_WIN
         actionCollection()->addAction("telescope_wizard", this, SLOT( slotTelescopeWizard() ) )
             << i18n("Telescope Wizard...")
-            << QIcon::fromTheme("tools-wizard" );
+            << QIcon::fromTheme("tools-wizard", QIcon(":/icons/breeze/default/tools-wizard.png"));
 #endif
         actionCollection()->addAction("device_manager", this, SLOT( slotINDIDriver() ) )
             << i18n("Device Manager...")
-            << QIcon::fromTheme("network-server" )
+            << QIcon::fromTheme("network-server", QIcon(":/icons/breeze/default/network-server.png"))
             << QKeySequence(Qt::CTRL+Qt::Key_D);
         ka = actionCollection()->addAction("indi_cpl", this, SLOT( slotINDIPanel() ) )
             << i18n("INDI Control Panel...");
@@ -462,9 +486,9 @@ void KStars::initActions() {
 #endif
 
     //Help Menu:
-    actionCollection()->addAction( KStandardAction::TipofDay, "help_tipofday", this, SLOT( slotTipOfDay() ) )
-	->setWhatsThis(i18n("Displays the Tip of the Day"));
-
+    ka = actionCollection()->addAction( KStandardAction::TipofDay, "help_tipofday", this, SLOT( slotTipOfDay() ) );
+	ka->setWhatsThis(i18n("Displays the Tip of the Day"));
+    ka->setIcon( QIcon::fromTheme("help-hint", QIcon(":/icons/breeze/default/help-hint.png")));
     //	KStandardAction::help(this, SLOT( appHelpActivated() ), actionCollection(), "help_contents" );
 
     //Add timestep widget for toolbar
diff --git a/kstars/oal/observeradd.cpp b/kstars/oal/observeradd.cpp
index 33bfe20..77ca08b 100644
--- a/kstars/oal/observeradd.cpp
+++ b/kstars/oal/observeradd.cpp
@@ -41,8 +41,8 @@ ObserverAdd::ObserverAdd() {
     mainLayout->addWidget(buttonBox);
     connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
 
-    ui.AddObserverB->setIcon(QIcon::fromTheme("list-add"));
-    ui.RemoveObserverB->setIcon(QIcon::fromTheme("list-remove"));
+    ui.AddObserverB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
+    ui.RemoveObserverB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
 
     nextObserver = 0;
 
diff --git a/kstars/skymap.cpp b/kstars/skymap.cpp
index dde5fb0..c3692e0 100644
--- a/kstars/skymap.cpp
+++ b/kstars/skymap.cpp
@@ -377,7 +377,7 @@ void SkyMap::slotCenter() {
     setFocusObject( ClickedObject );
     Options::setIsTracking( true );
     if ( kstars ) {
-        kstars->actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt") );
+        kstars->actionCollection()->action("track_object")->setIcon( QIcon::fromTheme("document-encrypt", QIcon(":/icons/breeze/default/document-encrypt.png")) );
         kstars->actionCollection()->action("track_object")->setText( i18n( "Stop &Tracking" ) );
     }
 
diff --git a/kstars/tools/altvstime.cpp b/kstars/tools/altvstime.cpp
index 76abb75..5a2ffda 100644
--- a/kstars/tools/altvstime.cpp
+++ b/kstars/tools/altvstime.cpp
@@ -164,7 +164,7 @@ AltVsTime::AltVsTime( QWidget* parent)  :
     topLayout->addWidget(buttonBox);
     connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
 
-    QPushButton *printB = new QPushButton(QIcon::fromTheme("document-print"), i18n("&Print..."));
+    QPushButton *printB = new QPushButton(QIcon::fromTheme("document-print", QIcon(":/icons/breeze/default/document-print.png")), i18n("&Print..."));
     printB->setToolTip(i18n("Print the Altitude vs. time plot"));
     buttonBox->addButton(printB, QDialogButtonBox::ActionRole);
     connect(printB, SIGNAL(clicked()), this, SLOT(slotPrint()));
diff --git a/kstars/tools/conjunctions.cpp b/kstars/tools/conjunctions.cpp
index 85efa94..92f6006 100644
--- a/kstars/tools/conjunctions.cpp
+++ b/kstars/tools/conjunctions.cpp
@@ -120,7 +120,7 @@ ConjunctionsTool::ConjunctionsTool(QWidget *parentSplit)
     OutputList->horizontalHeader()->resizeSection(4, 120); //is it bad way to fix default size of columns ?
 
     //FilterEdit->showClearButton = true;
-    ClearFilterButton->setIcon( QIcon::fromTheme( "edit-clear" ) );
+    ClearFilterButton->setIcon( QIcon::fromTheme( "edit-clear" , QIcon(":/icons/breeze/default/edit-clear.png") ) );
 
     m_index = 0;
 
diff --git a/kstars/tools/horizonmanager.cpp b/kstars/tools/horizonmanager.cpp
index c7af4ad..bd90c3b 100644
--- a/kstars/tools/horizonmanager.cpp
+++ b/kstars/tools/horizonmanager.cpp
@@ -41,17 +41,17 @@ HorizonManager::HorizonManager( QWidget *w )
 
     ui->setStyleSheet("QPushButton:checked { background-color: red; }");
 
-    ui->addRegionB->setIcon(QIcon::fromTheme("list-add"));
-    ui->addPointB->setIcon(QIcon::fromTheme("list-add"));
-    ui->removeRegionB->setIcon(QIcon::fromTheme("list-remove"));
-    ui->removePointB->setIcon(QIcon::fromTheme("list-remove"));
-    ui->clearPointsB->setIcon(QIcon::fromTheme("edit-clear"));
-    ui->saveB->setIcon(QIcon::fromTheme("document-save"));
-    ui->selectPointsB->setIcon(QIcon::fromTheme("snap-orthogonal"));
+    ui->addRegionB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
+    ui->addPointB->setIcon(QIcon::fromTheme("list-add", QIcon(":/icons/breeze/default/list-add.png")));
+    ui->removeRegionB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
+    ui->removePointB->setIcon(QIcon::fromTheme("list-remove", QIcon(":/icons/breeze/default/list-remove.png")));
+    ui->clearPointsB->setIcon(QIcon::fromTheme("edit-clear", QIcon(":/icons/breeze/default/edit-clear.png")));
+    ui->saveB->setIcon(QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png")));
+    ui->selectPointsB->setIcon(QIcon::fromTheme("snap-orthogonal", QIcon(":/icons/breeze/default/snap-orthogonal.png")));
 
-    ui->tipLabel->setPixmap((QIcon::fromTheme("help-hint").pixmap(64,64)));
+    ui->tipLabel->setPixmap((QIcon::fromTheme("help-hint", QIcon(":/icons/breeze/default/help-hint.png")).pixmap(64,64)));
 
-    ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop").pixmap(32,32));
+    ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop", QIcon(":/icons/breeze/default/process-stop.png")).pixmap(32,32));
     ui->polygonValidatoin->setToolTip(i18n("Region is invalid. The polygon must be closed and located at the horizon"));
     ui->polygonValidatoin->hide();
 
@@ -151,13 +151,13 @@ void HorizonManager::showRegion( int regionID )
        {
            if (validatePolygon(regionID))
            {
-               ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok").pixmap(32,32));
+               ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok", QIcon(":/icons/breeze/default/dialog-ok.png")).pixmap(32,32));
                ui->polygonValidatoin->setEnabled(true);
                ui->polygonValidatoin->setToolTip(i18n("Region is valid"));
            }
            else
            {
-               ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop").pixmap(32,32));
+               ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop", QIcon(":/icons/breeze/default/process-stop.png")).pixmap(32,32));
                ui->polygonValidatoin->setEnabled(false);
                ui->polygonValidatoin->setToolTip(i18n("Region is invalid. The polygon must be closed"));
            }
@@ -406,13 +406,13 @@ void HorizonManager::processSkyPoint(QStandardItem *item, int row)
     {
         if (validatePolygon(ui->regionsList->currentIndex().row()))
         {
-            ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok").pixmap(32,32));
+            ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok", QIcon(":/icons/breeze/default/dialog-ok.png")).pixmap(32,32));
             ui->polygonValidatoin->setEnabled(true);
             ui->polygonValidatoin->setToolTip(i18n("Region is valid"));
         }
         else
         {
-            ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop").pixmap(32,32));
+            ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop", QIcon(":/icons/breeze/default/process-stop.png")).pixmap(32,32));
             ui->polygonValidatoin->setEnabled(false);
             ui->polygonValidatoin->setToolTip(i18n("Region is invalid. The polygon must be closed and located at the horizon"));
         }
@@ -474,13 +474,13 @@ void HorizonManager::slotRemovePoint()
         {
             if (validatePolygon(ui->regionsList->currentIndex().row()))
             {
-                ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok").pixmap(32,32));
+                ui->polygonValidatoin->setPixmap(QIcon::fromTheme("dialog-ok", QIcon(":/icons/breeze/default/dialog-ok.png")).pixmap(32,32));
                 ui->polygonValidatoin->setEnabled(true);
                 ui->polygonValidatoin->setToolTip(i18n("Region is valid"));
             }
             else
             {
-                ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop").pixmap(32,32));
+                ui->polygonValidatoin->setPixmap(QIcon::fromTheme("process-stop", QIcon(":/icons/breeze/default/process-stop.png")).pixmap(32,32));
                 ui->polygonValidatoin->setEnabled(false);
                 ui->polygonValidatoin->setToolTip(i18n("Region is invalid. The polygon must be closed"));
             }
diff --git a/kstars/tools/observinglist.cpp b/kstars/tools/observinglist.cpp
index 9d2b18d..09af72e 100644
--- a/kstars/tools/observinglist.cpp
+++ b/kstars/tools/observinglist.cpp
@@ -214,11 +214,11 @@ ObservingList::ObservingList()
     connect( ui->OALExport, SIGNAL( clicked() ),
              this, SLOT( slotOALExport() ) );
     //Add icons to Push Buttons
-    ui->OpenButton->setIcon( QIcon::fromTheme("document-open") );
-    ui->SaveButton->setIcon( QIcon::fromTheme("document-save") );
-    ui->SaveAsButton->setIcon( QIcon::fromTheme("document-save-as") );
-    ui->WizardButton->setIcon( QIcon::fromTheme("tools-wizard") );
-    ui->MiniButton->setIcon( QIcon::fromTheme("view-restore") );
+    ui->OpenButton->setIcon( QIcon::fromTheme("document-open", QIcon(":/icons/breeze/default/document-open.png")) );
+    ui->SaveButton->setIcon( QIcon::fromTheme("document-save", QIcon(":/icons/breeze/default/document-save.png")) );
+    ui->SaveAsButton->setIcon( QIcon::fromTheme("document-save-as", QIcon(":/icons/breeze/default/document-save-as.png")) );
+    ui->WizardButton->setIcon( QIcon::fromTheme("tools-wizard", QIcon(":/icons/breeze/default/tools-wizard.png")) );
+    ui->MiniButton->setIcon( QIcon::fromTheme("view-restore", QIcon(":/icons/breeze/default/view-restore.png")) );
     noSelection = true;
     showScope = false;
     ui->NotesLabel->setEnabled( false );
@@ -1006,15 +1006,15 @@ double ObservingList::findAltitude( SkyPoint *p, double hour ) {
 
 void ObservingList::slotToggleSize() {
     if ( isLarge() ) {
-        ui->MiniButton->setIcon( QIcon::fromTheme("view-fullscreen") );
+        ui->MiniButton->setIcon( QIcon::fromTheme("view-fullscreen", QIcon(":/icons/breeze/default/view-fullscreen.png")) );
         //Abbreviate text on each button
         ui->FindButton->setText( "" );
-        ui->FindButton->setIcon( QIcon::fromTheme("edit-find") );
+        ui->FindButton->setIcon( QIcon::fromTheme("edit-find", QIcon(":/icons/breeze/default/edit-find.png")) );
         ui->WUTButton->setText( i18nc( "Abbreviation of What's Up Tonight", "WUT" ) );
         ui->saveImages->setText( "" );
         ui->DeleteAllImages->setText( "" );
-        ui->saveImages->setIcon( QIcon::fromTheme( "download" ) );
-        ui->DeleteAllImages->setIcon( QIcon::fromTheme( "edit-delete" ) );
+        ui->saveImages->setIcon( QIcon::fromTheme( "download", QIcon(":/icons/breeze/default/download.png")) );
+        ui->DeleteAllImages->setIcon( QIcon::fromTheme( "edit-delete", QIcon(":/icons/breeze/default/edit-delete.png")) );
         ui->refLabel->setText( i18nc( "Abbreviation for Reference Images:", "RefImg:" ) );
         ui->addLabel->setText( i18nc( "Add objects to a list", "Add:" ) );
         //Hide columns 1-5
@@ -1052,7 +1052,7 @@ void ObservingList::slotToggleSize() {
         this->resize( 400, this->height() );
         update();
     } else {
-        ui->MiniButton->setIcon( QIcon::fromTheme( "view-restore" ) );
+        ui->MiniButton->setIcon( QIcon::fromTheme( "view-restore", QIcon(":/icons/breeze/default/view-restore.png")) );
         //Show columns 1-5
         ui->WishListView->showColumn(1);
         ui->WishListView->showColumn(2);
diff --git a/kstars/tools/planetviewer.cpp b/kstars/tools/planetviewer.cpp
index 7155462..05e8e99 100644
--- a/kstars/tools/planetviewer.cpp
+++ b/kstars/tools/planetviewer.cpp
@@ -70,9 +70,9 @@ PlanetViewer::PlanetViewer(QWidget *parent)
     pw->TimeStep->setDaysOnly( true );
     pw->TimeStep->tsbox()->setValue( 1 ); //start with 1-day timestep
 
-    pw->RunButton->setIcon( QIcon::fromTheme("arrow-right") );
-    pw->ZoomInButton->setIcon( QIcon::fromTheme("zoom-in") );
-    pw->ZoomOutButton->setIcon( QIcon::fromTheme("zoom-out") );
+    pw->RunButton->setIcon( QIcon::fromTheme("arrow-right", QIcon(":/icons/breeze/default/arrow-right.png")) );
+    pw->ZoomInButton->setIcon( QIcon::fromTheme("zoom-in", QIcon(":/icons/breeze/default/zoom-in.png")) );
+    pw->ZoomOutButton->setIcon( QIcon::fromTheme("zoom-out", QIcon(":/icons/breeze/default/zoom-out.png")) );
     pw->DateBox->setDate( data->lt().date() );
 
     resize( 500, 500 );
@@ -145,11 +145,11 @@ void PlanetViewer::slotRunClock() {
     isClockRunning = !isClockRunning;
 
     if ( isClockRunning ) {
-        pw->RunButton->setIcon( QIcon::fromTheme("media-playback-pause") );
+        pw->RunButton->setIcon( QIcon::fromTheme("media-playback-pause", QIcon(":/icons/breeze/default/media-playback-pause.png")) );
         tmr.start( 100 );
         //		pw->DateBox->setEnabled( false );
     } else {
-        pw->RunButton->setIcon( QIcon::fromTheme("arrow-right") );
+        pw->RunButton->setIcon( QIcon::fromTheme("arrow-right", QIcon(":/icons/breeze/default/arrow-right.png")) );
         tmr.stop();
         //		pw->DateBox->setEnabled( true );
     }
@@ -165,7 +165,7 @@ void PlanetViewer::slotCloseWindow() {
     if ( isClockRunning ) {
         tmr.stop();
         isClockRunning = false;
-        pw->RunButton->setIcon( QIcon::fromTheme("arrow-right") );
+        pw->RunButton->setIcon( QIcon::fromTheme("arrow-right", QIcon(":/icons/breeze/default/arrow-right.png")) );
     }
 }
 
diff --git a/kstars/tools/scriptbuilder.cpp b/kstars/tools/scriptbuilder.cpp
index 29aaa3d..d186ac0 100644
--- a/kstars/tools/scriptbuilder.cpp
+++ b/kstars/tools/scriptbuilder.cpp
@@ -217,16 +217,16 @@ ScriptBuilder::ScriptBuilder( QWidget *parent )
     sb->FunctionTree->setSortingEnabled( false );
 
     //Add icons to Push Buttons
-    sb->NewButton->setIcon( QIcon::fromTheme( "document-new" ) );
-    sb->OpenButton->setIcon( QIcon::fromTheme( "document-open" ) );
-    sb->SaveButton->setIcon( QIcon::fromTheme( "document-save" ) );
-    sb->SaveAsButton->setIcon( QIcon::fromTheme( "document-save-as" ) );
-    sb->RunButton->setIcon( QIcon::fromTheme( "system-run" ) );
-    sb->CopyButton->setIcon( QIcon::fromTheme( "view-refresh" ) );
-    sb->AddButton->setIcon( QIcon::fromTheme( "go-previous" ) );
-    sb->RemoveButton->setIcon( QIcon::fromTheme( "go-next" ) );
-    sb->UpButton->setIcon( QIcon::fromTheme( "go-up" ) );
-    sb->DownButton->setIcon( QIcon::fromTheme( "go-down" ) );
+    sb->NewButton->setIcon( QIcon::fromTheme( "document-new", QIcon(":/icons/breeze/default/document-new.png")) );
+    sb->OpenButton->setIcon( QIcon::fromTheme( "document-open" , QIcon(":/icons/breeze/default/document-open.png")) );
+    sb->SaveButton->setIcon( QIcon::fromTheme( "document-save" , QIcon(":/icons/breeze/default/document-save.png")) );
+    sb->SaveAsButton->setIcon( QIcon::fromTheme( "document-save-as" , QIcon(":/icons/breeze/default/document-save-as.png")) );
+    sb->RunButton->setIcon( QIcon::fromTheme( "system-run" , QIcon(":/icons/breeze/default/system-run.png")) );
+    sb->CopyButton->setIcon( QIcon::fromTheme( "view-refresh" , QIcon(":/icons/breeze/default/view-refresh.png")) );
+    sb->AddButton->setIcon( QIcon::fromTheme( "go-previous" , QIcon(":/icons/breeze/default/go-previous.png")) );
+    sb->RemoveButton->setIcon( QIcon::fromTheme( "go-next" , QIcon(":/icons/breeze/default/go-next.png")) );
+    sb->UpButton->setIcon( QIcon::fromTheme( "go-up" , QIcon(":/icons/breeze/default/go-up.png")) );
+    sb->DownButton->setIcon( QIcon::fromTheme( "go-down" , QIcon(":/icons/breeze/default/go-down.png")) );
 
     //Prepare the widget stack
     argBlank = new QWidget();
diff --git a/kstars/tools/skycalendar.cpp b/kstars/tools/skycalendar.cpp
index 9936af0..0c6f35a 100644
--- a/kstars/tools/skycalendar.cpp
+++ b/kstars/tools/skycalendar.cpp
@@ -59,7 +59,7 @@ SkyCalendar::SkyCalendar( QWidget *parent )
     mainLayout->addWidget(buttonBox);
     connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
 
-    QPushButton *printB = new QPushButton(QIcon::fromTheme("document-print"), i18n("&Print..."));
+    QPushButton *printB = new QPushButton(QIcon::fromTheme("document-print", QIcon(":/icons/breeze/default/document-print.png")), i18n("&Print..."));
     printB->setToolTip(i18n("Print the Sky Calendar"));
     buttonBox->addButton(printB, QDialogButtonBox::ActionRole);
     connect(printB, SIGNAL(clicked()), this, SLOT(slotPrint()));



More information about the Kstars-devel mailing list