//============================================================================== MidiSlider::MidiSlider(MiosStudio *_miosStudio, int _num, String _functionName, int _functionArg, int _midiChannel, int initialValue, bool _vertical) : miosStudio(_miosStudio) , sliderNum(_num) , vertical(_vertical) { addAndMakeVisible(slider = new MidiSliderComponent(T("Slider"))); slider->setSliderStyle(vertical ? MidiSliderComponent::LinearVertical : MidiSliderComponent::LinearHorizontal); slider->addListener(this); // only used for horizontal sliders addAndMakeVisible(sliderFunction = new ComboBox(String::empty)); sliderFunction->addListener(this); // restore settings PropertiesFile *propertiesFile = MiosStudioProperties::getInstance()->getCommonSettings(true); if( propertiesFile ) { _functionName = propertiesFile->getValue("slider" + String(sliderNum) + "FunctionName", _functionName); _functionArg = propertiesFile->getIntValue("slider" + String(sliderNum) + "FunctionArg", _functionArg); _midiChannel = propertiesFile->getIntValue("slider" + String(sliderNum) + "MidiChannel", _midiChannel); initialValue = propertiesFile->getIntValue("slider" + String(sliderNum) + "InitialValue", initialValue); } setFunction(_functionName, _functionArg, _midiChannel, initialValue); if( vertical ) setSize(24, 18+80); else setSize(128, 24+18); }