Thanks for your reply Alon, are there other APIs that I can use to capture 
mouse and keyboard events in Emscripten 
besides emscripten_set_click_callback? Or do you think the issue lies with 
my mouse_callback itself?

On Thursday, August 27, 2015 at 6:01:35 AM UTC+8, Alon Zakai wrote:
>
> The mouse_callback doesn't seem to work without --proxy-to-worker either, 
> so proxying isn't the issue either. I'm not sure offhand what is wrong 
> there, but it should be easier to debug without proxying.
>
> On Wed, Aug 26, 2015 at 2:59 PM, Alon Zakai <[email protected] 
> <javascript:>> wrote:
>
>> Yes, the JS running in the HTML needs a Module object, so that we can 
>> find the canvas element to render to, text area to show stdout to, and so 
>> forth. If you emit an html file instead of js, that will be emitted for 
>> you. Otherwise, you need to create it in the HTML.
>>
>> It's definitely an error that we fail in this way, though. I fixed this 
>> on incoming, we'll show a warning now, and provide some basic Module 
>> functionality if one is not defined (writing to console.log for stdout, 
>> etc.)
>>
>>
>> On Tue, Aug 25, 2015 at 11:59 PM, awt <[email protected] <javascript:>> 
>> wrote:
>>
>>> Hi,
>>>
>>> I was trying to generate a javascript output for a simple hello world 
>>> program and insert it into my own html file. These are my build commands:
>>>
>>> emcc helloworld.cpp --proxy-to-worker -o helloworld.js
>>>
>>> This is my helloworld.html file:
>>>
>>> <html>
>>> <header></header>
>>> <body>
>>> <script src="helloworld.js"></script>
>>> </body>
>>> </html>
>>>
>>> This is my cpp file:
>>>
>>> #include <stdio.h>
>>> #include <iostream>
>>>
>>> using namespace std;
>>> int main() {
>>>     cout << "HelloWorld" << endl;
>>>     return 0;
>>> }
>>>
>>> I get the following error: 
>>> Uncaught ReferenceError: Module is not defined
>>>
>>> at the following line of code in helloworld.js:
>>>
>>> ['mousedown', 'mouseup', 'mousemove', 'DOMMouseScroll', 'mousewheel', 
>>> 'mouseout'].forEach(function(event) {
>>>   Module.canvas.addEventListener(event, function(event) {
>>>     worker.postMessage({ target: 'canvas', event: cloneObject(event) });
>>>     event.preventDefault();
>>>   }, true);
>>>
>>> Do I need to manually declare the Module object in helloworld.html? Or 
>>> should I just include helloworld.worker.js in helloworld.html directly?
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "emscripten-discuss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] 
>>> <javascript:>.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to