Download NetBeans!

20071022 Monday October 22, 2007

JFugue Music NotePad: Why Not Join This Project?

As of today, the JFugue Music NotePad is running on JFugue 3.2. It continues to be based on NetBeans IDE 5.5 (or NetBeans IDE 5.5.1), however, so don't make the mistake of trying to open the project in some build/milestone/beta release of NetBeans IDE 6.0! Once you have it running (which should be possible without a single hitch, after checking out nbjfuguesupport from dev.java.net), you should be able to compose music, with results similar to this:

The latest enhancements ensure that it isn't possible to drop more notes into a measure than the number of beats supported by the sheet. So if 4/4 is specified, one cannot put more than 4 full notes into a measure, for example, plus an error message appears if the next note you're dropping would cause the measure to exceed the specified beats. Other related fixes include a correction in the note stem direction, the rules of which state that the stems of all notes below the middle or 3rd line from the bottom of the staff should point up and the stems of those that are above the middle or 3rd line from the bottom of the staff should point down. Yes! This is the level of detail that the application has attained. Thanks a lot to M Valeri for these latest enhancements.

As specified on the related website, the application currently lets you do all of the following:

  • Create new music sheets. Choose File | New to create your first music sheet. A wizard appears, make your selections, and click Finish. You now have a music sheet. You can create multiple music sheets; all actions you perform apply to the current music sheet.
  • Add notes to the music sheet. Click a note in the toolbar, set (if applicable) whether a sharp or flat should be applied, and then click the music sheet. You have now added a note to the music sheet. The application prevents you from adding a note if doing so would result in the added note exceeding the number of beats in the measure, as shown in the screenshot above, via a red message in the toolbar.
  • Change notes. Select one or more notes with your mouse. Notice that the selected notes are now red. Now click the Up arrow and Down arrow to move the notes up and down. Click the Left arrow and Right arrow to increase or decrease the duration of the selected notes.
  • Delete notes. Select one or more notes with your mouse. Notice that the selected notes are now red. Now click the Delete key and the selected notes are deleted, while the remaining ones are redistributed.
  • Change instruments. Right-click an instrument in the Instruments window (if it is not open, go to the Window menu to open it) and choose Select. You can also choose Sample, to hear a sample of the instrument. Now, all notes dropped after you selected the instrument will be played by the instrument.
  • View JFugue music strings. Open the JFugue Commands window and notice that all the instruments and notes that you have selected have been generated there, with helpful syntax coloring. There is no need for you to understand these strings, that's why you're using this application in the first place!
  • Print music sheets. Choose File | Print. A Preview appears, from which you can print. You might need to resize the application a bit, because the size of the current music sheet determines the length and breadth of the print output.
  • Play music. Click the Play button in the sheet's toolbar and the current music sheet is played.
  • Save music. Click the Save button in the sheet's toolbar and the current music sheet is saved.
  • Add plugins. If/when plugins for the application become available, simply choose Tools | Update Center and then use the Update Center wizard to install the plugins.

For a partial history of this project, see Real World Guide to Open Sourcing a Saturday Project on Javalobby. Anyone at all is more than welcome to join the project, it's proven to be a fun application and the threshold for participation couldn't be much lower. Just pick something that you think the application should be able to do, make sure that it isn't already in Issuezilla with someone working on it, and then just go for it. State your intentions in Issuezilla or in the developer's mailing list and then go ahead and make it do whatever you think would enrich the application.

Oct 22 2007, 09:43:19 AM PDT Permalink