Skip to content

Commit

Permalink
Release 2.7.1
Browse files Browse the repository at this point in the history
  • Loading branch information
lpugin committed May 22, 2020
1 parent db02066 commit 1d517b8
Show file tree
Hide file tree
Showing 8 changed files with 47 additions and 45 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Changelog

## [2.7.1] - 2020-05-22
* Fix bug with mensural clefs not displaying

## [2.7.0] - 2020-05-13
* Support for `@pname.ges` and `@pnum` in MIDI output (@rettinghaus)
* Support for `@xml:space` in MusicXML import (@rettinghaus)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Verovio is a fast, portable and lightweight library for engraving [Music Encodin

See the JavaScript toolkit running in the [MEI Viewer](http://www.verovio.org/mei-viewer.xhtml) and check out the [app](http://www.verovio.org/app.html) or the [tutorial](http://www.verovio.org/tutorial.xhtml) for its web integration and for enabling user interaction.

![Choice interaction](https://raw.githubusercontent.com/rism-ch/verovio/gh-pages/movies/reflow.gif)
![Choice interaction](https://raw.githubusercontent.com/rism-ch/verovio.org/gh-pages/movies/reflow.gif)

Verovio can also render [Plaine & Easie Code](https://www.iaml.info/plaine-easie-code) and imports MusicXML, Humdrum data, and ABC notation. It is designed as a tool usable as a one-step conversion tool and it is written in pure standard C++.

Expand Down
2 changes: 1 addition & 1 deletion bindings/java/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

<groupId>org.rism.verovio</groupId>
<artifactId>VerovioToolkit</artifactId>
<version>2.7.0</version>
<version>2.7.1</version>
<packaging>jar</packaging>

<name>VerovioToolkit</name>
Expand Down
2 changes: 1 addition & 1 deletion bindings/python/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
)

setup(name='verovio',
version='2.7.0',
version='2.7.1',
url="www.verovio.org",
description="""A library and toolkit for engraving MEI music notation into SVG""",
ext_modules=[verovio_module],
Expand Down
4 changes: 2 additions & 2 deletions codemeta.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"identifier": "Verovio",
"name": "Verovio",
"description": "Verovio is a fast, portable and lightweight open-source library for engraving Music Encoding Initiative (MEI) music scores into SVG.",
"softwareVersion": "2.7.0",
"datePublished": "2020-05-13",
"softwareVersion": "2.7.1",
"datePublished": "2020-05-22",
"license": "https://www.gnu.org/licenses/lgpl-3.0",
"programmingLanguage": [{
"@type": "ComputerLanguage",
Expand Down
2 changes: 1 addition & 1 deletion emscripten/npm/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "verovio",
"version": "2.7.0",
"version": "2.7.1",
"description": "This is the stable version of the verovio package",
"main": "index.js",
"keywords": [
Expand Down
2 changes: 1 addition & 1 deletion include/vrv/vrvdef.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ namespace vrv {

#define VERSION_MAJOR 2
#define VERSION_MINOR 7
#define VERSION_REVISION 0
#define VERSION_REVISION 1
// Adds "-dev" in the version number - should be set to false for releases
#define VERSION_DEV false

Expand Down
75 changes: 37 additions & 38 deletions src/view_element.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -613,6 +613,43 @@ void View::DrawClef(DeviceContext *dc, LayerElement *element, Layer *layer, Staf
bool isMensural = Att::IsMensuralType(staff->m_drawingNotationType);
bool isNeume = staff->m_drawingNotationType == NOTATIONTYPE_neume;

// cmn clefs
int shapeOctaveDis = Clef::ClefId(clef->GetShape(), 0, clef->GetDis(), clef->GetDisPlace());
// G clef
if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E050_gClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E052_gClef8vb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_15, STAFFREL_basic_below))
sym = SMUFL_E051_gClef15mb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_8, STAFFREL_basic_above))
sym = SMUFL_E053_gClef8va;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_15, STAFFREL_basic_above))
sym = SMUFL_E054_gClef15ma;
// C clef
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_C, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E05C_cClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_C, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E05D_cClef8vb;
else if (clef->GetShape() == CLEFSHAPE_C)
sym = SMUFL_E05C_cClef;
// F clef
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E062_fClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E064_fClef8vb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_15, STAFFREL_basic_below))
sym = SMUFL_E063_fClef15mb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_8, STAFFREL_basic_above))
sym = SMUFL_E065_fClef8va;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_15, STAFFREL_basic_above))
sym = SMUFL_E066_fClef15ma;
else if (clef->GetShape() == CLEFSHAPE_F)
sym = SMUFL_E062_fClef;
// Perc clef
else if (clef->GetShape() == CLEFSHAPE_perc)
sym = SMUFL_E069_unpitchedPercussionClef1;

// mensural clefs
if (isMensural) {
if (staff->m_drawingNotationType == NOTATIONTYPE_mensural_black) {
Expand Down Expand Up @@ -640,44 +677,6 @@ void View::DrawClef(DeviceContext *dc, LayerElement *element, Layer *layer, Staf
else if (clef->GetShape() == CLEFSHAPE_F)
sym = SMUFL_E902_chantFclef;
}
// cmn clefs
else {
int shapeOctaveDis = Clef::ClefId(clef->GetShape(), 0, clef->GetDis(), clef->GetDisPlace());
// G clef
if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E050_gClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E052_gClef8vb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_15, STAFFREL_basic_below))
sym = SMUFL_E051_gClef15mb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_8, STAFFREL_basic_above))
sym = SMUFL_E053_gClef8va;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_G, 0, OCTAVE_DIS_15, STAFFREL_basic_above))
sym = SMUFL_E054_gClef15ma;
// C clef
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_C, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E05C_cClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_C, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E05D_cClef8vb;
else if (clef->GetShape() == CLEFSHAPE_C)
sym = SMUFL_E05C_cClef;
// F clef
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_NONE, STAFFREL_basic_NONE))
sym = SMUFL_E062_fClef;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_8, STAFFREL_basic_below))
sym = SMUFL_E064_fClef8vb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_15, STAFFREL_basic_below))
sym = SMUFL_E063_fClef15mb;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_8, STAFFREL_basic_above))
sym = SMUFL_E065_fClef8va;
else if (shapeOctaveDis == Clef::ClefId(CLEFSHAPE_F, 0, OCTAVE_DIS_15, STAFFREL_basic_above))
sym = SMUFL_E066_fClef15ma;
else if (clef->GetShape() == CLEFSHAPE_F)
sym = SMUFL_E062_fClef;
// Perc clef
else if (clef->GetShape() == CLEFSHAPE_perc)
sym = SMUFL_E069_unpitchedPercussionClef1;
}

if (sym == 0) {
clef->SetEmptyBB();
Expand Down

0 comments on commit 1d517b8

Please sign in to comment.