No release in over 3 years
Low commit activity in last 3 years
Calculator - Glimmer Custom Shell
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

= 2.3.9
~> 3.5.0
= 2.0.5

Runtime

>= 4.17.2.2, < 5.0.0.0
 Project Readme

Glimmer Calculator Icon Glimmer Calculator

Gem Version

Glimmer Calculator on Mac

Calculator

Glimmer Calculator on Windows

Calculator

Glimmer Calculator on Linux

Calculator

Glimmer Calculator on Opal (Web)

Calculator

Glimmer Calculator is a sample desktop GUI application built with Glimmer DSL for SWT (JRuby Desktop Development GUI Library).

Architectural Pattern is MVP (Model View Presenter) thanks to Glimmer data-binding support.

Glimmer Calculator was developed test-first following TDD (Test Driven Development) after Glimmer Scaffolding.

Design Patterns discovered in the process were Facade (Presenter) and Command Pattern.

Here are the calculator commands under the models directory:

Calculator Commands

Glimmer Calculator IconDownload Glimmer Calculator v1.1.4 DMG for Mac

Glimmer Calculator IconDownload Glimmer Calculator v1.1.1 MSI for Windows

Glimmer Calculator IconDownload Glimmer Calculator v1.1.4 GEM for Linux

Glimmer Calculator IconVisit Glimmer Calculator v1.1.2 WEB for Opal

Platforms

Development Environment Pre-requisites

Setup Instructions

Glimmer DSL for SWT

Install Calculator gem by running (jgem, jruby -S gem, or gem directly if you have RVM):

jgem install glimmer-cs-calculator

Afterwards, you may run calculator to bring up the calculator:

calculator

Note: If you cloned this project and bundle installed, you may invoke via bin/calculator instead.

Glimmer Custom Shell Reuse

To reuse Calculator as a Glimmer Custom Shell inside another Glimmer application, add the following to the application's Gemfile:

gem 'glimmer-cs-calculator', '1.1.4'

Run:

jruby -S bundle

And, then instantiate the Calculator custom shell in your Glimmer application via the calculator Glimmer DSL keyword.

Glimmer DSL for Opal

The app Rails server lives under: server/glimmer-cs-calculator-server

It is deployed to Heroku at: https://glimmer-cs-calculator-server.herokuapp.com

Setup instructions from Glimmer DSL for Opal were followed in creating the Rails server.

This is the content of app/assets/javascripts/application.rb:

require 'glimmer-dsl-opal'

Document.ready? do
  require 'glimmer-cs-calculator/launch'
end

As you can see, Glimmer Calculator works as is by adding one require statement without needing to change a single line of its code thanks to Glimmer DSL for Opal.

Calculator

CSS Themes

CSS can be applied externally in Rails onto any Rails Route serving an Opal app.

Apple Calculator CSS Theme

Visit: http://glimmer-cs-calculator-server.herokuapp.com/welcomes/apple

server/glimmer-cs-calculator-server/app/assets/stylesheets/welcomes_apple.scss

Calculator

Tiles CSS Theme

Visit: http://glimmer-cs-calculator-server.herokuapp.com/welcomes/tiles

server/glimmer-cs-calculator-server/app/assets/stylesheets/welcomes_tiles.scss

Calculator

Feature Suggestions

TODO.md

Change Log

CHANGELOG.md

Contributing to glimmer-cs-calculator

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
  • Fork the project.
  • Start a feature/bugfix branch.
  • Commit and push until you are happy with your contribution.
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Copyright

MIT

Copyright (c) 2020 Andy Maleh. See LICENSE.txt for further details.

--

Built with Glimmer DSL for SWT (JRuby Desktop Development GUI Library)

Glimmer Calculator icon made by Freepik from www.flaticon.com