snap revisited: somewhat better choice of ruler scale for 3,5,7
This commit is contained in:
parent
18882ef17c
commit
e4e21f4d07
@ -1042,19 +1042,20 @@ Editor::compute_bbt_ruler_scale (samplepos_t lower, samplepos_t upper)
|
|||||||
/* Now that we know how fine a grid (Ruler) is allowable on this screen, limit it to the coarseness selected by the user */
|
/* Now that we know how fine a grid (Ruler) is allowable on this screen, limit it to the coarseness selected by the user */
|
||||||
/* note: GridType and RulerScale are not the same enums, so it's not a simple mathematical operation */
|
/* note: GridType and RulerScale are not the same enums, so it's not a simple mathematical operation */
|
||||||
int suggested_scale = (int) bbt_ruler_scale;
|
int suggested_scale = (int) bbt_ruler_scale;
|
||||||
|
int divs = get_grid_music_divisions(_grid_type);
|
||||||
if (_grid_type == GridTypeBar) {
|
if (_grid_type == GridTypeBar) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_1);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_1);
|
||||||
} else if (_grid_type == GridTypeBeat) {
|
} else if (_grid_type == GridTypeBeat) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_quarters);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_quarters);
|
||||||
} else if (_grid_type == GridTypeBeatDiv2) {
|
} else if ( divs < 4 ) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_eighths);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_eighths);
|
||||||
} else if (_grid_type == GridTypeBeatDiv4) {
|
} else if ( divs < 8 ) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_sixteenths);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_sixteenths);
|
||||||
} else if (_grid_type == GridTypeBeatDiv8) {
|
} else if ( divs < 16 ) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_thirtyseconds);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_thirtyseconds);
|
||||||
} else if (_grid_type == GridTypeBeatDiv16) {
|
} else if ( divs < 32 ) {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_sixtyfourths);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_sixtyfourths);
|
||||||
} else if (_grid_type == GridTypeBeatDiv32) {
|
} else {
|
||||||
suggested_scale = std::min(suggested_scale, (int) bbt_show_onetwentyeighths);
|
suggested_scale = std::min(suggested_scale, (int) bbt_show_onetwentyeighths);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user