Original Post
Updated on 11/17/05 Calling the destructor on the main GUI frame now frees up all the allocated resources. Link up Updated on 10/16/05 Ok I figured I'll clean up this message a bit and simply post the essentials: This GUI package now uses sdt::strings and tinyxml for parsing as per popular request. Here's the list of the main features of this package: Widgets: Buttons, vertical and horizontal sliders, combo boxes, text fields, panels, radio buttons, labels, check boxes and separators. Texture class recognizing DDS, PNG, JPG and TGA files as well as a TextureManager to prevent loading a resource twice. Linux and Win32 compatible now. Timer and benchmark utilities. Fewer files than previous versions. etc... You can grab the zip package containing both linux make file and Dot net project file right here I would like to thank everyone who contributed to this project (woah so many :P) you guys deserve two enthusiastics thumbs up. Ok snapshots: Linux port.
Windows XP.
Setup sample. [Edited by - JavaCoolDude on November 17, 2005 2:51:39 PM]
Windows XP.
Setup sample.
<Panel visible = "true"
name = "Main Frame">
<Texture type = "TEXTURE_2D"
path = "GUIElements.PNG"
mode = "MODULATE"
mipmap = "true">
<Wrap s = "REPEAT"
t = "REPEAT" />
<Filter mag = "LINEAR"
min = "LINEAR_MIPMAP_LINEAR" />
</Texture>
<Font path = "ArialSmall.tga" />
<Panel description = "ColorSliders.xml" />
<Panel name = "Parent"
layout = "CEN_YAXIS"
drawBounds = "true"
drawBackground = "true">
<BordersColor x = "216" y = "169" z = "0" />
<BGColor x = "255" y = "255" z = "1.0" w = "1.0"/>
<Texture type = "TEXTURE_2D" path = "opengl.jpg" />
<TextureRectangle x = "0.0" y = "0.0" z = "1.0" w = "1.0" />
<TabbedPanel callbackString = "tabs">
<TabButtonsBordersColor x = "50" g = "50" b = "50" />
<TabButtonsColor x = "255" g = "180" b = "40" />
<BordersColor x = "216" y = "169" z = "0" />
<BGColor x = "50" y = "50" z = "50" />
<Panel description = "Sliders.xml" />
<Panel description = "Buttons.xml" />
<Panel description = "Editable.xml" />
<Panel description = "Checkable.xml" />
<Panel description = "Others.xml" />
</TabbedPanel>
</Panel>
<Panel name = "EParent"
anchorPoint = "CORNERRD">
<BordersColor x = "216" y = "169" z = "0" />
<BGColor x = "50" y = "50" z = "50" />
<Position x = "-10" y = "-10"/>
<Button callbackString = "exit">
<EdgeOffsets x = "0.0" y = "0.0" />
<Text string = "EXIT" />
</Button>
</Panel>
<Panel name = "DStats"
layout = "YAXIS"
drawBounds = "true"
anchorPoint = "CORNERLU"
drawBackground = "true">
<BGColor x = "50" y = "50" z = "50" />
<BordersColor x = "216" y = "169" z = "0" />
<Position x = "10" y = "10"/>
<Interval y = "2" />
<Label name = "Title">
<Text string = "FPS Monitor" fontIndex ="1">
<Color r = "255" g = "180" b = "40" />
</Text>
</Label>
<Separator ratio = "1.0" />
<Label name = "fpsCounter"><Text string = "Current FPS:" /></Label>
</Panel>
<TexCoordsDesc xStart = "201" yStart = "2" xEnd = "233" yEnd = "34" type = "SLIDER"/>
<TexCoordsDesc xStart = "167" yStart = "2" xEnd = "199" yEnd = "34" type = "CHECK_BOX"/>
<TexCoordsDesc xStart = "131" yStart = "1" xEnd = "165" yEnd = "35" type = "CHECK_BOX_MARK"/>
<TexCoordsDesc xStart = "1" yStart = "1" xEnd = "65" yEnd = "66" type = "RADIO_BUTTON"/>
<TexCoordsDesc xStart = "66" yStart = "2" xEnd = "130" yEnd = "66" type = "CHECK_RB_MARK"/>
</Panel>