fpvviewer: Adds a new button to use the new fpvectorial debug system

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2467 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
sekelsenmat
2012-06-23 13:22:12 +00:00
parent 1f538d2f04
commit e29764a85f
2 changed files with 55 additions and 15 deletions

View File

@ -11,14 +11,14 @@ object frmFPVViewer: TfrmFPVViewer
LCLVersion = '1.1'
object editFileName: TFileNameEdit
Left = 8
Height = 21
Height = 23
Top = 8
Width = 304
DialogOptions = []
FilterIndex = 0
HideDirectories = False
ButtonWidth = 23
NumGlyphs = 0
NumGlyphs = 1
MaxLength = 0
TabOrder = 0
end
@ -33,7 +33,7 @@ object frmFPVViewer: TfrmFPVViewer
end
object spinScale: TFloatSpinEdit
Left = 72
Height = 21
Height = 23
Top = 97
Width = 168
DecimalPlaces = 6
@ -46,9 +46,9 @@ object frmFPVViewer: TfrmFPVViewer
end
object Label1: TLabel
Left = 8
Height = 14
Height = 16
Top = 97
Width = 45
Width = 47
Caption = 'Scale by:'
ParentColor = False
end
@ -70,19 +70,19 @@ object frmFPVViewer: TfrmFPVViewer
Height = 410
Top = 128
Width = 485
PageIndex = 0
PageIndex = 1
Anchors = [akTop, akLeft, akRight, akBottom]
TabOrder = 4
TabStop = True
object pageViewer: TPage
end
object Page2: TPage
object pageTreeData: TPage
object DXFTreeView: TTreeView
Left = 8
Height = 313
Top = 0
Width = 321
DefaultItemHeight = 19
DefaultItemHeight = 18
TabOrder = 0
end
end
@ -116,15 +116,15 @@ object frmFPVViewer: TfrmFPVViewer
end
object Label2: TLabel
Left = 8
Height = 14
Height = 16
Top = 72
Width = 68
Width = 74
Caption = 'Y adjustment:'
ParentColor = False
end
object spinAdjustY: TSpinEdit
Left = 80
Height = 21
Height = 23
Top = 72
Width = 72
Increment = 100
@ -134,7 +134,7 @@ object frmFPVViewer: TfrmFPVViewer
end
object spinAdjustX: TSpinEdit
Left = 232
Height = 21
Height = 23
Top = 72
Width = 72
Increment = 50
@ -144,10 +144,19 @@ object frmFPVViewer: TfrmFPVViewer
end
object Label3: TLabel
Left = 160
Height = 14
Height = 16
Top = 72
Width = 68
Width = 74
Caption = 'X adjustment:'
ParentColor = False
end
object Button2: TButton
Left = 312
Height = 25
Top = 70
Width = 168
Caption = 'View FPVectorial Tokens'
OnClick = Button2Click
TabOrder = 10
end
end

View File

@ -18,13 +18,14 @@ type
btnViewDXFTokens: TButton;
Button1: TButton;
btnContourLines: TButton;
Button2: TButton;
buttonRenderingTest: TButton;
editFileName: TFileNameEdit;
Label2: TLabel;
Label3: TLabel;
notebook: TNotebook;
pageViewer: TPage;
Page2: TPage;
pageTreeData: TPage;
spinAdjustY: TSpinEdit;
spinAdjustX: TSpinEdit;
spinScale: TFloatSpinEdit;
@ -34,12 +35,14 @@ type
procedure btnVisualizeClick(Sender: TObject);
procedure btnViewDXFTokensClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure buttonRenderingTestClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure spinScaleChange(Sender: TObject);
private
procedure MyContourLineDrawingProc(z,x1,y1,x2,y2: Double);
function FPVDebugAddItemProc(AStr: string; AParent: Pointer): Pointer;
public
{ public declarations }
Drawer: TFPVVDrawer;
@ -224,6 +227,26 @@ begin
end;
end;
procedure TfrmFPVViewer.Button2Click(Sender: TObject);
var
Vec: TvVectorialDocument;
begin
// First check the in input
//if not CheckInput() then Exit;
notebook.PageIndex := 1;
Vec := TvVectorialDocument.Create;
try
Vec.ReadFromFile(editFileName.FileName);
DXFTreeView.Items.Clear;
Vec.GenerateDebugTree(@FPVDebugAddItemProc);
finally
Vec.Free;
end;
end;
procedure TfrmFPVViewer.buttonRenderingTestClick(Sender: TObject);
var
VecDoc: TvVectorialDocument;
@ -296,5 +319,13 @@ begin
Round(y2 * spinScale.Value / 20));
end;
function TfrmFPVViewer.FPVDebugAddItemProc(AStr: string; AParent: Pointer): Pointer;
var
lTreeItem: TTreeNode;
begin
lTreeItem := DXFTreeView.Items.AddChild(TTreeNode(AParent), AStr);
Result := lTreeItem;
end;
end.