kopia lustrzana https://github.com/jameshball/osci-render
Change envelope to show ADSR stats when ADSR mode is on
rodzic
f9b9e09a53
commit
c62b6a9f90
|
@ -100,7 +100,7 @@ EnvelopeHandleComponent::EnvelopeHandleComponent()
|
||||||
{
|
{
|
||||||
|
|
||||||
if (shouldDraw) {
|
if (shouldDraw) {
|
||||||
setMouseCursor(juce::MouseCursor::CrosshairCursor);
|
setMouseCursor(juce::MouseCursor::DraggingHandCursor);
|
||||||
}
|
}
|
||||||
resetOffsets();
|
resetOffsets();
|
||||||
}
|
}
|
||||||
|
@ -154,43 +154,57 @@ void EnvelopeHandleComponent::updateLegend()
|
||||||
|
|
||||||
int width = getParentWidth();
|
int width = getParentWidth();
|
||||||
int places;
|
int places;
|
||||||
|
|
||||||
if(width >= 165) {
|
if (width >= 115) {
|
||||||
|
|
||||||
if(env && env->isLoopNode(this))
|
|
||||||
text << "(Loop) ";
|
|
||||||
else if(env && env->isReleaseNode(this))
|
|
||||||
text << "(Release) ";
|
|
||||||
else
|
|
||||||
text << "Point ";
|
|
||||||
|
|
||||||
places = 3;
|
places = 3;
|
||||||
|
} else if (width >= 100) {
|
||||||
|
places = 2;
|
||||||
|
} else {
|
||||||
|
places = 1;
|
||||||
}
|
}
|
||||||
else if(width >= 140) {
|
|
||||||
text << "Point ";
|
if (env->getAdsrMode()) {
|
||||||
places = 3;
|
int index = env->getHandleIndex(this);
|
||||||
} else if(width >= 115) {
|
Env envelope = env->getEnv();
|
||||||
text << "Pt ";
|
|
||||||
places = 3;
|
double envTime = envelope.getTimes()[index - 1];
|
||||||
} else if(width >= 100) {
|
|
||||||
text << "Pt ";
|
if (index == 1) {
|
||||||
places = 2;
|
text = "Attack time (s): " + juce::String(legend->mapTime(envTime), places);
|
||||||
} else if(width >= 85) {
|
text << ", Attack level: " << juce::String(legend->mapValue(value), places);
|
||||||
text << "Pt ";
|
} else if (index == 2) {
|
||||||
places = 1;
|
text = "Decay time (s): " + juce::String(legend->mapTime(envTime), places);
|
||||||
} else if(width >= 65) {
|
text << ", Sustain level: " << juce::String(legend->mapValue(value), places);
|
||||||
text << "P ";
|
} else {
|
||||||
places = 1;
|
text = "Release time (s): " + juce::String(legend->mapTime(envTime), places);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
places = 1;
|
if (width >= 165) {
|
||||||
|
if (env && env->isLoopNode(this))
|
||||||
|
text << "(Loop) ";
|
||||||
|
else if (env && env->isReleaseNode(this))
|
||||||
|
text << "(Release) ";
|
||||||
|
else
|
||||||
|
text << "Point ";
|
||||||
|
} else if (width >= 140) {
|
||||||
|
text << "Point ";
|
||||||
|
} else if (width >= 115) {
|
||||||
|
text << "Pt ";
|
||||||
|
} else if (width >= 100) {
|
||||||
|
text << "Pt ";
|
||||||
|
} else if (width >= 85) {
|
||||||
|
text << "Pt ";
|
||||||
|
} else if (width >= 65) {
|
||||||
|
text << "P ";
|
||||||
|
}
|
||||||
|
|
||||||
|
text << (getHandleIndex())
|
||||||
|
<< ": "
|
||||||
|
<< juce::String(legend->mapTime(time), places) << legend->getTimeUnits()
|
||||||
|
<< ", "
|
||||||
|
<< juce::String(legend->mapValue(value), places) << legend->getValueUnits();
|
||||||
}
|
}
|
||||||
|
|
||||||
text << (getHandleIndex())
|
|
||||||
<< ": "
|
|
||||||
<< juce::String(legend->mapTime(time), places) << legend->getTimeUnits()
|
|
||||||
<< ", "
|
|
||||||
<< juce::String(legend->mapValue(value), places) << legend->getValueUnits();
|
|
||||||
|
|
||||||
getParentComponent()->setLegendText(text);
|
getParentComponent()->setLegendText(text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -246,7 +260,7 @@ void EnvelopeHandleComponent::mouseEnter(const juce::MouseEvent& e)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (shouldDraw) {
|
if (shouldDraw) {
|
||||||
setMouseCursor(juce::MouseCursor::CrosshairCursor);
|
setMouseCursor(juce::MouseCursor::DraggingHandCursor);
|
||||||
updateLegend();
|
updateLegend();
|
||||||
} else {
|
} else {
|
||||||
setMouseCursor(juce::MouseCursor::NormalCursor);
|
setMouseCursor(juce::MouseCursor::NormalCursor);
|
||||||
|
@ -380,7 +394,7 @@ void EnvelopeHandleComponent::mouseUp(const juce::MouseEvent& e)
|
||||||
env->quantiseHandle(this);
|
env->quantiseHandle(this);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
setMouseCursor(juce::MouseCursor::CrosshairCursor);
|
setMouseCursor(juce::MouseCursor::DraggingHandCursor);
|
||||||
setMousePositionToThisHandle();
|
setMousePositionToThisHandle();
|
||||||
|
|
||||||
offsetX = 0;
|
offsetX = 0;
|
||||||
|
@ -921,7 +935,7 @@ void EnvelopeComponent::mouseUp(const juce::MouseEvent& e)
|
||||||
if(e.mods.isCtrlDown() == false)
|
if(e.mods.isCtrlDown() == false)
|
||||||
quantiseHandle(draggingHandle);
|
quantiseHandle(draggingHandle);
|
||||||
|
|
||||||
setMouseCursor(juce::MouseCursor::CrosshairCursor);
|
setMouseCursor(juce::MouseCursor::DraggingHandCursor);
|
||||||
draggingHandle->setMousePositionToThisHandle();
|
draggingHandle->setMousePositionToThisHandle();
|
||||||
draggingHandle->resetOffsets();
|
draggingHandle->resetOffsets();
|
||||||
draggingHandle = 0;
|
draggingHandle = 0;
|
||||||
|
|
Ładowanie…
Reference in New Issue