Browse Source

Use timestamps (of creation) for take names instead of sequential numbers.

tags/non-daw-v1.1.0
Jonathan Moore Liles 16 years ago
parent
commit
193dc19c91
5 changed files with 33 additions and 14 deletions
  1. +21
    -2
      Timeline/Audio_Sequence.C
  2. +3
    -3
      Timeline/Audio_Sequence.H
  3. +4
    -1
      Timeline/Sequence.C
  4. +2
    -2
      Timeline/Sequence.H
  5. +3
    -6
      Timeline/Track.C

+ 21
- 2
Timeline/Audio_Sequence.C View File

@@ -20,6 +20,7 @@
/* An Audio_Sequence is a sequence of Audio_Regions. Takes and 'track
* contents' consist of these objects */

#include <sys/time.h>
#include <Fl/fl_ask.H>

#include "Audio_Sequence.H"
@@ -35,11 +36,29 @@ using namespace std;


Audio_Sequence::Audio_Sequence ( Track *track ) : Sequence( track )
Audio_Sequence::Audio_Sequence ( Track *track, const char *name ) : Sequence( track )
{

_track = track;

if ( name )
Audio_Sequence::name( name );
else
{
struct timeval tv;

gettimeofday( &tv, NULL );

time_t t = tv.tv_sec;

char s[40];

ctime_r( &t, s );

s[ strlen( s ) - 1 ] = 0;

Audio_Sequence::name( s );
}

if ( track )
track->add( this );



+ 3
- 3
Timeline/Audio_Sequence.H View File

@@ -48,14 +48,14 @@ public:

LOG_CREATE_FUNC( Audio_Sequence );

Audio_Sequence ( Track *track );
Audio_Sequence ( Track *track, const char *name = 0 );
~Audio_Sequence ( );

Fl_Cursor cursor ( void ) const { return FL_CURSOR_DEFAULT; }

Sequence * clone_empty ( void )
Sequence * clone_empty ( const char *name = 0 )
{
Audio_Sequence *t = new Audio_Sequence( track() );
Audio_Sequence *t = new Audio_Sequence( track(), name );

return t;
}


+ 4
- 1
Timeline/Sequence.C View File

@@ -41,12 +41,15 @@ queue <Sequence_Widget *> Sequence::_delete_queue;


Sequence::Sequence ( Track *track ) : Fl_Widget( 0, 0, 0, 0 ), Loggable( true )
Sequence::Sequence ( Track *track, const char *name ) : Fl_Widget( 0, 0, 0, 0 ), Loggable( true )
{
init();

_track = track;

if ( name )
_name = strdup( name );

// log_create();
}



+ 2
- 2
Timeline/Sequence.H View File

@@ -74,7 +74,7 @@ public:
/* welcome to C++ */
LOG_NAME_FUNC( Sequence );

Sequence ( Track *track=0 );
Sequence ( Track *track=0, const char *name = 0 );

Sequence ( int X, int Y, int W, int H );

@@ -89,7 +89,7 @@ public:
void name ( const char *s )
{
if ( _name ) free( _name );
_name = strdup( s );
_name = s ? strdup( s ) : NULL;
label( _name );
}



+ 3
- 6
Timeline/Track.C View File

@@ -23,6 +23,7 @@
/* TODO: split into Track and Audio_Track (and maybe later Video_Track
* and MIDI_Track */

#include <sys/time.h>
#include "Track.H"

#include "Transport.H"
@@ -502,12 +503,6 @@ void
Track::add ( Audio_Sequence * t )
{
takes->insert( *t, 0 );
if ( ! t->name() )
{
char pat[20];
snprintf( pat, sizeof( pat ), "%d", 1 + takes->children() );
t->name( strdup( pat ) );
}

t->labeltype( FL_ENGRAVED_LABEL );

@@ -583,6 +578,8 @@ Track::sequence ( Audio_Sequence * t )

t->labeltype( FL_NO_LABEL );

update_take_menu();

resize();
}



Loading…
Cancel
Save