diff --git a/Code/Mantid/MantidPlot/CMakeLists.txt b/Code/Mantid/MantidPlot/CMakeLists.txt
index 6f3f4ebc0f3b1f861391f921aa766e223824dff1..0e21ccc29c04894b9f75dd0a4752ebd9d1a3a74c 100644
--- a/Code/Mantid/MantidPlot/CMakeLists.txt
+++ b/Code/Mantid/MantidPlot/CMakeLists.txt
@@ -162,10 +162,11 @@ set ( MANTID_SRCS  src/Mantid/AbstractMantidLog.cpp
                    src/Mantid/ManageCustomMenus.cpp
                    src/Mantid/MantidAbout.cpp
                    src/Mantid/MantidApplication.cpp
-                   src/Mantid/MantidMatrixCurve.cpp
+				   src/Mantid/MantidCurve.cpp
                    src/Mantid/MantidDock.cpp
                    src/Mantid/MantidLog.cpp
                    src/Mantid/MantidMatrix.cpp
+				   src/Mantid/MantidMatrixCurve.cpp
                    src/Mantid/MantidMatrixDialog.cpp
                    src/Mantid/MantidSampleLogDialog.cpp
                    src/Mantid/MantidUI.cpp
@@ -376,9 +377,10 @@ set ( MANTID_HDRS  src/Mantid/AbstractMantidLog.h
                    src/Mantid/ManageCustomMenus.h
                    src/Mantid/MantidAbout.h
                    src/Mantid/MantidApplication.h
-                   src/Mantid/MantidMatrixCurve.h
-                   src/Mantid/MantidDock.h
+				   src/Mantid/MantidCurve.h
+				   src/Mantid/MantidDock.h
                    src/Mantid/MantidLog.h
+                   src/Mantid/MantidMatrixCurve.h
                    src/Mantid/MantidMatrixDialog.h
                    src/Mantid/MantidMatrix.h
                    src/Mantid/MantidSampleLogDialog.h
@@ -639,9 +641,10 @@ set ( MANTID_MOC_FILES src/Mantid/AlgMonitor.h
                        src/Mantid/ManageCustomMenus.h
                        src/Mantid/MantidAbout.h
                        src/Mantid/MantidApplication.h
-                       src/Mantid/MantidMatrixCurve.h
+                       src/Mantid/MantidCurve.h
                        src/Mantid/MantidDock.h
                        src/Mantid/MantidLog.h
+					   src/Mantid/MantidMatrixCurve.h
                        src/Mantid/MantidMatrixDialog.h
                        src/Mantid/MantidMatrix.h
                        src/Mantid/MantidSampleLogDialog.h
diff --git a/Code/Mantid/MantidPlot/src/Mantid/MantidCurve.cpp b/Code/Mantid/MantidPlot/src/Mantid/MantidCurve.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/Code/Mantid/MantidPlot/src/Mantid/MantidCurve.h b/Code/Mantid/MantidPlot/src/Mantid/MantidCurve.h
new file mode 100644
index 0000000000000000000000000000000000000000..a47354882b8952a5cb652ed73c7643eed346c67f
--- /dev/null
+++ b/Code/Mantid/MantidPlot/src/Mantid/MantidCurve.h
@@ -0,0 +1,21 @@
+#ifndef MANTIDPLOT_MANTIDCURVE_H
+#define MANTIDPLOT_MANTIDCURVE_H
+
+#include "../PlotCurve.h"
+#include "MantidQtAPI/WorkspaceObserver.h"
+
+class MantidCurve :public PlotCurve, public MantidQt::API::WorkspaceObserver
+{
+public:
+  MantidCurve(const QString& wsName):PlotCurve(wsName), 
+  WorkspaceObserver()
+  {
+  }
+  MantidCurve():PlotCurve(), 
+  WorkspaceObserver()
+  {
+  }
+};
+
+#endif
+
diff --git a/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.cpp b/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.cpp
index a028b8cf9ce721d26eef129755b06c43ebabd0bc..5d7c756d062114f5a73bce1b262a0207d05e43a5 100644
--- a/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.cpp
+++ b/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.cpp
@@ -25,8 +25,7 @@ using namespace MantidQt::API;
  *  @throw std::invalid_argument if the index is out of range for the given workspace
  */
 MantidMatrixCurve::MantidMatrixCurve(const QString& name,const QString& wsName,Graph* g,int index,bool err,bool distr)
-  :PlotCurve(name), 
-  WorkspaceObserver(),
+  :MantidCurve(),
   m_drawErrorBars(err),
   m_drawAllErrorBars(false),
   m_wsName(wsName),
@@ -58,8 +57,7 @@ MantidMatrixCurve::MantidMatrixCurve(const QString& name,const QString& wsName,G
  *  @throw std::invalid_argument if the index is out of range for the given workspace
  */
 MantidMatrixCurve::MantidMatrixCurve(const QString& wsName,Graph* g,int index,bool err,bool distr)
-  :PlotCurve(), 
-  WorkspaceObserver(), 
+  :MantidCurve(),
   m_drawErrorBars(err),
   m_drawAllErrorBars(false),
   m_wsName(wsName),
@@ -86,8 +84,7 @@ MantidMatrixCurve::MantidMatrixCurve(const QString& wsName,Graph* g,int index,bo
 }
 
 MantidMatrixCurve::MantidMatrixCurve(const MantidMatrixCurve& c)
-  :PlotCurve(createCopyName(c.title().text())),
-  WorkspaceObserver(),
+  :MantidCurve(createCopyName(c.title().text())),
   m_drawErrorBars(c.m_drawErrorBars),
   m_drawAllErrorBars(c.m_drawAllErrorBars),
   m_wsName(c.m_wsName),
diff --git a/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.h b/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.h
index c65ea4e66fec3bfd5ca5cc1bb69fa46550ca6a81..ed2d7724e3643ce5be4b46eee66d5242689de729 100644
--- a/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.h
+++ b/Code/Mantid/MantidPlot/src/Mantid/MantidMatrixCurve.h
@@ -1,8 +1,7 @@
-#ifndef MANTID_CURVE_H
-#define MANTID_CURVE_H
+#ifndef MANTID_MATRIX_CURVE_H
+#define MANTID_MATRIX_CURVE_H
 
-#include "../PlotCurve.h"
-#include "MantidQtAPI/WorkspaceObserver.h"
+#include "MantidCurve.h"
 #include <boost/shared_ptr.hpp>
 #include "MantidAPI/MatrixWorkspace.h"
 
@@ -42,7 +41,7 @@ class MantidUI;
     Code Documentation is available at: <http://doxygen.mantidproject.org>    
 */
 
-class MantidMatrixCurve:public PlotCurve, public MantidQt::API::WorkspaceObserver
+class MantidMatrixCurve:public MantidCurve
 {
   Q_OBJECT
 public: