This PR adds a slip tool in the toolbar with its own custom icon for applying slips using the mouse. This is useful for e.g. tablets where a keyboard is not handy and a button would be best to activate the operator. There is also a custom cursor that appears when hovering over valid, slippable strips (and a "stop" icon when the strip cannot be slipped). Alt may be used in order to ignore slipping connected strips when using the tool, similar to selection logic. The slip tool only performs its sole function of slipping and as such does not change the selection state. In the future, we can also add "slide" functionality to the same tool, giving it multiple functions. Pull Request: https://projects.blender.org/blender/blender/pulls/143513
75 lines
1.3 KiB
C++
75 lines
1.3 KiB
C++
/* SPDX-FileCopyrightText: 2001-2002 NaN Holding BV. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
/** \file
|
|
* \ingroup wm
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
struct wmEvent;
|
|
struct wmWindow;
|
|
|
|
enum WMCursorType {
|
|
WM_CURSOR_DEFAULT = 1,
|
|
WM_CURSOR_TEXT_EDIT,
|
|
WM_CURSOR_WAIT,
|
|
WM_CURSOR_STOP,
|
|
WM_CURSOR_EDIT,
|
|
WM_CURSOR_COPY,
|
|
WM_CURSOR_MOVE,
|
|
WM_CURSOR_HAND,
|
|
WM_CURSOR_HAND_CLOSED,
|
|
WM_CURSOR_HAND_POINT,
|
|
|
|
WM_CURSOR_CROSS,
|
|
WM_CURSOR_PAINT,
|
|
WM_CURSOR_DOT,
|
|
WM_CURSOR_CROSSC,
|
|
|
|
WM_CURSOR_KNIFE,
|
|
WM_CURSOR_BLADE,
|
|
WM_CURSOR_VERTEX_LOOP,
|
|
WM_CURSOR_PAINT_BRUSH,
|
|
WM_CURSOR_ERASER,
|
|
WM_CURSOR_EYEDROPPER,
|
|
|
|
WM_CURSOR_SWAP_AREA,
|
|
WM_CURSOR_X_MOVE,
|
|
WM_CURSOR_Y_MOVE,
|
|
WM_CURSOR_H_SPLIT,
|
|
WM_CURSOR_V_SPLIT,
|
|
|
|
WM_CURSOR_NW_ARROW,
|
|
WM_CURSOR_NS_ARROW,
|
|
WM_CURSOR_EW_ARROW,
|
|
WM_CURSOR_N_ARROW,
|
|
WM_CURSOR_S_ARROW,
|
|
WM_CURSOR_E_ARROW,
|
|
WM_CURSOR_W_ARROW,
|
|
|
|
WM_CURSOR_NSEW_SCROLL,
|
|
WM_CURSOR_NS_SCROLL,
|
|
WM_CURSOR_EW_SCROLL,
|
|
|
|
WM_CURSOR_ZOOM_IN,
|
|
WM_CURSOR_ZOOM_OUT,
|
|
|
|
WM_CURSOR_NONE,
|
|
WM_CURSOR_MUTE,
|
|
|
|
WM_CURSOR_PICK_AREA,
|
|
|
|
WM_CURSOR_LEFT_HANDLE,
|
|
WM_CURSOR_RIGHT_HANDLE,
|
|
WM_CURSOR_BOTH_HANDLES,
|
|
WM_CURSOR_SLIP,
|
|
|
|
/* --- ALWAYS LAST ----- */
|
|
WM_CURSOR_NUM,
|
|
};
|
|
|
|
void wm_init_cursor_data();
|
|
bool wm_cursor_arrow_move(wmWindow *win, const wmEvent *event);
|