MCPcopy Create free account
hub / github.com/jerryuhoo/Fire / moveToX

Method moveToX

Source/Panels/SpectrogramPanel/VerticalLine.cpp:115–138  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

113}
114
115void VerticalLine::moveToX (int lineNum, float newXPercent, float margin, std::unique_ptr<VerticalLine> verticalLines[])
116{
117 float leftLimit;
118 float rightLimit;
119
120 // int index = leftIndex + 1;
121 leftLimit = (index + 1) * margin;
122 rightLimit = 1 - (lineNum - index) * margin;
123
124 if (newXPercent < leftLimit)
125 newXPercent = leftLimit;
126 if (newXPercent > rightLimit)
127 newXPercent = rightLimit;
128
129 if (leftIndex >= 0 && newXPercent - verticalLines[leftIndex]->getXPercent() - margin < -0.00001f) // float is not accurate!!!!
130 {
131 verticalLines[leftIndex]->moveToX (lineNum, newXPercent - margin, margin, verticalLines);
132 }
133 if (rightIndex < lineNum && verticalLines[rightIndex]->getXPercent() - newXPercent - margin < -0.00001f)
134 {
135 verticalLines[rightIndex]->moveToX (lineNum, newXPercent + margin, margin, verticalLines);
136 }
137 xPercent = newXPercent;
138}

Callers 2

dragLinesMethod · 0.45
sliderValueChangedMethod · 0.45

Calls 1

getXPercentMethod · 0.80

Tested by

no test coverage detected