   // The corresponding widget invokes it's event
   // handler to react to the event.
   canvas.scan();
+
+  if(dialTimer.done() && btnSlider.touched){
+    if(incrementTimer.repeat()){
+      slider.currentValue += increment;
+      if(slider.currentValue > 100) slider.currentValue = 100;
+      if(slider.currentValue < 0) slider.currentValue = 0;
+      if(slider.currentValue == 100 || slider.currentValue == 0) increment = increment * -1;
+      if(canvas.currentScreen == &screen_dial) slider.update();
+      dial.setCV(map(slider.currentValue,0,100,dial.scaleMin,dial.scaleMax));
+    }
+  }
 }
Slider slider = Slider();
IconButton btnBulb = IconButton(50,50,lightbulb_off,lightbulb_on);
IconButton btnSlider = IconButton(60,30,slider_off,slider_on);

bool passwordCorrect = false;

//==================================
// EVENT HANDLING ROUTINES


void sliderEventHandler(Slider* sld){
	dial.setCV(map(sld->currentValue,0,100,dial.scaleMin,dial.scaleMax));
  dialTimer.reset();
  dialTimer.start();
}

void numkeyEventHandler(Numkey* nk){
