diff --git a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysis.cpp b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysis.cpp
index 22096b36b548e13af3f1dad27f70350fc48e4762..69f8b3738a03bd9aefed064418fc31b61f85d61f 100644
--- a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysis.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysis.cpp
@@ -399,6 +399,7 @@ void MuonAnalysis::plotItem(ItemType itemType, int tableRow,
                             PlotType plotType) {
   m_updating = true;
   m_dataSelector->clearChosenGroups();
+  m_uiForm.fitBrowser->clearChosenGroups();
   AnalysisDataServiceImpl &ads = AnalysisDataService::Instance();
 
   try {
@@ -1828,6 +1829,8 @@ void MuonAnalysis::selectMultiPeak(const QString &wsName,
     std::transform(groups.pairNames.begin(), groups.pairNames.end(),
                    std::back_inserter(groupsAndPairs), &QString::fromStdString);
     m_dataSelector->setAvailableGroups(groupsAndPairs);
+	m_uiForm.fitBrowser->setAvailableGroups(groupsAndPairs);
+	
     m_dataSelector->setNumPeriods(m_numPeriods);
 
     // Set the selected run, group/pair and period
@@ -3049,6 +3052,7 @@ void MuonAnalysis::multiFitCheckboxChanged(int state) {
   m_fitFunctionPresenter->setMultiFitState(multiFitState);
   if (multiFitState == Muon::MultiFitState::Disabled) {
     m_dataSelector->clearChosenGroups();
+	m_uiForm.fitBrowser->clearChosenGroups();
   }
 }
 /**
diff --git a/MantidQt/MantidWidgets/CMakeLists.txt b/MantidQt/MantidWidgets/CMakeLists.txt
index 5a23fcbece2d7ac0b6ab691e1e8393d7be0be18c..de35258d5dde4c2648385693a9c279b7fdf23c10 100644
--- a/MantidQt/MantidWidgets/CMakeLists.txt
+++ b/MantidQt/MantidWidgets/CMakeLists.txt
@@ -350,6 +350,7 @@ set ( UI_FILES
     inc/MantidQtMantidWidgets/MWView.ui
     inc/MantidQtMantidWidgets/MultifitSetupDialog.ui
     inc/MantidQtMantidWidgets/MuonFitDataSelector.ui
+	inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.ui
     inc/MantidQtMantidWidgets/ProcessingAlgoWidget.ui
     inc/MantidQtMantidWidgets/RenameParDialog.ui
     inc/MantidQtMantidWidgets/SelectFunctionDialog.ui
diff --git a/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.h b/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.h
index 2dbfe5467bde5a3518584de60f24864e20278357..b8ad478409b96d94a1c10e96d49bc7b10b389898 100644
--- a/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.h
+++ b/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.h
@@ -6,7 +6,8 @@
 #include "MantidQtMantidWidgets/IMuonFitFunctionModel.h"
 
 #include "MantidQtAPI/MWRunFiles.h"
-
+#include <QMap>
+#include <QCheckBox>
 /* Forward declarations */
 class QDockWidget;
 class QLabel;
@@ -24,6 +25,9 @@ class QtProperty;
 class QtBrowserItem;
 class QVBoxLayout;
 class QSplitter;
+class QWidget;
+
+
 
 namespace Mantid {
 namespace API {
@@ -64,7 +68,6 @@ public:
   Mantid::API::IFunction_sptr getFunction() const override {
     return getFittingFunction();
   }
-  QtProperty *addToGroupManager(QString name);
   /// Set list of workspaces to fit
   void setWorkspaceNames(const QStringList &wsNames) override;
   /// Get output name
@@ -100,6 +103,11 @@ public:
   virtual void setFitEnabled(bool yes) override;
 
   void TFAsymmFit(int maxIterations);
+  void setAvailableGroups(const QStringList &groups);
+  QStringList getChosenGroups() const;
+  void setChosenGroup(const QString &group);
+  /// Clear list of selected groups
+  void clearChosenGroups() const;
 
 public slots:
   /// Perform the fit algorithm
@@ -136,7 +144,7 @@ private:
   /// new menu option
   QAction *m_fitActiontest;
   /// Create new fit menu
-  QPushButton *MuonFitPropertyBrowser::createMuonFitMenuButton(QWidget *w);
+  QPushButton *createMuonFitMenuButton(QWidget *w);
 
   /// Get the registered function names
   void populateFunctionNames() override;
@@ -146,6 +154,8 @@ private:
   /// workspaces
   void finishAfterSimultaneousFit(const Mantid::API::IAlgorithm *fitAlg,
                                   const int nWorkspaces) const;
+  void clearGroupCheckboxes();
+  void addGroupCheckbox(const QString &name);
   /// Splitter for additional widgets and splitter between this and browser
   QSplitter *m_widgetSplitter, *m_mainSplitter;
   /// Names of workspaces to fit
@@ -157,7 +167,10 @@ private:
   QtBrowserItem *m_multiFitSettingsGroup;
   QtProperty *m_groupsToFit;
   mutable QStringList m_groupsToFitOptions;
-
+  /// Map of group names to checkboxes
+  QMap<QString,QCheckBox *> m_groupBoxes;
+  QWidget *m_groupWindow;
+  //int m_groupWindowCount;
 };
 
 std::vector<double> readNormalization();
diff --git a/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.ui b/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.ui
new file mode 100644
index 0000000000000000000000000000000000000000..4e89b9113715f0139bbf29082e56c18293abdeb3
--- /dev/null
+++ b/MantidQt/MantidWidgets/inc/MantidQtMantidWidgets/MuonFitPropertyBrowser.ui
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MuonFitDataSelector</class>
+ <widget class="QWidget" name="MuonFitDataSelector">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>923</width>
+    <height>285</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MuonFitDataSelector</string>
+  </property>
+  <layout class="QGridLayout" name="gridLayoutAll">
+   <item row="0" column="0">
+    <widget class="QGroupBox" name="groupBoxDataSelector">
+     <property name="title">
+      <string>Data</string>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout">
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayoutLabel">
+        <item>
+         <widget class="QGroupBox" name="groupBoxGroups">
+          <property name="title">
+           <string>Groups</string>
+          </property>
+          <layout class="QVBoxLayout" name="verticalLayoutGroups">
+           <item>
+            <widget class="QCheckBox" name="chkFwd">
+             <property name="text">
+              <string>fwd</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QCheckBox" name="chkBwd">
+             <property name="text">
+              <string>bwd</string>
+             </property>
+            </widget>
+           </item>
+          </layout>
+         </widget>
+        </item>
+        <item>
+         <layout class="QHBoxLayout" name="horizontalLayoutTime">
+          <item>
+           <widget class="QGroupBox" name="groupBoxPeriods">
+            <property name="title">
+             <string>Periods</string>
+            </property>
+            <layout class="QVBoxLayout" name="verticalLayoutPeriods">
+             <item>
+              <widget class="QCheckBox" name="chk1">
+               <property name="text">
+                <string>1</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QCheckBox" name="chk2">
+               <property name="text">
+                <string>2</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <layout class="QHBoxLayout" name="horizontalLayoutPeriodsCombine">
+               <item>
+                <widget class="QCheckBox" name="chkCombine">
+                 <property name="text">
+                  <string>Combine</string>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QLineEdit" name="txtFirst">
+                 <property name="enabled">
+                  <bool>false</bool>
+                 </property>
+                 <property name="sizePolicy">
+                  <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
+                   <horstretch>0</horstretch>
+                   <verstretch>0</verstretch>
+                  </sizepolicy>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QLabel" name="lblMinus">
+                 <property name="text">
+                  <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt; font-weight:600;&quot;&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QLineEdit" name="txtSecond">
+                 <property name="enabled">
+                  <bool>false</bool>
+                 </property>
+                 <property name="sizePolicy">
+                  <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
+                   <horstretch>0</horstretch>
+                   <verstretch>0</verstretch>
+                  </sizepolicy>
+                 </property>
+                </widget>
+               </item>
+              </layout>
+             </item>
+            </layout>
+           </widget>
+          </item>
+         </layout>
+        </item>
+       </layout>
+      </item>
+     </layout>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/MantidQt/MantidWidgets/src/MuonFitDataSelector.cpp b/MantidQt/MantidWidgets/src/MuonFitDataSelector.cpp
index eabe5c5bae52aa4dcee7eb9ac4d50dfef0a7947f..19c7e39f5ab51bed9a6475c93ec2307cc115c571 100644
--- a/MantidQt/MantidWidgets/src/MuonFitDataSelector.cpp
+++ b/MantidQt/MantidWidgets/src/MuonFitDataSelector.cpp
@@ -34,23 +34,6 @@ MuonFitDataSelector::MuonFitDataSelector(QWidget *parent)
   m_ui.runs->doButtonOpt(API::MWRunFiles::ButtonOpts::None);
 
 
-  QSettings multiFitSettings;
-  multiFitSettings.beginGroup("");
-
-  /* Create function group */
-  QtProperty *multiFitSettingsGroup(NULL);
-  // Seperates the data and the settings into two seperate categories
-  //multiFitSettingsGroup=parent->addToGroupManager("Test");
-/*  m_groupsToFit = FitPropertyBrowser::m_enumManager->addProperty("Groups/Pairs to fit");
-  m_groupsToFitOptions << "All groups"
-	  << "All Pairs"
-	  << "Custom";
-  //moo need to add periods.... 
-
-  m_enumManager->setEnumNames(m_groupsToFit, m_groupsToFitOptions);
-  multiFitSettingsGroup->addSubProperty(m_groupsToFit);*/
-
-
 }
 
 /**
@@ -533,7 +516,7 @@ void MuonFitDataSelector::setUserInput(const QVariant &value) {
  * doing a simultaneous fit, chosen via the radio buttons.
  * @returns :: fit type from enum
  */
-IMuonFitDataSelector::FitType MuonFitDataSelector::getFitType() const {
+IMuonFitDataSelector::FitType MuonFitDataSelector::getFitType() const { // will need to pass group and periods
   // If radio buttons disabled, it's a single fit unless multiple groups/periods
   // chosen
   if (!m_ui.rbCoAdd->isEnabled()) {
diff --git a/MantidQt/MantidWidgets/src/MuonFitPropertyBrowser.cpp b/MantidQt/MantidWidgets/src/MuonFitPropertyBrowser.cpp
index cfc855583d7fc83ca4675dbc06f69aa1f47ae06f..5026289b936a0ae871a9377e095c00630a589b9c 100644
--- a/MantidQt/MantidWidgets/src/MuonFitPropertyBrowser.cpp
+++ b/MantidQt/MantidWidgets/src/MuonFitPropertyBrowser.cpp
@@ -47,11 +47,18 @@
 #include <QAction>
 #include <QLayout>
 #include <QSplitter>
-#include <QMap>
 #include <QLabel>
 #include <QPushButton>
+
 #include <QMenu>
 #include <QSignalMapper>
+
+#include <QCheckBox>
+
+
+
+
+
 namespace {
 Mantid::Kernel::Logger g_log("MuonFitPropertyBrowser");
 }
@@ -164,8 +171,14 @@ void MuonFitPropertyBrowser::init() {
 
   connect(m_browser, SIGNAL(currentItemChanged(QtBrowserItem *)), this,
           SLOT(currentItemChanged(QtBrowserItem *)));
+  m_groupWindow = new QWidget();
+  
+  QString tmp="moo";
+  addGroupCheckbox(tmp);
+  tmp = "baa";
+  addGroupCheckbox(tmp);
 
-  /* Create editors and assign them to the managers */
+	  /* Create editors and assign them to the managers */
   createEditors(w);
 
   updateDecimals();
@@ -212,6 +225,8 @@ void MuonFitPropertyBrowser::init() {
   m_mainSplitter = new QSplitter(Qt::Vertical, w);
   m_mainSplitter->insertWidget(0, m_widgetSplitter);
   m_mainSplitter->insertWidget(1, m_browser);
+   //moo 
+  m_mainSplitter->insertWidget(2,m_groupWindow);
   m_mainSplitter->setStretchFactor(0, 1);
   m_mainSplitter->setStretchFactor(1, 0);
 
@@ -320,7 +335,6 @@ void MuonFitPropertyBrowser::enumChanged(QtProperty *prop) {
 	if (prop == m_groupsToFit) {
 		int j = m_enumManager->value(m_groupsToFit);
 		std::string option = m_groupsToFitOptions[j].toStdString();
-		double a = 1.;
 	}
 	else {
 		FitPropertyBrowser::enumChanged(prop);
@@ -891,9 +905,92 @@ bool MuonFitPropertyBrowser::hasGuess() const {
     return false;
   }
 }
+/**
+* Sets group names and updates checkboxes on UI
+* By default sets all unchecked
+* @param groups :: [input] List of group names
+*/
+void MuonFitPropertyBrowser::setAvailableGroups(const QStringList &groups) {
+	// If it's the same list, do nothing
+	if (groups.size() == m_groupBoxes.size()) {
+		auto existingGroups = m_groupBoxes.keys();
+		auto newGroups = groups;
+		qSort(existingGroups);
+		qSort(newGroups);
+		if (existingGroups == newGroups) {
+			return;
+		}
+	}
 
+	clearGroupCheckboxes();
+	for (const auto group : groups) {
+		addGroupCheckbox(group); 
+		std::string tmp = group.toStdString();
+		double a = 1.;
+	}
+}
+/**
+* Clears all group names and checkboxes
+* (ready to add new ones)
+*/
+void MuonFitPropertyBrowser::clearGroupCheckboxes() {
+	for (const auto &checkbox : m_groupBoxes) {
+		delete(checkbox);
+		//checkbox->deleteLater(); // will disconnect signal automatically
+	}
+	m_groupBoxes.clear();
+}
+/**
+* Add a new checkbox to the list of groups with given name
+* The new checkbox is unchecked by default
+* @param name :: [input] Name of group to add
+*/
+void MuonFitPropertyBrowser::addGroupCheckbox(const QString &name) {
+	auto checkBox = new QCheckBox(name,m_groupWindow);
+	//m_groupWindow->updateGeometry();//m_groupWindow->addWidget(checkBox);
+	//m_groupWindow->setLayout(layout);
+	m_groupBoxes.insert(name, checkBox);
+	checkBox->setChecked(false);
+	connect(checkBox, SIGNAL(clicked(bool)), this,
+		SIGNAL(selectedGroupsChanged()));
+}
+/**
+* Returns a list of the selected groups (checked boxes)
+* @returns :: list of selected groups
+*/
+QStringList MuonFitPropertyBrowser::getChosenGroups() const {
+	QStringList chosen;
+	for (auto iter = m_groupBoxes.constBegin(); iter != m_groupBoxes.constEnd();
+		++iter) {
+		if (iter.value()->isChecked()) {
+			chosen.append(iter.key());
+		}
+	}
+	return chosen;
+}
+/**
+* Clears the list of selected groups (unchecks boxes)
+*/
+void MuonFitPropertyBrowser::clearChosenGroups() const {
+	for (auto iter = m_groupBoxes.constBegin(); iter != m_groupBoxes.constEnd();
+		++iter) {
+		iter.value()->setChecked(false);
+	}
+}
+/**
+* Set the chosen group ticked and all others off
+* Used when switching from Home tab to Data Analysis tab
+* @param group :: [input] Name of group to select
+*/
+void MuonFitPropertyBrowser::setChosenGroup(const QString &group) {
+	for (auto iter = m_groupBoxes.constBegin(); iter != m_groupBoxes.constEnd();
+		++iter) {
+		if (iter.key() == group) {
+			iter.value()->setChecked(true);
+		}
+	}
+}
 
-QtProperty *MuonFitPropertyBrowser::addToGroupManager(QString name) { return m_groupManager->addProperty(name); };
 
 } // MantidQt
 } // API