As you can see... I'm making some progress. I've corrected a number of problems with GNUstep's in window menu generation. It's now very close to what most other apps generate in GNOME.
I considered a few approaches, one was to leverage some of the code I wrote for the Windows theme to generate the menu from the menu structure and create a GtkMenu to attach to the Window... the issue with this approach was that it would have required the window to be a GtkWindow, which wasn't a good idea. The other approach I considered was to reparent the GNUstep created window into a GtkWindow which contains the GtkMenu. The issue with this was that it would have been impossible to switch back to another theme which doesn't use the GNOME widgets and GtkWindow.
The approach I settled on is a good middle ground. The changes fix a number of issues which were present in the code previously. Also, it gives more control to us regarding the look of the in-window menus.
As you can see, it's not perfect. The icon is still on the bottom left, the menu is still floating. I've made all of the changes necessary to get the GNOME theme working again. I've also refactored it so that it loads nicely from SystemPreferences, which the previous version didn't do.
Once I get the final details worked out, you should be able to run your GNUstep applications alongside GNOME applications without any problems and without them sticking out like a sore thumb.
Any comments are appreciated. I am trying to make GNUstep blend into GNOME as much as possible so that you can port your Cocoa apps to many different environments easily.
Sony SNAP is using GNUstep as it's development environment. They are, apparently, going to use it as the basis for an SDK they're developing to build software for their Consumer Electronics devices, such as TVs and etc.
Hey guys. I thought I would make this blog post to make a point: GNUstep is not OpenStep. GNUstep is a Cocoa implementation and has been for quite some time. I'm concerned that every so often in books or on blogs I see "GNUstep is an OpenStep implementation for Linux." This statement is blatantly wrong in two different capacites: 1) GNUstep is Cocoa and 2) GNUstep works on Linux, Solaris, BSD, Windows, etc.
Let's also address a few other misconceptions. GNUstep has been used to port a number of applications to Windows and Linux without any issues. So when people say "GNUstep is incomplete" they, honestly, don't really know what they're talking about. In most cases, GNUstep will contain whatever you need and, if it's not there then, for goodness sake, do the thing that supposed to be done in Free Software... implement it and contribute the code to us.
I'm beginning to wonder why so many people have trouble with this very simple conc…
I've just used gource to produce several videos to show GNUstep's development over the years. I've only done the parts of GNUstep which reside under core and, of course, Gorm.
Special thanks to Andy Ruder for setting up his GNUstep git repositories at gitweb.aeruder.net. :) Without these I would have had to suffer through the pain of importing GNUstep into git from SVN, not a painless operation. ;)
Hopefully, you'll see some familiar names from the past and present.
NOTE: I suggest viewing these in 720p (HD) as that will make the information easier to make out.
Here is Base:
Here is GUI:
Here is Back:
Here is Make:
Here is Gorm:
The command I used to make these was this (using gnustep-back as an example):
It's unfortunate that SCOTUS has ruled as it has on In Re: Bilski since this was a landmark opportunity to strike down the patentability of software. Instead they bowed to business as usual and decided to preserve the patentability of software, so our fight goes on with respect to fighting this.
This is a frustrating day for me and many others, since it seems to make very little change to the status quo. As others have said, this is a "no-op" and we're back to where we were before Bilski was even started.
The old blog post is here. Even though it's been four years, I'm happy with where things are at the moment. Over the past few years the following things from that list have been accomplished: 1) Adopt a more modern look. This includes the look of the windows, the color scheme and how the menus are rendered. It's okay to let that old gui go, it's not going to kill you to do so. ;) Users like things to look "good". This is entirely subjective. Personally, I think GNOME and KDE are quite ugly under the best of circumstances. To this end, we need to make integrated theming available in GNUstep and make it easy. This has been accomplished by the Etoile folks without question. But my blog post was meant to push the project itself to adopt a more modern looking GUI. So far we haven't done that yet, but the mechanisms are in place now to do it. The theming engine is now much more capable than it was before and should be able to allow the creation of some …
A few years back Jesse Ross came up with this concept for a new look for GNUstep. I'm wondering if there are any ideas/looks/concepts we can glean from this which might be of use. I have always liked the general look of it. One person I talked to about it suggested being able to "dock" the menu bar. That is... attach it to a particular place on the screen, such as the border or something so that it could act like the menu bar on OS X, if we really wanted it to. Interesting thoughts. :)
VAX/VMS has always been interesting to me. I'm currently a member of the OpenVMS Hobbyist program, so I have a copy of OpenVMS 7.3/VAX. I decided to run it on SIMH which is an excellent collection of software aimed at preserving computer history through virtualization of obsolete machines. I must admit that, for me, VMS brings about a bit of nostalgia, since it's where I cut my teeth. Some of the first systems I was ever lucky enough to play with when I was young were VMS systems and it inspired me to learn more and more about software and computers in general. What I did here uses the latest version of SIMH built for PPC. You'll need to change SIMH a little in order to get it to build on the Mac, the instructions are here. Also, you'll need to follow Phil Wherry's excellent guide on getting VMS installed in the first place, that's here. And, finally, you'll need to get DECWindows installed, that information is provided here. Information about the VMS H…
Here's "Toetag." It's an open source Quake level editor being ported by Eric W. As you can see he's been able to make a fair amount of progress in a number of things. The NSStepper/NSStepperCell for instance has been improved as well as Font display among other things. Here's the original website here.