@mlightcad/cad-simple-viewer 1.5.6 → 1.5.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. package/README.md +66 -1
  2. package/dist/cad-simple-viewer.js +30394 -28405
  3. package/dist/cad-simple-viewer.umd.cjs +150 -158
  4. package/dist/dxf-parser-worker.js +796 -707
  5. package/lib/app/AcApContext.d.ts.map +1 -1
  6. package/lib/app/AcApContext.js +15 -5
  7. package/lib/app/AcApContext.js.map +1 -1
  8. package/lib/app/AcApDocManager.d.ts +56 -0
  9. package/lib/app/AcApDocManager.d.ts.map +1 -1
  10. package/lib/app/AcApDocManager.js +112 -14
  11. package/lib/app/AcApDocManager.js.map +1 -1
  12. package/lib/app/AcApDocument.d.ts +81 -0
  13. package/lib/app/AcApDocument.d.ts.map +1 -1
  14. package/lib/app/AcApDocument.js +154 -0
  15. package/lib/app/AcApDocument.js.map +1 -1
  16. package/lib/app/AcApLayerSessionState.d.ts +15 -0
  17. package/lib/app/AcApLayerSessionState.d.ts.map +1 -0
  18. package/lib/app/AcApLayerSessionState.js +2 -0
  19. package/lib/app/AcApLayerSessionState.js.map +1 -0
  20. package/lib/app/AcApOpenFileDialog.d.ts +35 -0
  21. package/lib/app/AcApOpenFileDialog.d.ts.map +1 -0
  22. package/lib/app/AcApOpenFileDialog.js +192 -0
  23. package/lib/app/AcApOpenFileDialog.js.map +1 -0
  24. package/lib/app/AcApWebworkerReadiness.d.ts +18 -0
  25. package/lib/app/AcApWebworkerReadiness.d.ts.map +1 -0
  26. package/lib/app/AcApWebworkerReadiness.js +126 -0
  27. package/lib/app/AcApWebworkerReadiness.js.map +1 -0
  28. package/lib/app/index.d.ts +3 -0
  29. package/lib/app/index.d.ts.map +1 -1
  30. package/lib/app/index.js +2 -0
  31. package/lib/app/index.js.map +1 -1
  32. package/lib/command/AcApOpenCmd.d.ts +3 -22
  33. package/lib/command/AcApOpenCmd.d.ts.map +1 -1
  34. package/lib/command/AcApOpenCmd.js +3 -22
  35. package/lib/command/AcApOpenCmd.js.map +1 -1
  36. package/lib/command/AcApRedoCmd.d.ts +10 -0
  37. package/lib/command/AcApRedoCmd.d.ts.map +1 -0
  38. package/lib/command/AcApRedoCmd.js +85 -0
  39. package/lib/command/AcApRedoCmd.js.map +1 -0
  40. package/lib/command/AcApUndoCmd.d.ts +10 -0
  41. package/lib/command/AcApUndoCmd.d.ts.map +1 -0
  42. package/lib/command/AcApUndoCmd.js +85 -0
  43. package/lib/command/AcApUndoCmd.js.map +1 -0
  44. package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -1
  45. package/lib/command/draw/AcApEllipseCmd.js +12 -4
  46. package/lib/command/draw/AcApEllipseCmd.js.map +1 -1
  47. package/lib/command/draw/AcApLineCmd.d.ts.map +1 -1
  48. package/lib/command/draw/AcApLineCmd.js +8 -2
  49. package/lib/command/draw/AcApLineCmd.js.map +1 -1
  50. package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -1
  51. package/lib/command/draw/AcApMLineCmd.js +2 -0
  52. package/lib/command/draw/AcApMLineCmd.js.map +1 -1
  53. package/lib/command/draw/AcApPolylineCmd.d.ts.map +1 -1
  54. package/lib/command/draw/AcApPolylineCmd.js +3 -0
  55. package/lib/command/draw/AcApPolylineCmd.js.map +1 -1
  56. package/lib/command/draw/AcApSplineCmd.d.ts.map +1 -1
  57. package/lib/command/draw/AcApSplineCmd.js +2 -0
  58. package/lib/command/draw/AcApSplineCmd.js.map +1 -1
  59. package/lib/command/index.d.ts +2 -0
  60. package/lib/command/index.d.ts.map +1 -1
  61. package/lib/command/index.js +2 -0
  62. package/lib/command/index.js.map +1 -1
  63. package/lib/command/layer/AcApLayerCmd.d.ts +3 -187
  64. package/lib/command/layer/AcApLayerCmd.d.ts.map +1 -1
  65. package/lib/command/layer/AcApLayerCmd.js +52 -376
  66. package/lib/command/layer/AcApLayerCmd.js.map +1 -1
  67. package/lib/command/layer/AcApLayerCurCmd.d.ts +2 -27
  68. package/lib/command/layer/AcApLayerCurCmd.d.ts.map +1 -1
  69. package/lib/command/layer/AcApLayerCurCmd.js +18 -67
  70. package/lib/command/layer/AcApLayerCurCmd.js.map +1 -1
  71. package/lib/command/layer/AcApLayerDelCmd.d.ts +2 -25
  72. package/lib/command/layer/AcApLayerDelCmd.d.ts.map +1 -1
  73. package/lib/command/layer/AcApLayerDelCmd.js +22 -155
  74. package/lib/command/layer/AcApLayerDelCmd.js.map +1 -1
  75. package/lib/command/layer/AcApLayerFreezeCmd.d.ts +2 -9
  76. package/lib/command/layer/AcApLayerFreezeCmd.d.ts.map +1 -1
  77. package/lib/command/layer/AcApLayerFreezeCmd.js +27 -39
  78. package/lib/command/layer/AcApLayerFreezeCmd.js.map +1 -1
  79. package/lib/command/layer/AcApLayerIsoCmd.d.ts +2 -24
  80. package/lib/command/layer/AcApLayerIsoCmd.d.ts.map +1 -1
  81. package/lib/command/layer/AcApLayerIsoCmd.js +14 -183
  82. package/lib/command/layer/AcApLayerIsoCmd.js.map +1 -1
  83. package/lib/command/layer/AcApLayerLockCmd.d.ts +2 -33
  84. package/lib/command/layer/AcApLayerLockCmd.d.ts.map +1 -1
  85. package/lib/command/layer/AcApLayerLockCmd.js +18 -55
  86. package/lib/command/layer/AcApLayerLockCmd.js.map +1 -1
  87. package/lib/command/layer/AcApLayerMutationCmd.d.ts +13 -0
  88. package/lib/command/layer/AcApLayerMutationCmd.d.ts.map +1 -0
  89. package/lib/command/layer/AcApLayerMutationCmd.js +42 -0
  90. package/lib/command/layer/AcApLayerMutationCmd.js.map +1 -0
  91. package/lib/command/layer/AcApLayerOffCmd.d.ts +2 -2
  92. package/lib/command/layer/AcApLayerOffCmd.d.ts.map +1 -1
  93. package/lib/command/layer/AcApLayerOffCmd.js +27 -28
  94. package/lib/command/layer/AcApLayerOffCmd.js.map +1 -1
  95. package/lib/command/layer/AcApLayerOnCmd.d.ts +2 -15
  96. package/lib/command/layer/AcApLayerOnCmd.d.ts.map +1 -1
  97. package/lib/command/layer/AcApLayerOnCmd.js +6 -49
  98. package/lib/command/layer/AcApLayerOnCmd.js.map +1 -1
  99. package/lib/command/layer/AcApLayerPCmd.d.ts +2 -68
  100. package/lib/command/layer/AcApLayerPCmd.d.ts.map +1 -1
  101. package/lib/command/layer/AcApLayerPCmd.js +4 -152
  102. package/lib/command/layer/AcApLayerPCmd.js.map +1 -1
  103. package/lib/command/layer/AcApLayerThawCmd.d.ts +2 -22
  104. package/lib/command/layer/AcApLayerThawCmd.d.ts.map +1 -1
  105. package/lib/command/layer/AcApLayerThawCmd.js +6 -61
  106. package/lib/command/layer/AcApLayerThawCmd.js.map +1 -1
  107. package/lib/command/layer/AcApLayerUnisoCmd.d.ts +2 -37
  108. package/lib/command/layer/AcApLayerUnisoCmd.d.ts.map +1 -1
  109. package/lib/command/layer/AcApLayerUnisoCmd.js +7 -108
  110. package/lib/command/layer/AcApLayerUnisoCmd.js.map +1 -1
  111. package/lib/command/layer/AcApLayerUnlockCmd.d.ts +2 -33
  112. package/lib/command/layer/AcApLayerUnlockCmd.d.ts.map +1 -1
  113. package/lib/command/layer/AcApLayerUnlockCmd.js +18 -55
  114. package/lib/command/layer/AcApLayerUnlockCmd.js.map +1 -1
  115. package/lib/command/modify/AcApCopyCmd.d.ts +12 -0
  116. package/lib/command/modify/AcApCopyCmd.d.ts.map +1 -1
  117. package/lib/command/modify/AcApCopyCmd.js +67 -177
  118. package/lib/command/modify/AcApCopyCmd.js.map +1 -1
  119. package/lib/command/modify/AcApCopyPreviewJig.d.ts +21 -0
  120. package/lib/command/modify/AcApCopyPreviewJig.d.ts.map +1 -0
  121. package/lib/command/modify/AcApCopyPreviewJig.js +61 -0
  122. package/lib/command/modify/AcApCopyPreviewJig.js.map +1 -0
  123. package/lib/command/modify/AcApEraseCmd.d.ts +0 -6
  124. package/lib/command/modify/AcApEraseCmd.d.ts.map +1 -1
  125. package/lib/command/modify/AcApEraseCmd.js +11 -38
  126. package/lib/command/modify/AcApEraseCmd.js.map +1 -1
  127. package/lib/command/modify/AcApHideObjectsCmd.d.ts +0 -7
  128. package/lib/command/modify/AcApHideObjectsCmd.d.ts.map +1 -1
  129. package/lib/command/modify/AcApHideObjectsCmd.js +0 -7
  130. package/lib/command/modify/AcApHideObjectsCmd.js.map +1 -1
  131. package/lib/command/modify/AcApMoveCmd.d.ts +0 -6
  132. package/lib/command/modify/AcApMoveCmd.d.ts.map +1 -1
  133. package/lib/command/modify/AcApMoveCmd.js +26 -105
  134. package/lib/command/modify/AcApMoveCmd.js.map +1 -1
  135. package/lib/command/modify/AcApMovePreviewJig.d.ts +18 -0
  136. package/lib/command/modify/AcApMovePreviewJig.d.ts.map +1 -0
  137. package/lib/command/modify/AcApMovePreviewJig.js +45 -0
  138. package/lib/command/modify/AcApMovePreviewJig.js.map +1 -0
  139. package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -1
  140. package/lib/command/modify/AcApOffsetCmd.js +5 -33
  141. package/lib/command/modify/AcApOffsetCmd.js.map +1 -1
  142. package/lib/command/modify/AcApRotateCmd.d.ts +2 -2
  143. package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -1
  144. package/lib/command/modify/AcApRotateCmd.js +37 -200
  145. package/lib/command/modify/AcApRotateCmd.js.map +1 -1
  146. package/lib/command/modify/AcApRotatePreviewJig.d.ts +47 -0
  147. package/lib/command/modify/AcApRotatePreviewJig.d.ts.map +1 -0
  148. package/lib/command/modify/AcApRotatePreviewJig.js +97 -0
  149. package/lib/command/modify/AcApRotatePreviewJig.js.map +1 -0
  150. package/lib/editor/command/AcEdCommand.d.ts +8 -0
  151. package/lib/editor/command/AcEdCommand.d.ts.map +1 -1
  152. package/lib/editor/command/AcEdCommand.js +48 -5
  153. package/lib/editor/command/AcEdCommand.js.map +1 -1
  154. package/lib/editor/global/eventBus.d.ts +10 -2
  155. package/lib/editor/global/eventBus.d.ts.map +1 -1
  156. package/lib/editor/global/eventBus.js.map +1 -1
  157. package/lib/editor/grip/AcEdGripAppearance.d.ts +18 -0
  158. package/lib/editor/grip/AcEdGripAppearance.d.ts.map +1 -0
  159. package/lib/editor/grip/AcEdGripAppearance.js +30 -0
  160. package/lib/editor/grip/AcEdGripAppearance.js.map +1 -0
  161. package/lib/editor/grip/AcEdGripEditSession.d.ts.map +1 -1
  162. package/lib/editor/grip/AcEdGripEditSession.js +9 -2
  163. package/lib/editor/grip/AcEdGripEditSession.js.map +1 -1
  164. package/lib/editor/grip/AcEdGripHandle.d.ts +3 -2
  165. package/lib/editor/grip/AcEdGripHandle.d.ts.map +1 -1
  166. package/lib/editor/grip/AcEdGripHandle.js +9 -6
  167. package/lib/editor/grip/AcEdGripHandle.js.map +1 -1
  168. package/lib/editor/grip/AcEdGripManager.d.ts +13 -1
  169. package/lib/editor/grip/AcEdGripManager.d.ts.map +1 -1
  170. package/lib/editor/grip/AcEdGripManager.js +54 -14
  171. package/lib/editor/grip/AcEdGripManager.js.map +1 -1
  172. package/lib/editor/input/AcEdBatchPreview.d.ts +96 -0
  173. package/lib/editor/input/AcEdBatchPreview.d.ts.map +1 -0
  174. package/lib/editor/input/AcEdBatchPreview.js +125 -0
  175. package/lib/editor/input/AcEdBatchPreview.js.map +1 -0
  176. package/lib/editor/input/AcEdPreviewJig.d.ts +1 -1
  177. package/lib/editor/input/AcEdPreviewJig.d.ts.map +1 -1
  178. package/lib/editor/input/AcEdPreviewJig.js +14 -0
  179. package/lib/editor/input/AcEdPreviewJig.js.map +1 -1
  180. package/lib/editor/input/AcEdSelectionPreviewJig.d.ts +109 -0
  181. package/lib/editor/input/AcEdSelectionPreviewJig.d.ts.map +1 -0
  182. package/lib/editor/input/AcEdSelectionPreviewJig.js +185 -0
  183. package/lib/editor/input/AcEdSelectionPreviewJig.js.map +1 -0
  184. package/lib/editor/input/index.d.ts +2 -0
  185. package/lib/editor/input/index.d.ts.map +1 -1
  186. package/lib/editor/input/index.js +2 -0
  187. package/lib/editor/input/index.js.map +1 -1
  188. package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts +7 -0
  189. package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts.map +1 -1
  190. package/lib/editor/input/prompt/AcEdPromptAngleOptions.js +17 -0
  191. package/lib/editor/input/prompt/AcEdPromptAngleOptions.js.map +1 -1
  192. package/lib/editor/input/ui/AcEdFloatingInputBox.d.ts.map +1 -1
  193. package/lib/editor/input/ui/AcEdFloatingInputBox.js +10 -2
  194. package/lib/editor/input/ui/AcEdFloatingInputBox.js.map +1 -1
  195. package/lib/editor/input/ui/AcEdFloatingInputBoxes.d.ts.map +1 -1
  196. package/lib/editor/input/ui/AcEdFloatingInputBoxes.js +9 -4
  197. package/lib/editor/input/ui/AcEdFloatingInputBoxes.js.map +1 -1
  198. package/lib/editor/view/AcEdBaseView.d.ts +37 -2
  199. package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
  200. package/lib/editor/view/AcEdBaseView.js +14 -12
  201. package/lib/editor/view/AcEdBaseView.js.map +1 -1
  202. package/lib/editor/view/AcEdSpatialQueryResult.d.ts +28 -0
  203. package/lib/editor/view/AcEdSpatialQueryResult.d.ts.map +1 -1
  204. package/lib/editor/view/AcEdSpatialQueryResult.js +65 -1
  205. package/lib/editor/view/AcEdSpatialQueryResult.js.map +1 -1
  206. package/lib/i18n/AcApI18n.d.ts +42 -0
  207. package/lib/i18n/AcApI18n.d.ts.map +1 -1
  208. package/lib/i18n/AcApI18n.js +56 -4
  209. package/lib/i18n/AcApI18n.js.map +1 -1
  210. package/lib/i18n/en/command.d.ts +23 -0
  211. package/lib/i18n/en/command.d.ts.map +1 -1
  212. package/lib/i18n/en/command.js +23 -0
  213. package/lib/i18n/en/command.js.map +1 -1
  214. package/lib/i18n/zh/command.d.ts +23 -0
  215. package/lib/i18n/zh/command.d.ts.map +1 -1
  216. package/lib/i18n/zh/command.js +23 -0
  217. package/lib/i18n/zh/command.js.map +1 -1
  218. package/lib/index.d.ts +1 -0
  219. package/lib/index.d.ts.map +1 -1
  220. package/lib/index.js +1 -0
  221. package/lib/index.js.map +1 -1
  222. package/lib/service/AcApEntitySelection.d.ts +42 -0
  223. package/lib/service/AcApEntitySelection.d.ts.map +1 -0
  224. package/lib/service/AcApEntitySelection.js +156 -0
  225. package/lib/service/AcApEntitySelection.js.map +1 -0
  226. package/lib/service/AcApEntityService.d.ts +115 -0
  227. package/lib/service/AcApEntityService.d.ts.map +1 -0
  228. package/lib/service/AcApEntityService.js +194 -0
  229. package/lib/service/AcApEntityService.js.map +1 -0
  230. package/lib/{command/layer → service}/AcApLayerIsoState.d.ts +6 -24
  231. package/lib/service/AcApLayerIsoState.d.ts.map +1 -0
  232. package/lib/service/AcApLayerIsoState.js +28 -0
  233. package/lib/service/AcApLayerIsoState.js.map +1 -0
  234. package/lib/service/AcApLayerService.d.ts +400 -0
  235. package/lib/service/AcApLayerService.d.ts.map +1 -0
  236. package/lib/service/AcApLayerService.js +1240 -0
  237. package/lib/service/AcApLayerService.js.map +1 -0
  238. package/lib/service/AcApLayerStore.d.ts +198 -0
  239. package/lib/service/AcApLayerStore.d.ts.map +1 -0
  240. package/lib/service/AcApLayerStore.js +335 -0
  241. package/lib/service/AcApLayerStore.js.map +1 -0
  242. package/lib/service/AcApServiceEdit.d.ts +18 -0
  243. package/lib/service/AcApServiceEdit.d.ts.map +1 -0
  244. package/lib/service/AcApServiceEdit.js +34 -0
  245. package/lib/service/AcApServiceEdit.js.map +1 -0
  246. package/lib/service/index.d.ts +16 -0
  247. package/lib/service/index.d.ts.map +1 -0
  248. package/lib/service/index.js +16 -0
  249. package/lib/service/index.js.map +1 -0
  250. package/lib/service/types.d.ts +116 -0
  251. package/lib/service/types.d.ts.map +1 -0
  252. package/lib/service/types.js +5 -0
  253. package/lib/service/types.js.map +1 -0
  254. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +21 -6
  255. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts.map +1 -1
  256. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +56 -10
  257. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
  258. package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts +2 -2
  259. package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts.map +1 -1
  260. package/lib/spatialIndex/AcTrLinearSpatialIndex.js +9 -3
  261. package/lib/spatialIndex/AcTrLinearSpatialIndex.js.map +1 -1
  262. package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts +2 -2
  263. package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts.map +1 -1
  264. package/lib/spatialIndex/AcTrRBushSpatialIndex.js +19 -5
  265. package/lib/spatialIndex/AcTrRBushSpatialIndex.js.map +1 -1
  266. package/lib/spatialIndex/AcTrSpatialIndex.d.ts +10 -1
  267. package/lib/spatialIndex/AcTrSpatialIndex.d.ts.map +1 -1
  268. package/lib/spatialIndex/AcTrSpatialIndex.js +7 -1
  269. package/lib/spatialIndex/AcTrSpatialIndex.js.map +1 -1
  270. package/lib/util/AcApDatabaseEdit.d.ts +11 -0
  271. package/lib/util/AcApDatabaseEdit.d.ts.map +1 -0
  272. package/lib/util/AcApDatabaseEdit.js +20 -0
  273. package/lib/util/AcApDatabaseEdit.js.map +1 -0
  274. package/lib/util/AcApGeTransform.d.ts +10 -0
  275. package/lib/util/AcApGeTransform.d.ts.map +1 -0
  276. package/lib/util/AcApGeTransform.js +15 -0
  277. package/lib/util/AcApGeTransform.js.map +1 -0
  278. package/lib/util/index.d.ts +2 -0
  279. package/lib/util/index.d.ts.map +1 -1
  280. package/lib/util/index.js +2 -0
  281. package/lib/util/index.js.map +1 -1
  282. package/lib/view/AcEdViewKeyHandler.d.ts +32 -0
  283. package/lib/view/AcEdViewKeyHandler.d.ts.map +1 -0
  284. package/lib/view/AcEdViewKeyHandler.js +101 -0
  285. package/lib/view/AcEdViewKeyHandler.js.map +1 -0
  286. package/lib/view/AcTrGroupWcsBboxAssert.d.ts +16 -0
  287. package/lib/view/AcTrGroupWcsBboxAssert.d.ts.map +1 -1
  288. package/lib/view/AcTrGroupWcsBboxAssert.js +19 -0
  289. package/lib/view/AcTrGroupWcsBboxAssert.js.map +1 -1
  290. package/lib/view/AcTrInheritedLayerMaterialMapper.d.ts +49 -0
  291. package/lib/view/AcTrInheritedLayerMaterialMapper.d.ts.map +1 -0
  292. package/lib/view/AcTrInheritedLayerMaterialMapper.js +138 -0
  293. package/lib/view/AcTrInheritedLayerMaterialMapper.js.map +1 -0
  294. package/lib/view/AcTrLayer.d.ts +26 -2
  295. package/lib/view/AcTrLayer.d.ts.map +1 -1
  296. package/lib/view/AcTrLayer.js +64 -0
  297. package/lib/view/AcTrLayer.js.map +1 -1
  298. package/lib/view/AcTrLayerAppearanceController.d.ts +55 -0
  299. package/lib/view/AcTrLayerAppearanceController.d.ts.map +1 -0
  300. package/lib/view/AcTrLayerAppearanceController.js +86 -0
  301. package/lib/view/AcTrLayerAppearanceController.js.map +1 -0
  302. package/lib/view/AcTrLayout.d.ts +36 -1
  303. package/lib/view/AcTrLayout.d.ts.map +1 -1
  304. package/lib/view/AcTrLayout.js +160 -14
  305. package/lib/view/AcTrLayout.js.map +1 -1
  306. package/lib/view/AcTrScene.d.ts +47 -1
  307. package/lib/view/AcTrScene.d.ts.map +1 -1
  308. package/lib/view/AcTrScene.js +78 -3
  309. package/lib/view/AcTrScene.js.map +1 -1
  310. package/lib/view/AcTrView2d.d.ts +50 -53
  311. package/lib/view/AcTrView2d.d.ts.map +1 -1
  312. package/lib/view/AcTrView2d.js +195 -312
  313. package/lib/view/AcTrView2d.js.map +1 -1
  314. package/lib/view/index.d.ts +3 -0
  315. package/lib/view/index.d.ts.map +1 -1
  316. package/lib/view/index.js +3 -0
  317. package/lib/view/index.js.map +1 -1
  318. package/package.json +7 -7
  319. package/lib/command/layer/AcApLayerIsoState.d.ts.map +0 -1
  320. package/lib/command/layer/AcApLayerIsoState.js +0 -53
  321. package/lib/command/layer/AcApLayerIsoState.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { AcDbProgressdEventArgs } from '@mlightcad/data-model';
