pub enum Message {
Show 131 variants
SwitchTab(Tab),
ThemeChanged(Theme),
LoadDevices,
DevicesLoaded(Result<Vec<DeviceInfo>, String>),
GrabDevice(String),
UngrabDevice(String),
DeviceGrabbed(Result<String, String>),
DeviceUngrabbed(Result<String, String>),
SelectDevice(usize),
UpdateMacroName(String),
StartRecording,
StopRecording,
RecordingStarted(Result<String, String>),
RecordingStopped(Result<MacroEntry, String>),
LoadMacros,
MacrosLoaded(Result<Vec<MacroEntry>, String>),
LoadMacroSettings,
MacroSettingsLoaded(Result<MacroSettings, String>),
SetMacroSettings(MacroSettings),
LatencyChanged(u32),
JitterChanged(f32),
CaptureMouseToggled(bool),
PlayMacro(String),
MacroPlayed(Result<String, String>),
DeleteMacro(String),
MacroDeleted(Result<String, String>),
UpdateProfileName(String),
SaveProfile,
ProfileSaved(Result<(String, usize), String>),
LoadProfile,
ProfileLoaded(Result<(String, usize), String>),
LoadDeviceProfiles(String),
DeviceProfilesLoaded(String, Result<Vec<String>, String>),
ActivateProfile(String, String),
ProfileActivated(String, String),
DeactivateProfile(String),
ProfileDeactivated(String),
ProfileError(String),
LoadRemapProfiles(String),
RemapProfilesLoaded(String, Result<Vec<RemapProfileInfo>, String>),
ActivateRemapProfile(String, String),
RemapProfileActivated(String, String),
DeactivateRemapProfile(String),
RemapProfileDeactivated(String),
LoadActiveRemaps(String),
ActiveRemapsLoaded(String, Result<Option<(String, Vec<RemapEntry>)>, String>),
CheckDaemonConnection,
DaemonStatusChanged(bool),
TickAnimations,
ShowNotification(String, bool),
RecordMouseEvent {
event_type: String,
button: Option<u16>,
x: i32,
y: i32,
delta: i32,
},
ShowKeypadView(String),
SelectKeypadButton(String),
DeviceCapabilitiesLoaded(String, Result<DeviceCapabilities, String>),
LayerStateChanged(String, usize),
LayerConfigRequested(String),
LayerActivateRequested(String, usize, LayerMode),
LayerConfigUpdated(String, LayerConfigInfo),
OpenLayerConfigDialog(String, usize),
LayerConfigNameChanged(String),
LayerConfigModeChanged(LayerMode),
SaveLayerConfig,
CancelLayerConfig,
RefreshLayers,
LayerListLoaded(String, Vec<LayerConfigInfo>),
AnalogDpadModeRequested(String),
AnalogDpadModeLoaded(String, String),
SetAnalogDpadMode(String, String),
AnalogDpadModeSet(Result<(), String>),
AnalogDeadzoneXYRequested(String),
AnalogDeadzoneXYLoaded(String, (u8, u8)),
SetAnalogDeadzoneXY(String, u8, u8),
AnalogDeadzoneXYSet(Result<(), String>),
AnalogOuterDeadzoneXYRequested(String),
AnalogOuterDeadzoneXYLoaded(String, (u8, u8)),
SetAnalogOuterDeadzoneXY(String, u8, u8),
AnalogOuterDeadzoneXYSet(Result<(), String>),
OpenLedConfig(String),
CloseLedConfig,
SelectLedZone(LedZone),
SetLedColor(String, LedZone, u8, u8, u8),
LedColorSet(Result<(), String>),
SetLedBrightness(String, Option<LedZone>, u8),
LedBrightnessSet(Result<(), String>),
SetLedPattern(String, LedPattern),
LedPatternSet(Result<(), String>),
RefreshLedState(String),
LedStateLoaded(String, Result<HashMap<LedZone, (u8, u8, u8)>, String>),
LedSliderChanged(u8, u8, u8),
StartFocusTracking,
FocusTrackingStarted(Result<bool, String>),
FocusChanged(String, Option<String>),
ShowAutoSwitchRules(String),
CloseAutoSwitchRules,
LoadAutoSwitchRules(String),
AutoSwitchRulesLoaded(Result<Vec<AutoSwitchRule>, String>),
EditAutoSwitchRule(usize),
AutoSwitchAppIdChanged(String),
AutoSwitchProfileNameChanged(String),
AutoSwitchLayerIdChanged(String),
AutoSwitchUseCurrentApp,
SaveAutoSwitchRule,
DeleteAutoSwitchRule(usize),
ShowHotkeyBindings(String),
CloseHotkeyBindings,
LoadHotkeyBindings(String),
HotkeyBindingsLoaded(Result<Vec<HotkeyBinding>, String>),
EditHotkeyBinding(usize),
ToggleHotkeyModifier(String),
HotkeyKeyChanged(String),
HotkeyProfileNameChanged(String),
HotkeyLayerIdChanged(String),
SaveHotkeyBinding,
DeleteHotkeyBinding(usize),
HotkeyBindingsUpdated(Vec<HotkeyBinding>),
OpenAnalogCalibration {
device_id: String,
layer_id: usize,
},
AnalogDeadzoneChanged(f32),
AnalogDeadzoneShapeChanged(DeadzoneShape),
AnalogSensitivityChanged(f32),
AnalogSensitivityCurveChanged(SensitivityCurve),
AnalogRangeMinChanged(i32),
AnalogRangeMaxChanged(i32),
AnalogInvertXToggled(bool),
AnalogInvertYToggled(bool),
AnalogModeChanged(AnalogMode),
CameraModeChanged(CameraOutputMode),
ApplyAnalogCalibration,
AnalogCalibrationLoaded(Result<AnalogCalibrationConfig, String>),
AnalogCalibrationApplied(Result<(), String>),
CloseAnalogCalibration,
AnalogInputUpdated(f32, f32),
}Variants§
SwitchTab(Tab)
ThemeChanged(Theme)
LoadDevices
DevicesLoaded(Result<Vec<DeviceInfo>, String>)
GrabDevice(String)
UngrabDevice(String)
DeviceGrabbed(Result<String, String>)
DeviceUngrabbed(Result<String, String>)
SelectDevice(usize)
UpdateMacroName(String)
StartRecording
StopRecording
RecordingStarted(Result<String, String>)
RecordingStopped(Result<MacroEntry, String>)
LoadMacros
MacrosLoaded(Result<Vec<MacroEntry>, String>)
LoadMacroSettings
MacroSettingsLoaded(Result<MacroSettings, String>)
SetMacroSettings(MacroSettings)
LatencyChanged(u32)
JitterChanged(f32)
CaptureMouseToggled(bool)
PlayMacro(String)
MacroPlayed(Result<String, String>)
DeleteMacro(String)
MacroDeleted(Result<String, String>)
UpdateProfileName(String)
SaveProfile
ProfileSaved(Result<(String, usize), String>)
LoadProfile
ProfileLoaded(Result<(String, usize), String>)
LoadDeviceProfiles(String)
DeviceProfilesLoaded(String, Result<Vec<String>, String>)
ActivateProfile(String, String)
ProfileActivated(String, String)
DeactivateProfile(String)
ProfileDeactivated(String)
ProfileError(String)
LoadRemapProfiles(String)
RemapProfilesLoaded(String, Result<Vec<RemapProfileInfo>, String>)
ActivateRemapProfile(String, String)
RemapProfileActivated(String, String)
DeactivateRemapProfile(String)
RemapProfileDeactivated(String)
LoadActiveRemaps(String)
ActiveRemapsLoaded(String, Result<Option<(String, Vec<RemapEntry>)>, String>)
CheckDaemonConnection
DaemonStatusChanged(bool)
TickAnimations
ShowNotification(String, bool)
RecordMouseEvent
ShowKeypadView(String)
Show keypad remapping view for a device
SelectKeypadButton(String)
Select a keypad button for remapping
DeviceCapabilitiesLoaded(String, Result<DeviceCapabilities, String>)
Load device capabilities for keypad view
LayerStateChanged(String, usize)
Layer state changed (device_id, layer_id)
LayerConfigRequested(String)
Request layer configuration for a device
LayerActivateRequested(String, usize, LayerMode)
Request activation of a layer (device_id, layer_id, mode)
LayerConfigUpdated(String, LayerConfigInfo)
Layer configuration updated (device_id, config)
OpenLayerConfigDialog(String, usize)
Open layer config dialog for editing
LayerConfigNameChanged(String)
Update layer name in dialog
LayerConfigModeChanged(LayerMode)
Update layer mode in dialog
SaveLayerConfig
Save layer config from dialog
CancelLayerConfig
Cancel layer config dialog
RefreshLayers
Periodic refresh of layer states
LayerListLoaded(String, Vec<LayerConfigInfo>)
Layer list loaded from daemon (device_id, layers)
AnalogDpadModeRequested(String)
Request D-pad mode for a device
AnalogDpadModeLoaded(String, String)
D-pad mode loaded (device_id, mode)
SetAnalogDpadMode(String, String)
Set D-pad mode (device_id, mode)
AnalogDpadModeSet(Result<(), String>)
D-pad mode set result
AnalogDeadzoneXYRequested(String)
Request per-axis deadzone for a device
AnalogDeadzoneXYLoaded(String, (u8, u8))
Per-axis deadzone loaded (device_id, (x_pct, y_pct))
SetAnalogDeadzoneXY(String, u8, u8)
Set per-axis deadzone (device_id, x_pct, y_pct)
AnalogDeadzoneXYSet(Result<(), String>)
Per-axis deadzone set result
AnalogOuterDeadzoneXYRequested(String)
Request per-axis outer deadzone for a device
AnalogOuterDeadzoneXYLoaded(String, (u8, u8))
Per-axis outer deadzone loaded (device_id, (x_pct, y_pct))
SetAnalogOuterDeadzoneXY(String, u8, u8)
Set per-axis outer deadzone (device_id, x_pct, y_pct)
AnalogOuterDeadzoneXYSet(Result<(), String>)
Per-axis outer deadzone set result
OpenLedConfig(String)
Open LED configuration dialog for device
CloseLedConfig
Close LED configuration dialog
SelectLedZone(LedZone)
Select LED zone for color editing
SetLedColor(String, LedZone, u8, u8, u8)
Set LED color (device_id, zone, red, green, blue)
LedColorSet(Result<(), String>)
LED color set result
SetLedBrightness(String, Option<LedZone>, u8)
Set LED brightness (device_id, zone_opt, brightness)
LedBrightnessSet(Result<(), String>)
LED brightness set result
SetLedPattern(String, LedPattern)
Set LED pattern (device_id, pattern)
LedPatternSet(Result<(), String>)
LED pattern set result
RefreshLedState(String)
Request LED state refresh for device
LedStateLoaded(String, Result<HashMap<LedZone, (u8, u8, u8)>, String>)
LED state loaded (device_id, colors)
LedSliderChanged(u8, u8, u8)
RGB slider changed (red, green, blue)
StartFocusTracking
Start focus tracking after daemon connection confirmed
FocusTrackingStarted(Result<bool, String>)
Focus tracking started successfully
FocusChanged(String, Option<String>)
Focus change event received from tracker
ShowAutoSwitchRules(String)
Open auto-switch rules view for a device
CloseAutoSwitchRules
Close auto-switch rules view
LoadAutoSwitchRules(String)
Load auto-switch rules for a device
AutoSwitchRulesLoaded(Result<Vec<AutoSwitchRule>, String>)
Auto-switch rules loaded (device_id, rules)
EditAutoSwitchRule(usize)
Start editing a rule (index in list)
AutoSwitchAppIdChanged(String)
Update new rule app_id input
AutoSwitchProfileNameChanged(String)
Update new rule profile_name input
AutoSwitchLayerIdChanged(String)
Update new rule layer_id input
AutoSwitchUseCurrentApp
Use current focused app as app_id
SaveAutoSwitchRule
Save the current rule (add or update)
DeleteAutoSwitchRule(usize)
Delete a rule
ShowHotkeyBindings(String)
Open hotkey bindings view for a device
CloseHotkeyBindings
Close hotkey bindings view
LoadHotkeyBindings(String)
Load hotkey bindings for a device
HotkeyBindingsLoaded(Result<Vec<HotkeyBinding>, String>)
Hotkey bindings loaded result
EditHotkeyBinding(usize)
Start editing a binding (index in list)
ToggleHotkeyModifier(String)
Toggle modifier checkbox (modifier_name)
HotkeyKeyChanged(String)
Update new binding key input
HotkeyProfileNameChanged(String)
Update new binding profile_name input
HotkeyLayerIdChanged(String)
Update new binding layer_id input
SaveHotkeyBinding
Save the current binding (add or update)
DeleteHotkeyBinding(usize)
Delete a binding
HotkeyBindingsUpdated(Vec<HotkeyBinding>)
Hotkey bindings updated after delete
OpenAnalogCalibration
Open analog calibration view for a device and layer
AnalogDeadzoneChanged(f32)
Analog calibration field changed
AnalogDeadzoneShapeChanged(DeadzoneShape)
AnalogSensitivityChanged(f32)
AnalogSensitivityCurveChanged(SensitivityCurve)
AnalogRangeMinChanged(i32)
AnalogRangeMaxChanged(i32)
AnalogInvertXToggled(bool)
AnalogInvertYToggled(bool)
AnalogModeChanged(AnalogMode)
Analog mode changed
CameraModeChanged(CameraOutputMode)
Camera output mode changed
ApplyAnalogCalibration
Apply calibration changes
AnalogCalibrationLoaded(Result<AnalogCalibrationConfig, String>)
Analog calibration loaded
AnalogCalibrationApplied(Result<(), String>)
Analog calibration applied
CloseAnalogCalibration
Close analog calibration view
AnalogInputUpdated(f32, f32)
Analog input updated (streaming from daemon)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnsafeUnpin for Message
impl UnwindSafe for Message
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more