~halega/+junk/sharpdevelop

« back to all changes in this revision

Viewing changes to src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/ReportPreview.cs

  • Committer: sk
  • Date: 2011-09-10 05:17:57 UTC
  • Revision ID: halega@halega.com-20110910051757-qfouz1llya9m6boy
4.1.0.7915 Release Candidate 1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
 
2
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
 
3
 
 
4
using System;
 
5
using ICSharpCode.Core;
 
6
using ICSharpCode.Reports.Core;
 
7
using ICSharpCode.Reports.Core.Globals;
 
8
using ICSharpCode.SharpDevelop.Gui;
 
9
 
 
10
namespace ICSharpCode.Reports.Addin.SecondaryViews
 
11
{
 
12
        /// <summary>
 
13
        /// Description of the view content
 
14
        /// </summary>
 
15
        internal class ReportPreview : AbstractSecondaryViewContent
 
16
        {
 
17
                PreviewControl previewControl;
 
18
                ReportDesignerLoader designerLoader;
 
19
                
 
20
                StandartPreviewManager reportManager;
 
21
                /// <summary>
 
22
                /// Creates a new ReportPreview object
 
23
                /// </summary>
 
24
 
 
25
                public ReportPreview(ReportDesignerLoader loader,IViewContent content):base(content)
 
26
                {
 
27
                        if (loader == null) {
 
28
                                throw new ArgumentNullException("loader");
 
29
                        }
 
30
                        this.designerLoader = loader;
 
31
                        base.TabPageText = ResourceService.GetString("SharpReport.Preview");
 
32
                }
 
33
                
 
34
                
 
35
                protected override void LoadFromPrimary()
 
36
                {
 
37
                        reportManager = new StandartPreviewManager();
 
38
                        ReportModel model = designerLoader.CreateRenderableModel();
 
39
                        AbstractRenderer rc = reportManager.CreateRenderer (model);
 
40
                        if (rc != null) {
 
41
                                previewControl.ShowPreview(rc,GlobalValues.DefaultZoomFactor,true);
 
42
                        }
 
43
                }
 
44
                
 
45
                
 
46
                protected override void SaveToPrimary()
 
47
                {
 
48
//                      throw new NotImplementedException();
 
49
                }
 
50
                
 
51
        
 
52
                /// <summary>
 
53
                /// The <see cref="System.Windows.Forms.Control"/> representing the view
 
54
                /// </summary>
 
55
                public override object Control {
 
56
                        get {
 
57
                                if (this.previewControl == null) {
 
58
                                        previewControl = new PreviewControl();
 
59
                                }
 
60
                                return previewControl;
 
61
                        }
 
62
                }
 
63
                
 
64
                
 
65
                /// <summary>
 
66
                /// Cleans up all used resources
 
67
                /// </summary>
 
68
                public sealed override void Dispose()
 
69
                {
 
70
                        try {
 
71
                                if (this.reportManager != null) {
 
72
                                        this.reportManager.Dispose();
 
73
                                }
 
74
                                if (this.previewControl != null) {
 
75
                                        previewControl.Dispose();
 
76
                                }
 
77
                                
 
78
                        } finally {
 
79
                                base.Dispose();
 
80
                        }
 
81
                }
 
82
        }
 
83
}