12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- unit fpce_mainform;
- {$mode objfpc}{$H+}
- interface
- uses
- Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
- EditBtn, ExtCtrls, ComCtrls, ShellCtrls;
- type
- { TformCorelExplorer }
- TformCorelExplorer = class(TForm)
- Label1: TLabel;
- Label2: TLabel;
- labelSize: TLabel;
- labelVersion: TLabel;
- labelFilename: TLabel;
- shellInput: TShellTreeView;
- procedure buttonQuitClick(Sender: TObject);
- procedure shellInputSelectionChanged(Sender: TObject);
- private
- { private declarations }
- function CheckInput(): Boolean;
- public
- { public declarations }
- end;
- var
- formCorelExplorer: TformCorelExplorer;
- implementation
- uses
- fpvectorial, cdrvectorialreader, svgvectorialwriter, pdfvectorialreader,
- fpvtocanvas;
- {$R *.lfm}
- { TformCorelExplorer }
- procedure TformCorelExplorer.buttonQuitClick(Sender: TObject);
- begin
- Close;
- end;
- procedure TformCorelExplorer.shellInputSelectionChanged(Sender: TObject);
- var
- Vec: TvVectorialDocument;
- Reader: TvCDRVectorialReader;
- lFormat: TvVectorialFormat;
- lChunk, lCurChunk: TCDRChunk;
- Str: string;
- begin
- // First check the in input
- if not CheckInput() then Exit;
- // Now read the data from the input file
- Reader := TvCDRVectorialReader.Create;
- try
- Reader.ExploreFromFile(shellInput.GetSelectedNodePath(), lChunk);
- labelFilename.Caption := 'Filename: ' + shellInput.GetSelectedNodePath();
- if (lChunk.ChildChunks <> nil) and (lChunk.ChildChunks.First <> nil) then
- begin
- // Version Chunk
- lCurChunk := TCDRChunk(lChunk.ChildChunks.First);
- Str := TCDRChunkVRSN(lCurChunk).VersionStr;
- labelVersion.Caption := 'Version: ' + Str;
- // Main data
- lCurChunk := TCDRChunk(lChunk.ChildChunks.Items[1]);
- labelSize.Caption := 'Size: ' + ;
- end;
- finally
- Reader.Free;
- end;
- end;
- function TformCorelExplorer.CheckInput(): Boolean;
- var
- lPath: String;
- begin
- lPath := shellInput.GetSelectedNodePath();
- Result := (ExtractFileExt(lPath) = STR_CORELDRAW_EXTENSION);
- end;
- end.
|