fdBench.pas 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. unit fdBench;
  2. interface
  3. uses
  4. Winapi.Windows,
  5. Winapi.Messages,
  6. System.SysUtils,
  7. System.Variants,
  8. System.Classes,
  9. Vcl.Graphics,
  10. Vcl.Controls,
  11. Vcl.Forms,
  12. Vcl.Dialogs,
  13. Vcl.Menus,
  14. Vcl.ComCtrls,
  15. Vcl.ExtCtrls,
  16. fCanvasD,
  17. fMegacubeD,
  18. fMegaglassD,
  19. fSmokingD,
  20. fVolcanoD,
  21. fWhirlD;
  22. type
  23. TFormBench = class(TForm)
  24. PanelLeft: TPanel;
  25. tvBench: TTreeView;
  26. PageControl: TPageControl;
  27. tsCanvas: TTabSheet;
  28. tsMegacube: TTabSheet;
  29. tsMegaglasscube: TTabSheet;
  30. tsSmoking: TTabSheet;
  31. tsVolcano: TTabSheet;
  32. tsWhirlwind: TTabSheet;
  33. procedure FormCreate(Sender: TObject);
  34. procedure FormShow(Sender: TObject);
  35. procedure tvBenchClick(Sender: TObject);
  36. private
  37. public
  38. end;
  39. var
  40. FormBench: TFormBench;
  41. //----------------------------------------------------------------------
  42. implementation
  43. //----------------------------------------------------------------------
  44. {$R *.dfm}
  45. procedure TFormBench.FormCreate(Sender: TObject);
  46. begin
  47. // Canvas
  48. FormCanvas := TFormCanvas.Create(tsCanvas);
  49. FormCanvas.Parent := tsCanvas;
  50. FormCanvas.Align := alClient;
  51. FormCanvas.BorderStyle := bsNone;
  52. FormCanvas.GLSceneViewer.Height := 256;
  53. FormCanvas.GLSceneViewer.Width := 256;
  54. FormCanvas.Show;
  55. // Megacube
  56. FormMegacube := TFormMegacube.Create(tsMegacube);
  57. FormMegacube.Parent := tsMegacube;
  58. FormMegacube.Align := alClient;
  59. FormMegacube.BorderStyle := bsNone;
  60. FormMegacube.Show;
  61. // Megaglasscube
  62. FormMegaglasscube := TFormMegaglasscube.Create(tsMegaglasscube);
  63. FormMegaglasscube.Parent := tsMegaglasscube;
  64. FormMegaglasscube.Align := alClient;
  65. FormMegaglasscube.BorderStyle := bsNone;
  66. FormMegaglasscube.Show;
  67. // Smoking
  68. FormSmoking := TFormSmoking.Create(tsSmoking);
  69. FormSmoking.Parent := tsSmoking;
  70. FormSmoking.Align := alClient;
  71. FormSmoking.BorderStyle := bsNone;
  72. FormSmoking.Show;
  73. // Volcano
  74. FormVolcano := TFormVolcano.Create(tsVolcano);
  75. FormVolcano.Parent := tsVolcano;
  76. FormVolcano.Align := alClient;
  77. FormVolcano.BorderStyle := bsNone;
  78. FormVolcano.Show;
  79. // Whirlwind
  80. FormWhirl := TFormWhirl.Create(tsWhirlwind);
  81. FormWhirl.Parent := tsWhirlwind;
  82. FormWhirl.Align := alClient;
  83. FormWhirl.BorderStyle := bsNone;
  84. FormWhirl.Show;
  85. end;
  86. //----------------------------------------------------------------------
  87. procedure TFormBench.FormShow(Sender: TObject);
  88. begin
  89. PageControl.ActivePage := tsCanvas;
  90. end;
  91. //----------------------------------------------------------------------
  92. procedure TFormBench.tvBenchClick(Sender: TObject);
  93. begin
  94. tvBench.Items[0].DropHighlighted := False;
  95. case tvBench.Selected.Index of
  96. 0:
  97. PageControl.ActivePage := tsCanvas;
  98. 1:
  99. PageControl.ActivePage := tsMegacube;
  100. 2:
  101. PageControl.ActivePage := tsMegaglasscube;
  102. 3:
  103. PageControl.ActivePage := tsSmoking;
  104. 4:
  105. PageControl.ActivePage := tsVolcano;
  106. 5:
  107. PageControl.ActivePage := tsWhirlwind;
  108. end;
  109. end;
  110. end.