-
Notifications
You must be signed in to change notification settings - Fork 3
Gem Gui
#Gem Gui

A library to render GUI controls in Monogame applications.
##GemGui Class
To configure a GUI, you must first declare an instance of GemGui
GemGui(Game game,
int targetResolutionWidth,
int targetResolutionHeight,
AggregationTarget aggregationTarget = AggregationTarget.All,
ControlTarget controlTarget = ControlTarget.Windows,
IConfigurationResolver configuration = null)
You can use that instance of GemGui to initialize controls, configure GuiHosts, manage screens, and even customize how your GUI will scale when resolution changes.
The default scale calculator is
gui.Settings.ScaleCalculator = resolution =>
resolution / TargetResolution;
where TargetResolution is the resolution specified upon GemGui's initialization.
##Controls All controls inherit from AControl. That makes it easy to add custom behavior to a control.
There are several controls defined. They can be instantiated using the Control Factory.
The Fluent Builder is an easy and readable way to setup your controls
##Gui Hosts Controls can be grouped into GuiHosts and then organize them using the GemGui's internal screen management system.
##Get Started A get started Gist that previews some basic features.