SGI: Development

encouraging news on the wxWidget side

everything is still very rough and sketchy... linking problems and clear appearance problems (since SGI motif is a bit modified)... also it doesn't build with mipspro... and other bigger and smaller details...

but I have wxWidgets running on my indigo2 ! and also some of the samples too... (some are very buggy). Including the samples which embed the HTML widget (does someone here smells the odour of a small lightweight quasi-native browser?)

so the road is long, the problems are of two kinds

- specifix irix problems
- wxMotif problems, since the port is little used and maintained.

I think that if there is someone left in this community who cares for SGI, irix and motif and is not just another "woah, coloured hardware thing, now let me slap kde stuff on it" (for not saying something worse)... I think it is for the time to rise, help...

fix the motif port essentially. The sgi specific quirks are of various causes and some can be easily fixed.. some can be patched (I have some here locally) but would require a lot of work for a proper fix.

And then also help the wx apps that are around to work on wxMotif...

and we would have our native apps (well.. almost).... instead of using crappy gtk.
I'm interested, although I'm not sure what has to be done yet.
I got the configure working by setting a few variables.
I set the following ones:
setenv MAKE gmake;
setenv LDFLAGS -L/usr/lib32;
setenv CXXFLAGS -LANG:std;

There are still some warnings, but those will come later.

I'm right now compiling with MipsPro. No errors yet, but still a long way to go. What problems did you encounter when trying to compile with MipsPro ?

I read the faq on the Motif port and there are some unimplemented widgets according to the faq. It mentions the OpenGL widget as well, but that seems to use the X11 version as far as I can see from a quick glance of the source.
Can you confirm that OpenGL works ?
OpenGL is not implemented in wxMotif.


if it compiles on MipsPro it is because it was fixed yesterday night in CVS.. I'm collaborating with some of the of the wx guts and I report bugs, propose small patches...

Drag&Drop and OpenGL don't work though, they are not implemented Afaik. Getting those in would be great and would kick wxMotif closer to windows and gtk2 levels.
ok... wxMotif compiles now with MipsPro again, I could launch the first apps and the first samples. I need to clean up my sgi look patch too.
I found out OpenGL does work. It just isn't enabled by default.
If you run configure with the flag --with-opengl, it will compile it.
You can then run the samples cube and penguin. I didn't get isosurf to work. Bombs out with some error. I haven't looked closely yet at why.

There are also two more interesting samples in the contrib directory, but you first have to compile deprecated and ogl in the src directory of contrib to get two extra libraries the samples need.

The layout of the source tree is still a bit confusing, but I will poke a bit more at it.

Some of the widgets look very strange as well. Maybe your patch will help with that.

I also had to change some other things to get it all to work. I had to switch to motif 2.1, otherwise I would get an error about xmcomboboxwidgetclass missing or something like that and I also had to include -LANG:std to LDFLAGS as well.

What settings did you run it with ?

By the way, I got the 2.6.1 release from the website. What release did you try ?
cool that opengl work for you! I was told it wasn't supported....

I am using CVS head and update it about every day... trying to ork with some of the developers to fix some of the bugs that crept in.


you can compile both with motif 1.2 and motif 2.1 but you need to use the correct headers and libraries together.... or you get a mismatch.I try to test both versions, but use 2.1. It is better supported by wx and also supports some widget features that are good to have. If motif has a future at all... then it is 2.1 version of course :)

I wil have a closer look today at the appearance patch again if time permits.
SGI put Motif 2.2.2 on the Prism -- for the life of me I can figure out why.
Could you ask what exactly of OpenGL is not supported on Motif ?
I could implement the Motif specific version, I suppose. I did a Viewkit wrapper class using the Motif OpenGL widget, so it can't be that hard (famous last words).

Thanks for clearing up my confusion on the motif version. I think I'll stick with 2.1 for now.
I was told by a developer that motif "doesn't work well on some particular architectures": it is an answer that leaves a lot open. The only thing is.. trying... maybe it is no longer true or it is something that can be fixed. A wokring GL canvas would be a nice thing to have.
Motif 2.1 should be fine.
I think hat i you want to jump on te boat and contribute to the motif port, developers will be happy (as long as you don't break anything else, but most stuff is quite well separated).
markh wrote: I found out OpenGL does work. It just isn't enabled by default.
If you run configure with the flag --with-opengl, it will compile it.
You can then run the samples cube and penguin. I didn't get isosurf to work. Bombs out with some error. I haven't looked closely yet at why.


I tried my CVS release and cube and penguin do work! isosurf not. This on linux... I'll try elsewhere later. This is encouraging!
markh wrote: I found out OpenGL does work. It just isn't enabled by default.
If you run configure with the flag --with-opengl, it will compile it.
You can then run the samples cube and penguin. I didn't get isosurf to work. Bombs out with some error. I haven't looked closely yet at why.


I tried on lnux and.. the same. but I gives an error before breaking. I found that it looks for isosurf.dat (which exists gzipped in the dir, just uncompress it) and a file called mondrian (I copied the mondrian.ico file from the sources over and renamed it). Now at least on linux it starts and works...
Hi, is this with Motif on Linux ?
I looked into why it fails on Irix and I still get an error.
Looking through the glcanvas code, I see that no gl widget is ever created. wxGLCanvas derives from wxScrolledWindow, which seems odd to me.
This somehow does seem to work when no gl attributes are set, but isosurf does set some attributes and then it fails.
I'll have to run some tests on this.
I decided to do a proper motif implementation of the wxGLCanvas widget and I have made some progress.

What it does now:
- Create a motif gl widget.
- Send expose events, so stuff gets drawn.

What it doesn't do yet:
- Respond to input from the keyboard or mouse.
- Anything else that I haven't found yet. :)

Stuff that still needs to be done:
- I get a crash in the onpaint event of a normal application. I know which function call causes it, but I don't yet know why. Leaving it out makes the application work, but it is noted in the comments above that it is absolutely critical. :)
- Implement the stuff that doesn't yet work.
- Clean up the code.
- Move it to the motif directory (currently overwritten the X11 implementation). This would involve changing the motif makefile somewhere and I have very little idea where to look and what to change.
I worked on it some more and I have it nearly completely working.
Input now also works and the code is fairly clean.
The only problem left is the crashing bug. I found out exactly what is causing it, but I don't understand enough of Xlib programming to understand why the function call that causes the error is there.

I will probably have to ask someone who maintains the motif port about this. Gandalf, where is the best place to ask about this ?

Oh, and I still have to move the code to the motif directory, but I can ask that then as well.
Indeed, unfortunately, the isosurf crashes on irix. I tried here too. With Motif on Linux it works. I hope I can try it on netbsd soon. But penguin runs smooth and fine on my XZ :)

the best place to ask is in the wxwidget channel on freenode... or in their mailing lists...

Right recently there were some improvments commeited for motif! Better dialog panels and buttons.. And I have some sutff here on my HD too that needs to be cleaned and sorted out... wxMotif is not dead. let's show the workd that motif rules.