mirror of https://git.sr.ht/~kikoodx/kble
Mouse behavior for graphical tablet (#1)
This commit is contained in:
parent
eec14bc99c
commit
9a0bbb8e95
|
@ -21,6 +21,10 @@ fn col(r: u8, g: u8, b: u8) ray.Color {
|
|||
pub const mouse_enabled: bool = true;
|
||||
pub const mouse_left_btn: c_int = 0;
|
||||
pub const mouse_right_btn: c_int = 1;
|
||||
// Set to true for better graphical tablet experience.
|
||||
// * false: click to enter, draw, click to exit.
|
||||
// * true: click to enter, draw, release to exit.
|
||||
pub const mouse_graphic_tablet: bool = false;
|
||||
|
||||
pub const theme = .{
|
||||
.background = ray.BLACK,
|
||||
|
|
|
@ -207,11 +207,15 @@ pub fn main() void {
|
|||
}
|
||||
|
||||
const left_click: bool = ray.IsMouseButtonPressed(conf.mouse_left_btn);
|
||||
const left_release: bool = ray.IsMouseButtonReleased(conf.mouse_left_btn);
|
||||
const right_click: bool = ray.IsMouseButtonPressed(conf.mouse_right_btn);
|
||||
const right_release: bool = ray.IsMouseButtonReleased(conf.mouse_right_btn);
|
||||
const click: bool = left_click or right_click;
|
||||
const release: bool = left_release or right_release;
|
||||
const end_sel_event = if (conf.mouse_graphic_tablet) release else click;
|
||||
|
||||
// If click, get out of current mode and apply changes if necessary.
|
||||
if (click and mouse.mode != Mouse.MouseMode.idle) {
|
||||
// When end selection event, get out of current mode and apply changes if necessary.
|
||||
if (end_sel_event and mouse.mode != Mouse.MouseMode.idle) {
|
||||
defer mouse.mode = Mouse.MouseMode.wait;
|
||||
|
||||
// Select area.
|
||||
|
|
Loading…
Reference in New Issue