News:

PlayBASIC2DLL V0.99 Revision I Commercial Edition released! - Convert PlayBASIC programs to super fast Machine Code. 

Main Menu

PB Layers (GUI)

Started by kevin, April 24, 2022, 11:50:17 PM

Previous topic - Next topic

kevin





PB Layers GUI Library For PlayBASIC




Releases
Version #0000. (Attached bellow)




Layers GUI Blog




Objective:



    GUI's are hard,  even thought PlayBASIC has a various solutions ranging from simple menus through to entire libraries (FlexiGUI ) this is still a fact..  Programming a GUI is difficult.    There's a number of reasons for this, but generally it boils down to the scope of interactions a program might like to have with a user.      

    Given PlayBASIC is all about building classic 2D games;  where you'll find a some simple menu selection systems;  but anything beyond that and you need to build yourself or make one of the pre-existing solutions work for you.     The trouble is those bigger solutions tend to come with a lot of baggage.   So the goal here is to break down the chore responsibilities of what a GUI might need into smaller library that handles the users general input (Mouse/Keyboard) and focus etc.  

   To achieve this we're trialing working upon the problem in what we're calling Layers.  This system treats the display a series of over layed visuals, much like how a paint or video editing  program would deal with adding various elements on top of each other.  So layers stack up and are drawn from bottom to top.   The library then handles calling the refresh / rendering / mouse over and Mouse killed controls..   Ideally; this means we can add new / different layer types to the scene and have Layers GUI manage what the mouse is over / clicking for us.

    This current prototype basically gives us the basic framework to work with; what's missing is some the finer details to be worked out.



Related Links:



     - Simple Menus

 

  PB LAYERS GUI - (2022-04-25)


       Here's the initial state of the project.  Be warned this is 'AS IS'  and is most likely going to change considerable as better ideas / implementations come to mind.    


       Video:
       




       Download:  Attached to post bellow