Browse Source

Timeline: Improve window resize behavior.

tags/non-daw-v1.2.0
Jonathan Moore Liles 9 years ago
parent
commit
640bfbb4d1
1 changed files with 12 additions and 4 deletions
  1. +12
    -4
      timeline/src/Timeline.C

+ 12
- 4
timeline/src/Timeline.C View File

@@ -720,6 +720,7 @@ Timeline::Timeline ( int X, int Y, int W, int H, const char* L ) : BASE( X, Y, W
{ {
Fl_Group *o = new Fl_Group( X, rulers->y() + rulers->h(), W, ( H - rulers->h() ) - 50 ); Fl_Group *o = new Fl_Group( X, rulers->y() + rulers->h(), W, ( H - rulers->h() ) - 50 );
o->box(FL_FLAT_BOX); o->box(FL_FLAT_BOX);
o->clip_children(true);
{ {
_fpp = 8; _fpp = 8;
Fl_Pack *o = new Fl_Pack( X, rulers->y() + rulers->h(), W, 1 ); Fl_Pack *o = new Fl_Pack( X, rulers->y() + rulers->h(), W, 1 );
@@ -1166,22 +1167,24 @@ Timeline::draw_clip_tracks ( void * v, int X, int Y, int W, int H )
void void
Timeline::resize ( int X, int Y, int W, int H ) Timeline::resize ( int X, int Y, int W, int H )
{ {
int old_panzoomer_h = panzoomer->h();
BASE::resize( X, Y, W, H ); BASE::resize( X, Y, W, H );


tile->resizable()->resize( X, tile->resizable()->resize( X,
tile->y() + tile->h() - 150, tile->y() + tile->h() - 150,
W, 125 ); W, 125 );
/* why is THIS necessary? */
panzoomer->resize( X, panzoomer->resize( X,
tile->y() + tile->h() - 50,
tile->y() + tile->h() - old_panzoomer_h,
W, W,
50 );
old_panzoomer_h );


track_window->resize( X, track_window->resize( X,
tile->y(), tile->y(),
W, W,
tile->h() - 50);
tile->h() - panzoomer->h());



/* /\* rulers->resize( X, *\/ */ /* /\* rulers->resize( X, *\/ */
/* /\* rulers->y(), *\/ */ /* /\* rulers->y(), *\/ */
@@ -1272,6 +1275,11 @@ Timeline::draw ( void )
THREAD_ASSERT( UI ); THREAD_ASSERT( UI );


// rdlock(); // rdlock();
/* Parent resizing obliterates the size and position of this widget... just force it.*/
tracks->resize(
track_window->x(), track_window->y() - (int)panzoomer->y_value(),
track_window->w(), pack_visible_height( tracks ));


int X, Y, W, H; int X, Y, W, H;




Loading…
Cancel
Save