| 1030 | } |
| 1031 | |
| 1032 | void Looper::OnClicked(float x, float y, bool right) |
| 1033 | { |
| 1034 | IDrawableModule::OnClicked(x, y, right); |
| 1035 | |
| 1036 | if (x >= kBufferX + kBufferWidth / 3 && x < kBufferX + (kBufferWidth * 2) / 3 && |
| 1037 | y >= kBufferY + kBufferHeight / 3 && y < kBufferY + (kBufferHeight * 2) / 3 && |
| 1038 | mBufferTempo == TheTransport->GetTempo() && |
| 1039 | gHoveredUIControl == nullptr) |
| 1040 | { |
| 1041 | ChannelBuffer grab(mLoopLength); |
| 1042 | grab.SetNumActiveChannels(mBuffer->NumActiveChannels()); |
| 1043 | for (int ch = 0; ch < grab.NumActiveChannels(); ++ch) |
| 1044 | BufferCopy(grab.GetChannel(ch), mBuffer->GetChannel(ch), mLoopLength); |
| 1045 | TheSynth->GrabSample(&grab, "loop", false, mNumBars); |
| 1046 | } |
| 1047 | } |
| 1048 | |
| 1049 | void Looper::ButtonClicked(ClickButton* button, double time) |
| 1050 | { |
nothing calls this directly
no test coverage detected