diff MessageOrganiser.mm @ 28:953db6518738

leap version more or less there, needs btter results feedback but thats detail. "no movement" bit is stupid cos peopel can move their hand. light flash not work.
author Robert Tubb <rt300@eecs.qmul.ac.uk>
date Thu, 30 Oct 2014 18:35:00 +0000
parents 27cdf475aa4b
children a677c027e3a0
line wrap: on
line diff
--- a/MessageOrganiser.mm	Wed Oct 29 15:38:38 2014 +0000
+++ b/MessageOrganiser.mm	Thu Oct 30 18:35:00 2014 +0000
@@ -112,29 +112,31 @@
 
 
 void MessageOrganiser::setAllSlidersToValues(vector<int> values){
-    for(int i = 0; i < values.size(); i++){
-        setUIToParam(i, values[i]);
-    }
+    controlPanel->setValues(values);
 }
 // we want to set UI object
-void MessageOrganiser::setUIToParam(int index, int value){ // e.g. from MIDI incoming, will handle both box and sliders...
-    // theXY->setValueAndScale(candidateSynth.getParamValueForID(mids[i]), candidateSynth.getParamValueForID(mids[i+1]));
-    UIElement* elem;
-    // get the element
-    if(controlPanel->subElements.size() <= index){
-        cout << "ERROR: index out of range for num sliders" << endl;
-        return;
+void MessageOrganiser::setUIToParam(int index, int value){
+    
+    if(controlPanel->getPanelType() == ALL_SLIDERS){
+        
+        UIElement* elem;
+        // get the element
+        if(controlPanel->subElements.size() <= index){
+            cout << "ERROR: index out of range for num sliders" << endl;
+            return;
+        }
+        elem = controlPanel->subElements[index];
+        if ( elem->getType() == SLIDER){
+            ButtronSlider* theSlider = (ButtronSlider*)elem;
+            theSlider->setValueAndScale(value);
+            
+        }
+    }else if (controlPanel->getPanelType() == LEAP6DOF){
+        Leap6DBox* box =  (Leap6DBox*)controlPanel->subElements[0];
+        box->setValueAndScale(index,value);
+        
     }
-    elem = controlPanel->subElements[index];
-    if ( elem->getType() == SLIDER){
-        ButtronSlider* theSlider = (ButtronSlider*)elem;
-        theSlider->setValueAndScale(value);
-        
-    }else if ( elem->getType() == LEAP6D){
-        Leap6DBox* theBox = (Leap6DBox*)elem;
-        theBox->setValueAndScale(index, value);
-    }
-
+    
 };