Properly clear pushed and belowmouse at sequence widget destruction time.

This commit is contained in:
Jonathan Moore Liles 2008-05-28 01:13:23 -05:00
parent 6330fde479
commit 8a3a38b2a0
2 changed files with 32 additions and 22 deletions

View File

@ -34,6 +34,35 @@ Fl_Color Sequence_Widget::_selection_color = FL_MAGENTA;
Sequence_Widget::Sequence_Widget ( )
{
_sequence = NULL;
_r = &_range;
_r->start = _r->offset = _r->length = 0;
_drag = NULL;
_box_color = FL_BACKGROUND_COLOR;
_color = FL_FOREGROUND_COLOR;
}
Sequence_Widget::~Sequence_Widget ( )
{
redraw();
if ( this == _pushed )
_pushed = NULL;
if ( this == _belowmouse )
_belowmouse = NULL;
_sequence->remove( this );
_selection.remove( this );
}
void
Sequence_Widget::get ( Log_Entry &e ) const
{

View File

@ -158,30 +158,11 @@ protected:
_box_color = rhs._box_color;
};
Sequence_Widget ( );
public:
Sequence_Widget ( )
{
_sequence = NULL;
_r = &_range;
_r->start = _r->offset = _r->length = 0;
_drag = NULL;
_box_color = FL_BACKGROUND_COLOR;
_color = FL_FOREGROUND_COLOR;
}
virtual ~Sequence_Widget ( )
{
redraw();
_sequence->remove( this );
_selection.remove( this );
}
virtual ~Sequence_Widget ( );
const Sequence_Widget &
operator= ( const Sequence_Widget &rhs )