commit a74cc61844af453c49a3898357c5424be8464f25
parent 189212e00d7731152721d8d4791bea4ecb94b044
Author: 790 <790@users.noreply.github.com>
Date: Fri, 14 Jan 2022 15:55:44 +0000
show control value on mouse hover
Diffstat:
2 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/source/jucePlugin/ui/VirusEditor.cpp b/source/jucePlugin/ui/VirusEditor.cpp
@@ -289,12 +289,12 @@ void VirusEditor::MainButtons::applyToMainButtons(std::function<void(DrawableBut
action(section);
}
}
-void VirusEditor::mouseDrag(const juce::MouseEvent & event)
-{
- auto props = event.eventComponent->getProperties();
+
+void VirusEditor::updateControlLabel(Component* eventComponent) {
+ auto props = eventComponent->getProperties();
if(props.contains("type") && props["type"] == "slider") {
m_controlLabel.setVisible(true);
- auto comp = dynamic_cast<juce::Slider*>(event.eventComponent);
+ auto comp = dynamic_cast<juce::Slider*>(eventComponent);
if(comp) {
auto name = props["name"];
@@ -321,7 +321,23 @@ void VirusEditor::mouseDrag(const juce::MouseEvent & event)
}
}
}
+void VirusEditor::mouseDrag(const juce::MouseEvent & event)
+{
+ updateControlLabel(event.eventComponent);
+}
+void VirusEditor::mouseEnter(const juce::MouseEvent& event) {
+ if (event.mouseWasDraggedSinceMouseDown()) {
+ return;
+ }
+ updateControlLabel(event.eventComponent);
+}
+void VirusEditor::mouseExit(const juce::MouseEvent& event) {
+ if (event.mouseWasDraggedSinceMouseDown()) {
+ return;
+ }
+ m_controlLabel.setText("", juce::dontSendNotification);
+}
void VirusEditor::mouseUp(const juce::MouseEvent & event)
{
m_controlLabel.setText("", juce::dontSendNotification);
diff --git a/source/jucePlugin/ui/VirusEditor.h b/source/jucePlugin/ui/VirusEditor.h
@@ -88,7 +88,9 @@ private:
juce::String m_previousPath;
bool m_paramDisplayLocal = false;
-
+ void updateControlLabel(Component *eventComponent);
+ void mouseEnter (const juce::MouseEvent &event) override;
+ void mouseExit (const juce::MouseEvent &event) override;
void mouseDrag (const juce::MouseEvent &event) override;
void mouseUp (const juce::MouseEvent &event) override;