Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 2.18 KB

README.md

File metadata and controls

66 lines (46 loc) · 2.18 KB

GWork

Linux & MacOS status: Build Status Windows: Build status

GWork is a skinnable, embeddable GUI library with an extensive control set. Control rendering is abstracted, and can be implemented by any application wishing to use the library. Gwork (pronounced "gw-orc") is a fork of the GUI library GWEN. It was forked to fix issues with GWEN and add new features.

A number of rendering backends are provided for use, or as an example for your own:

  • Allegro5 (cross-platform).
  • OpenGL (cross-platform using GLFW).
  • SDL2 (cross-platform).
  • SFML2 (cross-platform).

Documentation

Changes

  • See CHANGELOG for changes to Gwork, and the differences from GWEN.

Issues

Please report problems to Github or they'll get lost.

Build

Get source code:

  • From git: git clone https://github.com/billyquith/GWork.git gwork or
  • Download zip & unzip

CMake is used to generate the project files. See cmake -h to see all the generators for your platform. Only have one renderer per build directory. Choose renderer:

  • -DRENDER_ALLEGRO5=ON
  • -DRENDER_OPENGL=ON
  • -DRENDER_SDL2=ON
  • -DRENDER_SFML2=ON

For example to build Allegro 5 renderer using Ninja:

cd gwork
mkdir build && cd build                 # put build files in subdirectory
cmake -GNinja -DRENDER_ALLEGRO5=ON ..   # create Ninja project files

Providing the dependencies are present, this will create a sample executable. When run it will demonstrate all of the controls available:

ninja                       # build project
bin/GworkAllegro5Sample     # run sample