From: Alex Roberts Newsgroups: comp.os.msdos.djgpp Subject: Re: Mouse Cursors, GUI's. Date: Sun, 28 Sep 1997 15:03:59 +0100 Message-ID: <342E63CF.4E553A1D@earthling.net> References: <3 DOT 0 DOT 16 DOT 19970928113810 DOT 1c0f11e8 AT hem1 DOT passagen DOT se> Reply-To: robo AT nospam-earthling DOT net NNTP-Posting-Host: eftr.demon.co.uk MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 49 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Peter Palotas wrote: > > I've been wondering... Is there any good GUI's out there? I mean good > looking, and good working, portable GUI's`? (For DJGPP ofcourse, well, > portable means that it should compile on several platforms, but since I'm > olny interested in it compiling using GCC, and since *I* am using GCC on > DOS, i.e. DJGPP that's what I'm interested in.) > > Well, anyway, I*ve seen a lot of bad GUI's anyway, but not very many good > ones. I've also written some bad ones myself, but I think that maybe I > should write a good one. Then I have some problems though... > > First problem is the mouse-pointer. How do you greate an absolutely > flicker-free mouse-pointer? I mean, just look at windows. It doesn't > flicker. How did they do their mouse-pointer really? I mean, in DOS most > GUI's and mouse-apps, (with source-code released anyways) hide the > mouse-cursor whenever a draw is about to occur. This is all nice, and works > in most cases, but it doesn't look good. And how a GUI looks, *is* really > important I think. > > Next problem, which isn't really a *big* problem, would be the event > handler. How do you write a good event-handler? Using interrupts such as > the keyboard-interrupt and mouseinterrupt to trap events doesn't work very > nice since you can't do I/O from a hooked interrupt. So that's out of the > question. What you could have is a procedure looping, checking for events, > this works, but then you can't do anything else in your program meanwhile, > hence it leads to quite a lot of idle time. You could use a > multi-threading-library I suppose, but I don't know how stable these are, > and so on. Wouldn't it be good if DJGPP implemented a version of fork() > (Which I've understood is a multithreading-function under unix)? > > Then all of the above almost only applies to DOS, not unix... Well, I don't > know much about unix, so I guess someone would have to help me convert some > stuff anyway. BUt what you do need is a keyboard-handler, and a > mouse-handler that is portable... Are there two such things out there? > Check out Allegro at http://www.talula.demon.co.uk/allegro It;s really kewl, if you want a 3D looking GUI, after getting Allegro, d/l DEGUI (you can find it at the Allegro page). Hope this helps, l8r -- __________ ___. \______ \ ____\_ |__ ____ Alex | _// _ \| __ \ / _ \ Roberts |Spam|SUX( <_> ) \_\ ( <_> ) robo AT earthling DOT net |____|_ /\____/|___ /\____/ http://meltdown2.home.ml.org \/ \/ ICQ UIN: 2164423