democlasstopas.html 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <!DOCTYPE html>
  2. <html>
  3. <head id="head">
  4. <meta charset="utf-8"/>
  5. <title>Generate class from Javascript object</title>
  6. <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet"/>
  7. <script src="https://code.jquery.com/jquery-3.3.1.js" type="text/javascript"></script>
  8. <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" crossorigin="anonymous"></script>
  9. <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" type="text/javascript"></script>
  10. <!--
  11. <script type="application/javascript" src="theme.js"></script>
  12. -->
  13. <script type="application/javascript" src="democlasstopas.js"></script>
  14. </head>
  15. <body>
  16. <div class="container-fluid">
  17. <div class="row">
  18. <div class="col-md-3">
  19. <div class="form-group">
  20. <label for="edtJSObject">Object instance path</label>
  21. <input type="text" class="form-control" id="edtJSObject" aria-describedby="lblJSObject" placeholder="Object instance path" value="">
  22. <small id="lblJSObject" class="form-text text-muted">Path to instance of javascript object, relative to global scope</small>
  23. </div>
  24. </div>
  25. <div class="col-md-3">
  26. <div class="form-group">
  27. <label for="edtExternalName">Pascal Class external name</label>
  28. <input type="text" class="form-control" id="edtExternalName" aria-describedby="lblExternalName" placeholder="Class external name" value="">
  29. <small id="lblExternalName" class="form-text text-muted">The Object Pascal definition class external (JS) name.</small>
  30. </div>
  31. </div>
  32. <div class="col-md-3">
  33. <div class="form-group">
  34. <label for="edtPascalClass">Pascal Class name</label>
  35. <input type="text" class="form-control" id="edtPascalClass" aria-describedby="lblPascalClass" placeholder="Class name" value="">
  36. <small id="lblPascalClass" class="form-text text-muted">The Object Pascal definition class name.</small>
  37. </div>
  38. </div>
  39. <div class="col-md-3">
  40. <div class="form-group">
  41. <label for="edtPascalClassAncestor">Pascal Class ancestor name</label>
  42. <input type="text" class="form-control" id="edtPascalClassAncestor" aria-describedby="lblPascalClassAncestor" placeholder="Class ancestor name" value="TJSObject">
  43. <small id="lblPascalClassAncestor" class="form-text text-muted">The Object Pascal class ancestor class name.</small>
  44. </div>
  45. </div>
  46. </div>
  47. <div class="row">
  48. <div class="col-md-10">
  49. <div class="form-group">
  50. <label for="edtScript">Load javascript</label>
  51. <input type="text" class="form-control" id="edtScript" aria-describedby="lblScript" placeholder="URL to javascript file" value="">
  52. <small id="lblScript" class="form-text text-muted">A javascript file to load using a script tag. (jquery, popper and bootstrap are already loaded)</small>
  53. </div>
  54. </div>
  55. <div class="col-md-2" style="display: flex; align-items: center;">
  56. <button id="load" class="btn btn-secondary">Load script</button>
  57. </div>
  58. </div>
  59. <div class="row">
  60. <div class="col-md-1">
  61. <button id="go" class="btn btn-primary">Create class</button>
  62. </div>
  63. <div class="col-md-11">
  64. <div class="form-group">
  65. <label for="edtClassDefinition">Generated Pascal Class:</label>
  66. <textarea class="form-control" rows=25 id="edtClassDefinition" aria-describedby="edtClassDefinition" placeholder="Generated code comes here" value=""></textarea>
  67. <small id="lblClassDefinition" class="form-text text-muted">The Object Pascal class.</small>
  68. </div>
  69. </div>
  70. <div>
  71. </div>
  72. <script type="application/javascript">
  73. rtl.run();
  74. </script>
  75. </body>
  76. </html>