Re: [vos-d] WXGLCanvas keyboard input problem...
On 11.03.2007 22:59, Peter Amstutz wrote: > On Sun, Mar 11, 2007 at 10:27:52PM +0100, res wrote: >> I would say neither is right. "Mouse enter" and "gain focus" are two >> distinct events, and a mouse enter generally does not cause a focus >> change. Example: focus has an edit field, you want to type something. >> For some reason, the mouse gets moved over the WXGL view... would you >> want the WXGL view to take the focus? Probably not. > > Well, Windows is click-to-focus, whereas X is typically > focus-follow-mouse, so I would say that it is a matter of taste. But > you're right, another approach to this would be to catch the first > mouse click event and make sure it takes focus in that case. On a focus-follow-mouse setup, wouldn't a mouse-enter implicitly cause a focus gaining anyway? While focus-on-click would be right it might also be unintuitive... a user may fail to notice that some other control is focused and wonders why keyboard input doesn't have an effect. Do WX child windows propagate keyboard events they didn't handle to their parent? If so you could forward keyboard events from your main window (presumably propagated) to the 3D view. Or maybe implement focus-on-mouse manually (via subclassing or so?), but with some heuristic that focus is never taken from an edit box or so. > However, in either case, having CS broadcast an event claiming to have > focus when it doesn't is wrong ;-) Yes. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] WXGLCanvas keyboard input problem...
On 11.03.2007 21:22, Peter Amstutz wrote: > Bingo! I just reviewed a couple of old checkouts of Crystal Space I > have, and it looks like some one "cleaned up" (i.e. broke) the plugin. > > I orginally had a function: > > void csGLCanvas::OnEnterWindow( wxMouseEvent& WXUNUSED(event) ) > { > SetFocus(); > } > > Which fixes precisely the keyboard focus problem by giving it "focus > on enter" behavior. > > Someone changed it to: > > void csGLCanvas::OnEnterWindow( wxMouseEvent& WXUNUSED(event) ) > { > csRef enr = CS_QUERY_REGISTRY (g2d->object_reg, > iEventNameRegistry); > g2d->EventOutlet->Broadcast(csevFocusGained(enr)); > } > > The problem is, this tells Crystal Space has focus, but doesn't change > the *system* focus, which was the whole purpose of calling SetFocus(). > Someone misread the purpose of the method and... broke it. > > So, try re-adding SetFocus() to the csGLCanvas::OnEnterWindow() method > (in CS/plugins/video/canvas/wxgl/GLWXDriver2D.cpp). I would say neither is right. "Mouse enter" and "gain focus" are two distinct events, and a mouse enter generally does not cause a focus change. Example: focus has an edit field, you want to type something. For some reason, the mouse gets moved over the WXGL view... would you want the WXGL view to take the focus? Probably not. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] VOS 0.23.0-pre3 released
On 03.04.2006 16:40, Karsten Otto wrote: > - crystalspace snapshot compiled nicely after "the usual procedure", i.e. > export CPPFLAGS=-I/sw/include > export CXXFLAGS=-I/sw/include > export LDFLAGS=-L/sw/lib > (seems nobody likes the fink default install dir, sigh) I think CS' configure is supposed to look there. At least it seems that way by glancing over the m4 files... Could you check config.log whether some /sw directory is tried? And if so, why the check fails? -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] VOS 0.23.0-pre2 released
On 02.03.2006 13:55, Karsten Otto wrote: >> Also, Kao, make sure to try "wxtest" in the Crystal Space distribution. >> > Same here, it works as far as I can tell, since I don't know what it is > supposed to do. > I get a grey window and a scrolling list of mouse positions and clicks > on the terminal where I started it. No hanging as experienced with > wxterangreal, so I assume the wxtest works. It should not just be a gray window, there should also be some 3D inside - the attached screenshot is how it should look right after starting. Pressing the cursor keys should move things around. -f.r. <> signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] Building 0.23.0-pre1 release on MacOS X
On 14.02.2006 03:10, Daniel Fryer wrote: > I do believe that gcc 4 on the Mac is incompatible with Crystalspace, > last I heard, due to compiler bugs and whatnot. Perhaps try switching > to 3.3? GCC 4.0.0 seems to have a bug that causes generation of faulty code for CS which then crashes at runtime. Either GCC 4.0.1 or 4.0.2 fix that issue. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] vip/userinterface
On 16.12.2005 09:24, swe wrote: >> The reasoning behind the current behavior of having to right-click to >> activate "turning" is that the usual gaming controls with mouselook on >> 100% of the time don't work with a windowed browser (as opposed to >> full screen). The mouse pointer tends to wander out of the window. > > yup good point, I have to check again on some 3D games, I guess they > 'turn' as long mouse is in 3d view, stop turn if outside/on interface > controls. Unlikely. Internally, games usually use the "trick" to recenter the mouse to the window after handling mouse movement - this way, you can turn continuously by just moving the mouse (and IMO if the turn would stop at the window border, it would be pretty annoying as well). However, this continuous turn comes at the price of not being able to leave the window... Any hold-to-turn is probably not a problem if you add a nice introductory message like, "Welcome to Ter'Angreal! Move your avatar with S, X, D, C [or whatever] and turn around by moving the mouse while holding down the right button." [At least for me a hold-to-turn appears more intuitive than a toggle-to-turn.] -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] 0.22.0 this weekend
On 13.09.2005 05:53, Peter Amstutz wrote: > Also having some issues with Crystal Space on Linux. Seems that there > is a bug in gcc 4.0 that causes CS to crash. Also try gcc 4.1, if you can... -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] VOS i18n
On 07.09.2005 04:42, Reed Hedges wrote: > Right, sorry, when I say Unicode, I mean something we choose (one) that > is the most-inclusive of all character sets/languages. Such an > all-inclusive encoding would likely be a multibyte encoding, I presume. Yeah... IIRC you have up to 2^21 characters in Unicode, that not everything fits into a byte is obvious ;) Which UTF you pick in the end does not really matter - all of them enclose Unicode completely. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] VOS i18n
On 07.09.2005 04:02, Reed Hedges wrote: > It would be a simpler protocol to use just unicode. Still, you have to decide for some encoding of Unicode... > The problem is that > (1) it's an extra pain in the neck for developers (i.e. > programmer-users) to worry about, especially coming from worlds like C > and descendents where the notion of non-ascii character sets are a very > recent addition and not a natural part of the language, and (2) if we > add the extra "encoding" field, then we can put off actually > transitioning to unicode (or whatever) by saying that currently the only > valid encoding is ascii. Then later we can do unicode support, but also > support ascii for the old fashioned/lazy/whatever. If you want to be lazy and ASCII compatibility, use UTF-8. What good reasons are there to allow choice of encoding at all? -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] Re: Terangreal and Unicode?
On 07.09.2005 04:08, Reed Hedges wrote: > Why use wxConvCurrent instead of wxConvUTF8? I got the impression from > the wx docs that wxConvCurrent depends on the (GUI) platform, so on a > unicode platform you'd be telling it your strings from VOS were unicode, > when they aren't. I only read the wx docs with a normal depth, no > backwards bending, maybe I am wrong :) Considering that the converter is used to convert Unicode -> multibyte, wxConvCurrent makes no sense... I interpreted that wxConvCurrent would represent the current singlebyte/multibyte character set of the GUI (e.g. Latin-1 on many western systems). -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] Terangreal and Unicode?
On 06.09.2005 05:41, Peter Amstutz wrote: > I tried compiling in unicode on Windows once, and it failed miserably > because Crystal Space can't (or couldn't) handle the > Unicode/wide-character versions of the win32 API. Not sure what you mean CS itself interacts with Win32 only at very few points, and it actually uses Unicode versions of Win32 functions on Windows NT. I'm not sure how a Unicode wxWidgets could break due CS. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] Terangreal and Unicode?
On 05.09.2005 03:44, Reed Hedges wrote: > I made a few changes along those lines and got wxterangreal to build but > now it crashes in CS, as does wxtest, in csDriverDBReader. A backtrace may be helpful. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] Re: struggling with Windows...
On 16.08.2005 22:24, Braden McDaniel wrote: > Well that's annoying. So why bother with msvcr71.dll at all? Why not > just build with /MT instead and pull in the static library? What does > using the DLL runtime buy you? Disk and RAM space savings if you have multiple modules. One heap - you can free memory allocated in some other module. And what exactly *is* annoying? Just put msvcr71.dll alongside your application - done. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] struggling with Windows...
On 15.08.2005 18:12, Peter Amstutz wrote: > SIGTRAP: > Invalid Address specified to RtlFreeHeap( XX, XX ) > > I thought maybe it was the multiple-heaps issue with Windows DLLs, > except that a) I can continue and it doesn't crash and b) I'm pretty > sure mingw compiles everything against the same C runtime DLL > (msvcrt.dll), so there should only *be* one heap. Have you ever seen > this before? Never seen that. Perhaps the additional heap comes from some driver or so. > What's the difference between msvcrt.dll and msvcr71.dll? I thought the > latter is just a newer version shipped with the newer compiler, or is it > more complicated than that? Well, basically it is a newer version, but who knows what changes they made to the runtime, so I wouldn't hold my breath for compatibility. > Well, specifically the inability to add include search paths, so I > couldn't point it at the Win32 SDK. I eventually googled and found the > instructions on a Microsoft developers fucking BLOG (great documentation > guys), but when I tried it it didn't work (although I didn't spend that > much time tinkering with it). Yeah, pretty annoying bug. They even give instructions somewhere on how to use the Platform SDK with VCExpress and say that you should add the Platform SDK paths there - so I don't think not being able to edit paths was intentional... still a rather serious flaw. I ended up editing the relevant configuration file manually - Documents and Settings\YourNameHere\Local Settings\Application Data\Microsoft\VCExpress\8.0\VCComponents.dat . > I would very much appreciate some hints on how to compile Crystal Space > with VC++ Express Beta 2. Once you have the PSDK set up, open the VC 7 projects, have them converted, and hit "Build Solution". -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] struggling with Windows...
On 14.08.2005 09:59, Peter Amstutz wrote: > The compiler situation on Windows is being a real pain in the ass. > Currently I am using the MinGW/Msys toolchain, and it works well enough. > However, the debugger support is terrible -- gdb is basically useless, > which is making it quite a bit harder to track down bugs. Don't know if you have tried yet, but check out gdb-6.3 (from mingw.org, a bit down the downloads list). I had to do some (little) debugging recently, and while gdb-5.something failed to get CS plugin debug info, 6.3 worked well in this regard. > it's not sufficient on its own. In addition, I don't know if there is a > console-mode debugger. As far as I know (I'd love to be proven wrong > :-) it's only possible to do debugging via Visual Studio... There are the "Debugging Tools" which also contain a GUI debugger, WinDbg. I never used it, though. The VC 2003 Toolkit is limited in other regards, too. For example, it doesn't get shipped with the libraries to link with the DLL version of the C runtime (msvcr71.dll). If you google around, you'll find instructions and workarounds to use the VC Toolkit for a number of OSS projects - but it seems it's actually a bit of work to get the VC Toolkit properly support a project. > However, the beta seems to be severely limited in a > couple crucial ways that make it a pain in the ass to use, so it's not > an option for the time being. When VS 2005 comes out for real, we'll > see... What limits do you mean? At least CrystalSpace compiles with it. There were some rough edges first, though, but I eventually sorted them out. -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] poing
On 21.06.2005 17:31, Peter Amstutz wrote: > Actually the intention is to rewrite it to use the new Cairo-based > rendering infrastructure in Mozilla. That minimizes the actual amount > of work for me, and Cairo I understand has an OpenGL rendering backend, > so we may well be able to have it render directly to a texture Hm. OpenGL is problematic. Common CS policy is "no OpenGL calls from client apps". But rendering to a memory buffer is always a possibility. > (do you > know offhand how CS's render-to-texture support is doing these days?) Should be well enough. There are one or two things I have in mind to add at some point that would ease some of the r2t aspects, but generally it should be quite useable. > We'll see :-) Yup.. -f.r signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d
Re: [vos-d] poing
On 21.06.2005 15:03, Peter Amstutz wrote: > I've put together a new development system. It's a dual Opteron 248 (2.2 > GHz) running AMD64 Debian and 32 bit Windows XP. It can compile a CVS > checkout of Firefox in less than five minutes :-) *salivates* ;) > * Crystalzilla. You guys have no idea how much email I've recieved > about this work, and it hasn't even worked right in over a year. I want > to resurrect it, and I finally have a computer that can compile Mozilla > fast enough that working on it again is feasable. If I may throw in my opinion: it might be interesting to have a CrystalZilla that actually uses CS' graphics system to draw the UI, not through Allegro. The nice side would be that the Allegro dependency would be gone for CZ and that the drawing could use hardware acceleration to some degree (may or may not make a difference). But talking is easy for me. ;) -f.r. signature.asc Description: OpenPGP digital signature ___ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d