상속: Control, IResizable
 public SectionProcessingContext(Section section)
 {
     this.Section = section;
     CurrentControlIndex = -1;
     ExtendedLines = new List<Line>();
     TopOrderedControls = new List<Control>();
     ProcessedControlsBuffer = new List<Control>();
     BrokenControlsBuffer = new List<Control>();
     Spans = new List<SpanInfo>();
 }
예제 #2
0
        public SectionView(Report parentReport,IControlViewFactory controlViewFactory,Section section,Cairo.PointD sectionSpan)
            : base(section)
        {
            DesignCrossSectionControlsToAdd = new List<ControlViewBase> ();
            DesignCrossSectionControlsToRemove = new List<ControlViewBase> ();
            this.controlViewFactory = controlViewFactory;
            this.parentReport = parentReport;

            if (section is DetailSection)
                AllowCrossSectionControl = false; else {
                AllowCrossSectionControl = true;
            }

            SectionSpan = sectionSpan;
            controls = new System.Collections.Generic.List<ControlViewBase> ();
            AddControls (this.section.Controls);
            SectionGripperColor = sectionHeaderColor1;

            InvalidateBound ();
        }
예제 #3
0
        public SectionView(IControlViewFactory controlViewFactory, Section section,Cairo.PointD sectionSpan)
            : base(section)
        {
            sectionRenderer = controlViewFactory.ReportRenderer.RenderersDictionary [section.GetType ()] as SectionRenderer;
            SectionHederHeightInUnit = SectionheaderHeight / sectionRenderer.UnitMulitipier;
            DesignCrossSectionControlsToAdd = new List<ControlViewBase> ();
            DesignCrossSectionControlsToRemove = new List<ControlViewBase> ();
            this.controlViewFactory = controlViewFactory;

            if (section is DetailSection)
                AllowCrossSectionControl = false; else {
                AllowCrossSectionControl = true;
            }

            SectionSpan = sectionSpan;
            controls = new System.Collections.Generic.List<ControlViewBase> ();
            AddControls (this.section.Controls);
            SectionGripperColor = sectionHeaderColor1;

            InvalidateBound ();
        }
예제 #4
0
 public void CopyTo(Section s)
 {
     CopyBasicProperties(s);
     s.Name = Name;
      			s.CanGrow = CanGrow;
     s.CanShrink = CanShrink;
     s.KeepTogether = KeepTogether;
     foreach (Control ctrl in Controls) {
         s.Controls.Add( ctrl.CreateControl() as Control);
     }
 }
예제 #5
0
 private void addSectionView(Section section)
 {
     Cairo.PointD sectionSpan;
     if (sectionViews.Count > 0) {
         var previousSection = sectionViews [sectionViews.Count - 1];
         sectionSpan = new Cairo.PointD (0, previousSection.AbsoluteBound.Y + previousSection.AbsoluteBound.Height);
     } else {
         sectionSpan = new Cairo.PointD (0, 0);
     }
     var sectionView = new SectionView (controlViewFactory, section, sectionSpan);
     sectionViews.Add (sectionView);
     Height = sectionView.AbsoluteBound.Y + sectionView.AbsoluteBound.Height;
 }
예제 #6
0
 internal double measureBottomMarginFromSection(Section s)
 {
     return  s.Height - (Location.Y + Size.Height);
 }