MainUnit.pas 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. unit MainUnit;
  2. {$mode objfpc}{$H+}
  3. interface
  4. uses
  5. Classes, SysUtils, Fresnel.Forms, Fresnel.DOM, Fresnel.Controls, Fresnel.Events, FCL.Events;
  6. type
  7. { TMainForm }
  8. TMainForm = class(TFresnelForm)
  9. procedure MainFormCreate(Sender: TObject);
  10. public
  11. TextDiv: TDiv;
  12. Span1: TSpan;
  13. Label1, Label2: TLabel;
  14. end;
  15. var
  16. MainForm: TMainForm;
  17. implementation
  18. {$R *.lfm}
  19. { TMainForm }
  20. procedure TMainForm.MainFormCreate(Sender: TObject);
  21. function AddDiv(aName: string; aParent: TFresnelElement): TDiv;
  22. begin
  23. Result:=TDiv.Create(Self);
  24. Result.Name:=aName;
  25. Result.Parent:=aParent;
  26. end;
  27. function AddSpan(aName: string; aParent: TFresnelElement): TSpan;
  28. begin
  29. Result:=TSpan.Create(Self);
  30. Result.Name:=aName;
  31. Result.Parent:=aParent;
  32. end;
  33. function AddLabel(aName, aCaption: string; aParent: TFresnelElement): TLabel;
  34. begin
  35. Result:=TLabel.Create(Self);
  36. Result.Name:=aName;
  37. Result.Caption:=aCaption;
  38. Result.Parent:=aParent;
  39. end;
  40. begin
  41. Stylesheet.Text:=':root { font-size: 15px; }'+LineEnding
  42. +'#TextDiv { font-size: 30px; }'+LineEnding
  43. +'#Span1 { border: 1px solid blue; padding: 2px 5px; background: #888; }'
  44. +'label { border: 1px solid red; }';
  45. TextDiv:=AddDiv('TextDiv',Self);
  46. TextDiv.Style:='width: 50px; margin: 5px;';
  47. Span1:=AddSpan('Span1',TextDiv);
  48. Label1:=AddLabel('Label1','Fresnel',Span1);
  49. Label1.Style:='color: #800;';
  50. Label2:=AddLabel('Label2','demonstration',Span1);
  51. Label2.Style:='color: #080;';
  52. end;
  53. end.