1. DOS Window Manager

I've posted a demo of my latest toy, a DOS window manager. You can find it
at:

        http://www.lanset.com/dcuny/mwin.htm

It's incomplete, but pretty functional. I've adopted a lot of features from
my prior DOS window managers. The core program is based on Dos32Lib, so
you've can drag, resize, and change the z order of windows. Graphics in
windows are automatically clipped. There's a lot of optimizations, so
moving/resizing/reordering windows doesn't cause a lot of screen flicker.

The best thing is that it's in "pure" Euphoria... I'm sure it's a slug on a
386.

-- David Cuny

new topic     » topic index » view message » categorize

2. Re: DOS Window Manager

> I've posted a demo of my latest toy, a DOS window manager. You can find it
> at:
This looks brilliant - I gather that the idea is that, once complete, it
should be possible to write one programme that will run graphically on DOS,
Windows, and X11, with no modifications? Wonderful!!!

Nick

new topic     » goto parent     » topic index » view message » categorize

3. Re: DOS Window Manager

Nick Johnson wrote:

> [The DOS window manager] looks brilliant - I gather that
> the idea is that, once complete, it should be possible to
> write one programme that will run graphically on DOS,
> Windows, and X11, with no modifications? Wonderful!!!

Yeah, I'm headed down that road again. But don't count your chickens 'till
the code's been delivered.

Anyone want to help with the X11 port? I've got some core routines going,
but it needs a lot of work. I won't have a copy of Linux running until I get
another hard drive, because I'm out of disk space again.

Keep in mind that the core API is still evolving. But I hope to start work
in widgets Real Soon Now. Hopefully I can avoid getting into any OOP mess.
smile

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

4. DOS Window Manager

I've recently posted a program to the Euphoria Web page called WinMan. =
It provides the window manager services for a window's frame: =
maximizing, minimizing, resizing, dragging and closing. The look and =
feel is the monochrome "classic Macintosh", although color, and other =
look and feels will can supported.

The functionality of WinMan would typically be provided by any decent =
graphical OS (Win32/Mac/X Windows). I've coded the window manager =
because it provides a base to work on a platform independant API. It =
also lays a code base for porting that API to DOS.

As usual, WinMan is a "pre-alpha" demo. There are some *very* inefficent =
routines in the code. In the next version, I hope to incorporate Jiri's =
mouse routines and XOR graphics to make the drawing of the bounding box =
(used in dragging and resizing) much faster, as well as adding support =
for graphical mouse pointers. At some point, I expect to be asking the =
graphic experts to help me rewrite the "core" graphic toolkit.

The next release may very likely provide another look-and-feel (perhaps =
OpenLook) to ensure that the API isn't accidentally tied to the Mac look =
and feel. I'm also playing around with the idea of geometry managers =
(like Tk uses) to handle the low-level window layout.

This project will *not* intended to replace Win32Lib. In all likelihood, =
the top level API will look very much like Win32Lib, but support only =
the controls that can be reasonably ported to other operating systems - =
although all the controls that are currently in Win32Lib fall into that =
set.

Any comments/concerns/criticisms?

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

5. Re: DOS Window Manager

At 12:06 PM 4/13/98 -0700, David Cuny wrote:
>I've recently posted a program to the Euphoria Web page called WinMan.
>
>Any comments/concerns/criticisms?
>
>-- David Cuny
>
Really neat! I would like to see how much coding it will take to get
data in and out of various controls.

Irv

new topic     » goto parent     » topic index » view message » categorize

6. Re: DOS Window Manager

Irv Mullins wrote:

>Really neat! I would like to see how much coding it will take to get
>data in and out of various controls.

The top level code will look very much like Win32Lib, such as:

   setValue( ToggleControl, Flag ) -- set value for a toggle control
   setText( TextControl, "Data Value" )  -- set data for a text control
   insertItem( ListControl, "Data Value" )  -- insert an item into a list

   i = getValue( ToggleControl ) -- get value of toggle control
   s = getText( TextControl ) -- get data from text control
   i = getSelectedIndex( ListControl ) -- get the selected index from a list
   s = getItem( ListControl, index ) -- get an item from a list

