Make timeline use an overlay window.
This commit is contained in:
parent
d7902f7661
commit
25561b328d
25
Timeline.C
25
Timeline.C
|
@ -65,12 +65,13 @@ cb_vscroll ( Fl_Widget *w, void *v )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Timeline::Timeline ( int X, int Y, int W, int H, const char* L ) : Fl_Group( X, Y, W, H, L )
|
Timeline::Timeline ( int X, int Y, int W, int H, const char* L ) : Fl_Overlay_Window( X, Y, W, H, L )
|
||||||
{
|
{
|
||||||
|
|
||||||
box( FL_FLAT_BOX );
|
box( FL_FLAT_BOX );
|
||||||
xoffset = 0;
|
xoffset = 0;
|
||||||
|
|
||||||
|
X = Y = 0;
|
||||||
{
|
{
|
||||||
Scalebar *o = new Scalebar( X, Y + H - 18, W - 18, 18 );
|
Scalebar *o = new Scalebar( X, Y + H - 18, W - 18, 18 );
|
||||||
|
|
||||||
|
@ -327,7 +328,9 @@ Timeline::draw ( void )
|
||||||
// ( damage() & ( FL_DAMAGE_CHILD | FL_DAMAGE_SCROLL ) ) )
|
// ( damage() & ( FL_DAMAGE_CHILD | FL_DAMAGE_SCROLL ) ) )
|
||||||
{
|
{
|
||||||
|
|
||||||
draw_box( box(), x(), y(), w(), h(), color() );
|
// draw_box( box(), x(), y(), w(), h(), color() );
|
||||||
|
|
||||||
|
draw_box( box(), 0, 0, w(), h(), color() );
|
||||||
|
|
||||||
fl_push_clip( x(), rulers->y(), w(), rulers->h() );
|
fl_push_clip( x(), rulers->y(), w(), rulers->h() );
|
||||||
draw_child( *rulers );
|
draw_child( *rulers );
|
||||||
|
@ -340,6 +343,7 @@ Timeline::draw ( void )
|
||||||
draw_child( *hscroll );
|
draw_child( *hscroll );
|
||||||
draw_child( *vscroll );
|
draw_child( *vscroll );
|
||||||
|
|
||||||
|
redraw_overlay();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -394,6 +398,21 @@ Timeline::draw ( void )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Timeline::draw_overlay ( void )
|
||||||
|
{
|
||||||
|
|
||||||
|
// TODO: draw selection rectangle here!
|
||||||
|
|
||||||
|
|
||||||
|
/* fl_color( FL_BLUE ); */
|
||||||
|
/* fl_line_style( FL_DOT, 4 ); */
|
||||||
|
|
||||||
|
/* fl_rect( 300, 400, 200, 300 ); */
|
||||||
|
|
||||||
|
/* fl_line_style( FL_SOLID, 0 ); */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
Timeline::handle ( int m )
|
Timeline::handle ( int m )
|
||||||
|
@ -408,6 +427,6 @@ Timeline::handle ( int m )
|
||||||
return vscroll->handle( m );
|
return vscroll->handle( m );
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return Fl_Group::handle( m );
|
return Fl_Overlay_Window::handle( m );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
#include <FL/Fl_Pack.H>
|
#include <FL/Fl_Pack.H>
|
||||||
#include <FL/Fl_Scrollbar.H>
|
#include <FL/Fl_Scrollbar.H>
|
||||||
#include <FL/Fl_Widget.H>
|
#include <FL/Fl_Widget.H>
|
||||||
|
#include <Fl/Fl_Overlay_Window.H>
|
||||||
|
|
||||||
#include "Scalebar.H"
|
#include "Scalebar.H"
|
||||||
|
|
||||||
|
@ -48,7 +49,7 @@ class Time_Track;
|
||||||
#include <list>
|
#include <list>
|
||||||
using std::list;
|
using std::list;
|
||||||
|
|
||||||
struct Timeline : public Fl_Group
|
struct Timeline : public Fl_Overlay_Window
|
||||||
{
|
{
|
||||||
|
|
||||||
static void draw_clip ( void * v, int X, int Y, int W, int H );
|
static void draw_clip ( void * v, int X, int Y, int W, int H );
|
||||||
|
@ -111,6 +112,7 @@ struct Timeline : public Fl_Group
|
||||||
void draw_measure_lines ( int X, int Y, int W, int H, Fl_Color color );
|
void draw_measure_lines ( int X, int Y, int W, int H, Fl_Color color );
|
||||||
void position ( int X );
|
void position ( int X );
|
||||||
void draw ( void );
|
void draw ( void );
|
||||||
|
void draw_overlay ( void );
|
||||||
int handle ( int m );
|
int handle ( int m );
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
1
main.C
1
main.C
|
@ -21,6 +21,7 @@
|
||||||
#include <FL/Fl.H>
|
#include <FL/Fl.H>
|
||||||
#include <FL/Fl_Window.H>
|
#include <FL/Fl_Window.H>
|
||||||
#include <FL/Fl_Double_Window.H>
|
#include <FL/Fl_Double_Window.H>
|
||||||
|
#include <FL/Fl_Overlay_Window.H>
|
||||||
#include <FL/Fl_Scroll.H>
|
#include <FL/Fl_Scroll.H>
|
||||||
// #include <FL/Fl_Scrollbar.H>
|
// #include <FL/Fl_Scrollbar.H>
|
||||||
#include <FL/Fl_Pack.H>
|
#include <FL/Fl_Pack.H>
|
||||||
|
|
Loading…
Reference in New Issue