diff --git a/Code/Mantid/MantidQt/CustomInterfaces/CMakeLists.txt b/Code/Mantid/MantidQt/CustomInterfaces/CMakeLists.txt
index b42ae6c11c2b01ddcdba35530f3e759c7d1b44ba..92714569c2761061354a75f598dd76794fb75ad6 100644
--- a/Code/Mantid/MantidQt/CustomInterfaces/CMakeLists.txt
+++ b/Code/Mantid/MantidQt/CustomInterfaces/CMakeLists.txt
@@ -309,6 +309,7 @@ set ( UI_FILES inc/MantidQtCustomInterfaces/DataComparison.ui
                inc/MantidQtCustomInterfaces/DirectConvertToEnergy.ui
                inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtGUI.ui
                inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabCalib.ui
+               inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabFocus.ui
                inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabSettings.ui
                inc/MantidQtCustomInterfaces/Indirect/AbsorptionCorrections.ui
                inc/MantidQtCustomInterfaces/Indirect/ApplyPaalmanPings.ui
diff --git a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabFocus.ui b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabFocus.ui
index 6aef95f8882e62151427845867e191b9454515bf..5e499f87db34290a506ca6d5e0f1980a267243fd 100644
--- a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabFocus.ui
+++ b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabFocus.ui
@@ -108,7 +108,7 @@
          </spacer>
         </item>
         <item>
-         <widget class="QPushButton" name="pushButton">
+         <widget class="QPushButton" name="pushButton_focus">
           <property name="text">
            <string>Focus</string>
           </property>
diff --git a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabSettings.ui b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabSettings.ui
index 5fa6c720227cbf4889a1418b0b9ca80977929ea0..65f282325d3b97b7506fa5bfa402244544f7ba90 100644
--- a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabSettings.ui
+++ b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionQtTabSettings.ui
@@ -269,7 +269,7 @@
          <widget class="QLineEdit" name="lineEdit_dir_focusing"/>
         </item>
         <item>
-         <widget class="QPushButton" name="pushButton_browse_focusing">
+         <widget class="QPushButton" name="pushButton_browse_dir_focusing">
           <property name="text">
            <string>Browse</string>
           </property>
diff --git a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h
index aec1818ea8bc35892c59b7698aef3774923f02f6..69b133d7eeaeb6e46c0fa3e0becfdfad144bba63 100644
--- a/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h
+++ b/Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h
@@ -8,6 +8,7 @@
 
 #include "ui_EnggDiffractionQtGUI.h"
 #include "ui_EnggDiffractionQtTabCalib.h"
+#include "ui_EnggDiffractionQtTabFocus.h"
 #include "ui_EnggDiffractionQtTabSettings.h"
 
 #include <boost/scoped_ptr.hpp>
@@ -104,12 +105,14 @@ private slots:
   /// for buttons, do calibrate and similar
   void loadCalibrationClicked();
   void calibrateClicked();
+  void focusClicked();
 
   // slots of the settings tab/section of the interface
   void browseInputDirCalib();
   void browseInputDirRaw();
   void browsePixelCalibFilename();
   void browseTemplateGSAS_PRM();
+  void browseDirFocusing();
 
   // slots of the calibration tab/section of the interface
 
@@ -124,6 +127,7 @@ private:
   void doSetupGeneralWidgets();
   void doSetupTabCalib();
   void doSetupTabSettings();
+  void doSetupTabFocus();
 
   std::string guessGSASTemplatePath() const;
 
@@ -157,6 +161,9 @@ private:
   EnggDiffCalibSettings m_calibSettings;
   std::string m_outCalibFilename;
 
+  /// This is in principle the only settings for 'focus'
+  std::string m_focusDir;
+
   /// for the 'Rebin' parameter of some Engg* algorithms
   static const double g_defaultRebinWidth;
 
diff --git a/Code/Mantid/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp b/Code/Mantid/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp
index e159559bce68bb9167e51ce87b330bed26f98d5a..65710777b829feda5acd83b7ce7b89652d557333 100644
--- a/Code/Mantid/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp
+++ b/Code/Mantid/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp
@@ -40,7 +40,8 @@ const std::string EnggDiffractionViewQtGUI::g_pixelCalibExt =
     "(*.csv *.nxs *.nexus);;"
     "Other extensions/all files (*.*)";
 
-const std::string EnggDiffractionViewQtGUI::m_settingsGroup = "CustomInterfaces/EnggDiffractionView";
+const std::string EnggDiffractionViewQtGUI::m_settingsGroup =
+    "CustomInterfaces/EnggDiffractionView";
 
 /**
  * Default constructor.
@@ -60,6 +61,11 @@ void EnggDiffractionViewQtGUI::initLayout() {
   QWidget *wCalib = new QWidget(m_ui.tabMain);
   m_uiTabCalib.setupUi(wCalib);
   m_ui.tabMain->addTab(wCalib, QString("Calibration"));
+
+  QWidget *wFocus = new QWidget(m_ui.tabMain);
+  m_uiTabFocus.setupUi(wFocus);
+  m_ui.tabMain->addTab(wFocus, QString("Focus"));
+
   QWidget *wSettings = new QWidget(m_ui.tabMain);
   m_uiTabSettings.setupUi(wSettings);
   m_ui.tabMain->addTab(wSettings, QString("Settings"));
@@ -128,6 +134,17 @@ void EnggDiffractionViewQtGUI::doSetupTabSettings() {
 
   connect(m_uiTabSettings.pushButton_browse_template_gsas_prm,
           SIGNAL(released()), this, SLOT(browseTemplateGSAS_PRM()));
+
+  connect(m_uiTabSettings.pushButton_browse_dir_focusing, SIGNAL(released()), this,
+          SLOT(browseDirFocusing()));
+}
+
+void EnggDiffractionViewQtGUI::doSetupTabFocus() {
+   m_uiTabSettings.lineEdit_dir_focusing->setText(
+      QString::fromStdString(m_focusDir));
+
+   connect(m_uiTabFocus.pushButton_browse_dir_focusing, SIGNAL(released()), this,
+           SLOT(focusClicked()));
 }
 
 void EnggDiffractionViewQtGUI::doSetupGeneralWidgets() {
@@ -182,6 +199,9 @@ void EnggDiffractionViewQtGUI::readSettings() {
   m_calibSettings.m_forceRecalcOverwrite =
       qs.value("rebin-calib", g_defaultRebinWidth).toFloat();
 
+  // 'focusing' block
+  m_focusDir = qs.value("focus-dir").toString().toStdString();
+
   restoreGeometry(qs.value("interface-win-geometry").toByteArray());
   qs.endGroup();
 }
@@ -217,6 +237,9 @@ void EnggDiffractionViewQtGUI::saveSettings() const {
               QString::fromStdString(m_calibSettings.m_templateGSAS_PRM));
   qs.setValue("rebin-calib", m_calibSettings.m_rebinCalibrate);
 
+  // 'focusing' block
+  qs.setValue("focus-dir", m_focusDir);
+
   qs.setValue("interface-win-geometry", saveGeometry());
   qs.endGroup();
 }
@@ -375,6 +398,10 @@ void EnggDiffractionViewQtGUI::calibrateClicked() {
   m_presenter->notify(IEnggDiffractionPresenter::CalcCalib);
 }
 
+void EnggDiffractionViewQtGUI::calibrateClicked() {
+  m_presenter->notify(IEnggDiffractionPresenter::Focus);
+}
+
 void EnggDiffractionViewQtGUI::browseInputDirCalib() {
   QString prevPath = QString::fromStdString(m_calibSettings.m_inputDirCalib);
   if (prevPath.isEmpty()) {
@@ -451,6 +478,26 @@ void EnggDiffractionViewQtGUI::browseTemplateGSAS_PRM() {
       QString::fromStdString(m_calibSettings.m_templateGSAS_PRM));
 }
 
+void EnggDiffractionViewQtGUI::browseDirFocusing() {
+  QString prevPath = QString::fromStdString(m_focusDir);
+  if (prevPath.isEmpty()) {
+    prevPath =
+        MantidQt::API::AlgorithmInputHistory::Instance().getPreviousDirectory();
+  }
+  QString dir = QFileDialog::getExistingDirectory(
+      this, tr("Open Directory"), prevPath,
+      QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
+
+  if (dir.isEmpty()) {
+    return;
+  }
+
+  MantidQt::API::AlgorithmInputHistory::Instance().setPreviousDirectory(dir);
+  m_focusDir = dir.toStdString();
+  m_uiTabSettings.lineEdit_dir_focusing->setText(
+      QString::fromStdString(m_focusDir));
+}
+
 void EnggDiffractionViewQtGUI::instrumentChanged(int /*idx*/) {
   QComboBox *inst = m_ui.comboBox_instrument;
   if (!inst)