Hallo liebe DPler,
ich bin gerade dabei in Delphi 2009 eine Komponente zu entwickeln.
Da Borland (oder mittlerweile Embacadero?) ja laut Lizenz untersagt die DesignIntf mit auszuliefern habe ich die Komponente, wie es sich ja auch gehört, in ein RunTime - und ein DesignTime
Package getrennt.
Jetzt habe ich aber ein großes Problem:
Ich habe in meiner Komponente (definiert im RunTime
Package) eine Property die eine eigene Klasse referenziert, die im DesignTime
Package definiert ist.
Diese Klasse habe ich in dem DesignTime
Package definiert, weil die Klasse eine Property vom Typ TFilename hat, für die ich einen PropertyEditor zur Verfügung stelle.
Wie schaffe ich das jetzt, dass ich diese Klasse als Teil des RunTime Packages verwenden kann?
Zur Verdeutlichung hier nochmal die Klassendefinitionen:
Erstmal die eigentliche Komponente. Die Property um die es geht ist PDFSettings.
Delphi-Quellcode:
TceReportGenerator = class(TComponent)
private
{ Private-Deklarationen }
FPageSettings: TPageSettings;
FOutputDevice: TOutputDevice;
FNoData: TNoDataBehavior;
FPreview: Boolean;
FPreviewSettings: TPreviewSettings;
FPDFSettings: TPDFSettings;
FView: TcxGridDBBandedTableView;
FCaption,
FUserName: String;
FReport: TppReport;
FPipeline: TppDBPipeline;
FHeaderBand,
FDetailBand,
FFooterBand: TppBand;
procedure SetView(Value: TcxGridDBBandedTableView);
procedure SetPageSettings(Value: TPageSettings);
protected
{ Protected-Deklarationen }
public
{ Public-Deklarationen }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Print;
published
{ Published-Deklarationen }
property PageSettings: TPageSettings read FPageSettings write SetPageSettings;
property OutputDevice: TOutputDevice read FOutputDevice write FOutputDevice default Screen;
property BehaviorOnNoData: TNoDataBehavior read FNoData write FNoData;
property PreviewDialog: Boolean read FPreview write FPreview default True;
property PreviewSettings: TPreviewSettings read FPreviewSettings write FPreviewSettings;
property PDFSettings: TPDFSettings read FPDFSettings write FPDFSettings; //<--- Hier ist die Eigenschaft ;-)
property TableView: TcxGridDBBandedTableView read FView write SetView;
property ReportCaption: String read FCaption write FCaption;
property ReportUserName: String read FUserName write FUserName;
end;
Und hier die Definition von TPDFSettings:
Delphi-Quellcode:
TPDFSettings = class
private
FAuthor,
FKeyWords,
FSubject,
FTitle: String;
FFileName: TFileName;
FCacheI,
FScaleI,
FOpen: Boolean;
FCompression: TCompressionLevel;
FFontList: TStringList;
FEmbedOptions: TEmbedOptions;
public
constructor Create;
destructor Destroy; override;
published
property Author: String read FAuthor write FAuthor;
property KeyWords: String read FKeyWords write FKeyWords;
property Subject: String read FSubject write FSubject;
property Title: String read FTitle write FTitle;
property FileName: TFileName read FFileName write FFileName;
property CacheImages: Boolean read FCacheI write FCacheI default True;
property ScaleImages: Boolean read FScaleI write FScaleI default True;
property OpenPDF: Boolean read FOpen write FOpen default False;
property CompressionLevel: TCompressionLevel read FCompression write FCompression default clDefault;
property EmbededFontList: TStringList read FFontList write FFontList;
property EmbedFontOptions: TEmbedOptions read FEmbedOptions write FEmbedOptions;
end;
Ich hoffe ihr könnt mir helfen...
Vielen Dank schon mal im Vorraus.
Carsten
//EDIT:
Ok, vergesst das alles.
Ich war einfach nur zu doof die Packages richtig zu Compilieren.
Tut mir Leid...
--> CLOSED