Skip to content

Latest commit

 

History

History
49 lines (37 loc) · 846 Bytes

File metadata and controls

49 lines (37 loc) · 846 Bytes

Example of use of a virtual mouse

package main

import (
	"fmt"
	"github.com/jbdemonte/virtual-device/mouse"
	"github.com/jbdemonte/virtual-device/linux"
	"time"
)

func main() {
	m := mouse.NewGenericMouse()

	err := m.Register()

	if err != nil {
		fmt.Printf("Failed to register the device: %s\n", err)
		return
	}

	fmt.Println("move down")
	m.MoveY(100)
	time.Sleep(1_000 * time.Millisecond)

	fmt.Println("move left")
	m.MoveX(-100)
	time.Sleep(1_000 * time.Millisecond)

	fmt.Println("move up")
	m.MoveY(-100)
	time.Sleep(1_000 * time.Millisecond)

	fmt.Println("move right")
	m.MoveX(100)
	time.Sleep(1_000 * time.Millisecond)

	fmt.Println("double click left")
	m.DoubleClickLeft()
	time.Sleep(1_000 * time.Millisecond)

	fmt.Println("right click")
	m.ClickRight()
	time.Sleep(1_000 * time.Millisecond)

	m.ScrollUp()
}