private void CreatePerDayCheckboxes() { // Create the document view. var n = FestivalDays.Count; var documentWidth = View.Frame.Width - 2 * _xMargin; var documentHeight = n * _labelHeight + (n - 1) * _yBetweenLabels; var documentFrame = new CGRect(0, 0, documentWidth, documentHeight); var documentView = new NSView(documentFrame); // Create the scroll view. var scrollerHeight = _yCurr - _yControlsMargin - _controlHeight - _yBetweenControls; _yCurr -= scrollerHeight; var scrollerFrame = new CGRect(_xMargin, _yCurr, documentWidth, scrollerHeight); var scrollerView = ControlsFactory.NewStandardScrollView(scrollerFrame, documentView, true); View.AddSubview(scrollerView); // Populate the document view. var yCurr = documentView.Frame.Height - _labelHeight; var labelRect = new CGRect(0, yCurr, _labelWidth, _labelHeight); foreach (var day in FestivalDays) { // Create the day label. var label = ControlsFactory.NewStandardLabel(labelRect, true); label.StringValue = Screening.LongDayString(day); documentView.AddSubview(label); // Create the film fan checkboxes. var xCurr = _labelWidth + _xBetweenControls; var daySingleton = new List <DateTime> { day }; CreateFilmFanCheckboxes(documentView, new CGPoint(xCurr, yCurr), daySingleton); // Update the vertical position. yCurr -= _labelHeight + _yBetweenLabels; labelRect.Y = yCurr; } // Set sample view used to disable resizing. _sampleView = scrollerView; }
private string ItemTitle(DateTime day) { return(Screening.LongDayString(day)); }