SXML GUI

Started by
29 comments, last by frankmail007 17 years, 9 months ago
I have also take a look at the lib and I really like it.
But some stuff is incomplete, ie. some keyboardhandling and GUITextBox is missing some functionality (cursorkeys to move the blinker, scroll larger text, select text, ...).
I was able to hack in the blinker movement via cursorkeys, but the other stuff requires some more work and understanding of the system.
So my question, do you JCD work on a newer version of the lib?
Mike
Advertisement
Mike, have you look through the OpenGlui? It seems the development is still going on. But I don't know it's done by JCD or somebody else. In this development, the namespace is added. But unfortunately it can only be compiled with Allegro/SDL. this is not very flexible for me. I want to use my own renderer, wxWidgets's wxGLCanvas in my case.
frank
Hi JavaCoolDude.
I have followed this project since late 2005.

Did you ever finish version 1.0 of your engine?
And what about realityflux? lol. Any news?

Awesome work JCD!
This library is really good except that there is no document.

I'm trying to add some texture button to panel. My texture is a 256x32 png file which include 6 small 32x32 textures. I'm going to map these 6 textures to buttons. Here is my xml:

     <Panel name         = "Controller"         layout         = "CEN_YAXIS"         anchorPoint    = "CORNERRU"         drawBounds     = "true"         drawBackground = "true">        <BordersColor x = "216" y = "169" z =  "0" />      <BGColor  x =  "50" y =  "50" z = "50" />      <Position x = "300" y = "500" />      <Dimensions x = "300" y = "40" />        <Panel name           = "buttons"           layout         = "XAXIS">          <Button callbackString = "btnprev"              minAlpha       = "1.0"               clipSize      = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "0" y = "32" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>            <Dimensions x = "32" y = "32" />        </Button>        <Button callbackString = "btnoptions"              minAlpha       = "1.0"               clipSize      = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "32" y = "0" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>            <Dimensions x = "32" y = "32" />        </Button>        <Button callbackString = "btnplay"              minAlpha       = "1.0"               clipSize      = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "64" y = "32" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>            <Dimensions x = "32" y = "32" />        </Button>        <Button callbackString = "btnnext"              minAlpha       = "1.0"               clipSize      = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "96" y = "32" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>            <Dimensions x = "32" y = "32" />        </Button>          <Button callbackString = "btnrec"              minAlpha       = "1.0"               clipSize      = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "128" y = "32" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>            <Dimensions x = "32" y = "32" />        </Button>          <Button callbackString = "btnStop"              minAlpha       = "1.0"              clipSize       = "0">              <BordersColor x = "216" y = "169" z =  "0" />          <Color        r = "1.0" g = "1.0" b = "1.0" />            <TextureRectangle x    = "160" y = "32" z = "0" w = "1" />          <Texture          description = "ButtonsCover.xml"/>          <Dimensions x = "32" y = "32" />        </Button>        </Panel>    </Panel>


But this doesn't work. The texture mapping is totally wrong. I know the parameters of "TextureRectangle" are wrong. Can JCD explain what all these x,y,z,w mean? By the way, position doesn't work either.
frank
OpenGLUI is my particular port of SXML GUI. The version up for download is basically the same, though it may have a few more fixes for gcc; however the version is SVN is the version I am actively working on (even though I don't update the repository often, I work on the GUI constantly) and should not be downloaded as it will not compile. The good news is that I am documenting all the code so there will actually be documentation this time around.

Also note that it can be compiled with things other than Allegro and SDL but passing the CUSTOM flag, but if this is done, some classes/functions need to be defined. I chose to use this method while I was re-designing the base SXML GUI code because it makes setup much easier for people using common frameworks for OpenGL window creation (for instance, it provides key and mouse handlers), while still allowing use of other window managers. I may also build in support for more things later.

I hope this clears up any confusions about SXML GUI and OpenGLUI. Basically, they were the same thing, but I felt I could improve it, so they are separate now.
- relpats_eht
What extra GUI features does OpenGLUI include?
Well, I'm not done yet, but when I am, it will provide support for a few of the things I thought essential which were missing from SXML GUI, namely moveable windows, sliders, textareas, scroll bars, skins, etc.

However, don't wait for me. Though I do spend much time with the code to it open, most of it is spent figuring out in what direction I want the code to go. However, that time should be shortening, as all the base classes are now done, so I have nothing but widgets left to make.
- relpats_eht
Quote:Original post by relpats_eht
Well, I'm not done yet, but when I am, it will provide support for a few of the things I thought essential which were missing from SXML GUI, namely moveable windows, sliders, textareas, scroll bars, skins, etc.

However, don't wait for me. Though I do spend much time with the code to it open, most of it is spent figuring out in what direction I want the code to go. However, that time should be shortening, as all the base classes are now done, so I have nothing but widgets left to make.


Hope you can keep the old Image class so that we don't need to write our customized Image class and use Allegro or SDL in order to do some testing. Anyway the CUSTOM flag also be useful if you want to use your own Image class.

Anyway you seems to reorganize the SXML GUI code and add namespace. Greate job. Thanks.
frank
Current, when the CUSTOM flag is set, the Image class is not defined, though, I may add another flag so that something like DevIL is used for the Image class.
- relpats_eht
cool! the_stapler :)

Hey, when you have new information or ideas, post it on your website. I bookmarked it. ;)

This topic is closed to new replies.

Advertisement