2
2
  import { type Emitter } from 'mitt';
3
3
  import { AcEdMessageType } from '../input/ui/AcEdMessageType';
4
+ import { AcEdOpenMode } from '../view/AcEdOpenMode';
4
5
  export interface AcEdFontNotLoadedInfo {
5
6
  /** Font name */
6
7
  fontName: string;
@@ -14,15 +15,20 @@ export interface AcEdFontNotLoadedInfo {
14
15
  * type safety for event emission and listening throughout the application.
15
16
  *
16
17
  * ## Event Categories
17
- * - **File Operations**: `open-file`, `open-file-progress`, `failed-to-open-file`, `cache-font`, `font-file-selected`
18
+ * - **File Operations**: `open-file`, `open-local-file-started`, `open-file-progress`, `failed-to-open-file`, `cache-font`, `font-file-selected`
18
19
  * - **Palette Control**: `close-layer-manager`
19
20
  * - **Font Management**: `fonts-not-loaded`, `failed-to-get-avaiable-fonts`, `font-not-found`
20
21
  * - **Missing Resources**: `missed-data-changed`
21
22
  * - **User Messages**: `message`
22
23
  */
23
24
  export type AcEdEvents = {
24
- /** Emitted to request opening a file dialog */
25
+ /** Emitted to request opening a file dialog (handled by {@link acapInstallOpenFileDialog}) */
25
26
  'open-file': {};
27
+ /** Emitted when a local file is about to be opened through the built-in OPEN dialog */
28
+ 'open-local-file-started': {
29
+ /** Requested document access mode for the pending open operation */
30
+ mode: AcEdOpenMode;
31
+ };
26
32
  /** Emitted to request opening a font file dialog for IndexedDB caching */
27
33
  'cache-font': {};
28
34
  /** Emitted when the user selects a font file in the cache-font dialog */
@@ -67,6 +73,8 @@ export type AcEdEvents = {
67
73
  };
68
74
  /** Emitted after missing resource caches change and UI state should refresh */
69
75
  'missed-data-changed': {};
76
+ /** Emitted after the active document undo/redo stack changes */
77
+ 'undo-stack-changed': {};
70
78
  };
71
79
  /**
72
80
  * Global event bus for application-wide communication.
@@ -1 +1 @@
1
- {"version":3,"file":"eventBus.d.ts","sourceRoot":"","sources":["../../../src/editor/global/eventBus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAa,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAE7D,MAAM,WAAW,qBAAqB;IACpC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAA;CACZ;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,+CAA+C;IAC/C,WAAW,EAAE,EAAE,CAAA;IACf,0EAA0E;IAC1E,YAAY,EAAE,EAAE,CAAA;IAChB,yEAAyE;IACzE,oBAAoB,EAAE;QACpB,IAAI,CAAC,EAAE,IAAI,CAAA;KACZ,CAAA;IACD,8DAA8D;IAC9D,qBAAqB,EAAE,EAAE,CAAA;IACzB,qDAAqD;IACrD,oBAAoB,EAAE,sBAAsB,CAAA;IAC5C,+CAA+C;IAC/C,OAAO,EAAE;QACP,kCAAkC;QAClC,OAAO,EAAE,MAAM,CAAA;QACf,uCAAuC;QACvC,IAAI,EAAE,eAAe,CAAA;KACtB,CAAA;IACD,kEAAkE;IAClE,iBAAiB,EAAE;QACjB,KAAK,EAAE,MAAM,EAAE,CAAA;KAChB,CAAA;IACD,4CAA4C;IAC5C,kBAAkB,EAAE;QAClB,KAAK,EAAE,qBAAqB,EAAE,CAAA;KAC/B,CAAA;IACD,gEAAgE;IAChE,8BAA8B,EAAE;QAC9B,kEAAkE;QAClE,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IACD,wCAAwC;IACxC,qBAAqB,EAAE;QACrB,gDAAgD;QAChD,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,gDAAgD;IAChD,gBAAgB,EAAE;QAChB,+BAA+B;QAC/B,QAAQ,EAAE,MAAM,CAAA;QAChB,gDAAgD;QAChD,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,+EAA+E;IAC/E,qBAAqB,EAAE,EAAE,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAsB,CAAA"}
1
+ {"version":3,"file":"eventBus.d.ts","sourceRoot":"","sources":["../../../src/editor/global/eventBus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAa,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,MAAM,WAAW,qBAAqB;IACpC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAA;CACZ;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,8FAA8F;IAC9F,WAAW,EAAE,EAAE,CAAA;IACf,uFAAuF;IACvF,yBAAyB,EAAE;QACzB,oEAAoE;QACpE,IAAI,EAAE,YAAY,CAAA;KACnB,CAAA;IACD,0EAA0E;IAC1E,YAAY,EAAE,EAAE,CAAA;IAChB,yEAAyE;IACzE,oBAAoB,EAAE;QACpB,IAAI,CAAC,EAAE,IAAI,CAAA;KACZ,CAAA;IACD,8DAA8D;IAC9D,qBAAqB,EAAE,EAAE,CAAA;IACzB,qDAAqD;IACrD,oBAAoB,EAAE,sBAAsB,CAAA;IAC5C,+CAA+C;IAC/C,OAAO,EAAE;QACP,kCAAkC;QAClC,OAAO,EAAE,MAAM,CAAA;QACf,uCAAuC;QACvC,IAAI,EAAE,eAAe,CAAA;KACtB,CAAA;IACD,kEAAkE;IAClE,iBAAiB,EAAE;QACjB,KAAK,EAAE,MAAM,EAAE,CAAA;KAChB,CAAA;IACD,4CAA4C;IAC5C,kBAAkB,EAAE;QAClB,KAAK,EAAE,qBAAqB,EAAE,CAAA;KAC/B,CAAA;IACD,gEAAgE;IAChE,8BAA8B,EAAE;QAC9B,kEAAkE;QAClE,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IACD,wCAAwC;IACxC,qBAAqB,EAAE;QACrB,gDAAgD;QAChD,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,gDAAgD;IAChD,gBAAgB,EAAE;QAChB,+BAA+B;QAC/B,QAAQ,EAAE,MAAM,CAAA;QAChB,gDAAgD;QAChD,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,+EAA+E;IAC/E,qBAAqB,EAAE,EAAE,CAAA;IACzB,gEAAgE;IAChE,oBAAoB,EAAE,EAAE,CAAA;CACzB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAsB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"eventBus.js","sourceRoot":"","sources":["../../../src/editor/global/eventBus.ts"],"names":[],"mappings":"AACA,OAAO,IAAsB,MAAM,MAAM,CAAA;AAyEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,CAAC,IAAM,QAAQ,GAAwB,IAAI,EAAc,CAAA"}
1
+ {"version":3,"file":"eventBus.js","sourceRoot":"","sources":["../../../src/editor/global/eventBus.ts"],"names":[],"mappings":"AACA,OAAO,IAAsB,MAAM,MAAM,CAAA;AAiFzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,CAAC,IAAM,QAAQ,GAAwB,IAAI,EAAc,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { AcDbDatabase } from '@mlightcad/data-model';
2
+ /** Visual appearance of grip handles derived from grip system variables. */
3
+ export interface AcEdGripAppearance {
4
+ /** Grip square edge length in CSS pixels (`GRIPSIZE`). */
5
+ size: number;
6
+ /** CSS color for unheated grips (`GRIPCOLOR`). */
7
+ colorCss: string;
8
+ /** CSS color for hot / hovered grips (`GRIPHOT`). */
9
+ hotColorCss: string;
10
+ }
11
+ /**
12
+ * Reads grip appearance from `GRIPSIZE`, `GRIPCOLOR`, and `GRIPHOT`.
13
+ */
14
+ export declare function readGripAppearance(database: AcDbDatabase): AcEdGripAppearance;
15
+ /** Sysvar names that affect grip handle appearance or visibility. */
16
+ export declare const GRIP_APPEARANCE_SYSVARS: Set<string>;
17
+ export declare function isGripAppearanceSysVar(name: string): boolean;
18
+ //# sourceMappingURL=AcEdGripAppearance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcEdGripAppearance.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripAppearance.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EAGb,MAAM,uBAAuB,CAAA;AAE9B,4EAA4E;AAC5E,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAA;IAChB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAA;CACpB;AAOD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,kBAAkB,CAiB7E;AAED,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,aAIlC,CAAA;AAEF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5D"}
@@ -0,0 +1,30 @@
1
+ import { AcCmColor, AcCmColorMethod, AcDbSystemVariables, AcDbSysVarManager } from '@mlightcad/data-model';
2
+ function aciIndexToCss(index) {
3
+ var _a;
4
+ var color = new AcCmColor(AcCmColorMethod.ByACI, index);
5
+ return (_a = color.cssColor) !== null && _a !== void 0 ? _a : "rgb(".concat(color.red, ", ").concat(color.green, ", ").concat(color.blue, ")");
6
+ }
7
+ /**
8
+ * Reads grip appearance from `GRIPSIZE`, `GRIPCOLOR`, and `GRIPHOT`.
9
+ */
10
+ export function readGripAppearance(database) {
11
+ var manager = AcDbSysVarManager.instance();
12
+ var size = manager.getVar(AcDbSystemVariables.GRIPSIZE, database);
13
+ var gripColor = manager.getVar(AcDbSystemVariables.GRIPCOLOR, database);
14
+ var gripHot = manager.getVar(AcDbSystemVariables.GRIPHOT, database);
15
+ return {
16
+ size: size,
17
+ colorCss: aciIndexToCss(gripColor),
18
+ hotColorCss: aciIndexToCss(gripHot)
19
+ };
20
+ }
21
+ /** Sysvar names that affect grip handle appearance or visibility. */
22
+ export var GRIP_APPEARANCE_SYSVARS = new Set([
23
+ AcDbSystemVariables.GRIPSIZE.toLowerCase(),
24
+ AcDbSystemVariables.GRIPCOLOR.toLowerCase(),
25
+ AcDbSystemVariables.GRIPHOT.toLowerCase()
26
+ ]);
27
+ export function isGripAppearanceSysVar(name) {
28
+ return GRIP_APPEARANCE_SYSVARS.has(name.toLowerCase());
29
+ }
30
+ //# sourceMappingURL=AcEdGripAppearance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcEdGripAppearance.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripAppearance.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,eAAe,EAEf,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,uBAAuB,CAAA;AAY9B,SAAS,aAAa,CAAC,KAAa;;IAClC,IAAM,KAAK,GAAG,IAAI,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACzD,OAAO,MAAA,KAAK,CAAC,QAAQ,mCAAI,cAAO,KAAK,CAAC,GAAG,eAAK,KAAK,CAAC,KAAK,eAAK,KAAK,CAAC,IAAI,MAAG,CAAA;AAC7E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAsB;IACvD,IAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAA;IAC5C,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAW,CAAA;IAC7E,IAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAC9B,mBAAmB,CAAC,SAAS,EAC7B,QAAQ,CACC,CAAA;IACX,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAC5B,mBAAmB,CAAC,OAAO,EAC3B,QAAQ,CACC,CAAA;IAEX,OAAO;QACL,IAAI,MAAA;QACJ,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC;QAClC,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC;KACpC,CAAA;AACH,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,IAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IAC7C,mBAAmB,CAAC,QAAQ,CAAC,WAAW,EAAE;IAC1C,mBAAmB,CAAC,SAAS,CAAC,WAAW,EAAE;IAC3C,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE;CAC1C,CAAC,CAAA;AAEF,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAO,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AACxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripEditSession.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripEditSession.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAI9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGnD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,eAAe,CAAA;CAC7B;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmB;IAEvD,OAAO,CAAC,eAAe,CAAyC;IAChE,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,aAAa,CAA0C;gBAG7D,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,IAAI;IAmBnB,WAAW,CAAC,CAAC,EAAE,UAAU;IAMzB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,SAAS;IAMjB,MAAM;IAIN,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,UAAU;CAwBnB"}
1
+ {"version":3,"file":"AcEdGripEditSession.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripEditSession.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,YAAY,EACZ,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAK9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGnD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,eAAe,CAAA;CAC7B;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmB;IAEvD,OAAO,CAAC,eAAe,CAAyC;IAChE,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,aAAa,CAA0C;gBAG7D,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,IAAI;IAmBnB,WAAW,CAAC,CAAC,EAAE,UAAU;IAMzB,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,SAAS;IAMjB,MAAM;IAIN,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,UAAU;CAwBnB"}
@@ -1,3 +1,4 @@
1
+ import { acapRunDatabaseEdit } from '../../util/AcApDatabaseEdit';
1
2
  import { AcEdOsnapResolver } from '../input/AcEdOsnapResolver';
2
3
  import { AcEdMarkerManager } from '../input/marker';
3
4
  import { AcEdGripPreviewJig } from './AcEdGripPreviewJig';
@@ -26,12 +27,18 @@ var AcEdGripEditSession = /** @class */ (function () {
26
27
  this._jig.render();
27
28
  };
28
29
  AcEdGripEditSession.prototype.onMouseUp = function (e) {
30
+ var _this = this;
29
31
  if (e.button !== 0)
30
32
  return;
31
33
  var wcs = this.resolveWcs(e);
32
34
  var offset = this._jig.computeOffset(wcs);
33
- this._entity.subMoveGripPointsAt([this._target.gripIndex], offset);
34
- this._entity.triggerModifiedEvent();
35
+ var db = this._entity.database;
36
+ acapRunDatabaseEdit(db, 'Grip Edit', function () {
37
+ var entity = db.openEntityForWrite(_this._entity);
38
+ if (!entity)
39
+ return;
40
+ entity.subMoveGripPointsAt([_this._target.gripIndex], offset);
41
+ });
35
42
  this.finish();
36
43
  };
37
44
  AcEdGripEditSession.prototype.onKeyDown = function (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripEditSession.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripEditSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcEdGripEditSession.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripEditSession.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { AcGePoint2dLike } from '@mlightcad/data-model';
2
+ import { AcEdGripAppearance } from './AcEdGripAppearance';
2
3
  /** Visual state of a grip handle. */
3
4
  export type AcEdGripHandleState = 'normal' | 'hover' | 'hot';
4
5
  /**
@@ -6,14 +7,14 @@ export type AcEdGripHandleState = 'normal' | 'hover' | 'hot';
6
7
  */
7
8
  export declare class AcEdGripHandle {
8
9
  private readonly _host;
9
- private readonly _size;
10
10
  private readonly _el;
11
11
  private _state;
12
- constructor(_host: HTMLElement, _size?: number);
12
+ constructor(_host: HTMLElement, appearance: AcEdGripAppearance);
13
13
  get element(): HTMLElement;
14
14
  get state(): AcEdGripHandleState;
15
15
  setState(state: AcEdGripHandleState): void;
16
16
  setPosition(pos: AcGePoint2dLike): void;
17
+ applyAppearance(appearance: AcEdGripAppearance): void;
17
18
  destroy(): void;
18
19
  private static injectCSS;
19
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripHandle.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,qCAAqC;AACrC,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAA;AAE5D;;GAEG;AACH,qBAAa,cAAc;IAKvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IALxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,MAAM,CAAgC;gBAG3B,KAAK,EAAE,WAAW,EAClB,KAAK,SAAI;IAgB5B,IAAI,OAAO,IAAI,WAAW,CAEzB;IAED,IAAI,KAAK,IAAI,mBAAmB,CAE/B;IAED,QAAQ,CAAC,KAAK,EAAE,mBAAmB;IAMnC,WAAW,CAAC,GAAG,EAAE,eAAe;IAKhC,OAAO;IAIP,OAAO,CAAC,MAAM,CAAC,SAAS;CAgCzB"}
1
+ {"version":3,"file":"AcEdGripHandle.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,qCAAqC;AACrC,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAA;AAE5D;;GAEG;AACH,qBAAa,cAAc;IAKvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,MAAM,CAAgC;gBAG3B,KAAK,EAAE,WAAW,EACnC,UAAU,EAAE,kBAAkB;IAehC,IAAI,OAAO,IAAI,WAAW,CAEzB;IAED,IAAI,KAAK,IAAI,mBAAmB,CAE/B;IAED,QAAQ,CAAC,KAAK,EAAE,mBAAmB;IAMnC,WAAW,CAAC,GAAG,EAAE,eAAe;IAKhC,eAAe,CAAC,UAAU,EAAE,kBAAkB;IAO9C,OAAO;IAIP,OAAO,CAAC,MAAM,CAAC,SAAS;CA0BzB"}
@@ -2,10 +2,8 @@
2
2
  * Interactive DOM grip square rendered in container-local screen coordinates.
3
3
  */
4
4
  var AcEdGripHandle = /** @class */ (function () {
5
- function AcEdGripHandle(_host, _size) {
6
- if (_size === void 0) { _size = 9; }
5
+ function AcEdGripHandle(_host, appearance) {
7
6
  this._host = _host;
8
- this._size = _size;
9
7
  this._state = 'normal';
10
8
  AcEdGripHandle.injectCSS();
11
9
  var hostPosition = getComputedStyle(this._host).position;
@@ -14,8 +12,7 @@ var AcEdGripHandle = /** @class */ (function () {
14
12
  }
15
13
  this._el = document.createElement('div');
16
14
  this._el.className = 'ml-grip-handle ml-grip-handle-normal';
17
- this._el.style.width = "".concat(this._size, "px");
18
- this._el.style.height = "".concat(this._size, "px");
15
+ this.applyAppearance(appearance);
19
16
  this._host.appendChild(this._el);
20
17
  }
21
18
  Object.defineProperty(AcEdGripHandle.prototype, "element", {
@@ -42,6 +39,12 @@ var AcEdGripHandle = /** @class */ (function () {
42
39
  this._el.style.left = "".concat(pos.x, "px");
43
40
  this._el.style.top = "".concat(pos.y, "px");
44
41
  };
42
+ AcEdGripHandle.prototype.applyAppearance = function (appearance) {
43
+ this._el.style.width = "".concat(appearance.size, "px");
44
+ this._el.style.height = "".concat(appearance.size, "px");
45
+ this._el.style.setProperty('--ml-ui-grip-normal', appearance.colorCss);
46
+ this._el.style.setProperty('--ml-ui-grip-hot', appearance.hotColorCss);
47
+ };
45
48
  AcEdGripHandle.prototype.destroy = function () {
46
49
  this._el.remove();
47
50
  };
@@ -50,7 +53,7 @@ var AcEdGripHandle = /** @class */ (function () {
50
53
  return;
51
54
  var style = document.createElement('style');
52
55
  style.id = 'ml-grip-handle-style';
53
- style.textContent = "\n .ml-grip-handle {\n position: absolute;\n pointer-events: auto;\n transform: translate(-50%, -50%);\n z-index: 5;\n box-sizing: border-box;\n cursor: pointer;\n }\n\n .ml-grip-handle-normal {\n border: 1px solid var(--ml-ui-grip-normal, #0080ff);\n background: transparent;\n }\n\n .ml-grip-handle-hover {\n border: 1px solid var(--ml-ui-grip-hover, #0080ff);\n background: color-mix(in srgb, var(--ml-ui-grip-hover, #0080ff) 25%, transparent);\n }\n\n .ml-grip-handle-hot {\n border: 1px solid var(--ml-ui-grip-hot, #ff0000);\n background: var(--ml-ui-grip-hot, #ff0000);\n }\n ";
56
+ style.textContent = "\n .ml-grip-handle {\n position: absolute;\n pointer-events: auto;\n transform: translate(-50%, -50%);\n z-index: 5;\n box-sizing: border-box;\n cursor: pointer;\n }\n\n .ml-grip-handle-normal {\n background: var(--ml-ui-grip-normal, #0080ff);\n }\n\n .ml-grip-handle-hover,\n .ml-grip-handle-hot {\n background: var(--ml-ui-grip-hot, #ff0000);\n }\n ";
54
57
  document.head.appendChild(style);
55
58
  };
56
59
  return AcEdGripHandle;
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripHandle.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripHandle.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH;IAIE,wBACmB,KAAkB,EAClB,KAAS;QAAT,sBAAA,EAAA,SAAS;QADT,UAAK,GAAL,KAAK,CAAa;QAClB,UAAK,GAAL,KAAK,CAAI;QAJpB,WAAM,GAAwB,QAAQ,CAAA;QAM5C,cAAc,CAAC,SAAS,EAAE,CAAA;QAE1B,IAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAA;QAC1D,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAA;QACxC,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,sCAAsC,CAAA;QAC3D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,UAAG,IAAI,CAAC,KAAK,OAAI,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,UAAG,IAAI,CAAC,KAAK,OAAI,CAAA;QACzC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,sBAAI,mCAAO;aAAX;YACE,OAAO,IAAI,CAAC,GAAG,CAAA;QACjB,CAAC;;;OAAA;IAED,sBAAI,iCAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;;;OAAA;IAED,iCAAQ,GAAR,UAAS,KAA0B;QACjC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;YAAE,OAAM;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,wCAAiC,KAAK,CAAE,CAAA;IAC/D,CAAC;IAED,oCAAW,GAAX,UAAY,GAAoB;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,UAAG,GAAG,CAAC,CAAC,OAAI,CAAA;QAClC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,UAAG,GAAG,CAAC,CAAC,OAAI,CAAA;IACnC,CAAC;IAED,gCAAO,GAAP;QACE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;IACnB,CAAC;IAEc,wBAAS,GAAxB;QACE,IAAI,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC;YAAE,OAAM;QAE3D,IAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC7C,KAAK,CAAC,EAAE,GAAG,sBAAsB,CAAA;QACjC,KAAK,CAAC,WAAW,GAAG,usBAwBnB,CAAA;QACD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IACH,qBAAC;AAAD,CAAC,AA7ED,IA6EC"}
1
+ {"version":3,"file":"AcEdGripHandle.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripHandle.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH;IAIE,wBACmB,KAAkB,EACnC,UAA8B;QADb,UAAK,GAAL,KAAK,CAAa;QAH7B,WAAM,GAAwB,QAAQ,CAAA;QAM5C,cAAc,CAAC,SAAS,EAAE,CAAA;QAE1B,IAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAA;QAC1D,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAA;QACxC,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,sCAAsC,CAAA;QAC3D,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,sBAAI,mCAAO;aAAX;YACE,OAAO,IAAI,CAAC,GAAG,CAAA;QACjB,CAAC;;;OAAA;IAED,sBAAI,iCAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;;;OAAA;IAED,iCAAQ,GAAR,UAAS,KAA0B;QACjC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;YAAE,OAAM;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,wCAAiC,KAAK,CAAE,CAAA;IAC/D,CAAC;IAED,oCAAW,GAAX,UAAY,GAAoB;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,UAAG,GAAG,CAAC,CAAC,OAAI,CAAA;QAClC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,UAAG,GAAG,CAAC,CAAC,OAAI,CAAA;IACnC,CAAC;IAED,wCAAe,GAAf,UAAgB,UAA8B;QAC5C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,UAAG,UAAU,CAAC,IAAI,OAAI,CAAA;QAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,UAAG,UAAU,CAAC,IAAI,OAAI,CAAA;QAC9C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,qBAAqB,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;QACtE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;IACxE,CAAC;IAED,gCAAO,GAAP;QACE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;IACnB,CAAC;IAEc,wBAAS,GAAxB;QACE,IAAI,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC;YAAE,OAAM;QAE3D,IAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC7C,KAAK,CAAC,EAAE,GAAG,sBAAsB,CAAA;QACjC,KAAK,CAAC,WAAW,GAAG,+bAkBnB,CAAA;QACD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IACH,qBAAC;AAAD,CAAC,AA7ED,IA6EC"}
@@ -4,7 +4,8 @@ import { AcEdBaseView } from '../view/AcEdBaseView';
4
4
  *
5
5
  * Grip handles are shown for entities in the view's selection set when the
6
6
  * editor is idle, the document is writable, and selection count is within the
7
- * `GRIPOBJLIMIT` system variable. The manager listens for selection, view,
7
+ * `GRIPOBJLIMIT` system variable. Grip size and colours follow `GRIPSIZE`,
8
+ * `GRIPCOLOR`, and `GRIPHOT`. The manager listens for selection, view,
8
9
  * command, and system-variable changes to refresh or reposition handles.
9
10
  *
10
11
  * Clicking a grip starts an {@link AcEdGripEditSession} that previews and
@@ -36,6 +37,8 @@ export declare class AcEdGripManager {
36
37
  private readonly _boundRefresh;
37
38
  /** Stable listener reference for view pan/zoom/resize repositioning. */
38
39
  private readonly _boundReposition;
40
+ /** Stable listener reference for grip-related system variable changes. */
41
+ private readonly _boundSysVarChanged;
39
42
  /**
40
43
  * Creates a grip manager bound to the given view.
41
44
  *
@@ -84,12 +87,21 @@ export declare class AcEdGripManager {
84
87
  *
85
88
  * Refresh triggers: selection added/removed, command start/end,
86
89
  * `GRIPOBJLIMIT` sysvar change. Reposition triggers: view changed, view resize.
90
+ * Appearance updates: `GRIPSIZE`, `GRIPCOLOR`, `GRIPHOT` sysvar changes.
87
91
  */
88
92
  private bindEvents;
89
93
  /**
90
94
  * Removes all event listeners registered by {@link bindEvents}.
91
95
  */
92
96
  private unbindEvents;
97
+ /**
98
+ * Reacts to grip-related system variable changes.
99
+ */
100
+ private onGripSysVarChanged;
101
+ /**
102
+ * Updates size and colours on existing grip handles from current sysvars.
103
+ */
104
+ private applyAppearance;
93
105
  /**
94
106
  * Attaches pointer event handlers to a grip handle element.
95
107
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripManager.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripManager.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAyBnD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAe;IAC1B,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,iEAAiE;IACjE,OAAO,CAAC,YAAY,CAAmC;IACvD,6EAA6E;IAC7E,OAAO,CAAC,SAAS,CAA6B;IAE9C,+DAA+D;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;IACrD,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAE9D;;;;;;;;OAQG;gBACS,IAAI,EAAE,YAAY;IAK9B;;;;;OAKG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;;;;OAKG;IACH,OAAO;IAKP;;;;;;;;OAQG;IACH,OAAO;IA8BP;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IAgBpB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAiBlB;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,SAAS;IAyBjB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAMf;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAQpB;;;;OAIG;IACH,OAAO,CAAC,KAAK;CAKd"}
1
+ {"version":3,"file":"AcEdGripManager.d.ts","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripManager.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AA0BnD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,eAAe;IAC1B,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,iEAAiE;IACjE,OAAO,CAAC,YAAY,CAAmC;IACvD,6EAA6E;IAC7E,OAAO,CAAC,SAAS,CAA6B;IAE9C,+DAA+D;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;IACrD,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAC9D,0EAA0E;IAC1E,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CACC;IAErC;;;;;;;;OAQG;gBACS,IAAI,EAAE,YAAY;IAK9B;;;;;OAKG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;;;;OAKG;IACH,OAAO;IAKP;;;;;;;;OAQG;IACH,OAAO;IA+BP;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IAgBpB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IAelB;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,SAAS;IA0BjB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAMf;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAQpB;;;;OAIG;IACH,OAAO,CAAC,KAAK;CAKd"}
@@ -12,6 +12,7 @@ var __values = (this && this.__values) || function(o) {
12
12
  import { AcDbSystemVariables, AcDbSysVarManager } from '@mlightcad/data-model';
13
13
  import { AcApDocManager } from '../../app';
14
14
  import { AcEdMTextEditor } from '../input/ui/AcEdMTextEditor';
15
+ import { isGripAppearanceSysVar, readGripAppearance } from './AcEdGripAppearance';
15
16
  import { AcEdGripEditSession } from './AcEdGripEditSession';
16
17
  import { AcEdGripHandle } from './AcEdGripHandle';
17
18
  import { acedShouldShowGrips } from './AcEdGripPolicy';
@@ -20,7 +21,8 @@ import { acedShouldShowGrips } from './AcEdGripPolicy';
20
21
  *
21
22
  * Grip handles are shown for entities in the view's selection set when the
22
23
  * editor is idle, the document is writable, and selection count is within the
23
- * `GRIPOBJLIMIT` system variable. The manager listens for selection, view,
24
+ * `GRIPOBJLIMIT` system variable. Grip size and colours follow `GRIPSIZE`,
25
+ * `GRIPCOLOR`, and `GRIPHOT`. The manager listens for selection, view,
24
26
  * command, and system-variable changes to refresh or reposition handles.
25
27
  *
26
28
  * Clicking a grip starts an {@link AcEdGripEditSession} that previews and
@@ -61,6 +63,10 @@ var AcEdGripManager = /** @class */ (function () {
61
63
  this._boundRefresh = function () { return _this.refresh(); };
62
64
  /** Stable listener reference for view pan/zoom/resize repositioning. */
63
65
  this._boundReposition = function () { return _this.repositionAll(); };
66
+ /** Stable listener reference for grip-related system variable changes. */
67
+ this._boundSysVarChanged = function (args) {
68
+ return _this.onGripSysVarChanged(args.name);
69
+ };
64
70
  this._view = view;
65
71
  this.bindEvents();
66
72
  }
@@ -104,6 +110,7 @@ var AcEdGripManager = /** @class */ (function () {
104
110
  }
105
111
  var doc = AcApDocManager.instance.curDocument;
106
112
  var blockTable = doc.database.tables.blockTable;
113
+ var appearance = readGripAppearance(doc.database);
107
114
  try {
108
115
  for (var _b = __values(this._view.selectionSet.ids), _c = _b.next(); !_c.done; _c = _b.next()) {
109
116
  var entityId = _c.value;
@@ -113,7 +120,7 @@ var AcEdGripManager = /** @class */ (function () {
113
120
  var gripPoints = entity.subGetGripPoints();
114
121
  for (var gripIndex = 0; gripIndex < gripPoints.length; ++gripIndex) {
115
122
  var wcsPoint = gripPoints[gripIndex];
116
- var handle = new AcEdGripHandle(this._view.container);
123
+ var handle = new AcEdGripHandle(this._view.container, appearance);
117
124
  var entry = {
118
125
  entityId: entityId,
119
126
  gripIndex: gripIndex,
@@ -152,9 +159,9 @@ var AcEdGripManager = /** @class */ (function () {
152
159
  *
153
160
  * Refresh triggers: selection added/removed, command start/end,
154
161
  * `GRIPOBJLIMIT` sysvar change. Reposition triggers: view changed, view resize.
162
+ * Appearance updates: `GRIPSIZE`, `GRIPCOLOR`, `GRIPHOT` sysvar changes.
155
163
  */
156
164
  AcEdGripManager.prototype.bindEvents = function () {
157
- var _this = this;
158
165
  var _a = this._view, selectionSet = _a.selectionSet, editor = _a.editor, events = _a.events;
159
166
  selectionSet.events.selectionAdded.addEventListener(this._boundRefresh);
160
167
  selectionSet.events.selectionRemoved.addEventListener(this._boundRefresh);
@@ -162,11 +169,7 @@ var AcEdGripManager = /** @class */ (function () {
162
169
  events.viewResize.addEventListener(this._boundReposition);
163
170
  editor.events.commandWillStart.addEventListener(this._boundRefresh);
164
171
  editor.events.commandEnded.addEventListener(this._boundRefresh);
165
- AcDbSysVarManager.instance().events.sysVarChanged.addEventListener(function (args) {
166
- if (args.name === AcDbSystemVariables.GRIPOBJLIMIT.toLowerCase()) {
167
- _this.refresh();
168
- }
169
- });
172
+ AcDbSysVarManager.instance().events.sysVarChanged.addEventListener(this._boundSysVarChanged);
170
173
  };
171
174
  /**
172
175
  * Removes all event listeners registered by {@link bindEvents}.
@@ -179,6 +182,43 @@ var AcEdGripManager = /** @class */ (function () {
179
182
  events.viewResize.removeEventListener(this._boundReposition);
180
183
  editor.events.commandWillStart.removeEventListener(this._boundRefresh);
181
184
  editor.events.commandEnded.removeEventListener(this._boundRefresh);
185
+ AcDbSysVarManager.instance().events.sysVarChanged.removeEventListener(this._boundSysVarChanged);
186
+ };
187
+ /**
188
+ * Reacts to grip-related system variable changes.
189
+ */
190
+ AcEdGripManager.prototype.onGripSysVarChanged = function (name) {
191
+ var normalized = name.toLowerCase();
192
+ if (normalized === AcDbSystemVariables.GRIPOBJLIMIT.toLowerCase()) {
193
+ this.refresh();
194
+ return;
195
+ }
196
+ if (isGripAppearanceSysVar(normalized)) {
197
+ this.applyAppearance();
198
+ }
199
+ };
200
+ /**
201
+ * Updates size and colours on existing grip handles from current sysvars.
202
+ */
203
+ AcEdGripManager.prototype.applyAppearance = function () {
204
+ var e_2, _a;
205
+ if (this._entries.length === 0) {
206
+ return;
207
+ }
208
+ var appearance = readGripAppearance(AcApDocManager.instance.curDocument.database);
209
+ try {
210
+ for (var _b = __values(this._entries), _c = _b.next(); !_c.done; _c = _b.next()) {
211
+ var entry = _c.value;
212
+ entry.handle.applyAppearance(appearance);
213
+ }
214
+ }
215
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
216
+ finally {
217
+ try {
218
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
219
+ }
220
+ finally { if (e_2) throw e_2.error; }
221
+ }
182
222
  };
183
223
  /**
184
224
  * Attaches pointer event handlers to a grip handle element.
@@ -280,19 +320,19 @@ var AcEdGripManager = /** @class */ (function () {
280
320
  * Does not recreate entries; only updates DOM positions from stored WCS points.
281
321
  */
282
322
  AcEdGripManager.prototype.repositionAll = function () {
283
- var e_2, _a;
323
+ var e_3, _a;
284
324
  try {
285
325
  for (var _b = __values(this._entries), _c = _b.next(); !_c.done; _c = _b.next()) {
286
326
  var entry = _c.value;
287
327
  this.positionEntry(entry);
288
328
  }
289
329
  }
290
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
330
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
291
331
  finally {
292
332
  try {
293
333
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
294
334
  }
295
- finally { if (e_2) throw e_2.error; }
335
+ finally { if (e_3) throw e_3.error; }
296
336
  }
297
337
  };
298
338
  /**
@@ -302,19 +342,19 @@ var AcEdGripManager = /** @class */ (function () {
302
342
  * use {@link clear} for full teardown including session cancellation.
303
343
  */
304
344
  AcEdGripManager.prototype.clearEntries = function () {
305
- var e_3, _a;
345
+ var e_4, _a;
306
346
  try {
307
347
  for (var _b = __values(this._entries), _c = _b.next(); !_c.done; _c = _b.next()) {
308
348
  var entry = _c.value;
309
349
  entry.handle.destroy();
310
350
  }
311
351
  }
312
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
352
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
313
353
  finally {
314
354
  try {
315
355
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
316
356
  }
317
- finally { if (e_3) throw e_3.error; }
357
+ finally { if (e_4) throw e_4.error; }
318
358
  }
319
359
  this._entries.length = 0;
320
360
  this._hotEntry = null;
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdGripManager.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcEdGripManager.js","sourceRoot":"","sources":["../../../src/editor/grip/AcEdGripManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ import { AcDbObjectId, AcGeMatrix3d, AcGePoint3d, AcGePoint3dLike } from '@mlightcad/data-model';
2
+ import { AcEdBaseView } from '../view/AcEdBaseView';
3
+ /**
4
+ * Manages batched entity preview overlays for command jigs.
5
+ *
6
+ * Used by MOVE, ROTATE, COPY, and similar modify jigs. When batch preview
7
+ * creation succeeds, the overlay reuses GPU-resident geometry and is updated
8
+ * each frame via {@link AcEdBaseView.updateEntityPreview}. When creation
9
+ * fails, callers fall back to legacy transient entity clones.
10
+ *
11
+ * Pass `copyCount` of `1` (default) for a single transformed preview, or a
12
+ * larger value for COPY array previews with independent placements.
13
+ */
14
+ export declare class AcEdBatchedPreview {
15
+ /**
16
+ * Preview handle ids returned by {@link AcEdBaseView.createEntityPreview}.
17
+ *
18
+ * @private
19
+ */
20
+ private readonly _handleIds;
21
+ /**
22
+ * Whether this instance is driving batched GPU-resident previews.
23
+ *
24
+ * When `false`, callers should use the legacy transient-entity preview path.
25
+ */
26
+ readonly useBatchPreview: boolean;
27
+ /**
28
+ * Number of preview overlays managed by this instance.
29
+ *
30
+ * Zero when no previews were requested at construction time.
31
+ */
32
+ readonly copyCount: number;
33
+ /**
34
+ * Creates one or more batched preview overlays for the given entities.
35
+ *
36
+ * Batch preview is disabled when `copyCount` is zero, the view cannot
37
+ * create batch previews, or any individual overlay fails to initialize.
38
+ * On partial failure, all successfully created overlays are disposed
39
+ * before returning.
40
+ *
41
+ * @param view - View that owns preview creation and scene updates
42
+ * @param entityIds - Object ids of entities to include in each overlay
43
+ * @param copyCount - Number of overlays to create (default `1`)
44
+ */
45
+ constructor(view: AcEdBaseView, entityIds: AcDbObjectId[], copyCount?: number);
46
+ /**
47
+ * Applies a world-space transform to the single preview overlay.
48
+ *
49
+ * No-op when batch preview was not created, has been disposed, or
50
+ * {@link copyCount} is not `1`.
51
+ *
52
+ * @param view - View that owns the preview overlay
53
+ * @param matrix - World transform to apply to the preview geometry
54
+ */
55
+ updateMatrix(view: AcEdBaseView, matrix: AcGeMatrix3d): void;
56
+ /**
57
+ * Updates the world-space placement of every copy overlay.
58
+ *
59
+ * Each overlay receives a translation matrix derived from `displacement`,
60
+ * scaled by its copy factor and optional fit mode via
61
+ * {@link scaleCopyDisplacement}. No-op when {@link useBatchPreview} is `false`.
62
+ *
63
+ * @param view - View that owns the preview overlays
64
+ * @param displacement - Base displacement from the copy base point to the
65
+ * current cursor position
66
+ * @param fitMode - When `true`, scales displacements so the last copy lands
67
+ * on the cursor (`factor / copyCount`); otherwise uses full multiples
68
+ */
69
+ updatePlacements(view: AcEdBaseView, displacement: AcGePoint3dLike, fitMode: boolean): void;
70
+ /**
71
+ * Removes every batched preview overlay and clears internal handles.
72
+ *
73
+ * Safe to call multiple times. After disposal, update methods are no-ops.
74
+ *
75
+ * @param view - View that owns the preview overlays
76
+ */
77
+ dispose(view: AcEdBaseView): void;
78
+ }
79
+ /**
80
+ * Scales a copy preview displacement for one array index.
81
+ *
82
+ * Computes the world-space offset for copy factor `factor` along a COPY array
83
+ * preview. In fit mode, displacements are distributed evenly between the base
84
+ * point and the cursor so the final copy reaches the cursor exactly.
85
+ *
86
+ * @param displacement - Base displacement from the copy base point to the
87
+ * current cursor position
88
+ * @param factor - One-based copy index (`1` for the first copy, `2` for the
89
+ * second, and so on)
90
+ * @param copyCount - Total number of copies in the array preview
91
+ * @param fitMode - When `true`, scales by `factor / copyCount`; otherwise
92
+ * scales by `factor`
93
+ * @returns Scaled displacement as a new {@link AcGePoint3d}
94
+ */
95
+ export declare function scaleCopyDisplacement(displacement: AcGePoint3dLike, factor: number, copyCount: number, fitMode: boolean): AcGePoint3d;
96
+ //# sourceMappingURL=AcEdBatchPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcEdBatchPreview.d.ts","sourceRoot":"","sources":["../../../src/editor/input/AcEdBatchPreview.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD;;;;;;;;;;GAUG;AACH,qBAAa,kBAAkB;IAC7B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAe;IAE1C;;;;OAIG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAA;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAE1B;;;;;;;;;;;OAWG;gBACS,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,SAAS,SAAI;IAqBxE;;;;;;;;OAQG;IACH,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAO5D;;;;;;;;;;;;OAYG;IACH,gBAAgB,CACd,IAAI,EAAE,YAAY,EAClB,YAAY,EAAE,eAAe,EAC7B,OAAO,EAAE,OAAO,GACf,IAAI;IAoBP;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;CAIlC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,eAAe,EAC7B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,GACf,WAAW,CAOb"}