29 using ArpNonSoundInteger::ArpNonSoundInteger;
31 this->setValue(computeCurrentValueForUnsignedMenuItem(soundEditor.currentArpSettings->rhythm));
33 void writeCurrentValue()
override {
34 int32_t value = computeFinalValueForUnsignedMenuItem(this->getValue());
35 soundEditor.currentArpSettings->rhythm = value;
38 void drawValue()
override { display->setScrollingText(arpRhythmPatternNames[this->getValue()]); }
40 void drawInteger(int32_t textWidth, int32_t textHeight, int32_t yPixel)
override {
43 canvas.
drawStringCentred(arpRhythmPatternNames[this->getValue()], yPixel + OLED_MAIN_TOPMOST_PIXEL, textWidth,
47 void renderInHorizontalMenu(int32_t startX, int32_t width, int32_t startY, int32_t height)
override {
51 DEF_STACK_STRING_BUF(shortOpt, kShortStringBufferSize);
54 snprintf(
name,
sizeof(
name),
"%d:%s", this->getValue(), arpRhythmPatternNames[this->getValue()]);
55 shortOpt.append(
name);
57 image.drawStringCentered(shortOpt, startX, startY + 3, kTextSpacingX, kTextSpacingY, width);
void drawStringCentred(char const *string, int32_t pixelY, int32_t textWidth, int32_t textHeight, int32_t centrePos=OLED_MAIN_WIDTH_PIXELS/2)
Definition canvas.cpp:245