Skip to content
Stanislav edited this page Dec 12, 2021 · 6 revisions

Welcome to the GExt wiki!

GExt is a project that provides uniform API for graphics user interfaces. To maintain some functionality used in core we are using Adapters API, which is placed in com.github.stannismod.gext.api.adapter. Implementing it means porting GExt to the corresponding platform.

We introduce graphics components - objects describing view. All API constructed around it and maintain it. The root API for it located at IGraphicsComponent interface.

Key features:

  • Uniform API - extracted general graphics components' methods
  • Containers - you can(and should) use relative coordinates everywhere. Creating context-free code is awesome!
  • Declarative-styled GUI construction code - no boilerplate, just content
  • Modular components structure. Combine pieces to build your dream!
  • Component drawing isolation - broken render can't break another
  • Clipping enabled by default - we use glScissor mechanism to clip drawing area and fully isolate components' rendering apart
  • Universal construction - StyleMap. Can define styles and draw interface elements from it. Any size, any context
  • Listeners. You can inject your own code to any graphics component. It should be called every time the target component updates his state
  • (new) Context menus. Easy interaction with graphics components
Clone this wiki locally