Make zoom to time work again.
This commit is contained in:
parent
61f3d56611
commit
0da462b62d
|
@ -70,7 +70,7 @@ public:
|
||||||
|
|
||||||
bool zoom_changed ( void ) const { return _zoom_changed; }
|
bool zoom_changed ( void ) const { return _zoom_changed; }
|
||||||
double zoom ( void ) const { return _zoom; }
|
double zoom ( void ) const { return _zoom; }
|
||||||
void zoom ( int v ) { _zoom = v; }
|
void zoom ( int v ) { int z = _zoom ; _zoom = v; constrain(); maybe_do_callback( z ); }
|
||||||
// double value ( void ) const { return Fl_Slider::value(); }
|
// double value ( void ) const { return Fl_Slider::value(); }
|
||||||
void zoom_range ( int zmin, int zmax ) { _zoom_min = zmin; _zoom_max = zmax; }
|
void zoom_range ( int zmin, int zmax ) { _zoom_min = zmin; _zoom_max = zmax; }
|
||||||
|
|
||||||
|
|
|
@ -1061,10 +1061,14 @@ Timeline::zoom_out ( void )
|
||||||
void
|
void
|
||||||
Timeline::zoom ( float secs )
|
Timeline::zoom ( float secs )
|
||||||
{
|
{
|
||||||
const int sw = w() - vscroll->w() - Track::width();
|
const int sw = tracks->w() - Track::width();
|
||||||
|
|
||||||
/* FIXME: we actually need to set this in the scalebar */
|
int fpp = (int)((secs * sample_rate()) / sw);
|
||||||
// _fpp = (int)((secs * sample_rate()) / sw);
|
|
||||||
|
int p = 0;
|
||||||
|
while ( 1 << p < fpp ) p++;
|
||||||
|
|
||||||
|
hscroll->zoom( p );
|
||||||
|
|
||||||
redraw();
|
redraw();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue