@@ -22,6 +22,8 @@ | |||||
#include "Loggable.H" | #include "Loggable.H" | ||||
#include "Sequence_Point.H" | #include "Sequence_Point.H" | ||||
#include <FL/fl_ask.H> | |||||
class Ruler_Point : public Sequence_Point | class Ruler_Point : public Sequence_Point | ||||
{ | { | ||||
@@ -33,6 +35,7 @@ public: | |||||
if ( _label ) | if ( _label ) | ||||
free( _label ); | free( _label ); | ||||
_label = strdup( s ); | _label = strdup( s ); | ||||
redraw(); | |||||
} | } | ||||
protected: | protected: | ||||
@@ -61,7 +64,7 @@ protected: | |||||
name( v ); | name( v ); | ||||
} | } | ||||
timeline->redraw(); | |||||
// timeline->redraw(); | |||||
} | } | ||||
Ruler_Point ( ) | Ruler_Point ( ) | ||||
@@ -105,6 +108,18 @@ public: | |||||
int | int | ||||
handle ( int m ) | handle ( int m ) | ||||
{ | { | ||||
Logger _log( this ); | |||||
if ( m == FL_PUSH && Fl::event_button3() && ! Fl::event_ctrl() ) | |||||
{ | |||||
const char *s = fl_input( "New name for mark:", name() ); | |||||
if ( s ) | |||||
name( s ); | |||||
return 1; | |||||
} | |||||
int r = Sequence_Widget::handle( m ); | int r = Sequence_Widget::handle( m ); | ||||
if ( m == FL_RELEASE ) | if ( m == FL_RELEASE ) | ||||
@@ -95,11 +95,10 @@ Sequence_Widget::draw_label ( const char *label, Fl_Align align, Fl_Color color | |||||
if ( align & FL_ALIGN_BOTTOM ) | if ( align & FL_ALIGN_BOTTOM ) | ||||
fl_draw_box( b, X - dx - bx, Y + H - lh, lw + bw, lh, FL_GRAY ); | fl_draw_box( b, X - dx - bx, Y + H - lh, lw + bw, lh, FL_GRAY ); | ||||
else | |||||
if ( align & FL_ALIGN_LEFT ) | |||||
fl_draw_box( b, X - dx, Y, lw + bw, lh, FL_GRAY ); | |||||
else | |||||
fl_draw_box( b, X - dx - bx + ((W / 2) - (lw / 2)), Y + ((H / 2) - (lh / 2)), lw + bw, lh, FL_GRAY ); | |||||
else if ( align == FL_ALIGN_LEFT ) | |||||
fl_draw_box( b, X - dx, Y + ((H / 2) - (lh / 2)), lw + bw, lh, FL_GRAY ); | |||||
else if ( align & FL_ALIGN_TOP ) | |||||
fl_draw_box( b, X - dx - bx + ((W / 2) - (lw / 2)), Y + ((H / 2) - (lh / 2)), lw + bw, lh, FL_GRAY ); | |||||
} | } | ||||
lab.draw( X - dx, Y, W, H, align ); | lab.draw( X - dx, Y, W, H, align ); | ||||
@@ -168,6 +168,8 @@ Timeline::Timeline ( int X, int Y, int W, int H, const char* L ) : Fl_Overlay_Wi | |||||
} | } | ||||
} | } | ||||
/* rulers go above tracks... */ | |||||
add( rulers ); | |||||
/* make sure scrollbars are on top */ | /* make sure scrollbars are on top */ | ||||
add( vscroll ); | add( vscroll ); | ||||