2023-01-14

	Support for LilyPond 2.24
		Old files will need some Directives updating to typeset without warning on 2.24:
			Staff Size
			Notehead Style
			Curved tuplet brackets
			Tuplet Numbering, Bracket Visibility
			Named Rehearsal Marks
			Custom Rehearsal Marks
			Figured Bass Tweaks
			Hiding Time Signatures, key signatures, clefs
			NoteColumn hshift
			Accidental fontsize
			NoteHead fontsize
			Print Accompanist's score
			Smaller Staff
			Set Staff Lines
			Merge Rests
			MultiMeasure Rest Expand Limit
			Footnote
			Change Note Shift
		Commands that *must* be updated to work with 2.24 include:
			Book Titles, Score Version, Bold Page Numbers, these will require re-instating (just toggle/edit them)
		
    Control Horizontal Spacing
        Per-movement spacing control
        Display total number of systems
        Set total number of systems as well as pages
        Commands can operate conditional on layout/Inclusion Criteria
    New Commands to make properties conditonal
        Apply to Score, Movement or Staff properties
        Conditional on current layout or Inclusion Criterion
        Editing conditional values as easily as unconditional
        No need to use the editors to create duplicate directives
    Create book from different layouts
        Book can include typesets at different overall size
        Different Denemo scores can also be included
        Ghostscript used to assemble the typesets
        Page numbering flows correctly
    TAB staff made easy
    Better file chooser with over-write warning
    Search for music incipits in all movements
    Better Triplet Entry command
	Make Command Center available from Properties Editors
Bug Fixes
    Status bar now reflects numbering in all cases
    Up/Down slurs now toggle correctly
    Build without fluidsynth fixed
    Version Upgrade keeping commands & shortcuts fixed
    Page Size command default value fixed
    Denemo Cursor drawing on non-notes fixed
    Make dim and cresc text spanners match normal dim and cresc in size

2022-03-01
New Features for release 2.6
    Pitches First note entry method
        Notes are visualized on a special MIDI track
        Entering rhythms inserts notes from MIDI track
        Recorded MIDI is re-synchronized as each bar is entered
        Facilities to play, backup, advance, delete, restart recording
    Support all system/markup spacing controls
    Easy setting of conditional behavior of Denemo Directives
        Directives attached all objects (notes, chords, time/key signatures etc)
        Use e.g. for changes of clef only for certain instruments
    Editing the LilyPond for individual objects
        Applies to all objects (notes, chords, time/key signatures etc)
        Use e.g. to create editions with chords for smaller hands
    Support creating score/paper/header Directives at startup from Score Properties Editor
        Directives are created only where absent
    Allow easy toggling between listening/playing-in pitches via Shift key.
    Create Score and Parts in one PDF
    Allow setting transposition on playback easily
    Allow recording and attaching musical audio fragments to a score while composing
    Easier setting of Movement Tempo
    Improvements to Playback Controls
        Better control over playback volume
        Simplify setting playback start/end markers
        Better use of colors
    Improve Legibility
        Paler Denemo Cursor
        Allow alteration of brightness of playback start/end markers
    View Menu Improvements
        Turn various windows on/off by shortcut
        Switch back to Main Window with Esc or Ctrl-w
    Staff Display Spacing Control
        Ctrl-Drag to loosen/tighten spacing in display
        Auto/Manual spacing available
        Allows tight spacing for small screens
    Allow trailing staff lines at end of movement
    Bug Fixes
        Fix setting of movement tempo in playback controls
        Fix Inserting Breve and Longa
        Fix display of dotted Breve and Longa after reload
        Fix spurious 0xffffff keypress on windows
        Fix setting/following links to source files esp. on Windows
        Fix display of key signatures for tenor and baritone clefs
        Prevent staff braces being attached to Marks/Dynamics staffs
        Fix sounding duration of grace notes on dotted notes
        Check part lists are same in all movements on Check Score.
        Fix Performance for case where there is an upbeat at the start
        Fix Performance View for LilyPond version 2.22
        Fix Hide Movement as Sketch
        Fix Duplicated Titles
        Fix staff heights in display not resetting
        Fix lyric pane not showing sometimes
        Fix lyrics clashing with beaming in display
        Hidden staff markers avoid clashes
        Arrow at right of display now reliably shifts the displayed measures
        Improvements in restoring window sizes on re-starting Denemo
        Playback Fixes
            Pause no longer hangs notes
            Reset places end play at end
            Initial Playbutton icon change when pausing fixed
            Playback markers in display now follow notes accurately
            Fix clutter in display at Playback Start marker
            Fix Pause for Windows version


2020-11-04

New Features for release 2.5
    Support for Musical Sketches
        Cut selection as sketch 
    Support for LilyPond 2.20.0
    Menu Navigation from Keyboard enabled
    Comments in Lyric verses
Bug Fixes
    Wrong Keyboard Shortcuts on MacOS

2020-03-22

New Features for release 2.4

        Omission Criteria
            A lightweight alternative to Score Layouts
            A single flag turns on/off features of the score 
        Page Turner/Annotater
            Annotate while playing from digital score
            Page turn digital score from pedals 
        New from Current
            Create a new score using the current one as template
            Use for books of songs, sonatas etc to keep style uniform>/ul> 
    Bug Fixes
        Easier object edit interface
        After Grace command now fully automatic
        Crash on Windows during delete measure all staffs
        Template save bugs fixed 
2018-11-09
New Features for release 2.3

    Syntax highlighting in LilyPond view
    Playback Start/End markers draggable
    Source window navigation by page number
        Page number always visible
    Rapid marking of passages
    Two-chord Tremolos
    Allowing breaks at half-measure for whole movement
    Search for lost scores
        Interval-based
        Searches whole directory hierarchy
        Works for transposed scores
    Compare Scores
    Improved Score etc editor appearance
    Improvements to Scheme Editor
        Title bar shows open file
        Save dialog gives help
    Colors now differentiate palettes, titles etc. in main display
    Swapping Display and Source positions
        for switching between entering music and editing
        a single keypress or MIDI command
    Help via Email

Bug Fixes

    Adding buttons to palettes no longer brings hidden buttons back

    MIDI playback of empty measures containing non-notes

    Instrument name with Ambitus clash in staff properties menu fixed

    Visibility of emmentaler glyphs fixed

    Update of layout on staff to voice change

    Open Recent anomalies fixed



2017-07-08
New Features for release 2.2

    Virtual Piano Keyboard
        Defaults to 8 octaves
        Enter rhythm then pitches
        Enter Chords via right click
        Score editing key shortcuts unaffected
        Touch screen ready
    MIDI Simulation
        PC-keyboard simulates Piano Keyboard
        Enter rhythm then pitches
        Octave Control
        Works for entering chords too 
        Customize key assignments
    Lyrics Improvements
        Handle mis-matched quotes
        Avoid accidental verse deletion
    Figured Bass Enhancements
        Position figures on whole notes better
        Make accidentals without a figure bigger
        Position accidentals before a figure better
    Slur and Tie Styles
        Choose from Dashed, Dotted or Solid
    Support for .gz files
        Open compressed files without renaming 

Bug Fixes

    Upgrade keeping shortcuts

    Command Center searches with leading space



2017-02-12
    
GTK Upgrade
    UI manager dropped
    All deprecations to version 3.22 fixed
New Features
    Gregorian Chant Support
    Easier Mirrored Dynamics
    Lyrics verses can be mirrored to other staffs
    Easy selection of staffs to typeset
    Improved Playback Controls
    Less Cluttered Dynamics Line
    Cross Voice Arpeggios
    Baritone Clef support
    Invoke Command Center on commands from Object Editor
Tear-off Menus
    Now tear off as palettes
    Keep them around, dock them, edit the tooltips…
Clearer Display
    Object Position indicators only where needed
Bug Fixes
    Setting playback start via button is now reliable
    Playback View sometimes playing from wrong point fixed
    Instability on Undo after delete of staff with lyrics
    Ledger lines in display for staffs of less than 5 lines fixed
    Fix display of Drum Clef
    Fix positioning of graphics in display for windows
    Fix Playback View for certain locales
    Improved Lyrics display
    Fix Lyric aligment syntax

2016-09-17
    New Features
        Specify total page count
        Set a distinctive style for page numbers
        Duplex View now shows page edges clearly
        Chord Entry by MIDI keyboard without sustain pedal
        Palette button creation for chord types
        Reload standard palettes
    Bug Fixes
        Navigation from stale Print View fixed
        InsertChord command fixed at clef change
        Typeset Verses at End now copes with quotes, underscore, tildes

2016-08-05
    Bug Fixes:
        Fix Print View update when changing initial clef/timesig
        Fix WYSISYG beam angle alteration
