whole_func_string: function _updateComponents() {
          this.scrollWheels = [];
          this._scrollingCount = 0;
          var dataSource = [];
          var sizeRatios = [];
          for (var i = 0; i < this._components.length; i++) {
              var component = this._components[i];
              component.createRenderable = _createRenderable.bind(this);
              var viewSequence = new VirtualViewSequence({
                  factory: component,
                  value: component.create(new Date(this._date.getTime()))
              });
              var options = LayoutUtility.combineOptions(
                  this.options.scrollController, {
                      layout: WheelLayout,
                      layoutOptions: this.options.wheelLayout,
                      flow: false,
                      direction: Utility.Direction.Y,
                      dataSource: viewSequence,
                      autoPipeEvents: true
                  }
              );
              var scrollController = new ScrollController(options);
              scrollController.on('scrollstart', _scrollWheelScrollStart.bind(this));
              scrollController.on('scrollend', _scrollWheelScrollEnd.bind(this));
              scrollController.on('pagechange', _scrollWheelPageChange.bind(this));
              var scrollWheel = {
                  component: component,
                  scrollController: scrollController,
                  viewSequence: viewSequence
              };
              this.scrollWheels.push(scrollWheel);
              component.on('click', _clickItem.bind(this, scrollWheel));
              dataSource.push(scrollController);
              sizeRatios.push(component.sizeRatio);
          }
  
          this.layout.setDataSource(dataSource);
          this.layout.setLayoutOptions({
              ratios: sizeRatios
          });
      }
func_code_string: function _updateComponents() {
          this.scrollWheels = [];
          this._scrollingCount = 0;
          var dataSource = [];
          var sizeRatios = [];
          for (var i = 0; i < this._components.length; i++) {
              var component = this._components[i];
              component.createRenderable = _createRenderable.bind(this);
              var viewSequence = new VirtualViewSequence({
                  factory: component,
                  value: component.create(new Date(this._date.getTime()))
              });
              var options = LayoutUtility.combineOptions(
                  this.options.scrollController, {
                      layout: WheelLayout,
                      layoutOptions: this.options.wheelLayout,
                      flow: false,
                      direction: Utility.Direction.Y,
                      dataSource: viewSequence,
                      autoPipeEvents: true
                  }
              );
              var scrollController = new ScrollController(options);
              scrollController.on('scrollstart', _scrollWheelScrollStart.bind(this));
              scrollController.on('scrollend', _scrollWheelScrollEnd.bind(this));
              scrollController.on('pagechange', _scrollWheelPageChange.bind(this));
              var scrollWheel = {
                  component: component,
                  scrollController: scrollController,
                  viewSequence: viewSequence
              };
              this.scrollWheels.push(scrollWheel);
              component.on('click', _clickItem.bind(this, scrollWheel));
              dataSource.push(scrollController);
              sizeRatios.push(component.sizeRatio);
          }
  
          this.layout.setDataSource(dataSource);
          this.layout.setLayoutOptions({
              ratios: sizeRatios
          });
      }
func_documentation_string: Updates the date/time components