Skip to content
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
239d917
Automatic FX-mixer strip management #1215
spechtstatt May 15, 2022
2fb21b7
mend
spechtstatt May 20, 2022
c2bdf8a
made buildable
spechtstatt May 20, 2022
1e27fff
solve check issues
spechtstatt May 20, 2022
c6b2944
solve check issues
spechtstatt May 20, 2022
90f26ce
refactoring naming, removed unused methods, some optimization
spechtstatt May 21, 2022
2ba4982
Automatic mixer strip management #1215 - fix some issues with track n…
spechtstatt May 24, 2022
d1c5c29
Automatic mixer strip management #1215 - applied review recommendations
spechtstatt May 24, 2022
38cf295
Automatic mixer strip management #1215 - bugfix for 'frozen' mixer li…
spechtstatt May 24, 2022
5572288
Automatic mixer strip management #1215 - bugfix for broken mixer move
spechtstatt May 24, 2022
f7ed9be
make text/color changes work also from the mixer line side
spechtstatt Jun 2, 2022
fc785fd
button for enabling/disabling the functionality in the mixer
spechtstatt Jun 3, 2022
a7d0f68
Provide two-way linking, Prepared additional settings
spechtstatt Jun 10, 2022
76b0f50
Improved settings menu and added icons
spechtstatt Jun 11, 2022
dd139bf
Refactored setttings - set inactive alpha
spechtstatt Jun 11, 2022
e2c49ca
fixed settings menu - lambda capture for settings behaves strange
spechtstatt Jun 12, 2022
f8cec55
refactored settings menu - reduced redundancy
spechtstatt Jun 12, 2022
98b48ff
check also for channel send before deletion
spechtstatt Jun 12, 2022
c2c2acd
auto link text style update is now working correctly (was no SLOT)
spechtstatt Jun 13, 2022
14044ed
made buildable
spechtstatt Jun 23, 2022
8db4113
enable auto track linking when assigning new channel to track
spechtstatt Jul 10, 2022
b6e6e7a
update mixer line style after auto link is disabled
spechtstatt Jul 10, 2022
5e4d20a
made buildable
spechtstatt Jul 16, 2022
e2e7f8b
update mixerline style after autotrack link global enable/disable
spechtstatt Jul 16, 2022
477a433
auto sorting seems to work now but more testing needed
spechtstatt Jul 17, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Automatic mixer strip management #1215 - bugfix for broken mixer move
  • Loading branch information
spechtstatt committed Jul 16, 2022
commit 5572288e3e89ebaa8aa6dd291a289bf2db4b39a1
7 changes: 4 additions & 3 deletions include/MixerLine.h
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,8 @@ class MixerLine : public QWidget

bool eventFilter (QObject *dist, QEvent *event) override;

void autoTrackLinkChanged();

private:
void drawMixerLine( QPainter* p, const MixerLine *mixerLine, bool isActive, bool sendToThis, bool receiveFromThis );
QString elideName( const QString & name );
Expand All @@ -105,16 +107,15 @@ public slots:
void renameChannel();
void resetColor();
void selectColor();
void randomizeColor();
void randomizeColor();

private slots:
void renameFinished();
void removeChannel();
void removeUnusedChannels();
void moveChannelLeft();
void moveChannelRight();
void toogleAutoTrackLink();
void autoTrackLinkChanged();
void toogleAutoTrackLink();
};


Expand Down
4 changes: 2 additions & 2 deletions src/core/Mixer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -412,8 +412,8 @@ void Mixer::swapChannels(int indexA, int indexB)
{
// range check - can't move master or first channel
if (( indexA == indexB ) ||
( indexA <= 1 || indexA >= m_mixerChannels.size() ) ||
( indexB <= 1 || indexB >= m_mixerChannels.size() ))
( indexA < 1 || indexA >= m_mixerChannels.size() ) ||
( indexB < 1 || indexB >= m_mixerChannels.size() ))
{
return;
}
Expand Down
12 changes: 9 additions & 3 deletions src/gui/MixerView.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ void MixerView::updateAfterTrackAdd(Track * track, QString name)
int channelIndex = addNewChannel();
model->setValue( channelIndex );
mix->mixerChannel(channelIndex)->m_autoTrackLinkModel.setValue(true);
m_mixerChannelViews[channelIndex]->m_mixerLine->autoTrackLinkChanged();

if (name != "") track->setName(name);
updateAfterTrackStyleModify(track);
Expand Down Expand Up @@ -228,6 +229,7 @@ void MixerView::updateAfterTrackMixerLineModify(Track * track)
if (usedChannelCounts[i] == 0 || usedChannelCounts[i] > 1)
{
mix->mixerChannel(i)->m_autoTrackLinkModel.setValue(false);
m_mixerChannelViews[i]->m_mixerLine->autoTrackLinkChanged();
needUpdate = true;
}
}
Expand Down Expand Up @@ -563,9 +565,9 @@ void MixerView::deleteChannelInternal(int index)
for(int i=index + 1; i<m_mixerChannelViews.size(); ++i)
{
m_mixerChannelViews[i]->m_mixerLine->setChannelIndex(i-1);
m_mixerChannelViews[i]->m_mixerLine->autoTrackLinkChanged();
}
m_mixerChannelViews.remove(index);

}


Expand Down Expand Up @@ -594,6 +596,7 @@ void MixerView::toggleAutoTrackLink(int index)
{
Mixer * mix = Engine::mixer();
mix->toggleAutoTrackLink(index);
m_mixerChannelViews[index]->m_mixerLine->autoTrackLinkChanged();
MixerChannel * channel = mix->mixerChannel(index);
if (!channel->m_autoTrackLinkModel.value()) return;

Expand All @@ -617,8 +620,8 @@ void MixerView::toggleAutoTrackLink(int index)
void MixerView::swapChannels(int indexA, int indexB)
{
if (( indexA == indexB ) ||
( indexA <= 1 || indexA >= m_mixerChannelViews.size() ) ||
( indexB <= 1 || indexB >= m_mixerChannelViews.size() ))
( indexA < 1 || indexA >= m_mixerChannelViews.size() ) ||
( indexB < 1 || indexB >= m_mixerChannelViews.size() ))
{
return;
}
Expand All @@ -630,6 +633,9 @@ void MixerView::swapChannels(int indexA, int indexB)
// Update widgets models
m_mixerChannelViews[indexA]->setChannelIndex(indexA);
m_mixerChannelViews[indexB]->setChannelIndex(indexB );

m_mixerChannelViews[indexA]->m_mixerLine->autoTrackLinkChanged();
m_mixerChannelViews[indexB]->m_mixerLine->autoTrackLinkChanged();
}


Expand Down