| 20 | #include "UIAssetManager.h" |
| 21 | |
| 22 | SyncTimeSelector::SyncTimeSelector(UIAssets::Indices p_asset) : |
| 23 | m_asset(p_asset), |
| 24 | m_up_left("up_left", "", OdinButton::Type::up), |
| 25 | m_down_left("down_left", "", OdinButton::Type::down), |
| 26 | m_up_right("up_right", "", OdinButton::Type::up), |
| 27 | m_down_right("down_right", "", OdinButton::Type::down) { |
| 28 | |
| 29 | m_dropdown.addItem(10, "8 / 1"); |
| 30 | m_dropdown.addItem(20, "4 / 1"); |
| 31 | m_dropdown.addItem(30, "2 / 1"); |
| 32 | m_dropdown.addItem(40, "1 / 1"); |
| 33 | m_dropdown.addItem(50, "1 / 2"); |
| 34 | m_dropdown.addItem(60, "1 / 4"); |
| 35 | m_dropdown.addItem(70, "3 / 16"); |
| 36 | m_dropdown.addItem(80, "1 / 8"); |
| 37 | m_dropdown.addItem(90, "1 / 8T"); |
| 38 | m_dropdown.addItem(100, "1 / 16"); |
| 39 | m_dropdown.addItem(110, "1 / 16T"); |
| 40 | m_dropdown.addItem(120, "1 / 32"); |
| 41 | m_dropdown.addItem(130, "1 / 32T"); |
| 42 | |
| 43 | m_display.onMouseDown = [&]() { setValuesFromDropdown(m_dropdown.show()); }; |
| 44 | |
| 45 | m_dropdown.setLookAndFeel(&m_menu_feels); |
| 46 | |
| 47 | m_display.setInlay(1); |
| 48 | m_display.setColor(STANDARD_DISPLAY_COLOR); |
| 49 | addAndMakeVisible(m_display); |
| 50 | |
| 51 | m_up_left.setClickingTogglesState(false); |
| 52 | addAndMakeVisible(m_up_left); |
| 53 | m_up_left.setColour(juce::DrawableButton::ColourIds::backgroundOnColourId, juce::Colour()); |
| 54 | m_up_left.onClick = [&]() { incrementLeft(); }; |
| 55 | m_up_left.setAlwaysOnTop(true); |
| 56 | |
| 57 | m_up_right.setClickingTogglesState(false); |
| 58 | addAndMakeVisible(m_up_right); |
| 59 | m_up_right.setColour(juce::DrawableButton::ColourIds::backgroundOnColourId, juce::Colour()); |
| 60 | m_up_right.onClick = [&]() { incrementRight(); }; |
| 61 | m_up_right.setAlwaysOnTop(true); |
| 62 | |
| 63 | m_down_left.setClickingTogglesState(false); |
| 64 | addAndMakeVisible(m_down_left); |
| 65 | m_down_left.setColour(juce::DrawableButton::ColourIds::backgroundOnColourId, juce::Colour()); |
| 66 | m_down_left.onClick = [&]() { decrementLeft(); }; |
| 67 | m_down_left.setAlwaysOnTop(true); |
| 68 | |
| 69 | m_down_right.setClickingTogglesState(false); |
| 70 | addAndMakeVisible(m_down_right); |
| 71 | m_down_right.setColour(juce::DrawableButton::ColourIds::backgroundOnColourId, juce::Colour()); |
| 72 | m_down_right.onClick = [&]() { decrementRight(); }; |
| 73 | m_down_right.setAlwaysOnTop(true); |
| 74 | |
| 75 | updateDisplay(); |
| 76 | } |
| 77 | |
| 78 | SyncTimeSelector::~SyncTimeSelector() { |
| 79 | m_dropdown.setLookAndFeel(nullptr); |