I hope to have some simple toggle controls up and running for the next release -
 command buttons, check boxes and radio buttons.

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

7. Re: DOS Window Manager

David:
Your Mac-ish gui looks nice!. I couldn't believe when I was seeing it!.
But, do you think is worth to spend time designing a GUI?. Why not to
concentrate in a portable API instead, and use one of those already
available?. I admit that under DOS you should do the work from scratch, but
who is caring about DOS nowadays?.
I'd would rather spend time in improving Tk (or CDE, etc).
On the other side, writing a GUI from scratch is to be a real learning
experience...
Whatever you obtain, we'll be here to try it...
Jesus.
-----Mensaje original-----
De: David Cuny <dcuny at DSS.CA.GOV>
Para: Multiple recipients of list EUPHORIA <EUPHORIA at MIAMIU.ACS.MUOHIO.EDU>
Fecha: martes 14 de abril de 1998 19:29
Asunto: Re: DOS Window Manager


>Irv Mullins wrote:
>
>>Really neat! I would like to see how much coding it will take to get
>>data in and out of various controls.
>
>The top level code will look very much like Win32Lib, such as:
>
>   setValue( ToggleControl, Flag ) -- set value for a toggle control
>   setText( TextControl, "Data Value" )  -- set data for a text control
>   insertItem( ListControl, "Data Value" )  -- insert an item into a list
>
>   i = getValue( ToggleControl ) -- get value of toggle control
>   s = getText( TextControl ) -- get data from text control
>   i = getSelectedIndex( ListControl ) -- get the selected index from a
list
>   s = getItem( ListControl, index ) -- get an item from a list
>
>I hope to have some simple toggle controls up and running for the next
release -
> command buttons, check boxes and radio buttons.
>
>-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

8. Re: DOS Window Manager

Jesus wrote:

> But, do you think is worth to spend time designing a GUI?

If you mean, is there any demand for a DOS version of Win32Lib? No, not =
really.=20

Realistically, anyone who really wants a GUI would be running Win32 in =
some form or another. I ran Win95 on my 386SX with only 8 meg of memory, =
and it seemed to work for most applications.

Even if there was a full DOS GUI toolkit available, I think most =
Euphoria programmers seem to prefer to write everything from scratch. =
For example, Jiri has a very nice font and control library, but I =
haven't seen a lot of development using those tools. For that matter, I =
haven't much use of the TextGUI toolkit, although I'll readily admit =
that documentation for that is lacking.

If you mean, is it worth the time to write a batch of GUI controls from =
scratch, I should warn people that the DOS emulation of the controls =
will be spartan - more along the lines of my Dialog toolkit than =
TextGUI. If people really want better text controls than the ones I =
supply, there will be sufficient documentation for anyone to go in and =
code a better control.

> Why not to concentrate in a portable API=20
> instead, and use one of those already available?

I've actually modelled a lot of the ideas from existing portable API's. =
I've taken a quick look at the Tk source code, browsed the Zinc library, =
scanned through wxWindows... Plus, I'm trying to incorporate what little =
I know about the Mac, Win32 and X Windows APIs.

> who is caring about DOS nowadays?

Most Euphoria programmers, I suspect. Or they never would have started =
using Euphoria in the first place. But I'll also guess that most of them =
don't want a GUI toolkit, although there has been some positive feedback =
to porting Win32Lib to DOS.

> I'd would rather spend time in improving Tk (or CDE, etc).

If Robert elects to include a cross-platform livrary such as Tk to into =
Euphoria, I certainly won't continue working on this.

I haven't seen CDE, so I can't comment on it. I no longer sure if Tk =
would make a good graft onto Euphoria - I've yet to see a "pure" version =
of it (i.e.: not linked to Tcl).

> On the other side, writing a GUI from scratch is to be a real learning =
experience...

I seem to be making a habit of this, don't I? TextGUI, Dialog, =
Win32Lib... Have I ever written an actual *program* in Euphoria? I guess =
EE counts.

> Whatever you obtain, we'll be here to try it...

Thanks. I'm sure that will come back to haunt you. smile

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

9. Re: DOS Window Manager

