V1.0 free with update 2, no additional charges for future versions either.
The look is 100% customizeble, via styles. Each style can also specify sounds for the gui, when specific events occur.
Here's the code it took to set up the look seen above.
The alpha is dynamic, and changes according to where you're working. (modes too. can have a solid/non textured gui if you wish)
Global style_Default=style_create() style_texture(style_default,back) style_pressSound(style_default,"gui_dat\but7.wav") style_clickSound(style_default,"gui_dat\but3.wav") style_activeSound(style_default,"gui_dat\warn1.wav") style_motionSound(style_default,"gui_dat\move2.wav") style_doubleClickSound(style_default,"gui_dat\but4.wav")
(I.e ease of use is a big priority.)
The code to create the above was,
Include "Includes\VividGL_Lite.bb" Graphics_Init(640,480,32,1) ;-- [ Setup full screen display Graphics_Setbuffer Graphics_Back() ;-- [ Set our backbuffer. Include "Includes\vgui.bb" ;include the optional gui module.' ;load a background for this little demo. Os_Back=Texture_Load("Example_Media\osBack.bmp") If Not os_back RuntimeError "Could not load Os_Back1.jpg, check you have the latest freeimage.dll" Texture_Blend os_back,3 ;additive blending. Texture_Filter os_back,1 ;linear filtering. all we need for this. back=Texture_Load("example_media\back1.bmp") Texture_Blend back,1 ;combined blending Texture_Filter back,1 ;linear filtering Texture_Scale back,0.1,1,1 ;scale the texture. fol=gui_folderView(20,20,400,300,style_default,"Test") ;gui manages it for you. win=gui_window("Hey botch",100,320,100,100,style_default) scop=gui_window("Nothing",40,40,250,240,style_default) gui_setStatus scop,"Testing Nothing but me" gui_setStatus fol,"Nothing going on here" ;set window status test=gui_list() ;create new gui list. (Allows you to have multiple uis in action at once) gui_listAdd( test,fol) fol=gui_folderView(20,20,400,300,style_default,"Test") gui_listAdd( test,fol) fol=gui_folderView(20,20,400,300,style_default,"Test") gui_listAdd( test,fol) gui_listAdd(test,win) gui_listAdd(test,scop) ;only need to add TOP level of the gui element. style_texture(style_default,back) ;add texture to the default style, we're using. While Not KeyDown(1) Render_Cls(True) gui_updateList(test) ;this one function handles everything for you. Texture_Activate os_back,0 Render_Begin() Render_Color(40,40,40,1) Render_QuadFast( 0,0,GraphicsWidth(),GraphicsHeight()) Render_End() Unlock_2D() Texture_Pop() For j=1 To gui_eventCount() ;We just respond to events Select gui_eventId(j) Case event_GadgetPressed gadget=event_gadget(j) If gadget=QuitGadget ;for example End EndIf Case Event_GadgetClicked Case Event_GadgetIn Case Event_FilePicked file$=Event_File() ;doubled click on a file. End Select Next ;and there more events, to handle all siturations. you simply use what you need. gui_ClearEvents() gui_renderList(test) ;renders the gui list provided. can have multiple lists. Render_Flip(False) Wend
I'll release a exe (In this thread only) shortly, for anyone interested.