input.go (1530B)
1 // Copyright 2019 The Ebiten Authors 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 package driver 16 17 type GamepadID int 18 19 type TouchID int 20 21 type Input interface { 22 AppendInputChars(runes []rune) []rune 23 AppendGamepadIDs(gamepadIDs []GamepadID) []GamepadID 24 AppendTouchIDs(touchIDs []TouchID) []TouchID 25 CursorPosition() (x, y int) 26 GamepadSDLID(id GamepadID) string 27 GamepadName(id GamepadID) string 28 GamepadAxisValue(id GamepadID, axis int) float64 29 GamepadAxisNum(id GamepadID) int 30 GamepadButtonNum(id GamepadID) int 31 IsGamepadButtonPressed(id GamepadID, button GamepadButton) bool 32 IsKeyPressed(key Key) bool 33 IsMouseButtonPressed(button MouseButton) bool 34 IsStandardGamepadButtonPressed(id GamepadID, button StandardGamepadButton) bool 35 IsStandardGamepadLayoutAvailable(id GamepadID) bool 36 StandardGamepadAxisValue(id GamepadID, button StandardGamepadAxis) float64 37 StandardGamepadButtonValue(id GamepadID, button StandardGamepadButton) float64 38 TouchPosition(id TouchID) (x, y int) 39 Wheel() (xoff, yoff float64) 40 }