Merge different gui elements from Radiance and Birb #56
	
		Labels
		
	
	
	
	No labels
	
		
			
	
	0. Imported
		
			1. Bug
		
			1. Clean-up
		
			1. Feature
		
			1. Improvement
		
			2. Deliverable
		
			2. Epic
		
			3. Duplicate
		
			3. Invalid
		
			3. Need investigation
		
			4. Assets
		
			4. Birb Core
		
			4. Debug
		
			4. Dependencies
		
			4. Inputs
		
			4. Lang
		
			4. Scenes
		
			4. Screen
		
			4. World
		
			wontfix
		
		
	
		No milestone
		
	No project
	
		
	
	
	
	
		No assignees
		
	
	
		
			
		
	
	
	
		1 participant
	
	
		
		
	Notifications
	
		
	
	
	
		
	
	
	Due date
No due date set.
	
		Dependencies
		
		
	
	
	No dependencies set.
	
	
		
	
	
		
			Reference
		
	
	
		
	
	
			epervier/epervier-framework#56
			
		
	
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	
	No description provided.
		
		Delete branch "%!s()"
	 
	Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
For the moment, the whole GUI story on Birb is all over the place. Basically, we have :
All that could be simplified a lot with a global GUI system that would handle all these case, using a generic "gui object" that would be derivated into menus and stuff.
The idea would be to create a gui system inspired a bit by the current menu system, that would be extended to have layer support. At the top level, the core.gui object would be a set of layers.
Each layer would have a unique name, would be global or local (meaning "be destroyed when the scene change", handling 9.) would have a depth variable and a visible boolean. The depth could be relative to the transition, with 0 being just under the transition (it would be the default value, handling 10.), and lower (bigger depth) layer would be covered by the higher.
In layers would be a list of guiElements. This list would be ordered by creationId, but would use global naming (in order to ensure compability with current gui system). These elements would be drawn.
The cases 1. and 2. would NOT be handled, HUD support in world object would be dropped, replaced by guiElements that are linked to a variable of an objects (which could either directly change the shown variable on change, or would interpolate the change according to some criteria).
Menus would be guiElements, and the current menumanager would add them to the gui. This would handle everything but the "screen" system concept.
Will be part of the "big merge".