diff --git a/src/musredit_qt5/PTextEdit.cpp b/src/musredit_qt5/PTextEdit.cpp
index c0672ea0..a46502cd 100644
--- a/src/musredit_qt5/PTextEdit.cpp
+++ b/src/musredit_qt5/PTextEdit.cpp
@@ -86,6 +86,12 @@ using namespace std;
PTextEdit::PTextEdit( QWidget *parent, Qt::WindowFlags f )
: QMainWindow( parent, f )
{
+ QString str = QIcon::themeName();
+ if (str.contains("dark", Qt::CaseInsensitive))
+ fDarkTheme = true;
+ else
+ fDarkTheme = false;
+
// reads and manages the conents of the xml-startup (musredit_startup.xml) file
fAdmin = new PAdmin();
@@ -119,7 +125,12 @@ PTextEdit::PTextEdit( QWidget *parent, Qt::WindowFlags f )
textSize(QString("%1").arg(fAdmin->getFontSize()));
fFontChanging = false;
- setWindowIcon( QIcon( QPixmap( ":/icons/musrfit-plain.svg" ) ) );
+ QString iconName("");
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrfit-dark.svg");
+ else
+ iconName = QString(":/icons/musrfit-plain.svg");
+ setWindowIcon( QIcon( QPixmap(iconName) ) );
// if arguments are give, try to load those files, otherwise create an empty new file
if ( qApp->arguments().size() != 1 ) {
@@ -174,14 +185,23 @@ void PTextEdit::setupFileActions()
QAction *a;
- a = new QAction( QIcon( QPixmap(":/icons/document-new-plain.svg") ), tr( "&New..." ), this );
+ QString iconName("");
+ if (fDarkTheme)
+ iconName = QString(":/icons/document-new-dark.svg");
+ else
+ iconName = QString(":/icons/document-new-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&New..." ), this );
a->setShortcut( tr("Ctrl+N") );
a->setStatusTip( tr("Create a new msr-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( fileNew() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap(":/icons/document-open-plain.svg" ) ), tr( "&Open..." ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/document-open-dark.svg");
+ else
+ iconName = QString(":/icons/document-open-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Open..." ), this );
a->setShortcut( tr("Ctrl+O") );
a->setStatusTip( tr("Opens a msr-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( fileOpen() ) );
@@ -197,7 +217,11 @@ void PTextEdit::setupFileActions()
}
fillRecentFiles();
- a = new QAction( QIcon( QPixmap(":/icons/view-refresh-plain.svg") ), tr( "Reload..." ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/view-refresh-dark.svg");
+ else
+ iconName = QString(":/icons/view-refresh-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Reload..." ), this );
a->setShortcut( tr("F5") );
a->setStatusTip( tr("Reload msr-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( fileReload() ) );
@@ -210,7 +234,11 @@ void PTextEdit::setupFileActions()
menu->addSeparator();
- a = new QAction( QIcon( QPixmap(":/icons/document-save-plain.svg") ), tr( "&Save..." ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/document-save-dark.svg");
+ else
+ iconName = QString(":/icons/document-save-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Save..." ), this );
a->setShortcut( tr("Ctrl+S") );
a->setStatusTip( tr("Save msr-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( fileSave() ) );
@@ -228,7 +256,11 @@ void PTextEdit::setupFileActions()
menu->addSeparator();
- a = new QAction( QIcon( QPixmap(":/icons/document-print-plain.svg") ), tr( "&Print..." ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/document-print-dark.svg");
+ else
+ iconName = QString(":/icons/document-print-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Print..." ), this );
a->setShortcut( tr("Ctrl+P") );
a->setStatusTip( tr("Print msr-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( filePrint() ) );
@@ -276,15 +308,24 @@ void PTextEdit::setupEditActions()
menuBar()->addMenu( menu );
QAction *a;
+ QString iconName("");
- a = new QAction( QIcon( QPixmap( ":/icons/edit-undo-plain.svg" ) ), tr( "&Undo" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-undo-dark.svg");
+ else
+ iconName = QString(":/icons/edit-undo-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Undo" ), this );
a->setShortcut( tr("Ctrl+Z") );
a->setStatusTip( tr("Edit Undo") );
connect( a, SIGNAL( triggered() ), this, SLOT( editUndo() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/edit-redo-plain.svg" ) ), tr( "&Redo" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-redo-dark.svg");
+ else
+ iconName = QString(":/icons/edit-redo-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Redo" ), this );
a->setShortcut( tr("Ctrl+Y") );
a->setStatusTip( tr("Edit Redo") );
connect( a, SIGNAL( triggered() ), this, SLOT( editRedo() ) );
@@ -301,21 +342,33 @@ void PTextEdit::setupEditActions()
menu->addSeparator();
tb->addSeparator();
- a = new QAction( QIcon( QPixmap( ":/icons/edit-copy-plain.svg" ) ), tr( "&Copy" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-copy-dark.svg");
+ else
+ iconName = QString(":/icons/edit-copy-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Copy" ), this );
a->setShortcut( tr("Ctrl+C") );
a->setStatusTip( tr("Edit Copy") );
connect( a, SIGNAL( triggered() ), this, SLOT( editCopy() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/edit-cut-plain.svg" ) ), tr( "Cu&t" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-cut-dark.svg");
+ else
+ iconName = QString(":/icons/edit-cut-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Cu&t" ), this );
a->setShortcut( tr("Ctrl+X") );
a->setStatusTip( tr("Edit Cut") );
connect( a, SIGNAL( triggered() ), this, SLOT( editCut() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/edit-paste-plain.svg" ) ), tr( "&Paste" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-paste-dark.svg");
+ else
+ iconName = QString(":/icons/edit-paste-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Paste" ), this );
a->setShortcut( tr("Ctrl+V") );
a->setStatusTip( tr("Edit Paste") );
connect( a, SIGNAL( triggered() ), this, SLOT( editPaste() ) );
@@ -325,21 +378,33 @@ void PTextEdit::setupEditActions()
menu->addSeparator();
tb->addSeparator();
- a = new QAction( QIcon( QPixmap( ":/icons/edit-find-plain.svg" ) ), tr( "&Find" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/edit-find-dark.svg");
+ else
+ iconName = QString(":/icons/edit-find-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Find" ), this );
a->setShortcut( tr("Ctrl+F") );
a->setStatusTip( tr("Edit Find") );
connect( a, SIGNAL( triggered() ), this, SLOT( editFind() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/go-next-use-plain.svg" ) ), tr( "Find &Next" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/go-next-use-dark.svg");
+ else
+ iconName = QString(":/icons/go-next-use-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Find &Next" ), this );
a->setShortcut( tr("F3") );
a->setStatusTip( tr("Edit Find Next") );
connect( a, SIGNAL( triggered() ), this, SLOT( editFindNext() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/go-previous-use-plain.svg" ) ) , tr( "Find Pre&vious" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/go-previous-use-dark.svg");
+ else
+ iconName = QString(":/icons/go-previous-use-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ) , tr( "Find Pre&vious" ), this );
a->setShortcut( tr("Shift+F4") );
a->setStatusTip( tr("Edit Find Previous") );
connect( a, SIGNAL( triggered() ), this, SLOT( editFindPrevious() ) );
@@ -491,7 +556,12 @@ void PTextEdit::setupMusrActions()
menuBar()->addMenu( menu );
QAction *a;
- a = new QAction( QIcon( QPixmap( ":/icons/musrWiz-32x32.svg" ) ), tr( "musr&Wiz" ), this );
+ QString iconName("");
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrWiz-32x32-dark.svg");
+ else
+ iconName = QString(":/icons/musrWiz-32x32.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "musr&Wiz" ), this );
a->setShortcut( tr("Alt+W") );
a->setStatusTip( tr("Call musrWiz which helps to create msr-files") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrWiz() ) );
@@ -501,35 +571,55 @@ void PTextEdit::setupMusrActions()
menu->addSeparator();
tb->addSeparator();
- a = new QAction( QIcon( QPixmap( ":/icons/musrchisq-plain.svg" ) ), tr( "Calculate &Chisq" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrchisq-dark.svg");
+ else
+ iconName = QString(":/icons/musrchisq-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Calculate &Chisq" ), this );
a->setShortcut( tr("Alt+C") );
a->setStatusTip( tr("Calculate Chi Square (Log Max Likelihood)") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrCalcChisq() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/musrfit-plain.svg" ) ), tr( "&Fit" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrfit-dark.svg");
+ else
+ iconName = QString(":/icons/musrfit-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Fit" ), this );
a->setShortcut( tr("Alt+F") );
a->setStatusTip( tr("Fit") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrFit() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/musrswap-plain.svg" ) ), tr( "&Swap Msr <-> Mlog" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrswap-dark.svg");
+ else
+ iconName = QString(":/icons/musrswap-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Swap Msr <-> Mlog" ), this );
a->setShortcut( tr("Alt+S") );
a->setStatusTip( tr("Swap msr-file <-> mlog-file") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrSwapMsrMlog() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/musrStep-32x32.svg" ) ), tr( "Set Ste&ps" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrStep-32x32-dark.svg");
+ else
+ iconName = QString(":/icons/musrStep-32x32-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Set Ste&ps" ), this );
a->setShortcut( tr("Alt+P") );
a->setStatusTip( tr("Set Steps") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrSetSteps() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/msr2data-plain.svg" ) ), tr( "&Msr2Data" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/msr2data-dark.svg");
+ else
+ iconName = QString(":/icons/msr2data-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Msr2Data" ), this );
a->setShortcut( tr("Alt+M") );
a->setStatusTip( tr("Start msr2data interface") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrMsr2Data() ) );
@@ -539,27 +629,43 @@ void PTextEdit::setupMusrActions()
menu->addSeparator();
tb->addSeparator();
- a = new QAction( QIcon( QPixmap( ":/icons/musrview-plain.svg" ) ), tr( "&View" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrview-dark.svg");
+ else
+ iconName = QString(":/icons/musrview-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&View" ), this );
a->setShortcut( tr("Alt+V") );
a->setStatusTip( tr("Start musrview") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrView() ) );
tb->addAction(a);
menu->addAction(a);
- fMusrT0Action = new QAction( QIcon( QPixmap( ":/icons/musrt0-plain.svg" ) ), tr( "&T0" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrt0-dark.svg");
+ else
+ iconName = QString(":/icons/musrt0-plain.svg");
+ fMusrT0Action = new QAction( QIcon( QPixmap(iconName) ), tr( "&T0" ), this );
fMusrT0Action->setStatusTip( tr("Start musrt0") );
connect( fMusrT0Action, SIGNAL( triggered() ), this, SLOT( musrT0() ) );
tb->addAction(fMusrT0Action);
menu->addAction(fMusrT0Action);
fMusrT0Action->setEnabled(fAdmin->getEnableMusrT0Flag());
- a = new QAction( QIcon( QPixmap (":/icons/musrFT-plain.svg") ), tr( "Raw Fourier" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrFT-dark.svg");
+ else
+ iconName = QString(":/icons/musrFT-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "Raw Fourier" ), this );
a->setStatusTip( tr("Start musrFT") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrFT() ) );
tb->addAction(a);
menu->addAction(a);
- a = new QAction( QIcon( QPixmap( ":/icons/musrprefs-plain.svg" ) ), tr( "&Preferences" ), this );
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrprefs-dark.svg");
+ else
+ iconName = QString(":/icons/musrprefs-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName) ), tr( "&Preferences" ), this );
a->setStatusTip( tr("Show Preferences") );
connect( a, SIGNAL( triggered() ), this, SLOT( musrPrefs() ) );
tb->addAction(a);
@@ -568,7 +674,11 @@ void PTextEdit::setupMusrActions()
menu->addSeparator();
tb->addSeparator();
- a = new QAction( QIcon( QPixmap(":/icons/musrdump-plain.svg")), tr( "&Dump Header"), this);
+ if (fDarkTheme)
+ iconName = QString(":/icons/musrdump-dark.svg");
+ else
+ iconName = QString(":/icons/musrdump-plain.svg");
+ a = new QAction( QIcon( QPixmap(iconName)), tr( "&Dump Header"), this);
a->setStatusTip( tr("Dumps muSR File Header Information") );
connect( a, SIGNAL(triggered()), this, SLOT(musrDump()));
tb->addAction(a);
diff --git a/src/musredit_qt5/PTextEdit.h b/src/musredit_qt5/PTextEdit.h
index 9307c837..b4cf8957 100644
--- a/src/musredit_qt5/PTextEdit.h
+++ b/src/musredit_qt5/PTextEdit.h
@@ -158,6 +158,7 @@ private slots:
void setFileSystemWatcherActive();
private:
+ bool fDarkTheme;
PAdmin *fAdmin; ///< pointer to the xml-startup file informations. Needed for different purposes like default working- and executable directories etc.
QFileSystemWatcher *fFileSystemWatcher; ///< checks if msr-files are changing on the disk while being open in musredit.
bool fFileSystemWatcherActive; ///< flag to enable/disable the file system watcher
diff --git a/src/musredit_qt5/icons/document-new-dark.svg b/src/musredit_qt5/icons/document-new-dark.svg
new file mode 100644
index 00000000..f56bdeb8
--- /dev/null
+++ b/src/musredit_qt5/icons/document-new-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/document-open-dark.svg b/src/musredit_qt5/icons/document-open-dark.svg
new file mode 100644
index 00000000..ef9cbb30
--- /dev/null
+++ b/src/musredit_qt5/icons/document-open-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/document-print-dark.svg b/src/musredit_qt5/icons/document-print-dark.svg
new file mode 100644
index 00000000..6eb876ee
--- /dev/null
+++ b/src/musredit_qt5/icons/document-print-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/document-save-dark.svg b/src/musredit_qt5/icons/document-save-dark.svg
new file mode 100644
index 00000000..3df75d57
--- /dev/null
+++ b/src/musredit_qt5/icons/document-save-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-copy-dark.svg b/src/musredit_qt5/icons/edit-copy-dark.svg
new file mode 100644
index 00000000..6de6a598
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-copy-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-cut-dark.svg b/src/musredit_qt5/icons/edit-cut-dark.svg
new file mode 100644
index 00000000..99ab04ef
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-cut-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-find-dark.svg b/src/musredit_qt5/icons/edit-find-dark.svg
new file mode 100644
index 00000000..fb62e414
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-find-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-paste-dark.svg b/src/musredit_qt5/icons/edit-paste-dark.svg
new file mode 100644
index 00000000..ba4f3cb5
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-paste-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-redo-dark.svg b/src/musredit_qt5/icons/edit-redo-dark.svg
new file mode 100644
index 00000000..19d34158
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-redo-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/edit-undo-dark.svg b/src/musredit_qt5/icons/edit-undo-dark.svg
new file mode 100644
index 00000000..7ab68cf0
--- /dev/null
+++ b/src/musredit_qt5/icons/edit-undo-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/go-next-use-dark.svg b/src/musredit_qt5/icons/go-next-use-dark.svg
new file mode 100644
index 00000000..6c188cf0
--- /dev/null
+++ b/src/musredit_qt5/icons/go-next-use-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/go-previous-use-dark.svg b/src/musredit_qt5/icons/go-previous-use-dark.svg
new file mode 100644
index 00000000..01ef7277
--- /dev/null
+++ b/src/musredit_qt5/icons/go-previous-use-dark.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/musredit_qt5/icons/msr2data-dark.svg b/src/musredit_qt5/icons/msr2data-dark.svg
new file mode 100644
index 00000000..87af256a
--- /dev/null
+++ b/src/musredit_qt5/icons/msr2data-dark.svg
@@ -0,0 +1,265 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrFT-dark.svg b/src/musredit_qt5/icons/musrFT-dark.svg
new file mode 100644
index 00000000..55763817
--- /dev/null
+++ b/src/musredit_qt5/icons/musrFT-dark.svg
@@ -0,0 +1,138 @@
+
+
diff --git a/src/musredit_qt5/icons/musrStep-32x32-dark.svg b/src/musredit_qt5/icons/musrStep-32x32-dark.svg
new file mode 100644
index 00000000..fec88e9f
--- /dev/null
+++ b/src/musredit_qt5/icons/musrStep-32x32-dark.svg
@@ -0,0 +1,147 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrStep-32x32.svg b/src/musredit_qt5/icons/musrStep-32x32.svg
index 6569576b..176bb47e 100644
--- a/src/musredit_qt5/icons/musrStep-32x32.svg
+++ b/src/musredit_qt5/icons/musrStep-32x32.svg
@@ -48,13 +48,13 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="24.960936"
- inkscape:cx="17.066668"
+ inkscape:cx="9.8153374"
inkscape:cy="17.066668"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:window-width="1912"
- inkscape:window-height="1017"
+ inkscape:window-height="1015"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0">
@@ -138,7 +138,7 @@
transform="translate(0,1020.3622)"
inkscape:connector-curvature="0" />
+
+
+
diff --git a/src/musredit_qt5/icons/musrchisq-dark.svg b/src/musredit_qt5/icons/musrchisq-dark.svg
new file mode 100644
index 00000000..2086780e
--- /dev/null
+++ b/src/musredit_qt5/icons/musrchisq-dark.svg
@@ -0,0 +1,153 @@
+
+
diff --git a/src/musredit_qt5/icons/musrdump-dark.svg b/src/musredit_qt5/icons/musrdump-dark.svg
new file mode 100644
index 00000000..13d8cf23
--- /dev/null
+++ b/src/musredit_qt5/icons/musrdump-dark.svg
@@ -0,0 +1,182 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrfit-dark.svg b/src/musredit_qt5/icons/musrfit-dark.svg
new file mode 100644
index 00000000..45a532c6
--- /dev/null
+++ b/src/musredit_qt5/icons/musrfit-dark.svg
@@ -0,0 +1,190 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrprefs-dark.svg b/src/musredit_qt5/icons/musrprefs-dark.svg
new file mode 100644
index 00000000..8687353f
--- /dev/null
+++ b/src/musredit_qt5/icons/musrprefs-dark.svg
@@ -0,0 +1,177 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrswap-dark.svg b/src/musredit_qt5/icons/musrswap-dark.svg
new file mode 100644
index 00000000..79151fc6
--- /dev/null
+++ b/src/musredit_qt5/icons/musrswap-dark.svg
@@ -0,0 +1,206 @@
+
+
+
+
diff --git a/src/musredit_qt5/icons/musrt0-dark.svg b/src/musredit_qt5/icons/musrt0-dark.svg
new file mode 100644
index 00000000..3630dd7f
--- /dev/null
+++ b/src/musredit_qt5/icons/musrt0-dark.svg
@@ -0,0 +1,105 @@
+
+
diff --git a/src/musredit_qt5/icons/musrview-dark.svg b/src/musredit_qt5/icons/musrview-dark.svg
new file mode 100644
index 00000000..1831940f
--- /dev/null
+++ b/src/musredit_qt5/icons/musrview-dark.svg
@@ -0,0 +1,173 @@
+
+
diff --git a/src/musredit_qt5/icons/view-refresh-dark.svg b/src/musredit_qt5/icons/view-refresh-dark.svg
new file mode 100644
index 00000000..0b66cbef
--- /dev/null
+++ b/src/musredit_qt5/icons/view-refresh-dark.svg
@@ -0,0 +1,17 @@
+
diff --git a/src/musredit_qt5/musredit.qrc b/src/musredit_qt5/musredit.qrc
index e17b7e6e..3dbc000d 100644
--- a/src/musredit_qt5/musredit.qrc
+++ b/src/musredit_qt5/musredit.qrc
@@ -1,29 +1,53 @@
icons/edit-copy-plain.svg
+ icons/edit-copy-dark.svg
icons/edit-cut-plain.svg
+ icons/edit-cut-dark.svg
icons/edit-find-plain.svg
+ icons/edit-find-dark.svg
icons/go-next-use-plain.svg
+ icons/go-next-use-dark.svg
icons/edit-paste-plain.svg
+ icons/edit-paste-dark.svg
icons/go-previous-use-plain.svg
+ icons/go-previous-use-dark.svg
icons/edit-redo-plain.svg
+ icons/edit-redo-dark.svg
icons/edit-undo-plain.svg
+ icons/edit-undo-dark.svg
icons/document-new-plain.svg
+ icons/document-new-dark.svg
icons/document-open-plain.svg
+ icons/document-open-dark.svg
icons/document-print-plain.svg
+ icons/document-print-dark.svg
icons/view-refresh-plain.svg
+ icons/view-refresh-dark.svg
icons/document-save-plain.svg
+ icons/document-save-dark.svg
icons/musrWiz-32x32.svg
+ icons/musrWiz-32x32-dark.svg
icons/musrchisq-plain.svg
+ icons/musrchisq-dark.svg
icons/musrfit-plain.svg
+ icons/musrfit-dark.svg
icons/msr2data-plain.svg
+ icons/msr2data-dark.svg
icons/musrprefs-plain.svg
+ icons/musrprefs-dark.svg
icons/musrswap-plain.svg
+ icons/musrswap-dark.svg
icons/musrStep-32x32.svg
+ icons/musrStep-32x32-dark.svg
icons/musrt0-plain.svg
+ icons/musrt0-dark.svg
icons/musrview-plain.svg
+ icons/musrview-dark.svg
icons/musrFT-plain.svg
+ icons/musrFT-dark.svg
icons/musrdump-plain.svg
+ icons/musrdump-dark.svg
latex_images/abragam.png
latex_images/asymmetry.png
latex_images/bessel.png