diff --git a/GUI/coregui/Models/FormFactorItems.h b/GUI/coregui/Models/FormFactorItems.h
index bb3a5bb8a2b6f0ffb92722e30009efa36425cdb3..718b1b28a8605f98ef273189d05a0758665cd70f 100644
--- a/GUI/coregui/Models/FormFactorItems.h
+++ b/GUI/coregui/Models/FormFactorItems.h
@@ -23,7 +23,8 @@ class BA_CORE_API_ FormFactorItem : public ParameterizedItem
 {
     Q_OBJECT
 public:
-    explicit FormFactorItem(const QString name, ParameterizedItem *parent) : ParameterizedItem(name, parent){}
+    explicit FormFactorItem(const QString name, ParameterizedItem *parent)
+        : ParameterizedItem(name, parent) {}
     virtual IFormFactor *createFormFactor() const{ return 0;}
     virtual ~FormFactorItem(){}
 };
diff --git a/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.cpp b/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..9079720e09fe5a340af6d637017ccd81f37e7690
--- /dev/null
+++ b/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.cpp
@@ -0,0 +1,26 @@
+#include "ParticleDistributionView.h"
+#include "ParameterizedItem.h"
+#include <QDebug>
+
+
+ParticleDistributionView::ParticleDistributionView(QGraphicsItem *parent)
+    : ConnectableView(parent)
+{
+    setName(Constants::ParticleDistributionType);
+    setLabel("Distributed\nparticle");
+    setColor(DesignerHelper::getDefaultParticleColor());
+    setRectangle(DesignerHelper::getDefaultBoundingRect(Constants::ParticleDistributionType));
+    addPort("out", NodeEditorPort::Output, NodeEditorPort::FormFactor);
+    addPort("core", NodeEditorPort::Input, NodeEditorPort::FormFactor);
+    addPort("shell", NodeEditorPort::Input, NodeEditorPort::FormFactor);
+    m_roundpar = 5;
+    m_label_vspace = 45;
+}
+
+
+void ParticleDistributionView::addView(IView *childView, int /* row */)
+{
+    int index = childView->getParameterizedItem()->getRegisteredProperty(ParameterizedItem::P_PORT).toInt();
+    qDebug() << "ParticleDistributionType::addView()" << index;
+    connectInputPort(dynamic_cast<ConnectableView *>(childView), index);
+}
diff --git a/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.h b/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.h
new file mode 100644
index 0000000000000000000000000000000000000000..8ef1f104efb2120db0d7d6104e7ae24c07073686
--- /dev/null
+++ b/GUI/coregui/Views/Components/SampleDesigner/ParticleDistributionView.h
@@ -0,0 +1,24 @@
+#ifndef PARTICLEDISTRIBUTIONVIEW_H
+#define PARTICLEDISTRIBUTIONVIEW_H
+
+#include "ConnectableView.h"
+
+//! Class representing view of distributed particle item
+class BA_CORE_API_ ParticleDistributionView : public ConnectableView
+{
+    Q_OBJECT
+
+public:
+    enum { Type = DesignerHelper::ParticleType };
+
+    ParticleDistributionView(QGraphicsItem *parent = 0);
+
+    int type() const { return Type; }
+
+    void addView(IView *childView, int row = 0);
+
+};
+
+
+#endif
+
diff --git a/GUI/coregui/Views/Components/SampleDesigner/SampleViewFactory.cpp b/GUI/coregui/Views/Components/SampleDesigner/SampleViewFactory.cpp
index 178eac0cd500ab9861a59f309c11789b0b2a327d..24461676a4fc8b19338c4612b0cb967841c34366 100644
--- a/GUI/coregui/Views/Components/SampleDesigner/SampleViewFactory.cpp
+++ b/GUI/coregui/Views/Components/SampleDesigner/SampleViewFactory.cpp
@@ -6,6 +6,7 @@
 #include "ParticleView.h"
 #include "TransformationView.h"
 #include "ParticleCoreShellView.h"
+#include "ParticleDistributionView.h"
 #include "InterferenceFunctionViews.h"
 #include "GUIHelpers.h"
 #include <QDebug>
@@ -18,6 +19,7 @@ QStringList SampleViewFactory::m_valid_item_names  = QStringList()
         << Constants::ParticleType
         << Constants::TransformationType
         << Constants::ParticleCoreShellType
+        << Constants::ParticleDistributionType
         << Constants::InterferenceFunction1DParaCrystalType
         << Constants::InterferenceFunction2DParaCrystalType
         << Constants::InterferenceFunction2DLatticeType;
@@ -53,6 +55,9 @@ IView *SampleViewFactory::createSampleView(const QString &name)
     else if (name==Constants::ParticleCoreShellType) {
         return new ParticleCoreShellView();
     }
+    else if (name==Constants::ParticleDistributionType) {
+        return new ParticleDistributionView();
+    }
     else if (name==Constants::InterferenceFunction1DParaCrystalType) {
         return new InterferenceFunction1DParaCrystalView();
     }
diff --git a/GUI/coregui/Views/Components/widgetbox/widgetbox.xml b/GUI/coregui/Views/Components/widgetbox/widgetbox.xml
index 96dc842cb8e7c8c148a6dfe4acb481247c890286..50da41c35e18f01b5f30bec1f0b2316356600685 100644
--- a/GUI/coregui/Views/Components/widgetbox/widgetbox.xml
+++ b/GUI/coregui/Views/Components/widgetbox/widgetbox.xml
@@ -232,6 +232,14 @@
             </widget>
         </categoryentry>
 
+        <categoryentry name="Distributed particle" icon="images/ParticleCoreShell.png">
+            <widget class="ParticleDistribution">
+                <property name="objectName">
+                    <string notr="true">somestring</string>
+                </property>
+            </widget>
+        </categoryentry>
+
     </category>
 
     <category name="Standard samples">