|
Vital
|
A specialized TextSelector for selecting tuning systems or loading custom tuning files. More...
#include <master_controls_interface.h>
Public Types | |
| enum | TuningStyle { kDefault , k7Limit , k5Limit , kPythagorean , kNumTunings } |
| Enumerates the available tuning styles. More... | |
Public Types inherited from SynthSlider | |
| enum | MenuId { kCancel = 0 , kArmMidiLearn , kClearMidiLearn , kDefaultValue , kManualEntry , kClearModulations , kModulationList } |
| Menu item IDs for the right-click popup menu. More... | |
Public Member Functions | |
| TuningSelector (String name) | |
| Constructs a TuningSelector with a given name. | |
| virtual | ~TuningSelector () |
| Destructor. | |
| void | mouseDown (const MouseEvent &e) override |
| Handles mouse down events, including showing a popup menu for selecting tunings. | |
| void | valueChanged () override |
| Called when the value of the selector changes. | |
| void | parentHierarchyChanged () override |
| Called when the component's parent hierarchy changes. | |
| void | mouseWheelMove (const MouseEvent &, const MouseWheelDetails &wheel) override |
| Ignores mouse wheel moves for this component. | |
| void | setTuning (int tuning) |
| Sets the current tuning style. | |
Public Member Functions inherited from TextSelector | |
| TextSelector (String name) | |
| Constructs a TextSelector with the given name. | |
| void | mouseUp (const MouseEvent &e) override |
| bool | shouldShowPopup () override |
| void | setLongStringLookup (const std::string *lookup) |
Public Member Functions inherited from SynthSlider | |
| SynthSlider (String name) | |
| virtual void | mouseDrag (const MouseEvent &e) override |
| virtual void | mouseEnter (const MouseEvent &e) override |
| virtual void | mouseExit (const MouseEvent &e) override |
| virtual void | mouseDoubleClick (const MouseEvent &e) override |
| virtual void | focusLost (FocusChangeType cause) override |
| String | getRawTextFromValue (double value) |
| String | getSliderTextFromValue (double value) |
| String | getTextFromValue (double value) override |
| double | getValueFromText (const String &text) override |
| double | getAdjustedValue (double value) |
| double | getValueFromAdjusted (double value) |
| void | setValueFromAdjusted (double value) |
| virtual double | snapValue (double attemptedValue, DragMode dragMode) override |
| void | textEditorTextChanged (TextEditor &) override |
| TextEditor::Listener overrides for handling text entry. | |
| void | textEditorReturnKeyPressed (TextEditor &editor) override |
| void | textEditorFocusLost (TextEditor &editor) override |
| void | setSliderPositionFromText () |
| Sets the slider position from the current text in the text editor. | |
| void | showTextEntry () |
| Shows the text entry box for manual value entry. | |
| virtual void | drawShadow (Graphics &g) |
| void | drawRotaryShadow (Graphics &g) |
| void | snapToValue (bool snap, float value=0.0) |
| void | setScalingType (vital::ValueDetails::ValueScale scaling_type) |
| vital::ValueDetails::ValueScale | getScalingType () const |
| void | setStringLookup (const std::string *lookup) |
| void | setScrollEnabled (bool enabled) |
| const std::string * | getStringLookup () const |
| void | setUnits (const String &units) |
| String | getUnits () const |
| String | formatValue (float value) |
| void | setDefaultRange () |
| Sets the default parameter range based on the parameter details. | |
| void | addSliderListener (SliderListener *listener) |
| void | showPopup (bool primary) |
| void | hidePopup (bool primary) |
| void | setPopupPlacement (BubbleComponent::BubblePlacement placement) |
| void | setModulationPlacement (BubbleComponent::BubblePlacement placement) |
| BubbleComponent::BubblePlacement | getPopupPlacement () |
| BubbleComponent::BubblePlacement | getModulationPlacement () |
| void | notifyGuis () |
| Notifies GUI listeners of a value change. | |
| void | handlePopupResult (int result) |
| void | setSensitivity (double sensitivity) |
| double | getSensitivity () |
| Rectangle< int > | getModulationMeterBounds () const |
| bool | hasModulationArea () const |
| Rectangle< int > | getModulationArea () const |
| void | setModulationArea (Rectangle< int > area) |
| bool | isModulationBipolar () const |
| bool | isModulationStereo () const |
| bool | isModulationBypassed () const |
| void | setTextHeightPercentage (float percentage) |
| float | getTextHeightPercentage () |
| float | mouseHovering () const |
| std::vector< vital::ModulationConnection * > | getConnections () |
| void | setMouseWheelMovement (double movement) |
| void | setMaxDisplayCharacters (int characters) |
| void | setMaxDecimalPlaces (int decimal_places) |
| void | setTextEntrySizePercent (float width_percent, float height_percent) |
| void | setTextEntryWidthPercent (float percent) |
| void | setShiftIndexAmount (int shift_amount) |
| void | setShowPopupOnHover (bool show) |
| void | setPopupPrefix (String prefix) |
| void | setPopupSuffix (const juce::String &suffix) |
| void | setKnobSizeScale (float scale) |
| float | getKnobSizeScale () const override |
| void | useSuffix (bool use) |
| void | setExtraModulationTarget (Component *component) |
| Component * | getExtraModulationTarget () |
| void | setModulationBarRight (bool right) |
| bool | isModulationBarRight () |
| void | setDisplayMultiply (float multiply) |
| void | setDisplayExponentialBase (float base) |
| void | overrideValue (Skin::ValueId value_id, float value) |
| float | findValue (Skin::ValueId value_id) const override |
| void | setAlternateDisplay (Skin::ValueId id, float value, vital::ValueDetails details) |
| vital::ValueDetails * | getDisplayDetails () |
| OpenGlComponent * | getTextEditorComponent () |
Public Member Functions inherited from OpenGlSlider | |
| OpenGlSlider (String name) | |
| virtual void | resized () override |
| Called when the component is resized. Updates colors and display values. | |
| void | parentHierarchyChanged () override |
| Called when the parent hierarchy changes. Used for retrieving parent sections. | |
| void | paintToImage (bool paint) |
| bool | isText () const |
| bool | isTextOrCurve () const |
| bool | isModulationKnob () const |
| bool | isRotaryQuad () const |
| bool | isHorizontalQuad () const |
| bool | isVerticalQuad () const |
| OpenGlComponent * | getImageComponent () |
| OpenGlComponent * | getQuadComponent () |
| void | setMaxArc (float arc) |
| void | setModulationKnob () |
| Marks this slider as a modulation knob. | |
| void | setModulationAmount (float modulation) |
| float | getModulationAmount () const |
| bool | isBipolar () const |
| bool | isActive () const |
| void | setBipolar (bool bipolar=true) |
| void | setActive (bool active=true) |
| virtual Colour | getModColor () const |
| virtual Colour | getBackgroundColor () const |
| virtual Colour | getUnselectedColor () const |
| virtual Colour | getSelectedColor () const |
| virtual Colour | getThumbColor () const |
| int | getLinearSliderWidth () |
| void | setSliderDisplayValues () |
| Sets the slider display values (positions, sizes) based on current style. | |
| void | redoImage (bool skip_image=false) |
| void | setColors () |
| Updates internal colors based on the current skin and state. | |
| void | setAlpha (float alpha, bool reset=false) |
| void | setDrawWhenNotVisible (bool draw) |
| SynthSection * | getSectionParent () |
Additional Inherited Members | |
Static Public Attributes inherited from SynthSlider | |
| static constexpr int | kDefaultFormatLength = 5 |
| static constexpr int | kDefaultFormatDecimalPlaces = 5 |
| static constexpr float | kDefaultTextEntryWidthPercent = 0.9f |
| static constexpr float | kDefaultTextEntryHeightPercent = 0.35f |
| static constexpr float | kModulationSensitivity = 0.003f |
| static constexpr float | kTextEntryHeightPercent = 0.6f |
| static constexpr float | kSlowDragMultiplier = 0.1f |
| static constexpr float | kDefaultSensitivity = 1.0f |
| static constexpr float | kDefaultTextHeightPercentage = 0.7f |
| static constexpr float | kDefaultRotaryDragLength = 200.0f |
| static constexpr float | kRotaryModulationControlPercent = 0.26f |
| static constexpr float | kLinearWidthPercent = 0.26f |
| static constexpr float | kLinearHandlePercent = 1.2f |
| static constexpr float | kLinearModulationPercent = 0.1f |
Static Public Attributes inherited from OpenGlSlider | |
| static constexpr float | kRotaryAngle = 0.8f * vital::kPi |
| The default rotary arc angle used for rotary sliders. | |
Protected Member Functions inherited from SynthSlider | |
| PopupItems | createPopupMenu () |
| void | setRotaryTextEntryBounds () |
| Sets bounds for text entry in rotary mode. | |
| void | setLinearTextEntryBounds () |
| Sets bounds for text entry in linear mode. | |
| void | notifyModulationAmountChanged () |
| Notifies listeners that modulation amount has changed. | |
| void | notifyModulationRemoved () |
| Notifies listeners that a modulation was removed. | |
| void | notifyModulationsChanged () |
| Notifies listeners that modulations changed. | |
Protected Attributes inherited from TextSelector | |
| const std::string * | long_lookup_ |
| Optional alternate lookup table for longer strings. | |
Protected Attributes inherited from SynthSlider | |
| bool | show_popup_on_hover_ |
| String | popup_prefix_ |
| String | popupSuffix_ |
| bool | scroll_enabled_ |
| bool | bipolar_modulation_ |
| bool | stereo_modulation_ |
| bool | bypass_modulation_ |
| bool | modulation_bar_right_ |
| Rectangle< int > | modulation_area_ |
| bool | sensitive_mode_ |
| bool | snap_to_value_ |
| bool | hovering_ |
| bool | has_parameter_assignment_ |
| bool | use_suffix_ |
| float | snap_value_ |
| float | text_height_percentage_ |
| float | knob_size_scale_ |
| double | sensitivity_ |
| BubbleComponent::BubblePlacement | popup_placement_ |
| BubbleComponent::BubblePlacement | modulation_control_placement_ |
| int | max_display_characters_ |
| int | max_decimal_places_ |
| int | shift_index_amount_ |
| bool | shift_is_multiplicative_ |
| double | mouse_wheel_index_movement_ |
| float | text_entry_width_percent_ |
| float | text_entry_height_percent_ |
| std::map< Skin::ValueId, float > | value_lookup_ |
| Point< int > | last_modulation_edit_position_ |
| Point< int > | mouse_down_position_ |
| vital::ValueDetails | details_ |
| float | display_multiply_ |
| float | display_exponential_base_ |
| std::pair< Skin::ValueId, float > | alternate_display_setting_ |
| vital::ValueDetails | alternate_details_ |
| const std::string * | string_lookup_ |
| Component * | extra_modulation_target_ |
| SynthGuiInterface * | synth_interface_ |
| std::unique_ptr< OpenGlTextEditor > | text_entry_ |
| std::vector< SliderListener * > | slider_listeners_ |
Protected Attributes inherited from OpenGlSlider | |
| SynthSection * | parent_ |
| The parent SynthSection. | |
A specialized TextSelector for selecting tuning systems or loading custom tuning files.
TuningSelector provides a selection of predefined tuning scales (e.g., Just Intonation, Pythagorean) as well as the ability to load a custom .scl tuning file. It integrates closely with the synthesizer model to apply the selected tuning system.
| TuningSelector::TuningSelector | ( | String | name | ) |
Constructs a TuningSelector with a given name.
| name | The name of this tuning selector component. |
|
virtual |
Destructor.
|
overridevirtual |
Handles mouse down events, including showing a popup menu for selecting tunings.
| e | The mouse event. |
Reimplemented from TextSelector.
|
inlineoverridevirtual |
Ignores mouse wheel moves for this component.
Reimplemented from SynthSlider.
|
overridevirtual |
Called when the component's parent hierarchy changes.
Ensures the displayed custom string matches the current tuning's name.
Reimplemented from SynthSlider.
| void TuningSelector::setTuning | ( | int | tuning | ) |
Sets the current tuning style.
| tuning | The tuning index to set. |
|
overridevirtual |
Called when the value of the selector changes.
Updates the synthesizer tuning if attached to a SynthGuiInterface.
Reimplemented from SynthSlider.