| 1234567891011121314151617181920212223242526272829303132333435 |
- # -*- coding: utf-8 -*-
- """
- HID Event-Definitionen.
- """
- from dataclasses import dataclass
- from enum import Enum
- class HIDKeyType(Enum):
- """Unterstuetzte HID-Media-Tasten."""
- VOLUME_UP = "volume_up"
- VOLUME_DOWN = "volume_down"
- MUTE = "mute" # Lautsprecher-Mute
- MIC_MUTE = "mic_mute" # Mikrofon-Mute (KEY_MICMUTE)
- HOOK = "hook" # Anruf annehmen/beenden (Call/Answer)
- PLAY_PAUSE = "play_pause" # Musik Abspielen/Pausieren
- PLAY = "play" # Nur Abspielen (KEY_PLAY)
- NEXT_TRACK = "next_track" # Naechster Track
- PREV_TRACK = "prev_track" # Vorheriger Track
- class HIDLedType(Enum):
- """Steuerbare LEDs auf HID-Geraeten."""
- MUTE = "mute"
- MAIL = "mail" # Wird von manchen Geraeten als Status-LED genutzt
- @dataclass
- class HIDEvent:
- """Ein HID-Eingabe-Event."""
- key_type: HIDKeyType
- device_name: str = ""
- pressed: bool = True # True = gedrueckt, False = losgelassen
- hold_seconds: float = 0.0 # Wie lange die Taste gehalten wurde (nur bei release)
|