David Schwartz 426 Posted November 26, 2020 (edited) The WebCore folks used their import tool to translate several non-visual JS libs / APIs into Delphi, and they're included as part of the release. I've been trying to work with the Web Audio API, and not having much luck. Most of the classes are derived from TObject, and a few from TJSObject. None of the ones derived from TObject have a Constructor (.Create) method, while the classes based on TJSObject don't have a .new method. I don't know how the compiler doesn't find a Create method on objects derived from TObject, but it throws these errors saying it's just not there. So there's no obvious way to create instances of anything. I'm guessing this may be related to their import tool rather than this specific library. Has anybody had any luck working with this or any of the JS libs / APIs that are included? Edited November 26, 2020 by David Schwartz Share this post Link to post
mikelevel 0 Posted November 26, 2020 (edited) 1) The library you refer to webaudio.pas is a delivery of the pas2js RTL team and is not something the TMS team created, it is from the pas2js team. 2) You contacted TMS technical support via support center + via email and a solution was offered to use these classes. Edited November 26, 2020 by mikelevel Share this post Link to post
David Schwartz 426 Posted November 28, 2020 (edited) On 11/26/2020 at 6:25 AM, mikelevel said: 1) The library you refer to webaudio.pas is a delivery of the pas2js RTL team and is not something the TMS team created, it is from the pas2js team. 2) You contacted TMS technical support via support center + via email and a solution was offered to use these classes. 1) They're delivered as part of the WebCore release and they are not otherwise distinguished as to their origin or who to contact with questions. So I contacted the only obvious people to reach out to. What else would you suggest? 2) I got no reply from the first post, and eventually something from the second. I don't know why nobody replied to the first one, but I can't remember ever NOT getting a reply to support tickets sent to TMS -- if not from Bruno, then someone else. When I have problems with anything from TMS, I know I can count on getting an answer. I've had some really crazy issues come up over the years, and Bruno has always come through, even if it took a while. Even in cases I figured were hopeless, Bruno always showed up with an explanation, if not a remedy. That said, a guess was offered that, if it had been actually tested, would have shown it wasn't viable. These libraries were delivered with not one hint of documentation, tests, or demos. But Bruno did finally respond saying he contacted the pas2js people and they confirmed there was a problem in the translation, that it has been fixed, and they will issue an update in the next release. Yay Bruno! Regardless, without any other knowledge or information, I posted something here simply because I was curious if anybody else has used these libraries and was able to get them to work. This seems like a fair thing to do, especially if the folks who delivered them aren't able to help. I do appreciate the fact that somebody went to the trouble to translate these libraries and that they're more like "quick and dirty" code ports than actual products. If you have a tool that can do that with a few mouse clicks, why not? But even one simple test unit created to verify that the resulting code compiles and runs would have saved a lot of headaches in this case. I did spend most of a day trying to figure this out before reaching out to anybody. Maybe I'm the only person actually using these libraries. I don't know. Nobody else has raised their hand yet and said one way or the other. Edited November 28, 2020 by David Schwartz Share this post Link to post