Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_view3d/view3d_fly.c
| Show First 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | |||||
| {FLY_MODAL_AXIS_LOCK_Z, "AXIS_LOCK_Z", 0, "X Axis Correction", "Z axis correction (toggle)"}, | {FLY_MODAL_AXIS_LOCK_Z, "AXIS_LOCK_Z", 0, "X Axis Correction", "Z axis correction (toggle)"}, | ||||
| {FLY_MODAL_PRECISION_ENABLE, "PRECISION_ENABLE", 0, "Precision", ""}, | {FLY_MODAL_PRECISION_ENABLE, "PRECISION_ENABLE", 0, "Precision", ""}, | ||||
| {FLY_MODAL_PRECISION_DISABLE, "PRECISION_DISABLE", 0, "Precision (Off)", ""}, | {FLY_MODAL_PRECISION_DISABLE, "PRECISION_DISABLE", 0, "Precision (Off)", ""}, | ||||
| {FLY_MODAL_FREELOOK_ENABLE, "FREELOOK_ENABLE", 0, "Rotation", ""}, | {FLY_MODAL_FREELOOK_ENABLE, "FREELOOK_ENABLE", 0, "Rotation", ""}, | ||||
| {FLY_MODAL_FREELOOK_DISABLE, "FREELOOK_DISABLE", 0, "Rotation (Off)", ""}, | {FLY_MODAL_FREELOOK_DISABLE, "FREELOOK_DISABLE", 0, "Rotation (Off)", ""}, | ||||
| {FLY_MODAL_SPEED, "SPEED", 0, "Speed", ""}, | |||||
| {0, NULL, 0, NULL, NULL}, | {0, NULL, 0, NULL, NULL}, | ||||
| }; | }; | ||||
| wmKeyMap *keymap = WM_modalkeymap_find(keyconf, "View3D Fly Modal"); | wmKeyMap *keymap = WM_modalkeymap_find(keyconf, "View3D Fly Modal"); | ||||
| /* this function is called for each spacetype, only needs to add map once */ | /* this function is called for each spacetype, only needs to add map once */ | ||||
| if (keymap && keymap->modal_items) { | if (keymap && keymap->modal_items) { | ||||
| return; | return; | ||||
| ▲ Show 20 Lines • Show All 84 Lines • ▼ Show 20 Lines | |||||
| fly->state = FLY_CANCEL; | fly->state = FLY_CANCEL; | ||||
| break; | break; | ||||
| case FLY_MODAL_CONFIRM: | case FLY_MODAL_CONFIRM: | ||||
| fly->state = FLY_CONFIRM; | fly->state = FLY_CONFIRM; | ||||
| break; | break; | ||||
| /* speed adjusting with mousepan (trackpad) */ | /* speed adjusting with mousepan (trackpad) */ | ||||
| case FLY_MODAL_SPEED: { | case FLY_MODAL_SPEED: { | ||||
| float fac = 0.02f * (event->prevy - event->y); | float fac = 0.02f * WM_event_absolute_delta_y(event) / U.dpi_fac; | ||||
| /* allowing to brake immediate */ | /* allowing to brake immediate */ | ||||
| if (fac > 0.0f && fly->speed < 0.0f) { | if (fac > 0.0f && fly->speed < 0.0f) { | ||||
| fly->speed = 0.0f; | fly->speed = 0.0f; | ||||
| } | } | ||||
| else if (fac < 0.0f && fly->speed > 0.0f) { | else if (fac < 0.0f && fly->speed > 0.0f) { | ||||
| fly->speed = 0.0f; | fly->speed = 0.0f; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 42 Lines • Show Last 20 Lines | |||||