Hello everybody,

Good news from the Ter'angreal on MacOSX front! Well, sort of...

By accident I found the reason why terangreal (and assumedly wxterangreal) just get stuck when I run them on my Mac. Terangreal uses its own main event loop (main.cc), which emulates the functions of the default CrystalSpace run loop. However, on the Mac CS needs to use a *different* run loop, as the code in csutil/generic/runloop.cpp clearly states. And sure enough, there is a different one in csutil/ macosx/OSXAssistant.cpp.

So I changed the code of apps/terangreal/main.cc like this:

  if (terangreal->Initialize ())
  {
      /*
      while (!terangreal->wantToQuit) {
          terangreal->DoFrame();
      }
      */
      csDefaultRunLoop(object_reg);
  }

and sure enough, when starting it the "busy" spinner disappears!
I can even rotate the view by dragging the mouse!

Apart from that however, I cannot move around or anything. I assume Terangreal handles keyboard input etc. by itself in its custom run loop?

Still, it is a step in the right direction... But since I know next to nothing about CrystalSpace, and even less about WX, could someone more versed in these arcane arts please fix (wx)terangreal to use csDefaultRunLoop() ?

Thanks,
Karsten Otto (kao)

...Cross-platform development is such wonderful and fun thing to do...



_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to