All Projects → nilsmartel → Glass

nilsmartel / Glass

Licence: MIT license
Gui Library written in Crystal

Programming Languages

crystal
512 projects

Projects that are alternatives of or similar to Glass

ssGUI
◀️ Super Simple GUI Library for C++ ▶️
Stars: ✭ 21 (-12.5%)
Mutual labels:  sfml, gui-library
Swoosh
SFML Activity and Segue Mini Library
Stars: ✭ 63 (+162.5%)
Mutual labels:  sfml
smk
SMK - Simple multimedia kit - C++ WebAssembly
Stars: ✭ 89 (+270.83%)
Mutual labels:  sfml
KinectToVR
KinectToVR EX (Official)
Stars: ✭ 163 (+579.17%)
Mutual labels:  sfml
DSFML
DSFML is a D binding of SFML
Stars: ✭ 99 (+312.5%)
Mutual labels:  sfml
AntSimulator
Simple Ants simulator
Stars: ✭ 1,939 (+7979.17%)
Mutual labels:  sfml
pactum
Create API specifications and documentation using Python
Stars: ✭ 24 (+0%)
Mutual labels:  wip
react-acrylic
Frost glass effect, Acrylic Material react component
Stars: ✭ 39 (+62.5%)
Mutual labels:  glass
rtl-everywhere
[WIP] React Testing Library everywhere
Stars: ✭ 27 (+12.5%)
Mutual labels:  wip
Expo-Super-Mario-World
Native Super Mario World in Expo
Stars: ✭ 24 (+0%)
Mutual labels:  wip
conan-sfml
[OBSOLETE] The recipe is now in https://github.com/bincrafters/community
Stars: ✭ 13 (-45.83%)
Mutual labels:  sfml
o2r
Open Rodent's Revenge is a C++ remake of the famous Microsoft game "Rodent's Revenge" (1991).
Stars: ✭ 22 (-8.33%)
Mutual labels:  sfml
catui
A very light-weight GUI library for the Löve2D
Stars: ✭ 84 (+250%)
Mutual labels:  gui-library
R3ditor
An open-source project created to reverse-engineering some Resident Evil 3 files
Stars: ✭ 19 (-20.83%)
Mutual labels:  wip
among-us-replayer
Replayer for Among Us
Stars: ✭ 32 (+33.33%)
Mutual labels:  sfml
wipfred
🚧Manage your wip.chat todos with alfred
Stars: ✭ 23 (-4.17%)
Mutual labels:  wip
SpinyGUI
(WIP) Java OpenGL GUI library. Created for using with latest LWJGL (LWJGL 3).
Stars: ✭ 21 (-12.5%)
Mutual labels:  gui-library
tnt
A 2d Game Engine written in C++20.
Stars: ✭ 30 (+25%)
Mutual labels:  wip
cala
Cross-platform system interface for hardware IO
Stars: ✭ 46 (+91.67%)
Mutual labels:  gui-library
MoltenEngine
A spare-time C# .NET 6 game engine project. Cross-platform, multi-threaded.
Stars: ✭ 113 (+370.83%)
Mutual labels:  wip

Glass

(W.I.P) GUI Library written in pure Crystal


TODO

  • Completly change positioning and stretching system. At the moment I'm solely focusing on the minimal window size it seems

Creating a simple Window

in order to create a simple Window one first needs to set up the UI using widgets

In order to do this I will just define a fairly simple function

def new_ui() : Glass::Widget
	img = SF::Image.new(256, 256)
	ui = Glass::AbsolutContainer.new(img)
	ui.background_color = SF::Color.new(64_u8, 64_u8, 64_u8)
	container = Glass::VerticalContainer.new()
	container + Glass::Example.new(128_u8, 64_u8, 32_u8)
	container + Glass::Example.new(32_u8, 128_u8, 64_u8)
	container + Glass::Example.new(64_u8, 32_u8, 128_u8)
	ui + container
	ui
end

Starting the window now is pretty easy!

widget = new_ui

window = Window.new "Glass Window", widget

window.run

the application should end up looking like this

Example Application

Note: this is heavily W.I.P. and no useful functionality has been exposed yet

Contributing

  1. Fork it ( https://github.com/nilsmartel/Glass/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].