main.pas 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. unit main;
  2. {$MODE ObjFPC}
  3. {$H+}
  4. interface
  5. uses js, web,Classes;
  6. Type
  7. { --------------------------------------------------------------------
  8. TBaseMainForm
  9. --------------------------------------------------------------------}
  10. TBaseMainForm = class(TComponent)
  11. Published
  12. navbarNav : TJSHTMLElement;
  13. navbarScrollingDropdown : TJSHTMLElement;
  14. userCss : TJSHTMLTextAreaElement;
  15. btnMinimize : TJSHTMLButtonElement;
  16. btnClassNames : TJSHTMLButtonElement;
  17. processedCss : TJSHTMLTextAreaElement;
  18. Procedure doMinimize(Event : TJSEvent); async; virtual; abstract;
  19. Procedure doExtract(Event : TJSEvent); async; virtual; abstract;
  20. Public
  21. Constructor Create(aOwner : TComponent); override;
  22. Procedure BindElements; virtual;
  23. Procedure BindElementEvents; virtual;
  24. end;
  25. implementation
  26. { --------------------------------------------------------------------
  27. TBaseMainForm
  28. --------------------------------------------------------------------}
  29. Constructor TBaseMainForm.create(aOwner : TComponent);
  30. begin
  31. Inherited;
  32. BindElements;
  33. BindElementEvents;
  34. end;
  35. Procedure TBaseMainForm.BindElements;
  36. begin
  37. navbarNav:=TJSHTMLElement(document.getelementByID('navbarNav'));
  38. navbarScrollingDropdown:=TJSHTMLElement(document.getelementByID('navbarScrollingDropdown'));
  39. userCss:=TJSHTMLTextAreaElement(document.getelementByID('userCss'));
  40. btnMinimize:=TJSHTMLButtonElement(document.getelementByID('btnMinimize'));
  41. btnClassNames:=TJSHTMLButtonElement(document.getelementByID('btnClassNames'));
  42. processedCss:=TJSHTMLTextAreaElement(document.getelementByID('processedCss'));
  43. end;
  44. Procedure TBaseMainForm.BindElementEvents;
  45. begin
  46. btnMinimize.AddEventListener('click',@doMinimize);
  47. btnClassNames.AddEventListener('click',@doExtract);
  48. end;
  49. end.