Jump to content
IGNORED

New GUI for the Atari 8-bit


flashjazzcat

Recommended Posts

I think it's brilliant. Not easy to do the harder stuff, planning, structures, objects, etc...

 

Very well done. I can't wait to see it done, and whether or not some little apps get done for it.

 

A proper programmers calculator would be a great app. Hint, hint. Would love nothing more than to have the Atari sitting there for that purpose. Might even take the thing to work for a time to show off.

 

I know, long ways off yet. Just thought I would put it out there, because it's fun to put it out there.

Link to comment
Share on other sites

I think it's brilliant. Not easy to do the harder stuff, planning, structures, objects, etc...

 

Very well done. I can't wait to see it done, and whether or not some little apps get done for it.

 

A proper programmers calculator would be a great app. Hint, hint. Would love nothing more than to have the Atari sitting there for that purpose. Might even take the thing to work for a time to show off.

 

I know, long ways off yet. Just thought I would put it out there, because it's fun to put it out there.

After I get the demo out this week (fingers crossed), it'll be back to the drawing board to revise the object structures, get things moved into extended RAM, etc, etc... this is one of the fun weeks, when we get so see lots of new eye candy. Most of the time, however, it's just little steps.

 

"Little apps" (in the form of desk accessories) will be developed as soon as the API is written up. This can happen while the library is still in the alpha stage, some months down the line. Any changes enforced on the apps by the finalized API should be small and easy to implement. This way, when it's all done, you get the library, desktop file manager, and a bunch of accessories all in one go. There'll also be a text editor, although I reckon the word processor will appear several months after that.

 

As for the calculator: I know Mr Fish is keen to write that, as well as a resource editor and a few other accessories. Good coders who are keen to write applications will really take the pressure off me: after all, I'll be busy with the file manager and the text editor by that stage.

Edited by flashjazzcat
Link to comment
Share on other sites

Ran into another bug last night when recoding the routines which position window elements to take sizing into account. Another baffling one: all the sizing routine does is walk through the window structure altering x,y coordinates. However, when it's done, although controls are properly drawn, they're not picked up by the event handler any more. icon_mad.gif The window move routine (which just alters the origin of the top-level window container) has no such problems.

 

Anyway, we're now getting into inserting objects at the head and tail of a linked list depending on which order we want them drawn in and which order we want them matched against the mouse position, so that's probably what's screwing up somehow. Hopefully I can get this fixed today, and in so doing throw a second window on the screen so we can play with overlapping. Looks like it's gonna be a day of bugs, followed by eye candy, followed by a day or bugs, etc... ;)

Link to comment
Share on other sites

So Nice! Only a matter of time until we see "Last Word" running in that big window! hehheh!

 

In the meantime, I'm definitely looking forward to seeing two+ overlapping windows.

 

The blue does look cool, too. Can you imagine if THAT had been on the 1450XLD screen, in the old glossy XL catalog?!!

 

You are really doing it! You are making a historical piece of software right before our eyes... Years & years from now, as long as there is still one Atari Hacker left, your software will be known. Your work will definitely have a very lasting impact on the Atari community.

 

Great job!

Link to comment
Share on other sites

IMO the Windoze way of close/resize/min/maximize is a better way of doing things.

 

ie, [X] in top right, with the other controls next to it rather than way over the other side of the window.

 

I feel obligated to post a dissenting opinion here.

 

I'd love to see you continue to employ the early Mac look - it's very classy and appropriate for a GUI running on a machine of that era.

  • Like 2
Link to comment
Share on other sites

IMO the Windoze way of close/resize/min/maximize is a better way of doing things.

 

ie, [X] in top right, with the other controls next to it rather than way over the other side of the window.

It would be really cool if there was a .config file option that let you specify the look & feel, with rearranged buttons. This way, it could look like a Mac, Windows, X, Amiga, or ST window, based on the user's preference. This could be pretty easy to do, provided that the code is already fairly object-oriented in design.

 

In fact, it could be done in a Very Spiffy Way, with a config setup screen, so that users could place whatever window gadgets, that they wanted, anywhere on the window, via the mouse, choosing gadget elements from a palette of gadgets at the bottom of the screen, or just load a preset window-theme. That would be REALLY cool.

Link to comment
Share on other sites

I am a fan of A8 child, Amiga, so I love that GUI (it had preemptive multitasking).

I would like the best of various GUIs.

I don't like very much to turn on my Atari and feel to be using an Apple.

 

So, I agree with Gary that it is better to have windows buttons together (for ergonomic and originality reasons).

  • Like 2
Link to comment
Share on other sites

The nice thing about using objects and containers (and yes: this GUI is completely object-oriented) is that it's a relatively simple job (and I mean two or three lines of assembly code) to position the buttons anywhere you like in the title bar. You we can have a switch for it on the control panel, at minimal extra cost. The event handler doesn't give a toss where things are. The code which builds a window is just a series of "create object" statements, followed by a call to a routine which scales and positions all the objects (still not fully debugged, it appears).

 

