本文整理汇总了C++中CChannel::SetTransportAndPos方法的典型用法代码示例。如果您正苦于以下问题:C++ CChannel::SetTransportAndPos方法的具体用法?C++ CChannel::SetTransportAndPos怎么用?C++ CChannel::SetTransportAndPos使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CChannel
的用法示例。
在下文中一共展示了CChannel::SetTransportAndPos方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: RestoreUndoState
void CMixereView::RestoreUndoState(const CUndoState& State)
{
if (State.GetCode() < START_UCODE) { // if base class undo code
CFormListView::RestoreUndoState(State); // defer to base class
return;
}
if (State.GetCode() > END_UCODE) { // if snapshot undo code
m_Snapshot->RestoreUndoState(State); // defer to snapshot class
return;
}
CWaitCursor wc;
switch (State.GetCode()) {
case UCODE_TRANSPORT:
{
TRANSPORT_UNDO_STATE *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++, uap++) {
CChannel *Chan = GetChan(uap->m_ChanIdx);
Chan->SetTransportAndPos(uap->m_Transport, uap->m_Pos);
}
}
break;
case UCODE_GO:
{
GO_UNDO_STATE *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++, uap++) {
CChannel *Chan = GetChan(uap->m_ChanIdx);
for (int j = 0; j < CChanInfo::AUTOS; j++) {
Chan->GetAuto(j)->SetTransport(uap->m_Auto[j].m_Transport);
Chan->GetAuto(j)->SetNormPos(uap->m_Auto[j].m_Pos);
}
Chan->SetTransportAndPos(uap->m_Transport, uap->m_Pos);
}
}
break;
case UCODE_LOOP:
{
bool *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++)
GetChan(i)->SetLoop(uap[i]);
}
break;
case UCODE_MUTE:
{
bool *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++)
GetChan(i)->SetMute(uap[i]);
}
break;
case UCODE_SOLO:
case UCODE_END_SOLO:
{
bool *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++)
GetChan(i)->SetSolo(uap[i]);
}
break;
case UCODE_KEEP_SOLO:
{
BYTE *uap;
GetUndoArray(uap, State);
for (int i = 0; i < UValItems(State); i++) {
GetChan(i)->SetMute((uap[i] & 0x1) != 0);
GetChan(i)->SetSolo((uap[i] & 0x2) != 0);
}
}
break;
case UCODE_LOAD_AUDIO:
{
CChanInfo *uap;
GetUndoArray(uap, State);
if ((UValFlags(State) & UFLAG_DIR) == UFLAG_INS) {
GetChan(uap->m_Index)->OpenItem(uap);
GetChan(uap->m_Index)->SetInfo(uap);
} else
GetChan(uap->m_Index)->Reset();
}
break;
case UCODE_INSERT_AUDIO:
RestoreUndoItems(State);
break;
case UCODE_SHOW_VOLUME:
case UCODE_SHOW_SNAPSHOT:
case UCODE_SHOW_MS_FADE:
case UCODE_SHOW_TEMPO:
ShowDlgBar(UValBarNum(State) - 1, UValShowBar(State) != 0);
break;
case UCODE_SET_DEFAULTS:
{
CChanInfo *uap;
GetUndoArray(uap, State);
m_ChanDefaults = *uap;
}
break;
case UCODE_EDIT_AUTO:
{
//.........这里部分代码省略.........