コード例 #1
0
        public override void Build(InLandscape landscape, BuildTracker tracker)
        {
            tracker.TeX.Append(Helper.Begin(Helper.Environments.landscape));
            foreach (var landscapeObject in landscape.Items)
            {
                var objectLandscapeDepending = landscapeObject as ILandscapeDepending;
                if (objectLandscapeDepending != null)
                {
                    objectLandscapeDepending.Landscape = true;
                }

                var builder = _repository.BuilderFor(landscapeObject);
                builder.Build(landscapeObject, tracker);
            }
            tracker.TeX.Append(Helper.End(Helper.Environments.landscape));
            tracker.Track(landscape.Items);
        }
コード例 #2
0
        public void Report(object objectToReport, BuildTracker tracker)
        {
            if (objectToReport == null)
            {
                return;
            }

            var builder = BuilderFor(objectToReport);

            if (builder == null)
            {
                throw new BuilderNotFoundException(objectToReport);
            }

            builder.Build(objectToReport, tracker);
            tracker.Track(objectToReport);
        }
コード例 #3
0
 public override void Build(DataTable dataTable, BuildTracker tracker)
 {
     _builderRepository.Report(new Table(dataTable.DefaultView, new Text(dataTable.TableName)), tracker);
 }
コード例 #4
0
 public abstract void Build(TObject objectToReport, BuildTracker tracker);
コード例 #5
0
 public virtual void Build(object objectToReport, BuildTracker tracker)
 {
     Build(objectToReport.DowncastTo <TObject>(), tracker);
 }
コード例 #6
0
 public override void Build(StringBuilder sb, BuildTracker tracker)
 {
     _builderRepository.Report(sb.ToString(), tracker);
 }
コード例 #7
0
 public void Report(IEnumerable <object> objectsToReport, BuildTracker tracker)
 {
     objectsToReport.Each(o => Report(o, tracker));
 }
コード例 #8
0
 public override void Build(T objectToReport, BuildTracker tracker)
 {
     //default implementation
     tracker.TeX.Append(TeXChunk(objectToReport));
 }
コード例 #9
0
 public override void Build(T text, BuildTracker tracker)
 {
     base.Build(text, tracker);
     tracker.Track(text.Items);
 }
コード例 #10
0
 public override void Build(InlineImage image, BuildTracker tracker)
 {
     base.Build(image, tracker);
     tracker.Track(image);
 }
コード例 #11
0
 public override void Build(TextBox objectToReport, BuildTracker tracker)
 {
     tracker.TeX.Append(TeX.Helper.TextBox(objectToReport.Converter.StringToTeX(objectToReport.Title), _builderRepository.ChunkFor(objectToReport.Content)));
 }
コード例 #12
0
 public override void Build(string stringToReport, BuildTracker tracker)
 {
     _builderRepository.Report(new Text(stringToReport), tracker);
 }