diff --git a/src/exam/texamexecutor.cpp b/src/exam/texamexecutor.cpp
index f4460a9f55be0757af6eb81316675778a96f0319..6c925f6dcd956718afc33f4455727a81628e7cce 100755
--- a/src/exam/texamexecutor.cpp
+++ b/src/exam/texamexecutor.cpp
@@ -163,10 +163,7 @@ TexamExecutor::TexamExecutor(MainWindow *mainW, QString examFile, Tlevel *lev) :
 	TexecutorSupply::checkGuitarParamsChanged(mW, m_exam);
 	// ---------- End of checking ----------------------------------
 
-	if (m_exam->melodies())
-		mW->setSingleNoteMode(false);
-	else
-		mW->setSingleNoteMode(true);
+  mW->setSingleNoteMode(!m_exam->melodies());
 	m_supp = new TexecutorSupply(&m_level, this);
 	m_supp->createQuestionsList(m_questList);
   if (m_exam->melodies())
@@ -1011,7 +1008,6 @@ void TexamExecutor::prepareToExam() {
   m_glStore->storeSettings();
   m_glStore->prepareGlobalsToExam(m_level);
 
-  mW->setSingleNoteMode(gl->S->isSingleNoteMode);
   mW->pitchView->setVisible(gl->L->soundViewEnabled);
   mW->guitar->setVisible(gl->L->guitarEnabled);
   mW->score->acceptSettings();
diff --git a/src/exam/tglobalexamstore.cpp b/src/exam/tglobalexamstore.cpp
index bf9d27a6521dcd90289030cc79b9574e0294462b..d6f0b699a74b6e50127e3fa3ebedbc5c8d03e847 100644
--- a/src/exam/tglobalexamstore.cpp
+++ b/src/exam/tglobalexamstore.cpp
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2013-2014 by Tomasz Bojczuk                             *
+ *   Copyright (C) 2013-2016 by Tomasz Bojczuk                             *
  *   tomaszbojczuk@gmail.com                                               *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -101,13 +101,9 @@ void TglobalExamStore::prepareGlobalsToExam(Tlevel& level) {
 			m_globals->A->OUTenabled = true;
 		}
 		m_globals->A->intonation = level.intonation;
-		if (!level.canBeMelody())
-			m_globals->S->isSingleNoteMode = true;
-		if (level.answerIsSound())
-			m_globals->L->soundViewEnabled = true;
-		else
-			m_globals->L->soundViewEnabled = false;
-		if (level.canBeGuitar())
+    m_globals->S->isSingleNoteMode = !level.canBeMelody();
+    m_globals->L->soundViewEnabled = level.answerIsSound();
+		if (level.canBeGuitar()) // enable guitar if necessary, but don't disable when it is visible
 			m_globals->L->guitarEnabled = true;
 		// change output instrument type when necessary (exam instrument differs from user) TODO
 // 		if (m_globals->instrument != e_noInstrument && m_globals->instrument != instrument)
diff --git a/src/gui/ttoolbar.cpp b/src/gui/ttoolbar.cpp
index b785dfda7a4a79aec04f5c50d1f17012a1e2337d..88fca40c453c3f10cfa6af7142f23f826c7a728b 100644
--- a/src/gui/ttoolbar.cpp
+++ b/src/gui/ttoolbar.cpp
@@ -173,6 +173,7 @@ void TtoolBar::actionsToExam() {
 		checkAct->setIcon(QIcon(Tpath::img("check")));
 		checkAct->setShortcut(QKeySequence(Qt::Key_Return));
 	}
+	setMelodyButtonVisible(false);
 }
 
 
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 240bc2d7de95c04c882c8c1fa54394ac7cc85683..f1ae7c06ba255b8765cb8d96574f0eb1f5fbd7f3 100755
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -542,7 +542,6 @@ void MainWindow::prepareToExam() {
 	if (score->insertMode() != TmultiScore::e_single) {
 		if (score->isScorePlayed())
 			m_melButt->playMelodySlot(); // stop playing when played
-		bar->setMelodyButtonVisible(false);
 	}
 	sound->stopPlaying();
 	examResults = new TexamView();