Glimmer DSL for GTK Tetris + Cairo Tutorial Inspired by Mohit Sindhwani's
Blog Post:
Glimmer DSL for GTK is now a thing! Yes, you can finally write GTK
applications directly with Glimmer's awesome declarative DSL syntax:
Furthermore, declarative Cairo drawing support has just been added,
including GUI reimplementations of the RCairo samples mentioned in Mohit
Sindhwani's blog post "Cairo with Ruby - Samples using RCairo" ( Cairo with Ruby - Samples using RCairo)
Mohit, thank you for writing such a great introductory RCairo tutorial. My
tutorial takes it further by showing software engineers how to build those
same Cairo graphics into a desktop GUI application (as opposed to just
plain images).
Furthermore, declarative Cairo drawing support has just been added,
including GUI reimplementations of the RCairo samples mentioned in Mohit
Sindhwani's blog post "Cairo with Ruby - Samples using RCairo" ( Cairo with Ruby - Samples using RCairo)
Mohit, thank you for writing such a great introductory RCairo tutorial. My
tutorial takes it further by showing software engineers how to build those
same Cairo graphics into a desktop GUI application (as opposed to just
plain images).
Furthermore, declarative Cairo drawing support has just been added, including GUI reimplementations of the RCairo samples mentioned in Mohit Sindhwani's blog post "Cairo with Ruby - Samples using RCairo" (Cairo with Ruby - Samples using RCairo)
This is very interesting. I need to try it myself to see how it feels to use it, but a quick glance reminds me of Canvas in HTML5.
Mohit, thank you for writing such a great introductory RCairo tutorial. My tutorial takes it further by showing software engineers how to build those same Cairo graphics into a desktop GUI application (as opposed to just plain images).
For full disclosure, I didn't write the tutorial - I ported the samples code gets moved into Ruby code (and an additional post on what I learned - Cairo with Ruby - Converting code from Cairo to RCairo in doing that)
I do want to use Glimmer because I want to create GUIs from JRuby for some of the stuff I'm working on. I'm guessing that the Cairo DSL works with MRI only and not Jruby (native extension).
When I do get around to using Glimmer, I will definitely write about it... it's part of my plan to write about JRuby, esp bits that are unique to JRuby vs CRuby.
- Creating/ Packaging a JAR: you commented on this also [done]
- Accessing Java code from Ruby code running JRuby [done]
- Creating distributable Ruby environments & binaries with JRuby [in progress]
- GUIs with JRuby (using Glimmer) [in the future]
Best Regards,
Mohit.
2022-2-2 | 12:28 am.
···
On 2022-1-31 6:27 am, Andy Maleh wrote:
from: Cairo samples with notes on how the C
I do want to use Glimmer because I want to create GUIs from JRuby for some of the stuff I'm working on.
I'm guessing that the Cairo DSL works with MRI only and not Jruby (native extension).
Creating/ Packaging a JAR: you commented on this also [done]
Yes, I commented to mention that Glimmer DSL for SWT provides
application native executable packaging in JRuby into Mac APP/DMG/PKG,
Windows MSI/EXE, and Linux DEB/RPM files:
Cheers and I look forward to reading your future blog posts!
···
On Tue, Feb 1, 2022 at 11:29 AM Mohit Sindhwani <mo_mail@onghu.com> wrote:
This is very interesting. I need to try it myself to see how it feels to
use it, but a quick glance reminds me of Canvas in HTML5.
> Mohit, thank you for writing such a great introductory RCairo
> tutorial. My tutorial takes it further by showing software engineers
> how to build those same Cairo graphics into a desktop GUI application
> (as opposed to just plain images).
When I do get around to using Glimmer, I will definitely write about
it... it's part of my plan to write about JRuby, esp bits that are
unique to JRuby vs CRuby.
- Creating/ Packaging a JAR: you commented on this also [done]
- Accessing Java code from Ruby code running JRuby [done]
- Creating distributable Ruby environments & binaries with JRuby [in
progress]
- GUIs with JRuby (using Glimmer) [in the future]