(ON HOLD) Pop.Box is an easy to use GUI library for the LÖVE engine, intended for rapid prototyping.
Go to file
2017-08-13 18:34:51 -07:00
docs added getPosition, broke ldoc'ing 2017-04-13 14:28:52 -07:00
elements fixed an issue with logging 2017-08-13 18:34:51 -07:00
extensions add/remove methods, optional title bar for windows, demo-work 2017-05-11 14:47:33 -07:00
images window mostly finished 2017-04-30 18:01:19 -07:00
lib improvements and changes for SCP-Clicker and in general 2017-04-08 13:44:31 -07:00
screenshots videos working! 2016-04-17 18:45:18 -07:00
spec docs updates + element wip 2016-09-07 21:42:19 -07:00
.gitignore fix #46 #47 docs + busted 2016-08-20 22:29:16 -07:00
.gitmodules remove duplicate module 2017-04-08 12:38:52 -07:00
build.sh a wee bit of work for debug or something 2017-01-02 17:30:55 -08:00
config.ld STUFFS EVERYWHERE 2017-04-30 14:13:56 -07:00
Element.luadoc docs updates + element wip 2016-09-07 21:42:19 -07:00
init.lua fixed an issue with logging 2017-08-13 18:34:51 -07:00
init.moon fixed an issue with logging 2017-08-13 18:34:51 -07:00
LICENSE.txt added MIT license 2016-04-03 11:48:03 -07:00
main.lua #39 repaired 2017-08-13 18:15:08 -07:00
main.moon #39 repaired 2017-08-13 18:15:08 -07:00
README.md update/fix shields.io badges 2016-11-01 19:20:40 -07:00
todo.txt mostly done re-implementing things I think 2016-02-22 22:10:13 -08:00
util.lua text element, fixed object creation 2017-01-10 12:57:02 -08:00
util.moon text element, fixed object creation 2017-01-10 12:57:02 -08:00

Pop.Box

Do not mix with Cola.

GitHub release GitHub downloads GitHub issues GitHub license

Pop.Box is a GUI library for use in the LÖVE engine, designed to be easy to use and require as little code as possible to set up. It is primarily designed to make it easy to experiment with GUIs during development.

Supports LÖVE versions 0.9.1 and higher.

Documentation

Building the documentation relies on a specific version of LDoc. Run sudo luarocks install ldoc 1.4.4-1 to install the necessary version.

Note: Currently rewriting and redesigning Pop.Box. The following info is out of date until I finish:

Features

  • Quickly set up and align GUI elements.
  • Fully customizable alignment / styling.
  • Moving/resizing elements takes alignment into account.
  • Mouse and key input handling. (Note: Work in progress.)
  • Extensible: Make your own elements, skins, extensions, and everything is automatically loaded.

Usage

The basics:

local pop = require "pop"
-- define LÖVE callbacks here (update, draw, textinput, mouse/key events)
local window = pop.window():align("center"):setTitle("Welcome!")
window:addChild(pop.text("Welcome to Pop.Box()!"))

Note: Due to this being so early in development...the above example doesn't actually work as expected. window is a very new element.

For more examples, see the code in demo. For documentation, see docs (and links to documentation below).

Documentation

Note: Docs are a work in progress, sometimes lagging behind the actual code.

  • Pop Module (The main module/interface.)
  • Elements (Basic features of elements/types of elements.)
  • Skins (A basic system for quickly applying settings to many elements.)
  • Extensions (A way to load custom code in.)
  • Drawables (Reference for what can be used as a background/color.)