In the menu bar, the clock widget will be one such device: simply a child element added to the menu bar container. Furthermore, we can add other cool gadgets to the RHS of the menu bar, or have a drop down list of stuff. Once the potential of this API is unleashed, I think coders will have a field day. Adding custom elements to title bars will be just as easy: code up your window, create it, then add children to the title bar. Well - it's not quite that simple, but it's certainly doable. icon_smile.gif Your new widget type needs to be registered, and its methods set up in the event table. You then supply code for the class events you want to handle. Job done.

 

The fact Mr Fish and I are fans of the early Mac look probably results from the fact that the Apple interface is one of the best looking monochrome implementations (certainly better than TOS/GEM IMHO). This doesn't mean we have to do a slavish copy of Apple System. It might actually be possible to make the OS skinnable in some way; certainly there could be some variety offered in terms of scroll bar patterns, title bars, etc. However - I don't want to detract from Mr Fish's elegant and well-considered design, to which I have adhered to 100% so far. icon_wink.gif

 

Anyway: if I can get this blasted resizing bug eradicated, I'll then write the code to scale the proportional scrollbar handles, then get two windows on the screen. I must say I'm rather looking forward to that part myself.

 

EDIT: resizing bug fixed. Moving onto handle scaling now...

Edited by flashjazzcat
Link to comment
Share on other sites

I think I would hard code all the icon/look/feel stuff but isolate that in a loadable module. Then as you have time you could create modules for different look and people could use the module they like.

<edit>

I mean isolate a piece of code that determines where those things are.

Edited by JamesD
Link to comment
Share on other sites

I think I would hard code all the icon/look/feel stuff but isolate that in a loadable module. Then as you have time you could create modules for different look and people could use the module they like.

<edit>

I mean isolate a piece of code that determines where those things are.

Most stuff is pretty flexible because - naturally - we've separated code and data. So it's no problem to make the code which builds the interface reference a "description" somewhere, and just follow instruction. That desciption would effectively be the "look and feel" template.

Link to comment
Share on other sites

I think the author has the right to make the GUI look/function the way he wants, and if you don't like it you can write your own.

Relax!

Gary has only written that he prefers Windows buttons positions.

I seconded him and added that I would like that the best of all GUIs is taken (obviously within A8 power) and that an original look would be better.

We are all grateful to Jon here!

We are only making suggestions!

 

For me, everything Jon makes, is perfect!

 

BTW, Jon, I agree with you and Mr Fish on the fact that early Mac interface is the best looking monochrome implementation.

  • Like 1
Link to comment
Share on other sites

I've had "themes" in mind since the very beginning. I just didn't want to bother Jon with it at this stage, but I knew it was possible.

 

As time permits I'd like to design some other themes, and the user input is welcome.

 

The Mac "theme" is more of a convenience right now though, and it allows Jon and I to concentrate on more important design aspects.

  • Like 3
Link to comment
Share on other sites

Hey, with a project like this, it's understandable that everyone wants it to be "just right", especially given that the thing is being developed under the scrutiny of potential users and seasoned coders. It's a valuable opportunity to get user feedback and ideas, and those with good ideas will be kicking themselves later if they don't make their voice heard now.

 

Of course, all the feature requests in the world don't count for much until we have a basic working system which does more than look pretty, and we're a little way off that point yet. icon_smile.gif

 

Having said that, I finally nailed the resize bug (after lots of false-positive fixes). Bloody typo... subtracting CX instead of CX+1. icon_smile.gif I feel what we have would be a little slight for a demo (we need overlapping windows at the very least), but this is the debugged window manager running on my VBXE 130XE (excuse the moire effect, and the efforts of the camera to continually refocus):

 

Edited by flashjazzcat
  • Like 4
Link to comment
Share on other sites

Hey, with a project like this, it's understandable that everyone wants it to be "just right", especially given that the thing is being developed under the scrutiny of potential users and seasoned coders. It's a valuable opportunity to get user feedback and ideas, and those with good ideas will be kicking themselves later if they don't make their voice heard now.

 

Of course, all the feature requests in the world don't count for much until we have a basic working system which does more than look pretty, and we're a little way off that point yet. icon_smile.gif

 

Having said that, I finally nailed the resize bug (after lots of false-positive fixes). Bloody typo... subtracting CX instead of CX+1. icon_smile.gif I feel what we have would be a little slight for a demo (we need overlapping windows at the very least), but this is the debugged window manager running on my VBXE 130XE (excuse the moire effect, and the efforts of the camera to continually refocus):

 

Damn! Where were you back in 1985 - can you imagine someone seeing this back then?

Link to comment
Share on other sites

Damn! Where were you back in 1985 - can you imagine someone seeing this back then?

You have to think something like this being available on 8 bits would have made people wonder why they would need a 16 bit machine.

GEOS was out in 85 but it looks sluggish.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...