2016-07-18 Release 2.0.8
    More Conditional Settings
        Apply conditions to score directives
        Create duplicate directives to be used conditionally
        Use for page breaks between movements, margins etc
    Lyrics Pane Improvements
        Save directly from verse
        Navigate verses from keyboard
    Hidden Staff Improvements
        Now auto-show when the cursor moves on them
        Can be navigated with the mouse as well as keyboard
        Settings stored with score
    New Commands
        Create Click-Track
            Auto-filled with beats
            Custom fill available
        Create Intro
            Handles upbeat
        Create Multi-Measure rests in bulk
        Create Palette Buttons for Object Instantiation
            Chords and Standalone Directives
            Clones fingerings, string numbers, ornaments etc
        Swap chord notes
            Applies to doubled notes (e.g. c c or c c#)
            Eases editing of the notes
            Use for fingerings, string number etc
    Auto-open Source File
        First link opened on file open
    Bug Fixes
        Nth time bar numbers match font
        Layout sync fixed
        Undo/Redo fixed for several bugs

2016-04-20 Release 2.0.8
    Copy and Paste
        Applies to note/chord attributes
        CtrlC, Ctrl-V work for these
        Copied marking is highlighted
        Selection changes color when copied
    Improved Acoustic Feedback
        Trill makes a short trill sound on entry
        Copy attributes sounds
    Improved Visual Feedback
        Status bar notices are animated
        Characters are highlighted in Lyric Verses
        Directives are made more legible when cursor is on them
    Cadenza Time
        For un-metered music
        Music can still display in “bars”
    New Commands
        Tuplet Positioning
        Curved Tuplet Brackets
        Cadenza on/off uses Cadenza Time, sets smaller note size, editable text
        Notes without stems
    Bug Fixes
        Standalone Multi-line text with backslash editing
        Pasting into measures that precede a time signature change 

2016-03-20 Release 2.0.6
    Play Back Controls
        Buttons to play selection or from cursor
            Fix bugs with initial use 
        Mute Staffs
            Mute/Un-mute all or groups of staffs 
        Whole Score Volume Override
    Denemo Display
        Upbeat bar numbering matches typesetter
    LilyPond Error Reporting
        Separate report for each run
        Only report include filenames when they error
    Playback View
        Shift-Click to Navigate
        Revert to simple MIDI while editing
    Playback from Typeset View
        Unified interface with Playback View
    Translations
        Chinese (Simplified) Translation 


2016-02-23 Release 2.0.4
    Conditional Directives on Chords/Notes
        Create editions with/without ornaments, fingerings …
        Conditional items are highlighed in the display
        Object Inspector reports on them
    Enhanced Object Editor
        Set Conditional Behavior
        Initiate Search/Edit from Object
    New Commands
        Gaps in Staffs
        Enharmonic transpositions of passages
    Generating Parts
        Part naming extended to multi-staff instruments 
2016-01-14 Release 2.0.2

    Playback View
        Fully Typeset View
        Click to Play
        Drag to play selection
        Shift-Drag to loop
        Auto-scrolling
            Simple Scrolling
            Multiple Scroll Points (tempo changes etc)
        Play from full score while scrolling a part
        Fully-featured MIDI
            Cresc. and Dim.
            Articulations (staccato etc)
            Grace Notes
            Individual Tied Notes in Chords
            Sustain Pedal … more
    LilyPond Export
        One file per part
        Output divided into measure per line
        Measure Number every 10th measure
        All Staffs
        All Movements
    Staff/Voice Editor Improvements
        Navigate to other staffs within editor
        Visibility/editing of clef, key, time signatures
        Guidance for voices typeset on one staff
    Dynamics Lines
        Display on single line
        Distinctive coloring
    Instrument Ranges
        Out-of-range notes colored red
        Easy one-click setting to chord
    Instrument Templates
        Add staffs pre-configured for chosen instrument
        Name, range and transposition included
    Substituting Music
        Replace music of one staff with that of another
        Use, e.g. to typeset Chord Symbols and Fret Diagrams from one set of chords
    Fret Diagrams
        Include pre-defined Mandolin and Ukulele
        Default is guitar
    Tablature
        Include example for 18th c Lute
    Bug Fixes
        Ornament with Accidentals above and/or below fixed

2015-09-16 Release 2.0
    Object Inspector
        Full details of current object nicely formatted
        Includes all attachments to the current object
        Tracks the cursor
        Available from the Print View
    Object Editor
        Edit built in attributes
        Edit attached features
        Available from Inspector or by right click.
        Create Palette Buttons for instantiating the current attached features
    Score and Movement Properties Editor
        Edit global properties of the Score
        Edit global properties of the Movement
        Switch between movements to edit properties
        Create Palette Buttons for instantiating the current score or movement property
    Staff and Voice Properties Editor
        Edit global properties of the Staff
        Edit global properties of the Voice
        Create Palette Buttons for instantiating the current staff or voice property
    Search and Replace
        Search for rhythmic patterns
        Edit at found pattern and continue
        Search for note sequences
        Wrap to staff start/next staff
        Resume search
    Titles
        Control of bold, italic and fontsize
        Control of spacing
    Beaming Rules
        Create scorewide beaming rules
        Rules for multiple time signatures
        Regular rules with exceptions done by example.
    Preview of Text/Music/Fret Diagram/Chord Symbol Markup
        Check the appearance before re-typesetting the score
    Notehead Styles
        Complete set of notehead styles
        Set on individual notes or score-wide
    Improved MIDI output
        Sustain Pedal effect
    Bug Fixes
        MIDI message lengths corrected for custom messages
    User Manual
        Many new sections added

2015-07-21 Release 1.2.4
    Command Search Improved
        Search for commands containing key words
        Fuzzy search
        Search command help text and label

    New Commands
        Choose format of rehearsal marks
            Plain, boxed or circled
            Alphabetic or Numeric
        Controls for page numbering

    Music Snippets
        Saved with the score
        Use extended to all objects
        Command for insertion from keyboard
        Re-labelling of snippets

    Staff Groups (Braces)
        Graphically displayed
        Click to edit the start or end

    Updated Manual
        New sections on Command Center, Tablature, Fret Diagrams …

    Autosave
        Auto-saved versions detected on start up
        Save rate in granularity of seconds

    Bug Fixes
        Fix over long menus
        Menu of searchable objects avoid spurious items
        Improved Check Score routine
            more errors detected
            error position indicated in all cases

2015-02-02 Release 1.2.2
    More mouse selection support
        Extend an already made selection by dragging
        Dragging selection now scrolls as needed

    Large (Deep) Score Support
        Hide staffs in the Display
        Display only selected staffs, e.g. woodwind section
        Use for deep scores, e.g. full orchestra.
        Navigation commands available
    Improved Ornamentation Interface
        Place accidentals above and/or below ornament
        Stack ornaments.
        Quick and easy WYSIWYG dragging.
    Support for Proof-Reading
        Add PDF Annotations to Denemo typeset Score
        Open the proof-read score in Denemo
        Locate proof reading marks
        Transfer proof read comments to the Denemo score
    Edit/Delete all of one type of object
    Chord Chart Bass Inversion Sequences
    Support for editing from MIDI controller
    Artificial Harmonics
    Caesura
    Arbitrary text for N’th time bars
    Intelligent tied notes edits
    Duplicate, Split or Merge Movements

2014-10-31 Release 1.2.0
        Palette Shortcuts
            Execute Palette Commands from Keyboard
            Label is typed in
            Label truncation allowed
            Switch active palette
            Works even on hidden palettes
        Automatic Cues
            Install Reference to Cued Part
            Automatically detects difference in clef
            Changes are automatically reflected in cue
        Fret Diagrams
            Can be placed in any score
            Can be embedded in text
            Can be re-positioned by dragging
        Accidental Styles
            16 styles available
            Apply across entire score
        Lyrics Improvements
            Choose Font Face
            Choose Font Size
        Chord Chart Improvements
            Interface for Customized Chord Symbols
            Page size and measures per line control
            One-off arbitrary chord symbol creation
            Tailored shortcuts for fast keyboard entry.
        MIDI information on double-click
            Timing information
            Volume (velocity) information.
        Default Font Faces
            Choose from system installed fonts
            Titles, Lyrics etc
            Chord Names and other sans serif text
            Mono-spaced font
        General Improvements
            More checks for user errors
            Better flow of notes into new measures.


2014-07-15 Release 1.1.8
Spanners

    Dynamics such as cresc. poco a poco
    Text such as rall …
    LilyPond takes care of the extents

Lyrics Enhancements

    Lyric stanza numbers can be inserted
    Available on lyrics pane menu
    Lyric font style control
    Melismata Insert

Text and Graphics

    Graphic Title Pages
    Multiple columns of text
    Edit in external vector editor
    Use for music books, verses …
    Multi-line text, with embedded music snippets

Custom Ornaments/Symbols

    Edit the Ornament Shape and Size
    Re-define existing ornaments
    Attach to notes or stand-alone

Custom Barlines

    Define new barlines
    Re-define existing barlines
    Control over how/if they print in all positions

Chord Charts

    Chord Symbols
    With barlines, repeats
    Text markings, pauses
    Use for songs, jazz …
    Display on smartphone while busking…



2014-06-20 Release 1.1.6
    Lyrics Interface
        Cursor on music moves to match cursor in lyrics
        Jump to any point in the lyrics by mouse or keyboard
        The inactive pane (lyrics or music) clearly indicated by graying-out
    Margins Control
        Set top, bottom, left and right margins in mm.
    Tweaking Typesetting
        Individual notes, chords and rests can be tweaked
        Accidentals and markings move with the note
        For use when LilyPond is sub-optimal

2014-04-21 Release 1.1.4
    Spillover
        Appending over-length notes spill into next bar.
        Works for rests too.
        Optional – set a preference for old behavior.
    Shortcuts Cheat Sheet
        Current set of shortcuts listed.
        Alphabetical order.
        Gives description of command.
    Support for Aubio 4
        Microphone Input Note Detection.
        Note Onset Detection.
        Instrument Tuning.
    General Seek and Edit Facility
        Choose from all available object types in movement.
        Choose from objects at cursor.
        Seek and edit the chosen type in music playing order.
        Restart last search, wrap to beginning, to next movemnt.
    Display Editing
        Control+Shift drag to move objects in the input music display
        Does not affect the final typeset score.
        Useful when the input music display is too cluttered to see clearly.
    MusicXML import
        Imports Titles, copyright and other text
        Imports dynamic markings


2014-01-27 Release 1.1.2
    Transcribing from MIDI
        Play in to a click track.
        Enter rhythm afterwards.
    Guided MIDI import
        Durations can be checked as they are entered.
    Support for LilyPond 2.18
        Old scores are updated for incompatible syntax.
    Re-shaping/Re-positioning Ties
        Both WYSIWYG and tweaking width/height/convexity.
    LilyPond View Improvements
        Bracket Matching.
        Line numbering visible.
        Cursor position highlighted.
    Links to source files can be relative to current score location
2013-10-10 Release 1.1
    Palettes of commands
        Customize content and shape
        User created palettes 
    Movement Navigation Buttons
        Buttons for quick change
        Indication of current Movement 
    Raw LilyPond Output
        For inclusion in user's LilyPond template
        Single keypress to update the output 
    Improved Command Manager
        Commands ordered by their labels
        Incremental search for commands by label
        Menu path to each command is shown 
2013-08-27 Release 1.0.8
    Audio Speed Control
        Slow down the audio output in real time
        Aids transcription from audio files. 
    Skeleton Score from Audio
        Note Onsets detected and marked above skeleton score.
        Note Onsets can be dragged to set tempo and synchronize 
    Bug Fixes
        Guile 2.x now properly supported.
      
2013-07-13 Release 1.0.6
      Import MusicXML
          Direct import of music XML.
      Improved Rhythm Entry
          Dotted rhythms in two keypresses
          Triplets in three keypresses
          Slurred versions of these too.
      Combined Key Signatures
          Search and Edit
          Seek a selected type of item
      Edit or continue seeking
          Applies to ornaments, Rehearsal Marks, barlines ...
      Grace Note Hints
          works around the long-standing LilyPond "feature"
2013-05-26 Release 1.0.4
        Playing back repeats in MIDI
          Da Capo and Dal Segno also supported
        Double-Clicking for Help
          Explore the object at the cursor
        Learner Mode
          key presses are shown as you make them
          the command and its tooltip is explained
        Note Entry by PC-keyboard Improved
          The duration keys sound the note entered
          They simultaneous set the prevailing duration
        Audio Recording
          Export to .ogg or .wav files
          Live performance also recorded
        Bug Fixes
          Layout blocks properly supported

2013-04-24 Release 1.0.2
            Wysiwyg Improvements
                Dragging now shows the object as you drag moving over the score
                Dragging of objects attached to notes can now be done
                Slurs can be re-shaped
            Chord Symbols
                Place chords on a separate staff and have them automatically typeset as Chord Symbols
            Bug Fixes
                Octave playback bug fixed

2013-01-04 Release 1.0
   WYSIWYG
      Positioning of elements can be fine-tuned by dragging in the final typeset view.
      Slur angle and placement can likewise be altered by dragging to avoid occasional problems
      Beaming angle can be altered using this wysiwyg interface.
   Continuous Typesetting Option
      A continuously updated score can be kept visible
      Option to re-typeset only a few bars/staffs around the current position
   Animated Display
      No more losing the cursor when stepping off the side of the screen.
      Transition when deleting measures or staffs makes it clear what you just did
   Example of Features
      Sample pdf output: click on a feature to get instructions on how to create the feature
   More commands
      Single command to generate complete set of score and parts
      Textual Annotations, draggable to any position
      Lyric verses at end of piece.
      Acciaccatura built in, with display. 
      Dal Segno
      Whole Measure Repeats
      Beaming commands controlling left and right beam numbers
   LilyPond definitions can be created for a score and immediately appear in a menu

2012-07-08 Release 0.9.6:

  Tooltips
    Tooltips now available on all the menus and menu items.
    Control over delay before tooltips appear and tooltip browsing in preferences
  Score Layouts - print a variety of score layouts without altering the score
    In addition to the standard Full Score, Single Part, Reduced Score, you can now define score layouts to print just one section (e.g. the chorus, or the solo parts in score).
    Blank Pages can be inserted specific to a score layout.
    Lyrics can be positioned above and below the staff (for two parts to a staff)
  Conditional Directives
    Enabling the page turns to be defined separately for Full Score and Single Part layouts
    Enabling parts which have identical first and second time bars to dispense with these when printing single part.
    Enabling printing using different clef changes, or for transposing instruments without altering the score.
  Translations
    Commands, menu labels tooltips now all translatable.
    Scheme scripts have their strings made available for translation, but these mostly need marking still.
  Mouse User Option
    For those who like clicking on the mouse, lots of user-friendly buttons for creating music scores.

2012-03-06 Release 0.9.4:

    * Playback in real time
      No hiccups when page turns or if editing during playback etc
      Pause and Loop play included
      Recording MIDI to accompany the live playback
    *Links to Source Material
      Source files (manuscripts/facsimiles) can be linked from the Denemo score
      One click navigation to and from the source to the transcription
    * Better control of voices
        Voices can be displayed on separate staffs but remain as voices.
        No need to join voices before printing. 
    * Printing directly from Denemo
    optional side-by-side view for seeing page turns
        no need for external pdf viewer
        print to file (pdf, postcript or scalable vector graphics)
        a print-preview is available
    * Navigate from PDF
        Pointing and clicking on a note in the PDF score takes you to that note in the Denemo score 
    * Tweaking the positions of Objects
        Often needed for Rests in single staff polyphony 
    * Book Titles
        Title Page, with composer, arranger etc information nicely displayed.
        Table of Contents optional
        Epilog, a title and paragraph on a page at the end of the music
        Critical Commentary automatically generated from critical comments placed on the music. 
    * Improved display
        Markings like staccato now display nicely
        Text markings also move out of the way of notes in display
    *Audio/Score mixer
    Allows you to synchronize a blank score with a human-generated original audio recording, bar by bar.
    The music can then be transcribed into the blank score and will play in sync with the audio.
    *Chord Accompaniment Editor
    Allows you to work through a score listening and playing in chords via MIDI controller
    Chords are notated for you, and the bars you are working on are replayed
    MIDI controller can be used to advance to the next bar or retry the current bar.
    * Supports both GTK3 and GTK2

2011-09-27 Release 0.9.2:
    * Score Checking
       o Performed automatically before printing (optional)
       o Under/Overfull measures
       o Unterminated tuplets
       o Miss-matched slurs.
    * Pitch Spelling
       o Performed live on MIDI entry
       o Colors intervals that may be enharmonic spelling mistakes with a different timbre
    * Enter Accidental before or after note
       o Use enter accidental to avoid sounding spurious notes on entry.
           o Change a note to one of its enharmonic variants. Same absolute pitch (in Equal Temperament).
       o Change the duration of single notes in a chord to create single-voice polyphony
    * Vertical Rest Positioning (for polyphony)
    * Grace Notes that come after rather than before the main note.
    * Improved display of under/overfull measures
    * Display shows if there are measures before/after those on screen and provides buttons to navigate
    * Better beaming control.
    * Arbitrary Dynamics text.
    * New Denemo fonts
       o Denemo's own font now uses standard unicode font symbols
       o LilyPond font accessible to scripts
       o Improved display of entered music, help texts etc.
       o Simpler scripting to display any LilyPond feature.
    * Thumbnails for .denemo files in file open dialog and for your Window Manager
       o Thumbnail shows a selection of your choice as finally typeset.
       o Default thumbnail is first three measures
    * Import images of scores for transcription
       o Scores captured bar-by-bar into Denemo, displayed directly underneath the bar they relate to.
       o Editorial decisions/errors can easily be checked
       But Linux only.
    * Bug Fixes
       o Vertical scrolling (a long-standing bug fixed at last)
       o Bookmark searching
       o Nested tuplet display
       o Redo crashes
    * Notes:
           o As yet no windows binary is available
           o Playback out of priority thread is not in this release.
           o The manual does not have the latest list of scheme commands available.

2010-11-24 Release 0.8.22:
        *  Playback Improvements
          o playback in historic tunings, microtonal music playback.
          o mute selected voices during playback 
    * Denemo Display improvements
          o Whole Measure Rests fills measure for all timesignatures
          o Upbeat (Anacrusis, pickup) command now fills measure
          o Vector graphics for Directives Graphics Fonts
          o Fully justified page display.
          o Better display for 1-line staffs (e.g. Drum staff) 
    * Breve, Longa notes and rests
          o Prevailing duration applies to Breve, Longa, Plain chant etc Prevailing Duration 
    * Template for Accordion Shifts
    * Improved Handling of Voices
    * More Printing Controls
          o Change/override the printed measure numbering
          o Hide single printed objects (notes/chords, timesignatures, keysignatures, clefs)
          o Hide linear section of notes or the stafflines (or both).
          o Breath mark
          o "Mensurstriche" / Mensural Barlines switchable (printing) 
    * Human-readable file format for Denemo files.
    * Bugfixes
          o Playback paging made reliable
          o Check note pitches fixed
          o Lyrics panes word wrap 

2010-10-04 Release 0.8.20:
    *  Improved cursor, showing insert position and clearly distinguishing appending from editing/inserting
    * Two key keyboard shortcuts Two Key Shortcuts
    * MusicXML import
    * Improved LilyPond import
    * "NotationMagick": Scripts to generate, twist, randomize and shuffle music.
          o Twelve-Tone-Row (Schoenberg) Generator
          o Random Note insert. Variants: All diatonic, all chromatic, from a given pool, a complete pool at once (shuffled) 
    * Bug Fixes
          o Grace notes on tuplets fixed.
          o Paste places non-note objects correctly. 
    * Build options:
          o configure --disable-portaudio is now available, removes dependencies of portaudio, libsamplerate, fftw3 and aubio 

2010-07-05 Release 0.8.18:
    * Maximize the space for the score (with/without user's choice of menus).
          o Standard View - window size, zoom, number of systems etc
          o No-Menu version of this view
          o Page View - user chooses a window size, zoom and number of systems, which is stored with the movement for instant recall.
          o Single keyboard shortcut for toggling between these views (Esc by default). 
    * Musical Snippets - store musical riffs/motifs to be pasted at will or as rhythmic templates for playing over.
    * MIDI transport work for JACK users.
    * Bug fixes:
          o Fix Chord Symbols for music starting with triplets, grace notes etc.
          o Fix display of dotted rests 
    * Arbitrary Tuplets built in: correct MIDI output as well as engraving, of course.
    * Diatonic Transposition: Shift notes and chords up and down respecting the current key signature.
    * Support for figured bass extenders, including those with no starting figure.
    * Better Paste command.
    * Cursor can be highlighted, making it easier to locate
    * Page turning is animated: as the last line starts to play, the page visibly turns at the top.
    * Default behavior is now non-modal
          o an easy to understand and very slick interface via keyboard
          o seamless integration with MIDI controllers 
    * Purely rhythmic notes playback using percussion - click tracks more easily generated.
    * Separate shortcut loading command
    * Split Notes and Chords to smaller notes while preserving the original duration (make a quarter note two 8th or tuplet of 8th or 7-tuplet)
    * Duplicate a Note or Chord as command
    * Command line interface for interactive scheme use
    * Support for the "French" clef (G on bottom line)  


2010-04-01 Release 0.8.16:
      * Automatic page turning on playback. When playback reaches the
        last line in the display the page turns at the top so that you
        can read the music continuously
      * Recording Midi: while playing a Denemo score you can record a
        new MIDI part, and then playback the combined performance. Save
        the combined performance as midi. Simple convert-to-notation.
      * Playback controls - set the start position to the cursor
      * Grace Notes - Now as On/Off command, correct display in Denemo
        and works with selections

2010-03-01 Release 0.8.14:
    * Zoom for the Denemo display
    * Mulit-line display of music.
    * MIDI player controls
          o Independent playhead
          o Loop control - edit your music while it loops.
          o Master Tempo command
          o Master Volume command
          o Control the play interval, set to selection etc 
    * Typical Midi Control Changes (Program Change, Hold Pedals etc.)
          o A Generic Control Change directive for any Midi CC Message. 
    * Convert GM Drum Staffs to users' drum notation. The mapping can be edited visually by using a normal .denemo template.
    * Apply To Selection for script authors
          o Upgrade of some scripts to work with selections.
          o New user preference that turns "Apply to Selection" on/off 
    * New cursor movement commands: Standard shortcuts now don't alter the selection
          o Conventional mouse + keyboard selection (shift+left/right), in multiple staffs at once 
    * Improvements to MIDI import.
    * Hide certain menus / toolbars. 


2010-01-01 Release 0.8.12:    
    * MIDI playback by internal synth (Fluidsynth)
    * MIDI input available from all platforms (using Fluidsynth)
    * Uses latest LilyPond version
    * New Paste command Paste Command Script
    * Adding movements keeps the staff/voice arrangements of the current movement.
    * Find routines. Find next note lower than cursor.
    * Support for wheel-mouse
    * Rhythm entry now creates non-printing notes until pitches are applied
    * Metronome markings for any duration, slur direction control, memorize and return to the cursor position,
    * Set up multiple JACK output devices with multiple ports on each. Assign staffs to these device/port names.
    * Bug fixes: cursor position on directives 
2008-07-17 <rshann>
       view.c more internationalization fixes, and minor improvements to tooltips.
       denemoui.xml apply RR's fix for order of menu items.
2008-07-17 <jjbenham> 
       exportlilypond.c prints out more info in /paper properties on music
       excerpt
       changed many links to point to denemo.org
2008-07-17 <jjbenham> 
       importmidi.c printf takes notice if their is possible multiple
       voices
2008-07-10 <jjbenham> 
       importmidi.c rewrote and renamed function NewFindChordTones to findchordtones.  
2008-07-09 <jjbenham>
       importmidi.c/h fixed some casting to remove warnings
2008-07-08 <jjbenham>
       importmidi.c/h importmidi now puts notes on correct staves
2008-07-05 <rshann>
       commandfuncs.c make toend() function really go to the end of the movement. (See Nils wishlist item).
2008-07-05 <rshann>
       main.c view.c position init_keymap() so that it can access all widgets. This is just my own
       fix as I seem to have checked in the other fixes for multiple windows by mistake & this stops
       git being broken for display of keybindings on menu items.
2008-07-05 <rshann>
       audiocapture.c improve test for portaudio >V18
2008-07-03 <jjbenham>
       importmidi.c importMidi now returns 0 on success. It was returning 1 on
       Success. 
2008-07-02 <rshann>
       staffops.c Warn about deleting one of a pair of staffs with context set.
2008-07-02 <rshann>
       file.c do not offer to load lilypond. (You can still try though).
2008-07-01 <jjbenham>
       print.c, print.h made seperate function for open_viewer
2008-06-30 <rshann>
       commandfuncs.c warn if context set when swapping staffs. view.c document behaviour of swap staffs.
2008-06-28 <rshann>
           generate_source.c entries.h callbacks.h, view.c fix duplicate menu_entries.
       exportlilypond.c change semantics of markup
       scoreprops.c scoreops.c importxml.c exportxml.c denemo_types.h
2008-06-28 <rshann>
       add Metronome.denemo to examples Makefile.am
2008-06-27 <rshann>
       add RehearsalMarks.denemo to examples Makefile.am
2008-06-27 <rshann>
       exportlilypond.c avoid showing only selection in LilyPond text when focus-in.
2008-06-27 <rshann>
      keymaps get rid of duplicate & non-existant actions.
      kbd-custom.c avoid exit in case of error in Debug code.
2008-06-27 <rshann> Fixes from JRR -Do not set modifier keys as keybindings when using quick edits
           src/kbd-custom.c  
           src/kbd-custom.h  
           src/kbd-interface.c
    
2008-06-27 <rshann> Fixes from JRR -
      Mnemonics for some menus and buttons were stealing keybindings.
          Mnemonics associated to standard gtk stock items are removed through
          clean_stock_items (was remove_accel_from_stock)
          Mnemonics in menubars are remove by removing '_' from their labels
2008-06-27 <rshann> Fixes from JRR - load_accels is not needed anymore and as such is removed.
           Welcome in a gtk-accel free denemo! src/main.c src/view.c
2008-06-27 <rshann> Fixes from JRR - Remove the accel code from kbd-custom.c
          - Move update_accel_labels from view.c to kbd-custom.c
           Some code factorization is also performed.
           - Remove load_accels from main.c
           This breaks again the accel behaviour of action using stock items, but it is
           the way to go. Next commit will fix this
           - Fix bug N°1 of RS mail on denemo-devel@gnu.org (Three Bugs, 22/06/2008)
2008-06-27 <rshann> Makefile.am remove standard.accels
    
2008-06-27 <rshann> view.c commandfuncs.[ch] functions for voiceup/down. Refine label on edit change duration.
2008-06-26 <jjbenham> 
    keymaps/Makefile.am fixed the installation of keymaps
2008-06-26 <rshann> view.c commandfuncs.c commandfuncs.h implement staffup/down properly.
    kbd-custom.c clear old bindings on loading new.
2008-06-26 <rshann>  view.c Improve label on the duration menu in Edit mode
2008-06-26 <rshann>  Makefile.am corrected install
2008-06-26 <rshann>
    keymaps/NumericKeypad.keymap, Makefile.am added old ones removed
2008-06-19 <rshann>
    keymaps/Makefile.am kbd-custom.c make keymaps a separate directory in share/denemo and in ~/.denemo
    help.c update website reference
2008-06-19 <rshann>
    kbd-custom.c update labels on poaching a shortcut from another menu item
    standard.accels, used only to clear accels. denemo.keymaprc revised to provide simple startup
2008-06-19 <rshann>
    view.c, kbd-custom.c, keyboard.c
    Discontinue setting of gtk accelerators in favour of scorearea_keypress() based shortcuts. Display all shortcuts with on menus. Still not fixed is deletion of old shortcuts from labels.
2008-06-16 <jjbenham>
    removed src/exportpdf.* and moved doc/*.png to doc/images
    doc/Makefile.am removed png reference
    doc/images/Makefile.am referenced png's for installation
    print.c began code consolidation
2008-06-11 <rshann>
    Fix problem with KP_Enter. You have to coordinate standard.accels with
    denemo.keymaprc. TODO do not load standard.accels if a local keymaprc is used.
2008-06-11 <rshann>
    Fix spurious accelerator labels, enable labels on AddTone and the CursorXXX actions to show, Make sure
    backspace and del show as accelerators. All this just for the default out of the box situation.
    Remove spurious warning on delete shortcut button.
    denemo.keymaprc, standard.accels, kbd-custom.c, view.c main.c
2008-06-10 <rshann>
    exportlilypond.c commandfuncs.c print.c make print obey selection
    view.c  kbd-custom.c, keyresponse.c keyboard.c kbd-interface.c,h
    include/denemo/denemo_types.h Updated keybinding code from JRR
2008-06-08 <jjbenham>
    removed exportpdf.* files. 
    src/Makefile.am removed reference to exportpdf.*
    print.* added functions that were in exportpdf.* and consolidated some 
2008-06-08 <jjbenham>
    print.c added pop-up dialog for printing excerpts
2008-06-06 <jjbenham>
    file.c, removed .jtf support
    removed frogio.c/h frogdefs.h frogparser.h frogparser.y frogparser.c \
    src/exportcsound.c src/Makefile.am, src/selectops.c removed reference to above files
    src/exportcsound.c added function durationtofloat that used to be in
    frogio.h
2008-06-05 <jjbenham>
    file.c added .png as supported export file type
    exportlilypond.c added support for png export
    denemo_types.h function DenemoLilyControl added member
    gboolean excerpt
    prefops.c added support for variable
    imageviewer as a preference
    view.c added to menu print excerpt
    denemoui.xml added PrintExcerptPreview in menu
2008-06-04 <rshann>
    print.c,h view.c, exportlilypond.c add support for printing excerpt from selection. Make function names more uniform.
2008-06-04 <rshann>
    examples Upbeat.denemo added.
2008-06-04 <rshann>
    measureops.c showaccidental if note postfixed with ! or ?
    lilydirectives.c,h view.c denemoui.xml introduce separate menu items for postfix LilyPond and insert LilyPond.
2008-06-03 <rshann>
    lilydirectives.c fix string creation error
    examples/ add SuggestedAccidental.denemo CautionaryAccidental.denemo and ReminderAccidental.denemo
2008-06-02 <rshann>
    mousing.c,h view.c allow dragging to select. Remove deprecated functions
    drawselection.c move the selection rectangle over to the left
    drawnotes.c remove reference to unused is_highlighted field.
    gcs.c,h improve colors.
    importxml.c remove debug output
    draw.c, drawlilydir.c drawingprims.h mark selected objects blue; make overlayed pitches green, background gray,
    colour lilypond inserts green.
    importxml.c remove debug output
2008-05-31 <rshann>
    exportlilypond.c turn off the s1* output for empty measures when they contain LilyPond inserts. Tidy code.
2008-05-30 <rshann>
    exportlilypond.c fix bug in resetting durations after lilypond insert.
    examples/Makefile.in,am MultiMeasureRests.denemo
2008-05-26 <rshann>
    drawlilydir.c show markup
    include/denemo/denemo_objects.h commandfuncs.c lilydirectives.c import/exportxml.c introduce a lock for lilypond inserts
    examples/* lock the lilypond inserts of the examples.
    utils.c generalize the dialog routine.
2008-05-26 <rshann>
    exportlilypond.c save LilyPond on window destroy.
2008-05-25 <rshann>
    examples/Cues.denemo examples/Makefile.am,in
2008-05-25 <rshann>
    added denemorc.xml po/Makefile.in denemo.conf
2008-05-25 <rshann>
        staffops.c prevent crash on deleting only staff when leftmost measure is not start of measures.
    drawlilydir.c staffops.c allow comment lilydirectives to show.
2008-05-24 <rshann>
    examples/Makefile.am Ossia.denemo added example
2008-05-23 <rshann>
    file.c,h view.c denemoui.xml added Gallery of examples.
2008-05-23 <jjbenham>
    added Richard's example files to git and Makefile.am 
2008-05-23 <jjbenham>
    added Makefile.am in the following directories under templates: 
    band chamber choral jazz
    added templates/Makefile.am
    added templates to SUBDIRS in Makefile.am
    configure.in added templates/makefile, commented out
    doc/templates/*/Makefiles
2008-05-22 <rshann>
    templates direcory containing jazz, band, choral and chamber subdirectories with templates added.
2008-05-22 <rshann>
    pitchentry.c fix for multiple guis closing microphone.
2008-05-22 <rshann>
    importxml.c fix for NULL context string stored.
2008-05-22 <rshann>
    audiocapture.c fixes for V19
2008-05-22 <jjbenham> 
    makefile.am added examples to SUBDIRS
    configure.in added examples/makefile
    examples/makefile.am added makefile to install examples
2008-05-21 <rshann>
    view.c prevent crash on qutting with pitch recog window open.
2008-05-21 <rshann>
    exportlilypond.c, include/denemo_types.h, staffpropdialog.c, import/exportxml.c fix context stuff
    audiocapture.c incorporate portaudio V19 code.
2008-05-17 <rshann>
    commandfuncs.c,h keyresponses.c update changecount after sharpening or flattening.
2008-05-17 <rshann>
     exportlilypond.c fix fake chord output - it does need modularizing, but what was there didn't work properly.
2008-05-17 <rshann>
    view.c, include/denemo_types.h, import/exportxml.c, exportlilypond.c include a flag with scoreblocks to say whether they should be used by default.
    scoreops.c add URL to denemo tagline
    exportlilypond.c re-arrange LilyPond output so that custom scoreblocks are much more powerful
    exportlilypond.c cope with copying hidden scoreblocks, remove midi instrument
2008-05-15 <rshann>
    exportlilypond.c default to "Generated by Denemo" tagline with version number.
2008-05-14 <rshann>
    exportlilypond.c improve colours in LilyPond text window, make text & labels monospaced.
2008-05-13 <rshann>
    commandfuncs.c,h selectops.c keyresponses.c always insert any new measure needed into all staffs when entering music.
2008-05-12 <jjbenham>
    utils.c corrected mistake in string_dialog_entry that could have
    caused problems with translation
2008-05-12 <rshann>
    denemo_types.h, view.c staffops.c staffpropdialog.c exportlilypond.c import/exportxml.c: make the prologs for lyrics, figured basses and fakechords editable in LilyPond view.
2008-05-11 <rshann>
    view.c improve the status bar information
2008-05-10 <rshann>
    standard.accels replace KP_0... with plain digits
2008-05-10 <rshann>
    standard.accels replace shift+plus with plus
    view.c, kbd-custom.c,h keyresponses.h handle modifiers correctly (from jrr)
2008-05-08 <rshann>
    in non-printing rests mode, take a rest input as a non-printing rest.
2008-05-07 <rshann>
    utils.c fix spurious free
2008-05-06 <rshann>
    keymaps/denemo.keymaprc src/keyresponses.c warn that the code is being phased out.
2008-05-06 <jjbenham>
    util.c util.h created new function string_dialog_entry for text entry
    dialog box.
    lilydirectives.c, figure.c, fakechord.c changed code to use new function.
2008-05-04 <rshann>
    exportlilypond.c Fix for lilypond window refresh in presence of lyrics, chord symbols or figures.
2008-05-03 <rshann>
    scoreprops.c: fix return value of abandon fn.
2008-05-02 <rshann>
    commandfuncs.c avoid coredump when multiple timesignatures (present in different voices) are deleted.
    denemoui.xml, commandfuncs.c,h split and join voices.
    gcs.c make the yellow colour less bright (so that it stands out better against the white background).
    commandfuncs.c fix non-printing rest mode to enter only rests.
    importxml.c remove the special treatment of empty measures - there seems to be no reason for this.
        exportlilypond.c, print.c capture error output from LilyPond and highlight text window to suit.
    exportlilypond.c,import/exportxml.c allow editing of prolog to each staff, store and retrieve staff prolog.
    exportlilypond.c allow deletion of custom blocks/inserts by deleting content, whitespace ignored.
    enable finding the current object in the LilyText window.
    include/denemo/denemo_types.h create a field for custom prologs for staffs
    staffpropdialog.c warn if custom prolog when changing properties of a staff
    staffops.c,h initialize the staff prolog. Warn of custom scoreblocks if interactive. Set changecount on deleting.
    commandfuncs.c deletestaff takes boolean to determine whether it is interactive or not.
    importxml.c scoreops.c, staffpropdialog.c change to passing DenemoGUI for newstaff, deletestaff
    file.c frog* use gui not si.
    pitchentry.c avoid compiler warning.
    scoreops.c fix wrong call to confirm(), potential fatal error.
    frog* keep up-to-date;
2008-04-20 <rshann>
        staffpropdialog.c register changes in status
    scorewizard.c avoid overflow of gchar*, reduce debug printout, register change count changes
    prefops.c reduce debug printout
    scorewizard.c avoid coredup adding no selection in instrument page.
2008-04-20 <rshann>
    include/denemo/denemo_types.h DenemoStaff gets a custom_prolog field, replacing lilybefore/after fields.
    import/exportxml.c,exportlilypond.c allow editing of lilydirectives on notes in chords from the LilyPond text,
    allow custom staff prologs.
    staffpropdialog.c allow edit of custom_prolog, remove lilybefore/after
2008-04-19 <rshann>
        import/exportxml.c, lilydirectives.c allow lilydirectives on notes in chords
    chordops.c,h return note if one is added by addtone function.
    exportlilypond.c output such lilydirectives. Highlight insertion points in music. Re-arrange position of rest
    between notes and code with a view to making the notes of a chord editable.
2008-04-16 <rshann>
        barline.c, importmidid.c,h, keyresponses.c, commandfuncs.c,h, keysigdialog.c,h. lilydirectives.c, scorewizard.c
    selectops.c, clefdialog.c, exportlilypond.c denemo_api.h pass DenemoGUI not DenemoScore
    timedialog.c keysigdialog.c timedialog.c update score_status
    (this also fixes a bug in the callback to insert_barline)
    commandfuncs.c update score status on object insert.
2008-04-15 <rshann>
    Major update to allow LilyPond editing within Denemo.
    include/denemo_types.h delete obsolete fields, create/re-use the textwindow, buffer fields from the last
    LilyPond editing work. Use a count of edits (gui->changecount) 
    instead of boolean haschanged, introduce field lilysync
    for synchronizing LilyPond text with score.
    exportlilypond.c: output to a textbuffer - allow insertion of LilyPond between notes and custom scoreblocks.
    export/importxml.c write out/read in the custom score blocks
    view.c create a textwindow for LilyPond output
    denemoui.xml create menu items for LilyPond output.
    scorewizard.c remove spurious haschanged setting, make functions static
    denemo_types.h
    README.lilypond - rewrite.
    doc/templates/general/Piano.denemo doc/templates/jazz/jazzcombo-with-piano to illustrate some features of the new facilities.
    denemomanual.xml, denemo-manual.html updated with a section on LilyPond editing
    articulations.c name change for clarity.
2008-04-15 <jjbenham>
    denemo_types.h added gboolean midi_name_override, guint8 midi_prognum,
    midi_channel for manuall program
    number / channel selection in midi. 
    exportmidi.c added switch to allow manually setting prognum + channel
    if midi_name_override is set to TRUE
    staffpropdialog.c added entry for program number and channel for midi
    instruments
    importxml.c/exportxml.c added loading/saving of properties midi_name_override,
    midi_prognum, midi_channel

2008-04-08 <rshann>
    contexts.c,h commandfuncs.c pitchentry.c fix clef change context
    pitchentry.c Add Bradley Lehman's temperament.
2008-03-28 <jjbenham>
    configure.in now has version set to .7.8
    help.c now mentions Richard Shann and Jeremiah Benham as authors
2008-03-27 <jjbenham>
    created gotoend.png, gotobegin.png and stopmidi.png in doc/images
2008-03-27 <jjbenham>
    doc/denemo-manual.html pointed images references to the images folder. 
    doc/Makefile.am now installs .png in doc folder into the users
    doc/images folder
2008-03-27 <rshann> commandfuncs.c avoid NULL curmudelaobj
2008-03-27 <jjbenham> 
    doc/denemomanual.xml doc/images/Makesfile.am
2008-03-27 <rshann> doc/denemomanual.xml denemo-manual.html denemomain.png update for release
2008-03-22 <rshann>
    print.c avoid error messages about child return value,
2008-03-12 <rshann>
    exportxml.c importxml.c haslyrics,hasfakechords stored/retrieved
    fakechord.c denemo_types.h flag staffs with chordsymbols
    exportlilypond.c edit lilypond
    keyresponses.c old textview code removed
    timesdialog.c increase range of timesignatures allowed
    lyric.c move onto next note after entering lyric
    view.c fix memory leak on deleting/re-using a gui
2008-03-09 <rshann>
    mousing.c improve placing of cursor on mouse-click (with voices).
2008-03-08 <rshann>
    view.c avoid no-object crash
    staffops.c set currents after voice creation

2008-03-08 <rshann>
    file.c Fix width to work with on New
2008-03-07 <rshann>
    main.c More gracious treatment of absence of svg pixbuf loader.
2008-03-06 <rshann>
    main.c restore the svg file loads.
2008-03-04 <rshann>
    denemo_types.h corrected the comments.
    exportlilypond.c do not assume duration unchanged after lilypond directive
2008-03-01 <rshann>
    view.c do not list non-existent filenames in open recent
2008-03-01 <rshann>
    exportxml.c do not warn about empty measures on autosave.
2008-02-29 <rshann>
    figure.c allow '*' as synonym for space and knock on effects
    exportlilypond.c make lilypond figures output nicer.
2008-02-28 <rshann>
    exportxml.c avoid repeated warnings about empty measures.
2008-02-28 <rshann>
    file.c set gui->movements even for one movement.
        print.c correct the check for multiple movements accordingly.
    scorewizard.c stop abuse of GStrings
    exportxml.c warn of empty measures on save
    denemo.h improve debugging code.

2008-02-25 <rshann>
    exportmidi.c,h return duration of midi, cut down verbosity.
    playback.c move cursor on during play, unless a specific range of measures was specified.
    playbackprops.c, playback.c Except where a range of measures is specified play from cursor rather than measure 1. 
    Fix typo in name.
    bookmarks.c avoid gtk critical error on goto with no bookmarks. Wrap bookmark navigation with signal for wrap.
    Add a delete bookmarks function.
2008-02-24 <rshann>
    file.c scoreops.c fix coredump on New, New after multiple movement score. Remove memory leak.
2008-02-23 <rshann>
    denemo_types.h add currentbookmark field
    bookmarks.c view.c denemoui.xml add next/prev bookmark
    move bookmarks menu to objects menu
2008-02-23 <rshann>
    bookmarks.c fix truncation of string: this code needs re-visiting!
2008-02-23 <rshann>
    exportlilypond.c quieten
    scoreops.c remove reminder dialog - not always correct anyway.
    importxml.c, calculatepositions.c debug output removed
    view.c do not switch keymaprc file
    calcuatepositions.c quieten
2008-02-22 <rshann>
        commandfuncs.c,h view.c, denemoui.xml introduce swap movements function.
    file.c comment, and tidy.
    utils.c update status bar on new movements, change of movement, file load etc.

2008-02-21 <rshann>
    view.c start Note entry with pitch recognition. Create toggle for rhythm mode.
    denemoui.xml Create toggle for rhythm mode
2008-02-21 <rshann>
    exportmidi.c Fix for bad midi output of music with trills on notes.
2008-02-19 <rshann>
    exportlilypond.c allow four figures beneath a single note in a figured bass
2008-02-18 <rshann> 
    denemo_types.h, view.c denemoui.xml introduce rhythm entry mode
    commandfuncs.c Sound bell in rhythm mode when on the last note of a measure.
    importxml.c do not overwrite score header when adding movements.
2008-02-13 <rshann> 
    importxml.c reverted keysig changes
2008-02-13 <rshann> 
    exportlilypond.c Let the user override barlines with lilydirectives. If you place a lilydirective at the end of a measure then you get to choose the barline that will be emitted.
2008-02-13 <rshann> 
    main.c do not create standard.accels in local directory unless user requests it.
2008-02-12 <rshann> 
    standard.accels undefine accelerators for stock items which become multiply defined. 
2008-02-12 <rshann> 
    contexts.c revert initkeyaccs use to re-instate correct keysig handling
    denemoui.xml allow quick accel edits, allow nextrhythm at correct places.
    utils.c,h standardize the confirm() function as utility
    file.c mousing.c tidy up utitlity functions to proper places
    print.c use new utility function to confirm
    main.c load extra accels (which permit Tab etc to be set as accelerators)
    view.c remove underscores in menu labels as they conflict with quick accelerator settings; apply stock item icons to all menu items of same class. Allow quick accels, storing unsettable ones in extra.accels.
    standard.accels avoid duplicate accelerators caused by multiple use of the same stock items in menus.
    denemo_types.h add accelator status field to global Denemo
    view.c remove duplicate code in close functions.
    utils.c,h file.c move the utility confirm() to the right place.
    view.c: remove the underscores as they are inflexible and 
    prevent quick setting of accelerators.
    lylexer.l,c avoid index() function on windows builds (note: this code is
    untested, a lot needs updating before it can be, the fix is just to get
    the code to build).
2008-02-10 <brouits> view.c, prefops.c,h window size    
2008-02-06 <rshann> 
    mousing.c print out subtitle in preference to piece field on status.
    dememoui.xml fill out some menu entries.
    lyparser.y,c avoid exiting on unreadable files
    file.c Drop references to mudela as this is ancient history.
2008-02-05 <rshann> utils.c,h view.c remove the unused progress bar
2008-02-05 <rshann>
    denemomanual.xml, denemo-manual.html, denemomain.png update
2008-02-05 <rshann>
    denemomanual.xml, denemo-manual.html some documentation for the movements.
2008-02-05 <rshann>
    denemomanual.xml, denemo-manual.html minor manual update, reflecting experience with pitch entry.
2008-02-04 <rshann>
    figure.c allow some shortcuts, and prevent hanging on attaching figures at the end of a score that finishes in a non-chord.
2008-02-04 <rshann>
    file.c, view.c prefops.c Fix the openrecent properly - the history no longer shares pointers with other things.
2008-02-03 <rshann>
        view.c check for discard of current score on openrecent
    file.c view.c,h make history work for multiple windows, and remove the spurious g_free
2008-02-02 <rshann>
    denemo_types.h, export/importxml.c move sconfig up to DenemoGUI and rename it lilycontrol - it governs the lilypond output across all movements.
    exportlilypond.c output lilypond directive for all music
    scorewizard.c,h new field for lily directive for all movements of a musical score, lyparser.y,c, scoreops.c, scoreprops.c knock on changes.
    file.c issue warning on failed load, tidy up.

    view.c file.c provide warnings on load failures. Initialize the lilycontrol fields.
2008-02-01 <rshann>
    view.c turn on the entry toolbar by default under windows.
2008-01-31 <rshann>
    file.c set filename on save.
    main.c tidy.
        commandfuncs.c check that autosave has not fired on a dead gui and turn it off if it has. With this code it should be possible to allow the multiple timers, provided the autosave files are different.

2008-01-31 <rshann>
     A major clean up, prompted by something as simple as outputting page breaks between movements.
    denemo_types.h rationalize, adding fields for putting LilyPond directives 
    in the header blocks of movements and markup between movements. Many consequent changes:
    file.c multiple timeouts were being set for autosave which weren't killed when the gui was
    deleted, which probably accounts for Denemo spontaneously exiting on occaisions.
    runsilent.c        
    exportlilypond.h       
    headerdialog.c     
    scorewizard.h      
    exportabc.h        
    figure.c a lot of dead code removed.           
    scoreops.h         
    exportabc.c        
    mousing.c          
    scorewizard.c      
    exportlilypond.c dead code removed, and output of the new fields to control pagination of movements.
    also don't write out a midi block, Denemo generates better midi itself.  
    exportxml.c save extra fields          
    importxml.c restore extra fields.          
    lyparser.c         
    lyparser.h         
    view.h         
    generate_source.c set title bar on changes   
    utils.c The haschanged has been thoroughly overhauled, with a single function here managing things.    
    utils.h        
    selectops.c        
    lyric.c        
    commandfuncs.c     
    view.c  tidy up the closing of windows     
    scoreops.c set movement properties - this code is much simpler and easier to extend than the table based code
    (still used for the score properties dialog. A clean up is needed).    
    scoreprops.c           
    keysigdialog.c  coredump fixed.   
    entries.h  set title bar on changes        
    callbacks.h  set title bar on changes                       
    
2008-01-26 <rshann>
    print.c exportlilypond.c,h, commandfuncs.c, exportpdf.c, file.c main.c runsilent.c support printing parts from multiple movements.
    view.c commandfuncs.c denemoui.xml add a swap staffs function
2008-01-24 <rshann>
    denemo_types.h Introduce a single toplevel object Denemo that holds the DenemoPrefs and a list of DenemoGUI (replaces the global called displays). The .c files that change to suit are:
     articulations.c playback.c kbd-custom.c exportpdf.c file.c help.c kbd-interface.c keyresponses.c view.c playbackprops.c prefops.h csoundplayback.c print.c main.c prefdialog.c prefops.c
    file.c bug in autosave if(gui->prefs) was always true
    calculatepositions.c replace the wrong & ambiguous diagnostic

2008-01-24 <jjbenham@chicagoguitar.com>
    improvements to Denemo.ttf

2008-01-24 <rshann> lilydirectives.c Set up default response. Note this function should be written in the conventional fashion.
2008-01-24 <rshann>
    fakechord.c bad loop and memory leak.
    
2008-01-23 <rshann>
    denemo_types.h, commandfuncs.c, view.c, keyresponses.c move rhythm patterns to cope with movement changes.
2008-01-22  <rshann>
         Major update:
    denemo_types.h Removed duplicate field (config, sconfig) and made it a structure, not a pointer (it is a mistake to allocate things dynamically for no good reason!)
    staffops.c, commandfuncs.c Finally cleaned up the mess that was deleting staffs; amongst many horrors, staffs were not actually being freed because a for loop had the wrong termination condition...
    scoreops.c insert new movements and delete them
    file.c, importxml.c add staffs from a file, add movements from a file. Move to version 2 with backward compatibility.
    exportxml.c move to version 2, supporting multiple movements.
    fakechord.c - re-wrote separate_fakechord_elements() as the compiler complained about one error
    (sizeof(gchar*) was used where strlen() was needed, and the indentation indicated {} were missing - can
    someone who uses this check that this is the desired functionality please.
    view.c, selectops.c, lyric.c, importmidi.c, file.c fakechord.c, commandfuncs.c haschanged moved to gui-wide basis.
       gcs.c, draw.c Use gray instead of bright yellow for non-current staffs, the yellow was so bright as to be nearly invisible, also grayed out is the convention for insensitive items.
     denemo.h file.c add a ImportType field to file open commands for opening files to add to the current file.
     view.c, denemoui.xml, file.c Install AddStaffs and AddMovements for loading extra staffs/movements from a file
    
     importxml.c : fix the coredump on reloading with change of keysig in first measure
     staffops.c, commandfuncs.c,h, view.c denemoui.xml, generate_source.c, entries.h, callbacks.h
       add DeleteMeasureAllStaffs
     lyparser.y,c remove unused include
    
     staffops.c fix cursor position after insert of staff before bug.
     commandfuncs.c fix deletion of measures when appending to a short staff
     measureops.c fix deletion of first measure of short staff when deleting measures in all staffs from
       a longer staff.
    
2008-01-05  <rshann>
    print.c reset err to NULL after error.
2008-01-02 <rshann>
         print.c,h warn about printing. Tidy code.
     view.c add icon to print preview
     denemoui.xml add print preview to toolbar.
2007-12-31 <jjbenham@chicagoguitar.com>
    print.c added locatedotdenemo() to the working directory of
    g_spawn_*ync 

2007-12-30 <rshann>
    fix printing so that viewer opens .pdf file
2007-12-30 <rshann>
    prefops.c prefops.h  main.c fix case where no .denemo exists,
    hide articulation palette by default
    keymaps/Makefile.am export correct files
    standard.accels fill out values.

2007-12-28 <rshann>
    exportlilypond.c, help.c switch from sourceforge
2007-12-27 <jjbenham@chicagoguitar.com>
    print.c commented out renaming of temporary pdf

2007-12-26 <atee>
    doc/Makefile.am Added denemo-manual.html to the installed files list

2007-12-22 <atee> 
    doc/templates/jazz/Makefile.am Changed directive to include dist_
    doc/templates/brass/Makefile.am Changed directive to include dist_
    doc/templates/mixed/Makefile.am Changed directive to include dist_
    doc/templates/strings/Makefile.am Changed directive to include dist_
    doc/Makefile.am Added transformations and images subdirectories
    po/POTFILES.in removed exportmudela.c reference and added
    exportlilypond.c
    src/Makefile.am Added keysigdialog.h and callbacks.h to SOURCES list
    
2007-12-21 <rshann> denemoui.xml add rest entry to Notes/Rest menu
2007-12-21 <rshann>
    src/generate_source.c src/entries.h  src/view.c src/denemoui.xml add tooltips, add VoiceUp/Down alias for StaffUp/Down with different tooltip. Rename Staff menu to Staffs/Voices. 
2007-12-20 <rshann>
    missed out denemoui.xml and playback.h from earlier check-ins.
2007-12-20 <jjbenham@chicagoguitar.com>
    importmidi.c, importmidi.h added support for importing chords or
    parallel harmonies
2007-12-20 <rshann>
    missed out denemoui.xml and playback.h from earlier check-ins.
2007-12-20 <rshann>
    view.c denemoui.xml added PrintPreview button, an alias of Print. Eventually Print should actually contact a printer...
    denemomanual.xml denemo-manual.html updated manual.
2007-12-18 <rshann>
    view.c,h
    keyresponses.c commandfuncs.c
    generate_source.c, entries.h, callbacks.h implement singleton rhythm highlighting.  
2007-12-18 <rshann>
    pitchentry.c WerckmeisterIV change frequencies.
    
2007-12-17 <jjbenham@chicagoguitar.com>
    importmidi.c, importmidi.h removed globals, broke up into smaller
    functions. Glist stored note list. Changed int to gint. Preperation for further
    functionalility
    
2007-12-17
     <rshann>
    denemoui.xml delete obolete menu item - this fixes the markup problem with Note/rest entry toolbar.
2007-12-16  <rshann>
    staffops.c give poly voice unique name
    exportlilypond.c put voices on one staff
    draw.c draw voices on one staff, in presence of extra space.
    denemoui.xml allow access to AddVoice - just for testing, not for release?
2007-12-15  <rshann>
    keysigdialog.c fix apply to all staves for initial keysig
    print.c fix initialization of pid
    view.c lilypondversion change missed, stop button missed in earlier checkins.
2007-12-15 exportlilypond.c:update midi transposition (for b-flat only at present), it causes errors on modern lilypond
    denemo.h introduce lilypond version (set to 2.8.7 the current value for debian release - we could set it a bit older just to be on the safe side?)
    print.c make the display async, so that denemo does not hang.   
2007-12-15  <rshann>
    exportlilypond.c: better defaults for figured bass.
2007-12-14 <rshann>
    src/playback.c src/view.c src/denemoui.xml Implement a stop for midi playback
2007-12-14 <rshann>
    src/playback.c play measures from the selection if there is one.
2007-12-14 <rshann>
    doc/templates/strings/stringqtet.denemo corrected cello clef.
2007-12-14 <rshann>
    print.c,h Better diagnostics - the g_warning was making a wrong pointer access.
              rename functions to agree with (one of) the callback name conventions
    exportlilypond.c,h export one staff
    view.c allow print one part
    denemoui.xml menu item for print part
2007-12-13  <rshann>
    view.c, pitchentry.c improve defaults, (values based on experience with the system).
2007-12-13 <rshann>
    commandfuncs.c remove setting of haschanged in displayhelper()
    selectops.c,h add setting of haschanged to update_undo_info, localize functions that aren't used outside the file.
    Coredump: If you do New, insert note, save, undo, undo then denemo coredumps. This was an unitialized pointer bug in selectops.c, before the haschanged fix it was reached by other routes.
    denemoui.xml remove template from toolbar
2007-12-12 <rshann>
    view.c remove repeated code for file_open, introduced template save and local template load
    file.c implemented load/save templates local and system (reverts yesterday's ci
    - we were inadvertently working in parallel)
        fix file_open_template_wrapper to check for has changed, rename these functions to _with_check
    introduce a parameter to indicate whether a template is being loaded/saved
    Deleted dead code.

2007-12-11 <jjbenham@chicagoguitar.com>
    src/file.c changed the opening of template directory to Template
    directory. 
    Makefile.am makes Template direcory installable
    configure.in no references makefiles in Template directories that will
    install templates


2007-12-10
    import/exportxml.c save/load the staff attributes space_above, space_below, hasfigures
2007-12-10
    Save Parts fails if pathname contains '.'
    exportlilypond.c Make sure the extension is being removed by searching for '.' from the end of filename.
    fix figured bass output in parts.
    view.c update tooltip. importxml.c remove debug printout
2007-12-09 denemo_types.h, exportlilypond.c figure.c Generate figures 
        only for the staff that has them. + improved comments.
2007-12-08
    Bug: if you clone a note with an ornament then further ornaments added to the original appear on cloned note as well. Much more dangerous freeing the note should result in double free error, (but doesn't at present because the memory is being leaked).
    chordops.c freechord() memory leaks fixed.  
    chordops.c eliminate dangling pointers in cloned chord. Note the ornaments, dynamics etc *could* be cloned, but they would have to be deep copies.
    objops.c cloned objects must not share pointers. Note: types LYRIC, FIGURE, FAKECHORD are not covered - they are I suspect never generated.
2007-12-07 <richard.shann@virgin.net>
    Added the source generator. The tooltips can be added to the array of action specifiers and the file compiled and run by hand to generate the entries.h and callbacks.h files. This will mean we can upgrade the generated functions without losing work on tooltips.
2007-12-07 <richard.shann@virgin.net>
    src/Makefile.am added back the lily files
2007-12-07 <richard.shann@virgin.net>
    mousing.c Make the status bar more informative: information on what is currently selected.
2007-12-07 <richard.shann@virgin.net>
        utils.c warningdialog was shown as error icon + omitted lilydirective patch.

2007-12-07 <richard.shann@virgin.net>
    draw.c, lilydirectives.c exportlilypond.c, denemo_types.h, import/exportxml.c staffpropdialog.c drawlilydir.c commandfuncs.c
    re-installed lilydirective code, adding import/export to xml and insertion of lilypond directives before staffs
    removed dead code

2007-12-07 <richard.shann@virgin.net>
    * draw.c fixed the misdrawing of barlines when extra space. Restrict the auto space above/below to sane levels.
    * draw.c fix for recursive dialog popup on deleting begin_slur   
2007-11-27 
    * EDIT mode: The new edit the octave of the current note in CVS is not
    working as expected - instead it edits to the octave of the cursor.
    This is now fixed in keyresponses.c and chordops.c
    * EDIT mode: changing notes in chords now works for multi-note chords -
    commandfuncs.c
    pitchentry.c name changes to menu system. Remove unused function.
    keyresponses.c prevent editing notes in presence of overlays - this is
    just octave shifting, typing in notes at keyboard will still lead to
    confusing result (because the edits are discarded on further pitch
    entry).
    fonts/Denemo.ttf improved font
    Selecting music was not obvious, I fixed this as follows:
           mousing.c, view.c make mouse clicks cause selection, press
           starts,
           release ends the selection. (There is no drag implemented
           here, so no
           indicator that you are extending the selection until you
           release the
           mouse button). You have to be actually on the note when you
           release.
    view.c make Entry toolbar buttons use the Denemo.ttf font instead of
    icons - this means we can drop those files from the distribution.
    denemoui.xml new notes menu and code to use music symbols as labels
    draw.c,mousing.c, utils.h define LYRICS_HEIGHT, denemo_types.h add
    haslyrics field to staff, so as to know whether to leave space when
    mousing. Height adjusts to music - this needs to be made optional, and
    provided with guards against absurd values.
    staffpropdialog.c space_above,below cannot be re-set to 0 (in release and CVS).
    

2007-11-26 <jjbenham@chicagoguitar.com>
    * added po/ja.po japanese translation

2007-11-11 <jjbenham@chicagoguitar.com>
    * print.c commented out romove function which removed the file that
    was to be sent to the pdf reader. 

2007-11-06 <jjbenham@chicagoguitar.com>
    * print.c fixed warning printing wrong names 
    * scorewizard.c/h modified headersetup function to allow external
    usage
    * scoreprops.c uses headersetup for header info 

2007-10-29 <jjbenham@chicagoguitar.com>
    * Richards patch for menu tidy up Gtk accel with tooltips affecting
    the following files:
        src/denemoui.xml
        src/main.c
        src/staffpropdialog.c
        src/view.c

2007-10-24 <jjbenham@chicagoguitar.com>
    * src/commandfuncs.c added Richards patch for fix for staff deletion bug
    * src/mousing.c added Richards patch for mouse selection being off
    * src/staffops.c added Richards patch fix for space above staff
    causing selections to be off
    
2007-10-12 <jjbenham@chicagoguitar.com>
    * importxml.c removed duplicate #include headers
    * importxml.c removed some code that was duplicated 

2007-10-11 <jjbenham@chicagoguitar.com>
    * added directory fonts to contain Denemo.ttf
    * created fonts/Makefile.am for installation in
    $(datadir)/fonts/truetype/denemo
    * configure.in added font directory
    * Makefile.am to include fonts as a subdirectory

2007-10-09
    * view.c fix for closing window when score has or has not changed and
    the no option is selected in the dialog. 

2007-10-09 
        * denemo_types.h, drawcursor.c, keyresponses.c view.c improve names of
    mode enum, switch to using non-zero bitfields
    * keyresponses.c,h fix the toggle rest and blank functions
    calling convention. This was a major bug, lurking beneath the surface,
    and probably the reason the hard-wired keybindings to the menu items were
    left in place, since when invoked via a keypress they coredumped, using
    the menu accellerator keypress avoided the function.
    * scoreops.c, the failure to initialize the time1,2 fields only worked
    because of the compiler optimizer hiding a division by zero bug at startup!
    * view.c improve status bar handling.

2007-09-26  <jjbenham@chicagoguitar.com>
    * pitchentry.c applied patch for improving the behaviour when deleting
    overlaid pitches

2007-09-24
    * denemo_types.h, introduce extra rhythmic submode (OVERLAY) for entering
    pure rhyth patterns without pitch and overlaying with pitches.
    * chordops.c,h New function modify_note() allows modifying the pitch of a
    note without otherwise altering it. (The previous attempt at this is
    reverted in new_note as that was not doing the whole job there).
    * commandfuncs.c,h casts to eliminate compile time warnings. Allow direct
    overlay of pitch from keyboard in OVERLAY mode. More fixes to
    deletestaff (previous version did not coredump but did not always
    deletestaff).
    * contexts.c improved comment
    * denemoui.xml move pitchrecognition onto rhytym/overlay toolbar.
    * figure.c Fix that failed to be included from last patch I presume
    * file.c removed commented code - this wasn't present in my version so I
    think it had got in by meld error
    * keyresponses.c improve code structure with function
    make_singleton_rhythm to make a rhythm containing just one duration
    * pitchentry.c Allow starting pitch overlay at any note in measure
    (clears old overlays if needed). Return focus to main window after
    changes to pitchrecognition window (so that further keypresses behave as
    expected without having to re-select the score area). Use the new
    modify_note function for overlay. Ensure cursor moves on when rests
    occur at end of measure. Tidying code.
    * staffops.c,h more fixes to deletestaff - the enum has been extended to
    cover a magic number (9) which had been coded in. This code needs
    rewriting to give these enum value less common names, as they can easily
    clash with other code as it is (eg prefix each enum value with STAFFOP_)
    * view.c,h Support for direct entry of rhythm when Overlay selected by
    clicking on the pattern button internally this is called "pitchless"
    entry. The new function make_singleton_rhythm defined. Tooltips added to
    various buttons. Quarter note set as default rhythm for newview. Code
    tidying, fix for typo (eight note for eighth note).

2007-09-19 <jjbenham@chicagoguitar.com>
    * Applied Richard Shann's patch for the following changes:
    * staffops.c to fix staff deletion
    * figure.c applied patch to allow empty figures
    * file.c Added patch for denemo to remember last path saved.
    * scorewizard.c added patch for scorewizard instrument deletion Gtk-CRITICAL

2007-09-13
    * include/denemo/denemo.h dormant code for testing for bad frees.
    * include/denemo/denemo_api.h change formal parameter name (cosmetic)
    * include/denemo/denemo_objects.h addition of tone structure type.
    changed the name of the fields tones, numtones in the chord structure to notes, numnotes as notes is a list of note* structures and I needed a name for the tone structure.
    * + comments
    * audiocapture.c header file from standard place - <audio.h> looks fishy?
    * changenotehead.c, drawnotes.c, export*.c, importxml.c, lyparserfuncs.c, measureops.c, midi.c change of field names
    * chordops.c,h change of field names, plus attempt to improve re-usability of modifying note code, (this has not really succeeded, modify_note is only changing some of the things that need to be changed to really modify a note)
    * commandfuncs.c,h Improvements to highlighting rhythm pattern buttons. Inserting a rhythm pattern into the measure when entering just the rhythm of a piece (insert_rhythm_pattern). Making delete object act on tone store if active.
    * draw.c When an tone store (aka overlay) is present, color notes blue.
    * kbd_custom.c added insert_rhythm function to enter whole rhythms at a stroke.
    * keyresponses.c improve highlighting of rhythm pattern buttons. Tidying code.
    * pitchentry.c Implementation of tone store and application of tone store to overlay note rhythms with tones gotten from pitch recognition.
    * pitchentry.h export delete_tone, which deletes the overlaid tone and hence reassigns the tones in the measure.
    * utils.c field name change, and music_font markup function.
    * view.c,h Use of music font for rhythm pattern buttons. Change name of RhythmKeymaprc to Rhythm.keymaprc to allow .keymaprc list code to work.
    
2007-09-08 <jjbenham@chicagoguitar.com>
    * added missing RhythmKeymaprc

2007-08-23 <adam@ajtee.plus.com>
    * Applied Richard Shann's patch for pitch recognition input
    * Modified configure.in to sort libaubio and portaudio dependencies

2007-08-14 <jjbenham@chicagoguitar.com>
    * fixed bug in view.c with closing the application via the gtk
    interface
    * Added more doxygen style comments to denemo_types.h

2007-08-04 <jjbenham@chicagoguitar.com>
    * edited playbackprops.c to allow enter key to "ok" the dialog after
    typing in a new tempo
    * edited prefops.c to have the default version of lily to be 2.10
    * fixed wrong conditional in prefops.c in relatation to midiplayer
    * wrote doxygen style comments to DenemoPrefs in denemo_types.h

2007-08-03 <jjbenham@chicagoguitar.com>
    * applied patch from Richard Shann for a new input mode based of
    precomposed rhythmic motives. 
    * patch modifies denemo_types.h, commandfuncs.c, commandfuncs.h,
    denemoui.xml, draw.c, exportlilypond.c, kbd-custom.c, keyresponses.c 

2007-08-01 <jjbenham@chicagoguitar.com>
    * Placed doxygen style documentation in denemo_types.h and
    denemo_objects.h DenemoScore->readonly is now gboolean instead of int. 
    I edited file.c to use TRUE/FALSE instead of int.

2007-07-29 <jjbenham@chicagoguitar.com>
    * fixed bug in function dnm_setinitialkeysig in objops.c 

2007-06-22 <jjbenham@chicagoguitar.com>
    * added dnm_addtone and dnm_newchord to denemo_api.h

2007-06-20 <jjbenham@chicagoguitar.com>
    * defined dnm_setinitialkeysig in objops.h
    * importmidi.c,importxml.c,context.c, and lyparserfuncs.c now uses api defined dnm_setinitialkeysig 
    * commented out object.h in importmidi.c
    * created api function dnm_addmeasures
    * in the files (importxml.c, selectops.c,commandfuncs.c,easylyparser.c, importmidi.c), I changed from addmeasures to dnm_addmeasures
    
2007-02-25 <adam@ajtee.plus.com>
    * exportlilypond.c renamed exportmudela to exportlilypond
    * exportlilypond.h renamed exportmudela to exportlilypond
    * file.c renamed exportmudela to exportlilypond
    * commandfuncs.c renamed exportmudela to exportlilypond
    * exportpdf.c renamed exportmudela to exportlilypond
    * main.c renamed exportmudela to exportlilypond
    * print.c renamed exportmudela to exportlilypond
    * runsilent.c renamed exportmudela to exportlilypond
    
2007-02-23 <adam@ajtee.plus.com>
    * renamed exportmudela.c to exportlilypond.c
    * renamed exportmudela.h to exportlilypond.h
    * otherfiles modified to reflect this

2007-02-05 <rrankin@ihug.com.au>
       * external.c: fix exception when .denemo does not exist
       * main.c: better messages when .denemo does not exist

2007-01-31 <rrankin@ihug.com.au>
    * denemo_types.h: DenemoObjType PARTIAL added
    * frogparser.y lyparser.y: PARTIAL renamed to avoid conflict
    * calculatepositions.c: fix floating point exception
    * scoreprops.c: allow edit of header properties for lily files
    * exportmudela.c: allow export of lilyfiles, remove commented out code
    * exportmudela.c: output \partial,  \lyricsto in staff block
    * exportmudela.c: do not output \skip in lyrics
    * file.c: allow I/O of mudela files
    * lylexer.l lyparserfuncs.c lyparserfuncs.h lyparser.y: fixes to the
      parsing of mudela files
    * Makefile.am: add lylexer.l, lyparser.y to build

2007-01-23 <ilpippo@gmail.com>
        * configure.in: indentation
        * configure.in: added HAVE_FILE_LOCKS macro
        * csoundplayback.c: check if HAVE_FILE_LOCKS macro is defined
        * external.c: check if HAVE_FILE_LOCKS macro is defined
        * playback.c: check if HAVE_FILE_LOCKS macro is defined
        * main.c: corrected print calls
        * main.c: code reorganization and comments
        * POTFILES.in: updated with the files containing
        * configure.in: commented ALL_LINGUAS
        * added po/LINGUAS
        * created po/it.po

2007-01-22 <ilpippo@gmail.com>
        * file.c: removing dependencies to fnmatch.h
        * main.h: check if SIGCHLD is defined
        * exportmudela.c: changing from index to strchr
        * configure.in: added the check for SIGCHLD presence
        * configure.in: solved a bug related to --enable-OPTIONS
        * doc/Makefile.am: renamed docdir to docsdir to prevent a warning for
        a name clash

2007-01-20 <adam@ajtee.plus.com>
    * selectops.c (pastefrombuffer): changed to use object_insert
    * selectops.c (pastefrombuffer): Modified paste function to only
    add measures to the current staff if only one staff in the buffer.
    * commandfuncs.c: made beamandstemdirhelper non-static
    * configure.in: reordered call to AC_CANONICAL_SYSTEM. Fixed bug [231]

2007-01-19 <ilpippo@gmail.com>
    * applied my patch again (to correct indentation and formatting)
    * main.c: adding debug_handler function
    * main.c: setting debug_handler as the handler for debug messages
    * main.c: adjusting the indentation for help messages

2007-01-17 <adam@ajtee.plus.com>
    * Applied Simone Crestani's latest patch
    
2007-01-14 <adam@ajtee.plus.com>
    * wrap some debugging statements in #ifdef's
    
2007-01-13 <brouits@free.fr>
    * external.c: using GLib g_strfreev()
    * external.c: using (un)lockfile() on pidfiles in ext_init() and
    ext_quit() to force queuing fprintf() in the case of...
    * external.c: invalidate build_argv() and free_argv()
    * external.c: removed truncate(pidfilename,2) on pidfiles to try
    to fix (badly) an issue on Darwin ( "8 Gb pid file !" bug report
    by Yves de Champlain on the denemo-users ML) FIXME: we should 
    truncate.
    * view.c: moved ext_quit() from closeit() to closewrapper()

2007-01-12 <jjbenham@chicagoguitar.com>
    * fixed possible buffer overflow in importmidi.c in functions
    dotrackname and doinstrname
    
2007-01-10 <rrankin@ihug.com.au>
       * Protect against empty fields in denemorc files
       * Output \! instead of \rc and \rced in mudela files for
     recent versions of lilypond 

2007-01-09 <jjbenham@chicagoguitar.com>
    * changed typo for non-windows os's in util.c preventing compilation
    PKGDATADIR is what it is now in function get_data_dir

2007-01-05 <adam@ajtee.plus.com>
    * created to more api functions dnm_setinitialclef, 
    dnm_setinitialtimesig 
    * Applied Simone Crestani's patch for the Win32 version
    * Changes to free_score to fix some memory leaks 
    
2007-01-04 <jjbenham@chicagoguitar.com>
    * added check to see if the score "haschanged" before the scorewizard
    deletes the current score
    * commented out line in function newstaff staffops.c that makes
    haschanged = TRUE when starting denemo. 

2007-01-02 <jjbenham@chicagoguitar.com>
    * figure.c and fakechord.c uses warningdialog from util.h now

2007-01-02 <adam@ajtee.plus.com>
    * Applied Simone Crestani's patch to fix memory leak in drawnotes.c
    
2007-01-1 <rrankin@ihug.com.au>
       * Fix issue that could cause hairpin code to crash
       * Change saveas to not give a warning if the name in the name field has 
    no extension and that file already exists.
       * In saveas, if the name is given with a valid Denemo file extension 
    save as that type of file.
    
2006-12-29 <adam@ajtee.plus.com>
    * Fixed minor issue with transpostition when changing it back to 0.
    
2006-12-28 <adam@ajtee.plus.com>
    * Resolved minor issue with undo/redo
    
2006-12-27 <adam@ajtee.plus.com>
    * changed version to 0.7.7
    
2006-12-27 <adam@ajtee.plus.com>
    * Modified src/Makefile.am to include keysigdialog.h 
    * Prepared for releasing 0.7.6
    
2006-12-27 <adam@ajtee.plus.com>
    * fixed BUG 226 added check on number of measures in 
       the score.

2006-12-26 <rrankin@ihug.com.au>
       * Fixed slur entry issue.
    
2006-12-22 <jjbenham@chicagoguitar.com>
    * figure bass/fakechords insertion on NULL currentobjects no longer
    crashed denemo. 
    * I added a check for it. If the currentobject is NULL than a popup
    warning ensues.

2006-12-21 <adam@ajtee.plus.com>
    * Started to rename api function to dnm_functionname
    * Fixed crescendo and diminuendos issue.
    
2006-12-19 <jjbenham@chicagoguitar.com>
    * edited src/file.c src/prefdialog.c src/prefops.c
    include/denemo/denemo.h to add support for denemopath
    denemo path is used for having a default location for saving and
    loading denemo files. If denemo path is not defined in the preferences
    it defaults to the current working directory.

2006-12-18 <jjbenham@chicagoguitar.com>
    * file.c now has saveas dialog filled in with the title if one exists.

2006-12-16 <jjbenham@chicagoguitar.com>
    * switched around pianolh and pianorh in scorewizard
    * fixed crash caused hitting a remove button when instrument is not selected in scorewizard

2006-12-15 <jjbenham@chicagoguitar.com>
    * added check for non-existing measure click in mousing.c
    * this fixes bug 0000211

2006-12-14 <jjbenham@chicagoguitar.com>
    * objops.c fix for bug 0000225 added an if statement check if there is 
    actually an object there to delete. 

2006-11-15 <adam@ajtee.plus.com>
    * Applied Menno's toolbar focus patch
    
2006-11-11 <adam@:ajtee.plus.com>
    * Fixed double bar issues for individual staffs
    * Added configure option to build documentation

2006-11-10 <jjbenham@chicagoguitar.com>
    * small bugfix in scorewizard staff creation

2006-11-10 <adam@ajtee.plus.com>
    * Modified export_lilypond parts to use ScoreName_Part.ly as filename
    * Added user preference to automatically save parts.
    
2006-11-10 <jjbenham@chicagoguitar.com>
    * scorewizard now creates a bass and treble staff when piano type
    staff is added.

2006-11-06 <adam@ajtee.plus.com>
    * Fixed bug 203 PianoContext not effecting Lilypond output
    
2006-11-05 <ajtee@ajtee.plus.com>
    * Fixed BUG 220 toolbar focus issue
    * Work on separating barline drawing to individual staffs

2006-10-21  <jjbenham@chicagoguitar.com>
    * edited draw.c so fakechords now appear above the staff

2006-10-20  <jjbenham@chicagoguitar.com>
    * edited src/drawfakechord.c src/exportmudela.c src/fakechord.c
    src/fakechord.h src/importxml.c to add support for fakechord extensions
    like this:
        c:9 = c9, c:13 = c13, bes:9 = Bb9

2006-10-18  <jjbenham@chicagoguitar.com>
    * exportmudela.c now encapsulates fakechords in \chordmode{ }


2006-10-17  <jjbenham@chicagoguitar.com>
    * fixed loading and saving of files with figured bass and fakechords
    * to do this I edited importxml.c to not cast the type figure as
    (GString *) 
    * exportxml.c figure and fakechord syntax is simpler when calling 
    xmlNewChild 
    * exportmudela.c now begins to export fakechords

2006-10-13  <jjbenham@chicagoguitar.com>
    * created drawfakechord.c
    * edited draw.c to draw fakechords
    * edited drawingprims.h to reference draw_fakechord
    * edited exportmudela.c to export fakechords by adding
    output_fakechord function
    * edited exportxml.c to allow saving of files with fakechords
    * edited importxml.c added function parseFakechord to import denemo
    files with fakechords
    * fixed bug causing denemo to crash when openfile that has figured
    bass

2006-10-12  <jjbenham@chicagoguitar.com>
    * added FAKECHORD as a type to DenemoObjType
    * created the files fakechord.h fakechord.c 
    * edit view.c and denemoui.xml to add edit chords to the menu 
    * added CHORDSTAFF to staffops.h list of newstaffcallbackaction
    * coppied dnm_newstafffigured to create dnm_newstaffchords that 
    will function in a similar fashion as dnm_newstafffigured
    * edited src/Makefile.am to add the new files fakechord.h and
    fakechord.c

2006-10-02  <jjbenham@chicagoguitar.com>
    * fixed a problem with scorewizard that occurred on ppc architecture

2006-09-29  <jjbenham@chicagoguitar.com>
    * scorewizard apply button is hiden until the last page now

2006-09-28  <jjbenham@chicagoguitar.com>
    * added keysignature settings in scorewizard
    * added a keysigdialog.h to allow sharing of some of keysigdialog.c
    functions
    * keysigdialong.c no longer uses global GLists

2006-09-27 <jjbenham@chicagoguitar.com>
    * added timesig settings to scorewizard 

2006-09-26 <jjbenham@chicagoguitar.com>
    * inserted new page in scorewizard to allow entry for tempo 

2006-09-24 <jjbenham@chicagoguitar.com>
    * scorewizard refreshes without having to click on anything now

2006-09-12 <jjbenham@chicagoguitar.com>
    * scorewizard now refreshes display once a note is entereed or staff
    is clicked

2006-08-23 <brouits@free.fr>
    * exportmudela.c, lyparser.y ...: fixed (?) mantis bug #212
    * doc/Makefile.am: typo on target denemo-manual-chunk

2006-08-22 <jjbenham@chicagoguitar.com>
    * removed all globals from scorewizard
    * eliminated scorewizard compilation warnings on 32 bit machines

2006-08-15 <jjbenham@chicagoguitar.com>
    * scorewizard.c no loger uses gint page global. current page is now
    determined by gtk_notebook_get_current_page
    * gtk_notebook_get_n_pages() is now used so that pages can be
    dynamically added to the scorewizard and the next/back buttons will
    behave accordingly.

2006-08-14 <brouits@free.fr>
    * external.c: fixed GError bug in spawn_external(): avoid crash on error
    * alsaseq.c: fixed nano bug, "instant" playback in progress (can chirp)

2006-08-09 <jjbenham@chicagoguitar.com>
    * inserted missing } into draw.c that prevented compilation
    * removed some globals in scorewizard.c
    * migrated towards having wizarddata contain the other structures
    using wizarddata as the spine for the other structures.

2006-08-04 <adam@ajtee.plus.com>
    * Fixed issue with creating a staff when not first measure on screen.
    * Modified document Makefile.am to use $(XSLDIR) for the docbook xsl 
    stylesheets

2006-08-01 <adam@ajtee.plus.com>
    * Started working on making staffs independent of each other.
    Beta at the moment.

2006-07-30 <brouits@free.fr>
    * csoundplayback.c: now works the same way as midi playback (singleton)

2006-07-29 <brouits@free.fr>
    * external.[ch]: cleaning. use of a common static ext_pidfiles[]

2006-07-23 <brouits@free.fr>
    * external.[ch]: better external players handling
    * main.c: use ext_init() (external.h)
    * view.c: use ext_quit() (external.h)
    * playback.c: multiple views support singleton external Midi playback
    * csoundplayback.c: use of external.h (.. no singleton support yet)

2006-07-19 <adam@ajtee.plus.com>
    * Fixed Bug 189 Multiple Staff Pasting
    * Fixed Bug 202 Add Voice does not work

2006-07-17 <adam@ajtee.plus.com>
    * Modified undo/redo code
    * Replaced outstanding mudelobject references to DenemoObject 
    in frogparser.y
    * More work on undo/redo.  Only using one structre for the information.

2006-07-15 <adam@ajtee.plus.com>
    * Revised change notehead dialogs
    * Refactored set_articluation to use addornament
    * Refactored tupletchangedialog

2006-07-13 <adam@ajtee.plus.com>
    * Fixed bug 195: open recent keeps several copies of same document

2006-07-15 <brouits@free.fr>
    * view.c: use now gtk_window_set_defaul_icon_from_file() with 
      denemo.png, allow window managers to decorate iconified Denemo.

2006-07-14 <brouits@free.fr>
    * fixed crash on insert_dynamic() [dynamic.c:119] 
    * added external.[ch]: functions for system commands, filenames...
    currently having dnm_new_temp_filename() and dnm_spawn_external()
    * rewriten [midi]playback() and csoundplayback() to use the above
    funcs.  * fixed exportcsound() for non-english locales

2006-07-12 <adam@ajtee.plus.com>
    * Fixed Bug 196: Staff Properties number of lines does 
    not work in lilyexport
    * Added lilyversion entry to the preferences filename
    * Added Bug 144 Functionality 

2006-07-10 <adam@ajtee.plus.com>
    * Fixed typedef issue in midiseq.h
    * Modified addhistorymenuitem to display the short filename

2006-07-06 <adam@ajtee.plus.com>
    * Modified exportmudela so determinestaffcontext uses the enum names not the numeric representation

2006-07-08 <jjbenham@chicagoguitar.com>
    * removed some redundant code in scorewizard
    * fixed problem with launching score wizard more than once in a single
    denemo session
    * Change in processstaffname.c to allow uppercase staffnames


2006-07-07 <jjbenham@chicagoguitar.com>
    * fixed bug #188
    * modified configure.in and main.c to conform a little more to GNU
    coding standards by changing to PKGDATADIR for data directory

2006-06-30 <adam@ajtee.plus.com>
    * Fixed bug 138 Pasting multiple bars
    * Fixed setmark issues
    * Added Denemo format export of the paper setup properties

2006-06-30 <jjbenham@chicagoguitar.com>
    * fixed bug 192. midiplayback issues


2006-06-29 <jjbenham@chicagoguitar.com>
    * implemented instrument transposition in exportmidi


2006-06-28 <jjbenham@chicagoguitar.com>
    * corrected a few instruments transposition value in instruments.xml

2006-06-27 <jjbenham@chicagoguitar.com>
    * fixed exportmidi.c type mismatch in mid_c_offset
    * fixed exportmudela type mismatch for mid_c_offset fixing bug 186
    * scorewizard sets instrument tranposition in the staff properties
    * new instproperties structure in scorewizard.h for containing instrument specific info

2006-06-08 <adam@ajtee.plus.com>
    * Fixed save parts implementation.  Beta at present

2006-06-07 <adam@ajtee.plus.com>
    * Fixed bug 185. Note palette display issues
    * Implemented save parts feature,  buggy at the moment

2006-06-05 <adam@ajtee.plus.com>
    * Fixed Bug 184 Staff drawing issue

2006-06-01 <jjbenham@chicagoguitar.com>
    * moved the scorewizard out of debug since it is going to be included
    in the .76 release

2006-06-01 <adam@ajtee.plus.com>
    * Fixed bug 148 and improved staff insertion method.
    * Refactored Lilypond Output

2006-05-29 <jjbenham@chicagoguitar.com>
    * improvements to importmidi.c importmidi.h to allow sharing of
    functions like the midiinput plugin would call in the future. 

2006-05-26 <adam@ajtee.plus.com>
    * Incremented Denemo version to 0.7.6

2006-05-20 <adam@ajtee.plus.com>
    * Refactored the addition of ornaments to a note.

2006-05-18 <adam@ajtee.plus.com>
    * moved input mode to GUI structure
    * fixed autosave bug

2006-05-18 <jjbenham@chicagoguitar.com>
    * fixed issue with scorewizard causing denemo to crash when launched

2006-05-14 <adam@ajtee.plus.com>
    * Fixed cursor issue.

2006-05-12 <adam@ajtee.plus.com>
    * Moved GUI elements to DenemoGUI and renamed
    scoreinfo to DenemoScore
    * Altered all sources accordingly.

2006-04-24 <adam@ajtee.plus.com>
    * Added more comments to function definitions
    * Prepared removemeasures for single staff usage 

2006-04-14 <francis@daoine.org>
    * File SaveAs memory leak fix
    * Keymap loading memory leak fix

2006-04-11 <jjbenham@chicagoguitar.com>
    * back button now is shaded out on page 1 of scorewizard.
    * next button is shaded out in page 3 of scorewizard.

2006-04-10 <jjbenham@chicagoguitar.com>
    * updates to scorewizard allowing the correct clef to be used for
    instrument selection
    * updates to ROADMAP

2006-04-09 <jjbenham@chicagoguitar.com>
    * update INSTALL instructions for compiling CVS
    * scorewizard can now be launched multiple times per session
    * scorewizard no longer creates removed instruments

2006-04-08 <jjbenham@chicagoguitar.com>
    * applied Francis Daly's memory leak patch

2006-04-07 <adam@ajtee.plus.com>
    * applied francis Daly's most recent keyboard patch 

2006-04-06 <jjbenham@chicagoguitar.com>
    * fixed remove instrument in scorewizard
    * added more to the TODO in scorewizard

2006-04-05 <jjbenham@chicagoguitar.com>
    * Applied Francis Daly's importmidi patch
    * keybindings on back, next, cancel, apply in scorewizard

2006-03-29  <adam@ajtee.plus.com>
    *  Applied Francis Daly's keyboard patches 

2006-03-27  <adam@ajtee.plus.com>
    * Applied patch for keybinding loading from Francis Daly <francis@daoine.org>



2006-03-26 <jjbenham@chicagoguitar.com>
    * changed kbd-custom.c as per Francis Daly's advice.


2006-03-24  <jjbenham@chicagoguitar.com>
    * changed command line file opening to read/write instead of read only
    in main.c

2006-03-21  <jjbenham@chicagoguitar.com>
    * small edits to ROADMAP
    * changes to denemoui.xml so that when debug is turned off close and
    quit are still available menu options.
    * fixed staff and measure playback in exportmidi.c and playbackprops.c

2006-03-20  <jjbenham@chicagoguitar.com>
    * lyric,c no longer produces so many warnings when the insert lyric
    is used.  

2006-03-20 <adam@ajtee.plus.com>
    * Fixed bug 166 default keymap not loading

2006-03-20  <jjbenham@chicagoguitar.com>
    * improvements to exportpdf.c 

2006-03-20 <brouits@free.fr>
    * freedesktop menu entry: 
    pixmaps/ denemo.desktop and denemo.png (Yves Champlain)
    updated Makefile.am to enable installation (please test)
    * midiinput plugin:
    removed ALSA default build for midiinput plugin in Makefile.am
    and let --enable-alsa do the job.
    * moved setkey() into set_key() because setkey() is already defined
    in libc or libcrypt (depends on libc version). moved also settime()
    to set_time() and setclef() to set_clef().

2006-03-19 <brouits@free.fr>
    * added midiseq.h, alsaseq.h alsaseq.c
    * began an implementation of a full midi sequencer.
    midiseq.h is not bound to ALSA. alsaseq.h is an alsa
    version. In the client code, you must only use midiseq.h 
    and let the --enable-alsa do the job.

2006-03-18 <adam@ajtee.plus.com>
    * Added Enter keybinding to activate the file chooser dialogs

2006-03-18  <jjbenham@chicagoguitar.com>
    * fixed lyric.c so that checkboxes line up with label
    * edited denemo.keymaprc assigning multiple modes on same keybinding
    causing a crash

2006-03-17 <adam@ajtee.plus.com>
    * fixed lilypond export stem direction
    * fixed figured bass dialog to use the return key to close it
    * fixed lilypond notehead issue

2006-03-17  <jjbenham@chicagoguitar.com>
    * further fixes to view.c when using multiple windows
    * commented out checkbox option to use exportmidi for playback in
    playback properties.
    * update INSTALL file

2006-03-16 <adam@ajtee.plus.com>
    * preparation for releasing 0.75.
    * Fixed load keymap issue.

2006-03-16  <jjbenham@chicagoguitar.com>
    * I believe I fixed exportpdf on osX but don't have a way to test it
    yet.
    * I fixed a bug in view.c that caused all windows to close if any of
    the windows were closed

2006-03-15  <jjbenham@chicagoguitar.com>
    * commented out alsaplayback in view.c and denemoui.xml
    * small fix on keybindings of the 'A' note in denemo.keymaprc. 

2006-03-13 <adam@ajtee.plus.com>
    * Fix for staff insertion / cancelling
    * Figure bass display fixed
    * Commented calculatepositions.c and contexts.c
    * Undo removes from the correct position in the measures
    * Other issues exist when undoing across measures which are still to be resolved    
    * Revised Go menu renaming to Navigation.
    * Added all argument to addmeasures ready for individual staff lengths

2006-03-10 <adam@ajtee.plus.com>
    * Speedy keymap fix and keymap loading fix
    * Removed Niff plugin from configure.in
    * Commented out save selection for this release
    * Modified figured bass display
    * Moved XML keymap loading/saving from within #ifdef DEBUG's.
    * Commented Staffops.c

2006-03-09 <jjbenham@chicagoguitar.com>
    * added some functions to create gtk_entry text boxes
    * scoresetupwizard defaults to gtk_entry text boxes.
    * there is a makeshift switch to revert back to the old behavior


2006-03-08 <jjbenham@chicagoguitar.com>
    * scoresetupwizard no longer crashes when hitting finish
    * " also creates staves and labels their staff and midi names

2006-03-07 <jjbenham@chicagoguitar.com>
    * placed #ifdef DEBUG around scorewizard in view.c

2006-03-05 <adam@ajtee.plus.com>
    * Undo/Redo work now works for inserting timesig, clefs, and key sigs
    * Open Recent menu fixes for adding to list when opening a file.
    * Some menu reorganisation Added Insert and Lyrics menu.
    * work on lyric export for lilypond.
    * Moved lyric dialog to global style from old style. 
    * Resolved BUG 140 Tuplets keymap functions
    * Migrated keymaps to XML versions
        

2006-03-05 <jjbenham@chicagoguitar.com>
    * commented out ly importing in file.c
    * edited configure.in to fix typo on alsa support and to pass
    -DHAVEALSA in the CFLAGS. 
    * edited Makefile.am in plugins/midiinput
    * modified midiinput.c to include alsa inport support


2006-03-04 <adam@ajtee.plus.com>
    * Minor XML keymap fix
    * Partial paste functionality fix

2006-03-04 <jjbenham@chicagoguitar.com>
    * basic reading oss midi from device filter in midiinput plugin

2006-03-02 <adam@ajtee.plus.com>
    * Fixed BUG 000037 adding the enter keypress for dialogs

2006-02-29 <jjbenham@chicagoguitar.com>
    * a few changes to keysigdialog.c to allow mode selection

2006-02-28 <jjbenham@chicagoguitar.com>
    * if denemohistory does not exsist it gets created otherwise the user
    would have to previously have a denemohistory or touch
    ~/.denemo/denemohistory

2006-02-27  <aamehl@actcom.net.il>
    * Added the toolbar section to the manual outputted an HTML version

2006-02-27  <aamehl@actcom.net.il>
    * Rewrote the Design doc in cvs so it is nolonger conversational.


2006-02-27 <jjbenham@chicagoguitar.com>
    * commented out code in exportmudella.cpp that puts everything on 1
    staff. It is because of the extraneous << >>

2006-02-25 <jjbenham@chicagoguitar.com>
    * removed c++ specific code from importmidi.cpp and importmidi.h

2006-02-13 <adam@ajtee.plus.com>
    * Modified doc make files to fix errors
     


2006-02-23 <jjbenham@chicagoguitar.com>
    * small memory leak fixes in exportmudela.cpp, exportxml.cpp, view.cpp, and prefops.cpp

2006-02-23 <aamehl@actcom.net.il>
    * Added a temporary new manual file manualnew.xml. Started a major
    rewriting of the manual. Added most of the getting started section
    plus a revision of the first quarter of the manual.

2006-02-22 <jjbenham@chicagoguitar.com>
    * fixed small memory leak in importxml.cpp
    * line 345 g_free(clefTypeName); 

2006-02-21 <jjbenham@chicagoguitar.com>
    * fixed a memory leak in main.cpp

2006-02-20 <jjbenham@chicagoguitar.com>
    * set program title to Denemo instead of using argv[0] in view.cpp

2006-02-20 <jjbenham@chicagoguitar.com>

    * moved all playback preferences originally in preferences to playback
    properties


2006-02-11 <jjbenham@chicagoguitar.com>
    * fixed csoundplayback issue of saving .wav files as IRCAM instead of
    .wav

2006-02-09 <jjbenham@chicagoguitar.com>
    * removed csound popup dialong when playing with csound
    * added rtcs to to prefinfo structure in denemo.h
    * configuring csound playback is now in the preferances
    * rewrite of csoundplayback.cpp 

2006-02-09 <aamehl@actcom.net.il>
    * added a section to user manual on commandline options


2006-02-08 <jjbenham@chicagoguitar.com>
    * added user selectable editor in preferences
    * added texteditor to prefinfo structure in denemo.h
    * modified prefdialog.cpp and src/prefops.cpp to create a
    default editor and will save and load user defined editor from .denemorc
    * commented out old code the saught $EDITOR and uses user defined
    editor instead


2006-02-05 <jjbenham@chicagoguitar.com>
    * gcc 4.x fixes to main.cpp


2006-01-28 <adam@ajtee.plus.com>
    * Readded change_pitch keybinding for use in replace mode
    *
2006-01-26 <adam@ajtee.plus.com>
    * Fixed bug 114 failure to load denemohistory
    * Altered menu titles so that they are translated
    * Fixed 115 for the documentation browser
    * More work on xml keymap parsing

2006-01-21 <adam@ajtee.plus.com>
    * Removed Changeduration functions and entries in keymap files 
    to free up some bindings.


2006-01-21 <jjbenham@chicagoguitar.com>
    * importmidi now sets midi instrument and denemo or track name

2006-01-20 <adam@ajtee.plus.com>
    * Removed Blank rest mode as is redundant
    * Fixed change of editing mode bug 
    * Added config.rpath and glibc2.m4 to CVS
    *

2006-01-19  gettextize  <bug-gnu-gettext@gnu.org>

    * Makefile.am (EXTRA_DIST): Add config.rpath.

2006-01-18 <adam@ajtee.plus.com>
    * Added dialog to continue editing, save as or delete the crash recovery file
    * More work on BUG 40, added rest mode to menu (not working).
    * Added insert blank note keybindings to stay in normal mode after insert.

2006-01-17 <jjbenham@chicagoguitar.com>
    * importmidi now sets tempo

2006-01-16 <adam@ajtee.plus.com>
    * Changed crash behavior to save into the .denemo directory


2006-01-15 <jjbenham@chicagoguitar.com>
    * upgraded to monophonic to polyphonic midi type 1 file input
    * importmidi pads measures with rests instead of leaving measure/ or
    rest of measure blank

2006-01-15 <adam@ajtee.plus.com>
    * Fixed bug 40 for inserting rests

2006-01-10 <adam@ajtee.plus.com>
    * Fixed BUG 108

2006-01-10 <aamehl@actcom.net.il>
    *made a new version of the html manuals for the cvs and site in both regular and chunk.:    

2006-01-10 <jjbenham@chicagoguitar.com>
    * fixed funky enharmonic respelling keys in importmidi.cpp

2006-01-09 <adam@ajtee.plus.com>
    * Changed add staff to move to the newly created staff
    * Added *.midi to file filter as separate entry needs to be a single midi file but will sort later
        
2006-01-06 <adam@ajtee.plus.com>
    * Changed autosave to save into .denemo
    * Added all header fields to the denemo xml file
    * Fixed typo on score_config dialog and added paper setup to this
    removing the separate dialog.
    * Added edit-info to the denemo format
    * Added config of showing of palettes


2006-01-06 <jjbenham@chicagoguitar.com>
    * importmidi now sets key signature
    * importmidi can repeatedly open up midi files with our restart or
    denemo or hitting New in menu
    * importmidi support for tied notes and notes accross bars. 


2005-12-30 <adam@ajtee.plus.com>
    * Applied various patches from Jeremiah Benham
      for CSound export and midi files
   * Alter csoundplayback to set cdata.si.
   * Added functions for keybindings to change initial keysignatures
    * Added make html docs option, needs work.
    * Changed file.cpp as per Jeremiah's mail
    * Added keybinding functions to set the initial timesig and clef
    * Removed new keyboard dialog as is unfinished (only commented out menu item)
    * Fixed 0000025 midi playback range errors

2005-12-18 <adam@ajtee.plus.com>
    * added ROADMAP file rough headers
    * more work on score wizard

2005-12-16 <adam@ajtee.plus.com>
  * resolved bug 000000088 trailing l on the denemo.conf
  * resolved bug 000000087 missing alsa.m4
  * resolved bug 00000089 denemo.keymaprc not installing
  
2005-12-15 <adam@ajtee.plus.com>
    * More scoresetup wizard work
    * Fixed bug 0000086 missing instruments.xml

2005-12-14 <adam@ajtee.plus.com>
    * Added paper setup dialog

2005-12-08 <adam@ajtee.plus.com>
    * Started commenting more code using doxygen style comments
    * changed global prefences file to xml file
    * Removed old rc parsing code

2005-12-04 Adam Tee <adam@ajtee.plus.com>
    * Added instruments.xml (taken from JEdit) for instrument definitions
    * Changed history to a 10 element queue

2005-11-29 Adam Tee <adam@ajtee.plus.com>
    * Started on code restructuring for headers
    * Score Config wizrd page setup

2005-11-27 Adam Tee <adam@ajtee.plus.com>
    * Started migration to Pango for drwaing text on score
    * Implemented staff contexts
    * Started score configuration wizard

2005-11-25 Adam Tee <adam@ajtee.plus.com>
    * Resolved utf8 issues History now functions 
      for runtime
    * Changed keysig dialog to gtk2 dialog
    * Started on mode support (dialog only)   

2005-11-24 Adam Tee <adam@ajtee.plus.com>
    * Altered the way that the score is displayed so current voice/staff
    is displayed black and the rest in yellow.
    * [0000063]  Fixed exportpdf
    * [0000062]  Fixed print function
    * More work on History (still issues with utf8 strings)
         
2005-11-21 Adam Tee <adam@ajtee.plus.com>
    * Completed initial bookmarks implementation
    * Revised polyphony name and added function to copy
      current staffs properties for polyphony voice.
    * Fixed alsa configuration errors

2005-11-20 Adam Tee <adam@ajtee.plus.com>
    * Added functions for keymappings of insert clef, keysig and time sigs
    * Added Bookmark code initial implementation 
        
2005-11-18 Adam Tee <adam@ajtee.plus.com>
    * Fixed denemo print issue, calling tex
    * Added pdf viewer preference

2005-11-15 Adam Tee <adam@ajtee.plus.com>
    * Added plugin load and unload functionality
    * Added progress bars for file save.
    * Started on adding history (recent files) support

2005-11-14 Adam Tee <adam@ajtee.plus.com>
   * Finished XML config file support
   
2005-11-12 Adam Tee <adam@ajtee.plus.com>
    * Added FileSeave progressbar and statusbar entry to show file saved.
    * Start adding load support for XML config file

2005-11-11 Adam Tee <adam@ajtee.plus.com>
    * Started to add Alsa Sequencer support

2005-11-09 Adam Tee <adam@ajtee.plus.com>
   * Update CSoundplayback orc file chooser

2005-11-05 Adam Tee <adam@ajtee.plus.com>
    * Fixed typo in playbackprops dialogs BUG 50
    * Alternate NLS functions to more generic to enable translations BUG 53
    * Fixed help browser problem BUG 48
    * Fixed lookup directories for help, keymaps etc BUG 000049

2005-11-03 Adam Tee <adam@ajtee.plus.com>
    * Removed lilypond -m option for playback
    * Changed blank mode output to s on lilypond export
    * Changed display of blank notes to use yellow

2005-10-29 Adam Tee <adam@ajtee.plus.com>
   * Added display_helper to end of changenotehead
    * Removed changepitch, using tonechange instead
    * Added ability to define key bindings for barlines
    * Added all ornaments to the articulation palette using xbm's
    * Added warning dialog to display errors.
    * Partial fix of removal of hairpin starts/ends if end found 
      without corresponding start then warn and remove.

2005-10-27 Adam Tee <adam@ajtee.plus.com>
   * Move Open Template to New from Template
    * Added flag to say a template is read only

2005-10-26 Adam Tee <adam@ajtee.plus.com>
   * Added binreloc for register stock icons
    * Added templates directory on install

2005-10-25 Adam Tee <adam@ajtee.plus.com>
   * Fixed coda svg bugs
    * Added Binreloc support ready for klik integration

2005-10-09 Adam Tee <adam@ajtee.plus.com>
   * Updated parts of export lilypond to for 2.6.3

2005-10-02 Adam Tee <adam@ajtee.plus.com>
    * Completed addition of all current Lilypond ornaments
    * Removed legacy ornament code

2005-09-12 Adam Tee <adam@ajtee.plus.com>
   * Completed reimplementation of ornaments

2005-09-09 Adam Tee <adam@ajtee.plus.com>
    * Renamed Initial Clef to Set Clef
    * Started to rework the ornament handling 

2005-05-11 Adam Tee <adam@ajtee.plus.com>
    * Fixed bug 000013 Added call to external browser to get manual
      This is hardcoded at the moment but will be made user-definable.
    * Updated doc/Makefile.am to install documentation


2005-05-11 Jens Askengren
    * Added reworked keybord dialog (unfinished)
        * Beautified Go to measure dialog
        

2005-05-08 Adam Tee <adam@ajtee.plus.com>
    * run indent on all *.cpp files 
    * Fixed bug 000016 Changed Entry menu to Mode
    * Jens has fixed bug 00008
    * Fixed bug 000019 Added skeleton exportpdf.cpp to the CVS.
    *

2005-04-18 Jens Askengren
    * Added score properties dialog (Combines header, measure width and spacing dialogs)
    * Made toolbars togglable

2005-04-17 Adam Tee <adam@ajtee.plus.com>
    * Fixed bug 000009 changenotehead bug
    * Fixed bug 000010 insert lyric bug
    * Fixed bug 000011 - added to keymap/Makefile.am
    * Fixed bug 000007 - insert barline changed callback arguments

2005-04-16 Adam Tee
    * Added note and rest svg icons to pixmaps/Makefile.am

2005-04-15 Jens Askengren <jens.askengren@gmail.com>
    * Note and rest input toolbar
    * Added note and rest svg icons

2005-04-14 Jens Askengren <jens.askengren@gmail.com>
    * New articulation pallette
        * Added svg accent icons

2005-04-13 Jens Askengren <jens.askengren@gmail.com>
    * Made dialogs transient
        
2005-04-12 Adam Tee
    * Fixed keyresponses

2005-04-09 Adam Tee
    * Fixed insert staff bug
    * Fixed keyresponses

2005-04-08 Adam Tee 
        * Added internationalization files into po directory
    * Started to fix the staff add functions.

2005-04-08  gettextize  <bug-gnu-gettext@gnu.org>

    * Makefile.am (SUBDIRS): Remove intl.
    (EXTRA_DIST): Add config.rpath, mkinstalldirs.

2005-04-03 Adam Tee <adam@ajtee.plus.com>
    * Fixed Internationalization problem

2005-04-03  gettextize  <bug-gnu-gettext@gnu.org>

    * Makefile.am (SUBDIRS): Remove intl.

2005-04-01  Jens Askengren <jens.askengren@gmail.com>
    * Playback dialog remake
        
2005-03-31 Jens Askengren <jens.askengren@gmail.com>
    * Reworked preferences dialog to include plugins
        
2005-03-27 Adam Tee <adam@ajtee.plus.com>
    * Applied Jens' latest patch
    * Revised Menu's to use gtkuimanager, incoporating a toolbar
    * Revised Callbacks to reflect the above changes

2005-03-27  Abel Cheung  <deaddog@de...>
       * Adherence to FHS; read systemwide keymap and config under
         $sysconfdir

2005-03-22 Adam Tee <adam@ajtee.plus.com>
    * Finished staffpropdialog and playbackprops dialog changes
    * Changed List plugins to GtkTreeView

2005-03-19 Adam Tee <adam@ajtee.plus.com>
    * Applied Jens Askengren's Patch to beautify the prefops and help 
      dialogs
    * Started wholesale migration to GTK+2.4 as above patch uses these 
    features.

2005-02-14 Adam Tee <adam@ajtee.plus.com>
    * Reformatting of README.lilypond


2005-02-12 Adam Tee <adam@ajtee.plus.com>
    * Makefile.am's for doc's directory
    * Undo's now work on object inserts
    * Fixed autosave timeout bug
    * Added open template function which selects the templates directory
    * Increased undo levels to 50

2005-02-10  gettextize  <bug-gnu-gettext@gnu.org>

    * Makefile.am (SUBDIRS): Add m4.
    (ACLOCAL_AMFLAGS): New variable.
    (EXTRA_DIST): Add config.rpath.
    * configure.in (AC_OUTPUT): Add m4/Makefile.

2005-02-10 Adam Tee <adam@ajtee.plus.com>
    * Minor formatting issues and code comments

2005-02-06 Adam Tee <adam@ajtee.plus.com>
    * Dynamics now drawn at the bottom of the staff
    * fixed menu's

2005-01-03 Adam Tee <adam@ajtee.plus.com>
    * Fixed g++-3.4.3 problem in lyparser.yy


2004-12-11 Adam Tee <adam@ajtee.uklinux.net>
    * Created separate mudela header structure
    * autosave working 

2004-09-21 Adam Tee <adam@ajtee.uklinux.net>
    * Replace Mode in place (issues with drawing the revised
    score
    * Menu reorganisation
    * Delete staff before/after implemented but a bit buggy.

2004-09-17 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Torbj??rn Turpeinen's Makefile patches.

2004-09-14 Adam Tee <adam@ajtee.uklinux.net>
    * Fixed yylloc problem
    * Autosave in preference dialogs, still issues with
      the scanning of numbers
    * Polyphony fixed staffname problems when drawing

2004-09-03 Adam Tee <adam@ajtee.uklinux.net>
    * Added autosave functionallity
    * Started looking at undo/redo

2004-09-03 Adam Tee <adam@ajtee.uklinux.net>
    * New cursor to signify the blank mode
    * Removed ALSA dependencies
    * Fixed Locale issue (for fonts)
    * Fixed some GTK2 issues of deprecated code
    * Fixed barline crash, no new barlines yet as need to replace the 
    current code.
    * Added barlines to lilypond export, fix for autobarlines required

2004-08-31 Adam Tee <adam@ajtee.uklinux.net>
    * Fixed Makefile for compilation (stale file being kept in archive
    * Applied patch to bring lyparser upto Richard Shann's most recent
    version
    * Fixed insert tuplet at end on current bar
    * Updated exportmudela function to be compatible 
    with latest lilypond
    * Put keymaps in separate directory
    * Fixed exportmidi to output ".mid" extension

2004-08-24 Adam Tee <adam@ajtee.uklinux.net>
        * Fixed broken GTK2.0 about dialog
        * Fixed font error (not nice fonts at the moment though)
        * Added DeleteStaff to menu
        * Put Clef, Time Sig, Key menus under Staff Attributes menu
        * Fixed Close function for single window of denemo
                    
2003-11-09 Richard Shann <richard.shann@virgin.net>
    * lyparser.y removed stray commas and duplicate
    declarations.

2003-10-28 Richard Shann <richard.shann@virgin.net>
    * file.cpp, main.cpp, file.h better handling of
    unreadable files.
    * lylexer.l,cpp lyparser.y,cpp exportmudela.cpp,
    lyparserfuncs.h, lyparser.h
    handle trailing white space before EOF on LilyPond load. 
    Set external editor to start editing at first error 
    rather than the last on encountering a parse error in LilyPond.

2003-10-11 Richard Shann <richard.shann@virgin.net>
    * Switch the branch Denemo-Exp-10_09_2001 to the main branch
    (This ChangeLog is substantially that of the branch).

2003-10-09 Richard Shann <richard.shann@virgin.net>
    * Tidy up lily parser; handle some erroneous LilyPond 
    better.

2003-10-01 Richard Shann <richard.shann@virgin.net>
    * Unite the LilyPond text editing window with the main
    denemo window.
    * Make the windows track each other (except still no
    incremental parsing of LilyPond text - use reload)
    * Allow multiple score blocks in a single file

2003-05-25 Tim Bell <bhat@trinity.unimelb.edu.au>
    * Added support for XML export and import of
    crescendos and diminuendos

2003-03-21 Adam Tee <adam@ajtee.uklinux.net>
    * Applied <attila@stalphonsos.com>'s OpenBSD patch
    * Removed the need for the acconfig.h file

2003-03-14 Adam Tee <adam@ajtee.uklinux.net>
    * Added graceful exit if denemo seg faults
    saves the file in .denemo format

2003-03-12 Adam Tee <adam@ajtee.uklinux.net>
    * Added Alasdair's runsilent code
    * Altered plugin selection in configure.in

2003-03-05 Adam Tee <adam@ajtee.uklinux.net>
    * Fixed Analysis plugin to us GtkTreeView so it is 
    compatible with GTK2
    * Added plugin options to configure.in
    * Added gtk2 option to configure.in

2003-03-01 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Richard Shann's latest patch for automated 
    testing and GTK2 code

2003-02-11 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Richard Shann's latest patches
    including Regression testing and easylyparser
    * Added Niff Plugin (Note functioning)

2003-01-22 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Richard Shann's Patch for figured bass symbols
        * Related to this added load/save support for the xml
        format
        * Also, applied Richard Shann's fixes for small bugs
        * Added the first part of an MDI interface for Denemo
    * Fixed translated GTK Signals
    * Added chord cloning for tied notes
    * Applied Alasdair's cautionary accidentals patch
                            
2002-05-29 Adam Tee <adam@ajtee.uklinux.net>
        * Added Support for Lyrics
        * Reimplemented Dynamics
        * Added support for invisible notes/rests

2002-05-26 Adam Tee <adam@ajtee.uklinux.net>
    * Added XML loading of analysis results.

2002-05-24 Adam Tee <adam@ajtee.uklinux.net>
        * Added Real-Time CSound playback option
            
                
2002-05-23 Adam Tee <adam@ajtee.uklinux.net>
        * Added CSound score file saving.
        * Added CSound playback, with user
    specified orchestra.  Only outputs wav files.
                                
2002-05-18 Adam Tee <adam@ajtee.uklinux.net>
        * Added ability to insert blank notes/rests

2002-03-22 Adam Tee <eenajt@leeds.ac.uk>
    * Finished unload plugin 

2002-02-13 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * Added unload plugin feature,  beta stage.
    Implements new plugin structure which is passed 
    to the plugin, based on gnumeric

2002-02-10 Adam Tee <adam@ajtee.uklinux.net>
    * Fixed copy/paste/saveselection by copying
    the object in the mudelaobject struct.
    * Updated copyrights

2002-02-09 Adam Tee <adam@ajtee.uklinux.net>
    * Save Selection routine for analysis plugin

2002-01-27 Adam Tee <adam@ajtee.uklinux.net>
    * Fixed some JTF format loading bugs
    * Implemented basic CSound Score file (.sco)
    exporter

2002-01-20 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Alasdair's revised File I/O patch
    * Reimplemented dynamic handling

2001-12-14 Adam Tee <adam@ajtee.uklinux.net>
    * Applied Alasdair's fix for loading 
    the file.
    * Added midi instrument to the denemo 
    file format 

2001-11-16 Adam Tee <adam@ajtee.uklinux.net>
    * Applied all the 0.5.7 patches
    * Added printing support
    * Added support for space above/below staff

2001-11-12 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * Removed mudelaobject union and replaced with 
    a castable pointer.  Ready for plugin extensions.

2001-07-03 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * Integrated Eric Galluzo's patch of July 3.
    * Integrated Per Andersson's exportmidi patch.
    * Ran code through indent, ready for release.



2001-06-22 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * Changed hairpin implementation.  Added 
    exportmidi files to the CVS.



2001-05-17 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * Fixed JTF parser bug replaced array with Singly 
    Linked List and added extra rule for a single note
    option.



2001-04-30  Adam Tee     <eenajt@electeng.leeds.ac.uk>

    * hairpin.[ch] Added haripin code for crescendos and 
    diminuendos.
    * Reimplemented code for articulations, it is menu based 
    now.
    * Changed feta26-script* fonts to new Lilypond 1.3.150 
    fonts.

2001-03-25  Matt Hiller  <mhiller@pacbell.net>

    * easylyparser.y (lylex): Fixed recognition of dynamics and
    chord properties such that it doesn't slurp up >s.
    * Integrated Eric Galluzzo's patch of March 20.

2001-03-18  Matt Hiller  <mhiller@pacbell.net>

    * file.c (file_save): Automatically save as .xml file type, if
    appropriate.

2001-03-05 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * easylyparser.y : Added support for note options 
    such as fermata, accent etc.

2001-03-04  Matt Hiller  <mhiller@pacbell.net>

    * Integrated Eric Galluzzo's xml native file patch.

2001-02-25  Matt Hiller  <mhiller@pacbell.net>

    * keyresponses.c (sharpen_key, flatten_key): Reintroduce
    stem directive changing (finally).

2001-02-23  Matt Hiller  <mhiller@pacbell.net>

    * exportmudela.c (exportmudela): Added set to prevduration
    for an empty measure (patch from David Megginson.

2001-02-19  Matt Hiller  <mhiller@pacbell.net>

    * kbd-custom.c (init_keymap): Adjusted menu items' integration
    with the custom keyboard interface such that spaces are excised
    as well.

2001-02-15 Adam Tee <eenajt@electeng.leeds.ac.uk>
    * exportmudela.c Partially Fixed dynamic saving 
    for Mudela files.
    * easylyparser.y Fixed loading of dynamics
    * Fixed frogparser bug with dynamics
    * Grace note implementation almost finished


2001-01-16  Matt Hiller  <mhiller@pacbell.net>

    * various: Integrated Eric Galluzzo's patch of Jan 2.

2001-01-15  Matt Hiller  <mhiller@pacbell.net>

    * exportmudela.c (exportmudela): Put mid-cap in stemming
    directives.
    * easylyparser.y (lylex): Recognize both cases for stemming
    directives.

2001-01-11  Matt Hiller  <mhiller@pacbell.net>

    * exportmudela.c (exportmudela): Exchanged order in which
    slur-begin and tie indicators are output.
    * easylyparser.y: Read in the same.

2001-01-07  Matt Hiller  <mhiller@pacbell.net>

    * measureops.c (set_accidental_positions): New function.
    (various): Got nonoverlapping accidentals working.
    (all): Updated copyright notices to 2001.

2001-01-06  Matt Hiller  <mhiller@pacbell.net>

    * chordops.c (findreversealigns): For stemdown notes, function
    failed to set the reversealign of curnote to FALSE.

2001-01-05  Matt Hiller  <mhiller@pacbell.net>

    * lyparserfuncs.c (setkey): Fixed call to initkeyaccs.
    * staffops.c (copy_staff_bits): New function.

2000-12-29  Matt Hiller  <mhiller@pacbell.net>

    * file.c (set_si_filename): Fixed problem whereby
    si->filename wasn't actually set by this function, leading
    Save to behave exactly as Save As.

    * mousing.c (various): Refactored mousing code such that it'll
    be more pluggable for different kinds of clicks, etc.

2000-12-24  Matt Hiller  <mhiller@pacbell.net>

    * commandfuncs.c (various): Factored calcmarkboundaries() into
    setcurrents(). Adjusted code surrounding calls appropriately.
    * moveviewport.c (various): Similarly adjusted code surrounding
    calls to setcurrents().

    * mousing.c: New file; adds support for cursor positioning
    via the mouse.
    * mousing.h: New file; adds support for cursor positioning
    via the mouse.

2000-12-04  Matt Hiller  <mhiller@pacbell.net>

    * measureops.c (removemeasures): Fixed a rather crucial bug
    in the opening if. Cut and paste now works

2000-12-03  Matt Hiller  <mhiller@pacbell.net>

    * selectops.c (cuttobuffer): Fixed the non-initialization of i
    under if (staffsinbuffer == 1).

2000-11-24  Matt Hiller  <mhiller@pacbell.net>

    * various: Internationalized Denemo, removed accelerators from
    menubar items and merged the ability to add and customize
    bindings to the new custom-keyboard interface.

2000-11-12  Matt Hiller  <mhiller@pacbell.net>

    * Makefile.am: Rewrote flex and bison rules for configuring
    from arbitrary directories. Changed it to look for data files
    and others in pkgdatadir (i.e., /usr/local/share/denemo/).

    * file.c (filesel_save): Saves according to the file type selected
    in the combobox rather than by filename.

2000-11-11  Matt Hiller  <mhiller@pacbell.net>

    * various: got vertical scrollbar working.

2000-11-05  Matt Hiller  <mhiller@pacbell.net>

    * various: added scrollbars, got the horizontal scrollbar working.

2000-10-19  Matt Hiller  <mhiller@pacbell.net>

    * kbd-custom.c (load_keymap_file): Fixed handling of
    tokens to include / as an identifier character.

2000-10-12  Matt Hiller  <mhiller@pacbell.net>

    * kbd-custom.c (NO_MAP_DIALOG_TEXT): Fixed this to reflect
    removal of keybinding stuff from the file menu.

    * kbd-interface.c (jump): Added a gtk_clist_moveto to move
    to the newly selected command.

2000-10-10  Matt Hiller  <mhiller@pacbell.net>
    * kbd-* (various): redid the custom keybindings dialog to make it of
    sane size, redid the control buttons at the bottom of the dialog.

    (lookup_keybindng, add_keybinding): Added a filter to filter out
    bits of keyboard state we don't want to pay attention to, such
    as Caps Lock and Num Lock.

2000-09-17  Matthew Hiller  <mhiller@pacbell.net>

    * various: refined custom keybinding implementation; added
    load and save commands, switched back to main Denemo style for
    callbacks and such rather than the too-verbose Glade style.

2000-09-14  Matthew Hiller  <mhiller@pacbell.net>

    * easylyparser.y (chordandassoc): Fixed support for loading slurs.

    * exportmudela.c (exportmudela): Fixed minor bug in saving
    of slurs; removed behavior of interpreting a tie as a slur in
    certain situations.

    * various: Finished improved custom keybinding implementation.

2000-09-10  Matthew Hiller  <mhiller@pacbell.net>

    * various: Summary of changes over the past few weeks: integrated
    patch for customizing keybindings, various other improvements.

2000-08-14  Matthew Hiller  <mhiller@pacbell.net>

    * calculatepositions.c: Got a _vastly_ improved
    algorithm (in terms of both correctness and simplicity) for
    determining x positions working.

2000-08-10  Matthew Hiller  <mhiller@pacbell.net>

    * easylyparser.y: Added support for reloading dynamics; put
    in a stub for reloading peculiar noteheads.

    * various: assorted streamlinings and bugfixes

    * all: released 0.5.4

2000-08-08  Matthew Hiller  <mhiller@pacbell.net>

    * measureops.c (settickvalsinmeasure): Refined the method
    for calculating mudelaitem->starttickofnextnote such that
    it handles tuplets more gracefully and no longer assumes
    that tuplets end on a beat.

2000-08-07  Matthew Hiller  <mhiller@pacbell.net>

    * selectops.c (pastefrombuffer): Fixed a bug reported by
    Francois Pinard regarding segfaults shortly after pasting.

2000-08-05  Matthew Hiller  <mhiller@pacbell.net>

    * main.c (main): Fixed command-line loading such that
    it sets the titlebar correctly.

    * easylyparser.y: Added support for loading stem directives,
    and staffs with multiple voices.

2000-08-02  Matthew Hiller  <mhiller@pacbell.net>

    * exportmudela.c (exportmudela): Updated exportmudela such
    that it saves multiple voices on a single staff appropriately.
    Also updated it to save stem directives.

2000-08-02 Adam Tee <eenajt@electeng.leeds.ac.uk>

    * Implemented dynamics

    * Added feature to change the notehead type

2000-07-31  Matthew Hiller  <mhiller@pacbell.net>

    * datastructures.h: Removed barline type, commented other types.

    * lilydirectives.c: gtk_signal_connect()s became
    gtk_signal_connect_object()s where appropriate.

2000-07-28  Matthew Hiller  <mhiller@pacbell.net>

    * various: wrote stem_directive_insert and added various
    forms of support for displaying and manipulating stemming
    directive indicators.

    * commandfuncs.c (dnm_deleteobject): Cleaned this function up,
    reorganized what had been copy-and-paste code into helper
    functions.

2000-07-25  Matthew Hiller  <mhiller@pacbell.net>

    * measureops.c (setsdir): Shortened stems

    * various: Removed stem direction field from staff structure
    and everything associated with it.

    * commandfuncs.c: Reorganized code for inserting objects
    into the score in preparation for writing stem_directive_insert.

2000-07-23  Matthew Hiller  <mhiller@pacbell.net>

    * easylyparser.y: Reformatted for greater GNU coding standards
    compliance

    * measureops.c (calculatebeamsandstemdirs): Fixed the
    bug that I'd added when tripletifying Denemo.

2000-07-17  Matthew Hiller  <mhiller@pacbell.net>

    * Makefile.am, denemo.spec.in: Integrated Sourav Mandel's patch
    for RPMifying Denemo

    * easylyparser.y, exportmudela.c: Integrated Mark Burton's patch
    for explicitly stating that keys are major.

2000-06-28  Matthew Hiller  <matthew.hiller@yale.edu>

    * README: various updates. In particular, the section
    describing information for potential contributors was
    greatly expanded.

    * all: ran every source file through GNU indent so that
    the indentation and spacing follows the manner recommended
    in the GNU coding standards.

2000-06-09    <eenajt@electeng.leeds.ac.uk>
    * Fixed various JTF format bugs in frogio.c

    * Added JTF format loading code for tuplets

2000-06-09    <matthew.hiller@yale.edu>
    * various: brought together the various threads of tuplet-work
    that people'd been putting together and integrated it all.

2000-06-04    <matthew.hiller@yale.edu>

    * various: finished work on a very preliminary "single-staff"
    polyphony feature. It still has some usability issues, but
    only one major technical problem.

2000-05-23    <eenajt@electeng.leeds.ac.uk>
    * Fixed Soprano clef

    * Fixed easylyparser  chords rule was not required

2000-05-01    <matt@ozymandias.sy.yale.edu>
    * various: integrated code in the fashion of Laurent Martelli's
    pixmap->bitmap changeover, and cleaned up draw.c

2000-04-25    <matt@ozymandias.sy.yale.edu>

    * file.c (confirmbox): sanified the code that popped up
    the "really destroy score" confirmation dialog by passing
    confirmbox () a GtkSignalFunc.

    * tomeasuredialog.c (tomeasurenum): re-modalized the dialog.

    * playbackprops.c (playback_properties_change): re-modalized
    the dialog.

2000-04-23    <matt@ozymandias.sy.yale.edu>

    * headerdialog.c: added Laurent Martelli's patch for header information

    * main.c, file.c: added plain Save function, added information
    in window title concerning current filename.

2000-04-22    <matt@ozymandias.sy.yale.edu>

    * README: described select, cut, copy, and paste; described
    immediate playback mode and the mechanism behind it.

    * selectops.c (cuttobuffer): got the cut function working. It's
    presently very ugly, though.

    * all: released 0.5.3

2000-04-21    <matt@ozymandias.sy.yale.edu>

    * midi.c: Refined the behavior of midi.c, etc.

    * selectops.c: refined behavior of paste so that new measures
    are added when existing music would be trampled, etc.

    * selectops.c: started coding a cut function. Began process of
    debugging it into existence

2000-04-20    <matt@ozymandias.sy.yale.edu>

    * midi.c, midi.h, various: Added and provided hooks for using
    Brian Delaney's immediate MIDI output code.

2000-04-19    <matt@ozymandias.sy.yale.edu>

    * measureops.c (calculatebeamsandstemdirs): fixed a bug
    that caused notes to be aligned as though they were on the
    wrong clef if a clef interrupted a beaming group.

    * various: coded up configuration file support and got it working

2000-04-18    <matt@ozymandias.sy.yale.edu>

    * various: got preferences dialog working. Started working on
    configuration file support.

2000-04-17    <matt@ozymandias.sy.yale.edu>

    * playbackprops.c: Got rid of "path to Lilypond" and "midi player"
    things in playback properties dialog -- these will go into
    a preferences dialog instead.

2000-04-15    <matt@ozymandias.sy.yale.edu>

    * various: fixed dialog boxes such that they all have titles
    and the various text entries react appropriately if you give
    them an "activate" signal by hitting enter inside them.

2000-04-14    <matt@ozymandias.sy.yale.edu>

    * tomeasuredialog.c, main.c: created a navigate-to-measure
    dialog.

    * main.c, keyresponses.c: made Home and End keys into
    accelerators; they're no longer interpreted by
    scorearea_keypress_event

    * various: Actually got this bounding box thing working

    * commandfuncs.c (calcmarkboundaries): fixed some bugs here

    * selectops.c (copytobuffer): fixed some bad bugs that caused the
    wrong notes to get copied to the buffer

2000-04-12    <matt@ozymandias.sy.yale.edu>

    * various: started writing code to give indication of bounding
    box's location

2000-04-10    <matt@ozymandias.sy.yale.edu>

    * file.c (updatescoreinfo): added call to
    find_leftmost_allcontexts()

    * selectops.c (pastefrombuffer): fixed outstanding bugs;
    it works now

2000-04-09    <matt@ozymandias.sy.yale.edu>
    * various: wrote object-cloning functions for use
      by the cut-and-paste mechanism.

2000-04-08    <matt@ozymandias.sy.yale.edu>

    * selectops.c: wrote the beginnings for a cut-and-paste
      mechanism.

2000-04-06    <eenajt@electeng.leeds.ac.uk>
    * fixed frogio and frogparser for new change of keysig etc.
    * altered drawkey so that it correctly draws keysig for G_8
      and Tenor clefs
    * Documented Home and End Keys
    * applied Roy Rankin's patches

2000-04-04    <matt@ozymandias.sy.yale.edu>

    * various: released version 0.5.2

    * various: made it impossible to insert a mudela object before
    a time signature change, including another time signature change.

    * commandfuncs.c (dnm_deleteobject): Put a switch statement into the
    function such that it does the right thing when deleting a chord,
    clef, or key signature change.

2000-04-03    <matt@ozymandias.sy.yale.edu>

    * contexts.c, draw.c (draw_measures): Denemo now allocates an
    appropriate amount of space for the leftmost keysignature rather
    than a hard-coded amount. This is true of the widest key signature,
    if there are different key signatures in different staves.

    * calculatepositions.c (find_xes_in_measure): now handles
    consecutive mudelaobjects where ->durinticks == 0. This was
    far from trivial, but man, does it ever work.

2000-04-02    <matt@ozymandias.sy.yale.edu>

    * drawkey.c (draw_keysig): Fixed this such that it takes the
    preceding key signature as an argument and draws "cancelling
    naturals" where appropriate. Also now returns the width required
    for drawing the key signature.

2000-04-01    <matt@ozymandias.sy.yale.edu>

    * objops.c, objops.h, timedialog.c, keysigdialog.c, clefdialog.c:
    Created "new" function returning new non-chord mudelaobject *s
    and used them.

    * easylyparser.y: mudela parser now correctly interprets the clef,
    key, and time signature changes upon reload.

    * lyparserfuncs.c, lyparserfuncs.h (setclef, cleftypefromname):
    split off functionality formerly in setclef into two separate
    functions, allowing cleftypefromname to be invoked distinctly.

    * draw.c (draw_measures): adjusted determination of whether
    the cursor was off the end of the measure to account for
    objects for which durinticks == 0 at the end of the measure.

2000-03-31    <matt@ozymandias.sy.yale.edu>

    * ChangeLog: started using M-x add-change-log-entry to do this
    ChangeLog

    * exportmudela.c (exportmudela): export mudela now copies
    information concerning clef, key, and time signature changes
    to the mudela it exports.

31 Mar 2000:
    Changed gtk_file_selection_complete()s to
      gtk_file_selection_set_filename()s
    Integrated all of Roy Rankin's patch.

30 Mar 2000:
    Finished key signature changes.
    Fixed Adam's toend and tohome functions.

29 Mar 2000:
    Started enabling key signature changes.

28 Mar 2000:
    Added ability to insert clef changes.

27 Mar 2000:
    Continued with time signature changes and got them right.

26 Mar 2000: (post 0.5.1)
    Fixed a bug in calculatepositions.c listcomparefunc.
    Put in a first shot at time signature changes.

26 Mar 2000: 0.5.1
    Wrote Help->Show Keybindings and Help->About callbacks.
    Fixed reversealigns bug.
    Updated README.
    Packaged release.

25 Mar 2000:
    mh: A popup window now appears confirming any actions that will
      destroy the current score if it hasn't been saved off yet.

24 Mar 2000:
    ajt: incorporated Brian Delaney's MIDI instrument patch, and
      fixed bugs in it.
    mh: Added stuff to easylyparser.y to account for the MIDI instrument.
    Fixed clefdialog.c bug
    Split off much of the code in keyresponses.c into commandfuncs.c;
      the resulting cleanups knocked a bunch of stuff off the
      urgent section of the TODO list. :)
    Added a "haschanged" flag to struct scoreinfo, to be checked
      before File->New, File->Open, and File->Quit are invoked.
    Added ability to change the duration of an existing note with
      shift - duration-indicator.

23 Mar 2000:
    mh: Added tearoffs to the menus.
    Added a signal handler to listen and handle SIGCHLD signals - no
      more zombie processes after playback.

21 Mar 2000: 0.5.0
    mh: Made useful actions for everything in easylyparser.y - import
      mudela now completely works!
    Reworked file menu functionality and got rid of lots of duplicate
      code in file_selection.
    Adjusted playback controls.
    Packaged release.

20 Mar 2000:
    mh: My mudela lexer and parser work now! The next trick is
      to make useful actions for everything that gets parsed.
    Added soprano staff support to mudela import/export (when did
      that get added, btw?)
    Fixed File->New stuff.

19 Mar 2000:
    mh: Streamlined playback function, and started working on the
      mudela parser again.

14 Mar 2000:
    ajt: More work on playback


10 Mar 2000:
    ajt: Added Playback function for quick playback.  Use fork to create
    two processes, lilypond -m and playmidi.  Also removed one of the 
    score blocks in exportmudela and added a midi block with tempo=60

7 Mar 2000:
    Much more work on mudela parser.

6 Mar 2000:
    Fixed bugs reported by Roy Rankin.
    Some work on mudela parser.

3 Mar 2000:
    Started writing my easyly lexer. It's actually an ad-hoc lexer;
      the function's in the last section of the parser file I'm
      going to use for it.

2 Mar 2000:
    Fixed parser.y and lexer.l such that they compile with -p and -P,
      respectively, and won't interfere w/ my simplified-mudela
      parser.

1 Mar 2000: 0.3.5
    Fixed a bug in free_score that was causing segfaults.
    Posted release.

29 Feb 2000:
    ajt: fixed parser.y so that Makefile.am looked right.
    Integrated Roy Rankin's G_8 patch.
    Fixed some bugs in parser.y that were preventing loading from
      working.

27 Feb 2000:
    Finished with ties

26 Feb 2000:
    Rewrote setpixelmin() from the ground up - it now works _very_ well
      instead of just being a reasonable guess.
    Split off many #define'd constants into separate header files.
    First shot at implementing tied notes. They can be added and removed,
      and are displayed more-or-less properly. exportmudela.c doesn't
      yet take ties into account.

25 Feb 2000:
    Refined method for alloting space before a note.

24 Feb 2000:
    Wrote a separate, smarter function for determining where to denote
      accidentals and where not to. This had been done by the drawing
      code before.
    Came up with a mechanism -- that barely adds any code, mind you! --
      to allot space before notes for accidentals, etc.
    This broke the proper determination of reversealigns, though,
      which I also fixed.
    Integrated Adam Tee's load & save patches into mainstream release.

23 Feb 2000: 0.3.4
    Got more complex beaming to work. Adjusted code in
      timedialog.c and packaged release.

22 Feb 2000:
    Got basic, eighth-note-style beaming working.

20 Feb 2000:
    Got rid of memory leaks in dialog box functions.
    Fixed a few more colliding keyboard commands/accelerators.
    Put in model groundwork for rudimentary autobeaming.

19 Feb 2000: 0.3.3
    Wrote a functions explicitly for calculating the rightmost measure
      number rather than doing it as a side effect in the drawing
      routines.
    Packaged release.

18 Feb 2000:
    Changed Denemo so that it would cache the heights of noteheads
      as well.

16 Feb 2000:
    Split off a lot of what the drawing function was doing
      into a separate function.
    Part of this involved putting in facilities for saving
      the x positions of notes rather than recalculating them
      for each draw-through. I'll do a similar thing with
      y's soon.

14 Feb 2000: 0.3.2
    Elaborated on Ron Steinke's patch, thereby completing Denemo
      support of a distinction between major and minor keys.
    Packaged release.

13 Feb 2000:
        Adjusted the rest of Denemo such that it no longer uses all
      those ugly global variables.
    The part of the score that you're viewing now advances (when
      necessary) if you implicitly add measures to it.
    If you enter a "red-zone" note, it'll be added to the next
      measure if there aren't any notes in the next measure --
      before, Denemo would only do this if you were at the very
      end of the piece.
    Fixed a bug affecting exportation of rests.
    Incorporated Ron Steinke's key name patch. Also fixed the
      'control-K' interface bug he'd noticed.

10 Feb 2000:
    Adjusted about half of Denemo such that it no longer uses global
      variables.

7 Feb 2000: (post-0.3.1)
    Fixed the problems that have been causing gtk warnings for a
      long while now (one instance had to do with the use of
      uninitialized strings, the other an erroneous attempt to add
      scorearea to the toplevel window as well as the main vbox
      it contains.)
    Fixed font loading such that it comes up with a reasonable
      default font if it can't come up with something else useful.

7 Feb 2000: 0.3.1
    Added support for dotted notes in view and control (everything
      necessary was already in the model.)
    Packaged release.

6 Feb 2000:
    Added staff deletion.
    Finally, added export mudela functionality. Added back in
      chunks of Adam Tee's file.h and file.c to accomplish this,
      though nothing that he'd be angry about.

5 Feb 2000:
    Made initial clef, key, and time signature a property of the
      staff rather than an actual mudela object (making them
      mudelaobjects was more trouble than it was worth).
    Added delete measure operation.
    Adjusted functionality such that if adding too many notes to the
      last measure of the piece, a new measure will automatically be
      tacked onto its end.

4 Feb 2000:
    Added staff properties dialog.
    Fixed the problem of currentmeasure falling off the end of the
      screen when doing a lot of note entry.
    The name of each staff is now painted.
    Yet-another-bugfix for the new drawing mechanism.
    Changed sorting function a little bit for mudelaobjects
      zero ticks in duration, allowing me to remove a hack
      from the drawing code.


3 Feb 2000: 0.3.0
    Checked with Adam Tee to ask if his save patch should be integrated
      with the main release cycle; he said not yet. I removed most of it,
      but left in the stuff that wasn't directly related to his save
      function.
    Packaged release.

2 Feb 2000:
    Fixed individual note allocation. The scheme it uses is also
      now much simplified.

1 Feb 2000:
    Got individual note allocation working.
    Its behavior is still not quite what I'm aiming for when
      rhythms are syncopated, but where they aren't, it works
      just about perfectly.
    Fixed things such that multiple measures are now displayed again
      when they can be.

31 Jan 2000:
    Continued working on individual note allocation stuff -- it's
      almost working.
    Changed things so that currentobject points to NULL at the beginning
      of an initial measure (regardless of the initial timesig, etc.)

30 Jan 2000:
    Added some groundwork that allows Denemo to give explicit note
      allocations.

24 Jan 2000: 0.1.2
    Got rid of lots of gratuitous NOTE_MARGIN + 's
    Added red exclamation point indicator when a measure has
      too many beats (not yet perfect)
    Added display of measure numbers
    Added ability to display different parts of the score (just
      left-to-right so far)
    Adjusted display such that a double-bar-line is shown at the
      end of the piece
    Replaced every constant-length gchar * I could find with
      a dynamically-resizing GString * instead.

23 Jan 2000:
    Fixed the display of adjacent notes in a chord so that chord tones
      are displayed where you'd expect them.
    Added cursor colors other than gray! Green for ability to add music
      at the cursor, red if it'd extend past the end of the measure.

17 Jan 2000:
    Added Control-arrow shortcuts for moving around measure-by-measure.
    Denemo now calculates the number of measures in width it can
      display and displays only those measures.
    Added keyboard shortcuts and a dialog for setting the space between
      staves.
    Added commands to insert a first and last staff; moved operations
      that add a staff to their own menu type.
    Got rid of all that ugly TOP_MARGIN and STAFF_START stuff, as it's
      now taken care of by the adjusted scheme for providing space
      between staffs.
    Fixed dialogs such that they open at the position of the mouse.

16 Jan 2000: 0.1.1
        Final packaging of release.

15 Jan 2000:
    Got time signature dialog working. Multiple simultaneous time
      signatures seem to work too, though I don't think Lily supports
      them. :)
    Added a dialog for setting the measure width.
    Added keyboard shortcuts for setting the measure width.
    Updated DESIGN, TODO, etc.

13 Jan 2000:
    Started time signature dialog.
    Adjusted the add measure code such that adding a staff will give it
      the same clef, key, and time signatures as the current staff. Can
      be added before or after the current staff.
    Put in groundwork for adjusting the width of measures, which I can
      now do with the help of gdb.
    (This is also important for adjusting the time signature such that
      much space isn't wasted.)

12 Jan 2000: 0.1.0
    Final packaging of release 0.1.0

11 Jan 2000:
        Finished model, control, and view coding for block-chords - they now
      work
    Added function for drawing ledger lines

10 Jan 2000:
        Began coding in model support for block-chords

6 Jan 2000: 0.0.7
    Wrote code for actually displaying the key signature (it had to be
      deduced from the appearance of the music beforehand)

5 Jan 2000:
    Added support for changing the key signature
    Added display of accidentals where the context demands it but not
      elsewhere

4 Jan 2000:
    Got clef-change dialog entirely working.
    Added preliminary support for accidentals.

3 Jan 2000:
    Removed S key as shortcut to 'new staff'.
    Added '2000' to all copyright lines.
    First stab at the change-clef dialog.

1 Jan 2000:

    Finally got New Staff off of the Edit menu working; I ran into lots of
      stupid problems doing so and as a result it took a lot longer than
      it should've.

31 Dec 1999:

    Debugged stuff such that adding new staffs actually works.
    Fixed pixmaps such that the background was pure-white, not
      off-white.
    Reworked height-calculating code.

30 Dec 1999:

    Added S command to add a new staff.
    Started working on the scaffolding for it.