At 05:15 PM 4/14/98 -0700, sombody  wrote:

>> who is caring about DOS nowadays?
>
>Most Euphoria programmers, I suspect. Or they never would >have started
using Euphoria in the first place.
>But I'll also guess that most of  them don't want a GUI toolkit

Right, and wrong. There are plenty of little and not-so-little
apps that I would write in Euphoria  if I had a stable GUI
availble. I do have a text-mode library with all the usual
suspects (menus, listboxes, edit controls, etc) which I
wrote in Pascal years ago to support my programming
(for dollars) efforts. I still use that, but I would rather
use Euphoria.

>> I'd would rather spend time in improving Tk (or CDE, etc).
>If Robert elects to include a cross-platform livrary such as Tk >into
Euphoria, I certainly won't continue working on this.

Tk looks good, and it is cross-platform, with a c function
call interface. That wouldn't be too hard to patch in,
would it? There are a LOT of calls, however...

On the other hand, it might be best just to write a GUI in
Euphoria. I have been working on a windoz lookalike,
in pure Euphoria, just to see if it can be done.
So far, I have movable 3D windows, Borland style
pushbuttons (that "recess" when clicked), bitmap buttons, radiobuttons,
checkboxes, labels, text entry, and bitmap decorations working. At 166 mhz,
Euphoria displays up
to 5 or 6 windows instantly.

The advantage I see to using Euphoria is this:
we could easily write our own controls, for example,
new gadgets to control machinery in a client's factory.
By keeping this as object-oriented as possible, each
new gadget I create now takes only 40 - 100 lines of code.

Irv



----------------------------------------------------------
--Visit my Euphoria programming web site:--
--http://www.mindspring.com/~mountains   --
----------------------------------------------------------

new topic     » goto parent     » topic index » view message » categorize

10. DOS Window Manager

David Cuny:

Your WinMan demo looks good. I'm looking forward to see more.

Ad.

>I've recently posted a program to the Euphoria Web page called
>WinMan. It provides the window manager services for a window's
>frame: maximizing, minimizing, resizing, dragging and closing.
>The look and feel is the monochrome "classic Macintosh",
>although color, and other look and feels will can supported.

>The functionality of WinMan would typically be provided by any
>decent graphical OS (Win32/Mac/X Windows). I've coded the window
>manager because it provides a base to work on a platform
>independant API. It also lays a code base for porting that API
>to DOS.

>As usual, WinMan is a "pre-alpha" demo. There are some *very*
>inefficent routines in the code. In the next version, I hope to
>incorporate Jiri's mouse routines and XOR graphics to make the
>drawing of the bounding box (used in dragging and resizing) much
>faster, as well as adding support for graphical mouse pointers.
>At some point, I expect to be asking the graphic experts to help
>me rewrite the "core" graphic toolkit.

>The next release may very likely provide another look-and-feel
>(perhaps OpenLook) to ensure that the API isn't accidentally
>tied to the Mac look and feel. I'm also playing around with the
>idea of geometry managers (like Tk uses) to handle the low-level
>window layout.

>This project will *not* intended to replace Win32Lib. In all
>likelihood, the top level API will look very much like Win32Lib,
>but support only the controls that can be reasonably ported to
>other operating systems - although all the controls that are
>currently in Win32Lib fall into that set.

>Any comments/concerns/criticisms?

>-- David Cuny =

new topic     » goto parent     » topic index » view message » categorize

11. Re: DOS Window Manager

> On the other hand, it might be best just to write a GUI in
> Euphoria. I have been working on a windoz lookalike,
> in pure Euphoria, just to see if it can be done.
> So far, I have movable 3D windows, Borland style
> pushbuttons (that "recess" when clicked), bitmap buttons, radiobuttons,
> checkboxes, labels, text entry, and bitmap decorations working.
> The advantage I see to using Euphoria is this:
> we could easily write our own controls, for example,
> new gadgets to control machinery in a client's factory.
> By keeping this as object-oriented as possible, each
> new gadget I create now takes only 40 - 100 lines of code.

yayayayayayayayeah!
me want me want :)




--------------------------------------
If it wasn't for typos,
I'd never get any coding done at all.
;)

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu