Merge pull request #31889 from Calinou/gradient-editor-add-snapping
Implement snapping in the Gradient editor
This commit is contained in:
commit
413db5d8ff
1 changed files with 7 additions and 3 deletions
|
@ -241,9 +241,13 @@ void GradientEdit::_gui_input(const Ref<InputEvent> &p_event) {
|
|||
|
||||
float newofs = CLAMP(x / float(total_w), 0, 1);
|
||||
|
||||
//Snap to nearest point if holding shift
|
||||
if (mm->get_shift()) {
|
||||
float snap_threshold = 0.03;
|
||||
// Snap to "round" coordinates if holding Ctrl.
|
||||
// Be more precise if holding Shift as well
|
||||
if (mm->get_control()) {
|
||||
newofs = Math::stepify(newofs, mm->get_shift() ? 0.025 : 0.1);
|
||||
} else if (mm->get_shift()) {
|
||||
// Snap to nearest point if holding just Shift
|
||||
const float snap_threshold = 0.03;
|
||||
float smallest_ofs = snap_threshold;
|
||||
bool found = false;
|
||||
int nearest_point = 0;
|
||||
|
|
Loading…
Reference in a new issue