MCPcopy Create free account
hub / github.com/BespokeSynth/BespokeSynth / DrawModule

Method DrawModule

Source/SongBuilder.cpp:141–271  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

139}
140
141void SongBuilder::DrawModule()
142{
143 if (Minimized() || IsVisible() == false)
144 return;
145
146 int gridStartX = kLeftMarginX;
147 if (ShowSongSequencer())
148 gridStartX += kSongSequencerWidth;
149
150 mUseSequencerCheckbox->Draw();
151 mActivateFirstSceneOnStopCheckbox->SetShowing(ShowSongSequencer());
152 mActivateFirstSceneOnStopCheckbox->SetPosition(gridStartX, 3);
153 mActivateFirstSceneOnStopCheckbox->Draw();
154 mChangeQuantizeSelector->SetPosition(gridStartX, kGridStartY + kTargetTabHeightTop - 29);
155 mChangeQuantizeSelector->Draw();
156 mAddTargetButton->SetPosition(gridStartX + kSceneTabWidth - 22, kGridStartY + 8);
157 mAddTargetButton->Draw();
158 mPlaySequenceButton->SetShowing(ShowSongSequencer());
159 mPlaySequenceButton->Draw();
160 mStopSequenceButton->SetShowing(ShowSongSequencer());
161 mStopSequenceButton->Draw();
162 mPauseSequenceButton->SetShowing(ShowSongSequencer());
163 mPauseSequenceButton->Draw();
164 mLoopCheckbox->SetShowing(ShowSongSequencer());
165 mLoopCheckbox->Draw();
166 mSequenceLoopStartEntry->SetShowing(ShowSongSequencer() && mLoopSequence);
167 mSequenceLoopStartEntry->Draw();
168 mSequenceLoopEndEntry->SetShowing(ShowSongSequencer() && mLoopSequence);
169 mSequenceLoopEndEntry->Draw();
170
171 //separator
172 if (ShowSongSequencer())
173 ofLine(gridStartX - 8, kGridStartY + kTargetTabHeightTop + kSpacingY, gridStartX - 8, kGridStartY + kTargetTabHeightTop + (int)mScenes.size() * (kRowHeight + kSpacingY));
174
175 DrawTextNormal("scenes:", gridStartX, kGridStartY + kTargetTabHeightTop - 1);
176
177 for (int i = 0; i < (int)mScenes.size(); ++i)
178 {
179 if (mScenes[i] != nullptr)
180 mScenes[i]->Draw(this, gridStartX, kGridStartY + kTargetTabHeightTop + kSpacingY + i * (kRowHeight + kSpacingY), i);
181 }
182
183 for (int i = 0; i < (int)mTargets.size(); ++i)
184 {
185 if (mTargets[i] != nullptr)
186 mTargets[i]->Draw(gridStartX + kSceneTabWidth + i * (kColumnWidth + kSpacingX), kGridStartY, (int)mScenes.size());
187 }
188
189 bool sequenceComplete = false;
190 int sequenceLength = 0;
191 for (int i = 0; i < kMaxSequencerScenes; ++i)
192 {
193 bool show = mUseSequencer && !sequenceComplete;
194 mSequencerSceneSelector[i]->SetShowing(show);
195 mSequencerStepLengthEntry[i]->SetShowing(show && mSequencerSceneId[i] != kSequenceEndId);
196 mSequencerContextMenu[i]->SetShowing(show && mSequencerSceneId[i] >= 0);
197 mSequencerPlayFromButton[i]->SetShowing(show && mSequencerSceneId[i] >= 0);
198 mSequencerSceneSelector[i]->Draw();

Callers

nothing calls this directly

Calls 15

ofLineFunction · 0.85
DrawTextNormalFunction · 0.85
ofPushStyleFunction · 0.85
ofSetColorFunction · 0.85
ofSetLineWidthFunction · 0.85
ofPopStyleFunction · 0.85
ofToStringFunction · 0.85
ofFillFunction · 0.85
ofRectFunction · 0.85
sizeMethod · 0.80
getMinXMethod · 0.80
getMinYMethod · 0.80

Tested by

no test coverage detected