anchor.diff:  
   class AltitudePage extends Page {
     final List widgets;
  +  final List props;
     final AltitudeWidget altitude;
   
     int _selected = 0;
  
positive.code: 
    List<String> switchNames = <String>["FOO", "BAR", "BAZ", "CODEFU"];
  
    AltitudePage()
        : widgets = [],
          altitude = new AltitudeWidget(0, 0, name: 'alt'),
          super('altitude') {
      widgets
        ..add(altitude)
        ..add(new SwitchWidget(0, 16, name: switchNames.first));
      widgets[_selected].isSelected = true;
    }
  
    onKnob(KnobAction knob) {
      var sel = widgets[_selected];
      if (knob.id == 0) {
        if (sel is AdjustableWidget) {
          if (knob.direction == Direction.left) {
            altitude.adjust(-1);
          } else if (knob.direction == Direction.right) {
            altitude.adjust(1);
          } else if (knob.direction == Direction.down) {
            altitude.shift(1);
          }
  
negative.code:       }
        display.display();
      }
    }
  
    _draw() {
      widgets.forEach((e) => e.draw(display));
      display.display();
    }
  }
  
  