diff options
author | Ricky Curtice <kf6kjg+hg@gmail.com> | 2014-03-02 16:28:38 -0800 |
---|---|---|
committer | Ricky Curtice <kf6kjg+hg@gmail.com> | 2014-03-02 16:28:38 -0800 |
commit | bd41d696de356028aa6b14d9bdf127360f6d5a57 (patch) | |
tree | 26f75ee98579f8a469e4b94be82a838362634230 /indra/newview/llcapabilityprovider.h | |
parent | 871bae45ba2f17b8cc791b3b7dcc443f1eb8cd95 (diff) |
STORM-1920: Corrected bug where snap values would highlight that weren’t supposed to be highlighting. Did some more cleanup and documentation.
Also corrected a bug in Richard’s patch that resulted in the object scaling up when the mouse went the opposite direction from the scale. The issue is that the vector length is an absolute value. To allow for "negative" results to be found and discarded, I instead used a dot product with a parallel unit vector to get the signed magnitude - or, if you prefer, the mono-dimensional vector.
This bug only surfaced once the code made to actually work as intended in regards to the highlighting. Turns out that if the snapped value was at 2, any axis that was showing values would highlight its "2" text - and the same for all other values.
To fix this, I used a simple enum and repurposed the property that tracked whether or not the cursor was in a snap regime. Now it not only tracks whether or not the cursor is in a snap regime, but which one it is in. This allowed the highlight render code to be able to differentiate which row was supposed to highlight and which did not.
A couple more duplicated math operations were reduced by rearranging the order of some variable definitions. If at all possible, only do division once. The result is much cleaner and easier to read code.
Several deprecated vector functions were updated to match their new versions. If you are going to mark something deprecated, why not just take the time to go through and find all uses and clean it up!?
faceToUnitVector() was cleaned up to use the single-output design, matching cornerToUnitVector().
A mess of trailing whitespace was cleaned out.
Many more LLManipScale private variables are now documented - though I only documented those I understood fully while reading where they were created and how they were used.
Diffstat (limited to 'indra/newview/llcapabilityprovider.h')
0 files changed, 0 insertions, 0 deletions