Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes createTCO method on some classes #5699

Merged
merged 11 commits into from
Nov 7, 2020
4 changes: 1 addition & 3 deletions plugins/HydrogenImport/HydrogenImport.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -314,10 +314,8 @@ bool HydrogenImport::readSong()

int i = pattern_id[patId]+song_num_tracks;
Track *t = ( BBTrack * ) s->tracks().at( i );
TrackContentObject *tco = t->createTCO( pos );
tco->movePosition( pos );
t->createTCO( pos );


if ( pattern_length[patId] > best_length )
{
best_length = pattern_length[patId];
Expand Down
6 changes: 2 additions & 4 deletions plugins/MidiImport/MidiImport.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -193,8 +193,7 @@ class smfMidiCC
{
MidiTime pPos = MidiTime( time.getBar(), 0 );
ap = dynamic_cast<AutomationPattern*>(
at->createTCO(0) );
ap->movePosition( pPos );
at->createTCO( pPos ) );
ap->addObject( objModel );
}

Expand Down Expand Up @@ -287,8 +286,7 @@ class smfMidiChannel
if (!newPattern || n->pos() > lastEnd + DefaultTicksPerBar)
{
MidiTime pPos = MidiTime(n->pos().getBar(), 0);
newPattern = dynamic_cast<Pattern*>(it->createTCO(0));
newPattern->movePosition(pPos);
newPattern = dynamic_cast<Pattern*>(it->createTCO( pPos ));
}
lastEnd = n->pos() + n->length();

Expand Down
11 changes: 2 additions & 9 deletions src/core/Track.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1860,7 +1860,7 @@ bool TrackContentWidget::pasteSelection( MidiTime tcoPos, const QMimeData * md,

TrackContentObject * tco = t->createTCO( pos );
tco->restoreState( tcoElement );
tco->movePosition( pos );
tco->movePosition( pos ); // Because we restored the state, we need to move the TCO again.
if( wasSelection )
{
tco->selectViewOnCreate( true );
Expand Down Expand Up @@ -1914,11 +1914,7 @@ void TrackContentWidget::mousePressEvent( QMouseEvent * me )
getTrack()->addJournalCheckPoint();
const MidiTime pos = getPosition( me->x() ).getBar() *
MidiTime::ticksPerBar();
TrackContentObject * tco = getTrack()->createTCO( pos );

tco->saveJournallingState( false );
tco->movePosition( pos );
tco->restoreJournallingState();
getTrack()->createTCO( pos );
}
}

Expand Down Expand Up @@ -2570,8 +2566,6 @@ void Track::loadSettings( const QDomElement & element )
TrackContentObject * tco = createTCO(
MidiTime( 0 ) );
tco->restoreState( node.toElement() );
saveJournallingState( false );
restoreJournallingState();
}
}
node = node.nextSibling();
Expand Down Expand Up @@ -2759,7 +2753,6 @@ void Track::createTCOsForBB( int bb )
{
MidiTime position = MidiTime( numOfTCOs(), 0 );
TrackContentObject * tco = createTCO( position );
tco->movePosition( position );
tco->changeLength( MidiTime( 1, 0 ) );
}
}
Expand Down
7 changes: 4 additions & 3 deletions src/tracks/AutomationTrack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,11 @@ TrackView * AutomationTrack::createView( TrackContainerView* tcv )



TrackContentObject * AutomationTrack::createTCO( const MidiTime & )
TrackContentObject * AutomationTrack::createTCO( const MidiTime & _pos )
{
return new AutomationPattern( this );
AutomationPattern *p = new AutomationPattern( this );
p->movePosition( _pos );
return p;
}


Expand Down Expand Up @@ -133,7 +135,6 @@ void AutomationTrackView::dropEvent( QDropEvent * _de )
TrackContentObject * tco = getTrack()->createTCO( pos );
AutomationPattern * pat = dynamic_cast<AutomationPattern *>( tco );
pat->addObject( mod );
pat->movePosition( pos );
}
}

Expand Down
3 changes: 3 additions & 0 deletions src/tracks/BBTrack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -479,6 +479,9 @@ TrackContentObject * BBTrack::createTCO( const MidiTime & _pos )
bbtco->setColor( *s_lastTCOColor );
bbtco->setUseStyleColor( false );
}

bbtco->movePosition( _pos );

return bbtco;
}

Expand Down
6 changes: 4 additions & 2 deletions src/tracks/InstrumentTrack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -713,9 +713,11 @@ bool InstrumentTrack::play( const MidiTime & _start, const fpp_t _frames,



TrackContentObject * InstrumentTrack::createTCO( const MidiTime & )
TrackContentObject * InstrumentTrack::createTCO( const MidiTime & _pos )
IanCaio marked this conversation as resolved.
Show resolved Hide resolved
{
return new Pattern( this );
Pattern *p = new Pattern( this );
p->movePosition( _pos );
return p;
}


Expand Down
6 changes: 3 additions & 3 deletions src/tracks/SampleTrack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -746,10 +746,10 @@ TrackView * SampleTrack::createView( TrackContainerView* tcv )



TrackContentObject * SampleTrack::createTCO(const MidiTime & pos)
TrackContentObject * SampleTrack::createTCO(const MidiTime & _pos)
{
SampleTCO * sTco = new SampleTCO(this);
sTco->movePosition(pos);
SampleTCO * sTco = new SampleTCO( this );
sTco->movePosition( _pos );
PhysSong marked this conversation as resolved.
Show resolved Hide resolved
return sTco;
}

Expand Down