Hello JRuby friends!
A new pre-release version (4.0.0.pre3) of Shoes is up on
Rubygems! (shoes | RubyGems.org | your community gem host)
Install with this simple command:
gem install shoes --pre
You need to run JRuby - of course Majority of this mail was written
by my
friend Jason R. Clark - so hat tip there, read on if interested and
enjoy Shoes!
Last time around we split the shoes
gem into a couple different
pieces. Well,
that work has continued and we think weāve got the structure
finalized!
There were a few big motivations in doing this.
First off, the name shoes-dsl
was a bit restrictive to the purpose of
the
gem, so we renamed it shoes-core
. This gem represents all the primary
shared
functionality of shoesāthe DSL, the backend selection, anything a new
backend
implementation would need to get running.
The Shoes manual has been extracted to shoes-manual
for use in
contexts (like
our website) which donāt need all of Shoes. It has all the content and
the
Shoes code for optionally running the manual. Along those lines the
syntax
highlighter weāve inherited from Hackety-Hack is in shoes-highlighter
now to
ease the way for upgrading or replacing in the future.
A new shoes-package
gem has been spun up to hold, you guessed it,
packaging
logic. This lets us easily exclude unneeded packaging code and
dependencies
from packaged apps, keeping them as trim as possible.
Last but certainly not least, the shoes
gem has had a change in
purposeāit
is now a āmeta-gemā that has no code of its own. This gem simply
represents
the default installation of Shoes and nothing else. Any code that would
be
sharable belongs in shoes-core
instead.
Huge thanks to everyone who helped out with this release. \o/ <3
For the detail-oriented, hereās the changelog!
4.0.0.pre3 (199 commits)
New features (1)
-
In pre2 we updated our gem layout and found a few things we didnāt
like.
pre3 is now shaped how we expect to hold through 4.0!- shoes ā Now a meta-gem with the default installation as
dependencies. It
contains no code of its own (any shared code goes in shoes-core). - shoes-core ā The DSL and supporting code to share between Shoes
backends - shoes-swt ā The first Shoes backend, based on SWT + JRuby
- shoes-package ā Shoes packaging logic, separated to avoid pulling
unneeded gems along in packaged apps - shoes-highlighter ā Extracted syntax highlighting from Hackety-Hack
- shoes-manual ā Extracted content and display for Shoes manual
- shoes ā Now a meta-gem with the default installation as
Breaking Changes (1)
- Star interprets left/top as upper left corner, like all elements
[d2fd202]
Improvements (7)
- Tetris sample game [1ac24ac]
- Implement shape(left, top) [2e8048c]
- Handle relative and missing image paths [9502dd7]
- Better input sizing on ask dialog [3df50d5]
- Capture slot context for timer, download and animation [5f1bdc1]
- TextBlocks have #parent not #parent_text [52fab93]
- shoes.gemspec at top of project [369f7d3]
Bug Fixes (10)
- Links with empty text crash [a8fb745]
- Fix copying to/from system clipboard [e965e59]
- Position a slotās elements correctly when the slot has a margin
[d72d7ef] - Fix overlapping text with differing text heights [4db98b0]
- Use app click listener to only send click to one element [2a7fb92]
- Limit parent-dimensioned elements to their parentās bounds [6b9d760]
- Fix for background and border placement [4ddbbda]
- Fix crash when using click on star element [cdf9dc4]
- Do not count scroll bar into app width [7736b2d]
- Fix a typo in the adjusted minesweeper sample [93f5ed3]
Contributors (8)