Saturday, January 15, 2022

Glimmer Metronome - Tap-based Tempo & Up/Down Beat Toggling

A while ago, I reported building a Glimmer Metronome sample using Glimmer DSL for SWT in only 10 minutes for the first version.

Well, I extracted that sample into an external sample project in order to enable packaging as a native executable for one of my laptops (Download version 1.1.1 DMG file for Mac x64 Catalina and Older) and be able to run independently as its own app.



Furthermore, I added a number of new features in version 1.1, which I needed for my drum pad practices:

  • Tap-based calculation of tempo through hitting ENTER key repeatedly
  • Mute metronome
  • Stop/Start metronome
  • Let user pick which beats are up or down by clicking on them (switching color between red [up] and yellow [down])
  • Show "play logo" triangle inside "ON" beat for accessibility support (e.g. color blind users)
  • Show only 8 beats max horizontally, creating lines of beats if beat count is greater than 8


Here is a video/audio demo:

The external sample project is found at: https://github.com/AndyObtiva/glimmer_metronome

By the way, this project is yet another testament to the fact that Glimmer DSL for SWT is the most productive desktop development GUI framework in the world!

Happy Glimmering!

p.s. For hardcore music buffs out there who are shocked at my reversal or wrong usage of Up beat and Down beat, here are a few explanations to keep in mind. First of all, I am a drumkit (Rock) drummer, not a melodic musician. As such, drumkit drummers call every beat on the rhythm count a DOWNBEAT (i.e. 1, 2, 3, 4). Next, I am a Punk Rocker and I've been known to do some Punk drumming. What do I mean by that!? Punk drummers have a complete lack of respect for music rules. In fact, they write their own rules every day, and OFTEN IN TOTAL OPPOSITION TO MUSIC RULES. So, I just came up with the idea of calling the first beat the UPBEAT because the Metronome makes this HIGHER note shrill sound when it clicks on the first beat. Thank you for your understanding and have an awesome Punk Rocking day while at it!

No comments: