Index: /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapi.cc
===================================================================
--- /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapi.cc	(revision 12310)
+++ /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapi.cc	(revision 12311)
@@ -97,16 +97,19 @@
 ClickableObjectID MouseAPI::addClickableObject(const Vector3& position, float radius, const std::list<MouseButtonCode::ByEnum>& buttons, std::function<void(MouseButtonCode::ByEnum)> onClickedFunction)
 {
-    clickEvents.insert(clickEvents.begin(),{!clickEvents.empty() ? clickEvents.back().id + 1:0,position,radius,buttons,onClickedFunction});
-    return clickEvents.back().id;
+    ClickableObjectID id = !clickEvents.empty() ? clickEvents.back().id + 1:0;
+    clickEvents.insert(clickEvents.end(),{id,position,radius,buttons,onClickedFunction});
+    return id;
 }
 ScrollableElementID MouseAPI::addScrollElement(const Vector3& position, float radius, std::function<void(int abs,int rel,const IntVector2& mousePos)> onScrolledFunction)
 {
-    scrollEvents.insert(scrollEvents.begin(),{!scrollEvents.empty() ? scrollEvents.back().id + 1:0,position,radius,onScrolledFunction});
-    return scrollEvents.back().id;
+    ScrollableElementID id = !scrollEvents.empty() ? scrollEvents.back().id + 1:0;
+    scrollEvents.insert(scrollEvents.end(),{id,position,radius,onScrolledFunction});
+    return id;
 }
 ScrollableElementID MouseAPI::addScrollElement(std::function<void(int abs,int rel,const IntVector2& mousePos)> onScrolledFunction)
 {
-    scrollEvents.insert(scrollEvents.begin(),{!scrollEvents.empty() ? scrollEvents.back().id + 1:0,onScrolledFunction});
-    return scrollEvents.back().id;
+    ScrollableElementID id = !scrollEvents.empty() ? scrollEvents.back().id + 1:0;
+    scrollEvents.insert(scrollEvents.end(),{id,onScrolledFunction});
+    return id;
 }
 
Index: /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.cc
===================================================================
--- /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.cc	(revision 12310)
+++ /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.cc	(revision 12311)
@@ -35,7 +35,23 @@
     // set factor to 120% or 80% of the current size, depending on increase or decrease
     float factor = curRadius/10*(1+rel/600.0);
+    // return if factor is outside of range [0.5,5] (limit size)
+    if(factor > 5 || factor < 0.5) return;
     //scale the sphere with this factor and change the radius
     this->setScale(factor);
     MouseAPI::getInstance().changeRadiusOfScrollableElement(sphereid,factor*10);
+}
+
+//
+void MouseAPIExample::clickleft(MouseButtonCode::ByEnum mouse)
+{
+     //MouseAPI::getInstance().changeRadiusOfClickableObject(cubeid,10);
+    orxout() << "left" << "\n";
+}
+
+//
+void MouseAPIExample::clickright(MouseButtonCode::ByEnum mouse)
+{
+     //MouseAPI::getInstance().changeRadiusOfClickableObject(cubeid,10);
+    orxout() << "right" << "\n";
 }
 
@@ -57,4 +73,10 @@
         sphereid = MouseAPI::getInstance().addScrollElement(this->getWorldPosition(), 10, [this](int abs, int rel, const IntVector2& mousePos){this->changesizeonscroll(abs,rel,mousePos);});
     }
+    else if(this->getId() == 3) // id == 3; long block
+    {
+        // add the left and right outermost part of the long block to the list with clickable Objects and define clickleft/clickright to be called
+        leftid = MouseAPI::getInstance().addClickableObject(this->getWorldPosition(),10,std::list<MouseButtonCode::ByEnum>{MouseButtonCode::Left,MouseButtonCode::Right},[this](MouseButtonCode::ByEnum mouse){this->clickleft(mouse);});
+        rightid = MouseAPI::getInstance().addClickableObject(this->getWorldPosition(),10,std::list<MouseButtonCode::ByEnum>{MouseButtonCode::Left,MouseButtonCode::Right},[this](MouseButtonCode::ByEnum mouse){this->clickright(mouse);});
+    }
 
     // activate MouseAPI
Index: /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.h
===================================================================
--- /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.h	(revision 12310)
+++ /code/branches/MouseAPI_FS19/src/modules/MouseAPI/mouseapiexample.h	(revision 12311)
@@ -18,4 +18,6 @@
     void changesizeonclick(MouseButtonCode::ByEnum mouse);
     void changesizeonscroll(int abs,int rel,const IntVector2& mousePos);
+    void clickleft(MouseButtonCode::ByEnum mouse);
+    void clickright(MouseButtonCode::ByEnum mouse);
     inline void setId(int id)
         { this->id = id; }
@@ -26,5 +28,5 @@
     ClickableObjectID cubeid;
     ScrollableElementID sphereid;
-    static std::list<MouseAPIExample> blocks;
+    ClickableObjectID leftid,rightid;
 };
 }
