23 XmppState.Offline => Colors.Red,
25 XmppState.Authenticating or
26 XmppState.Connecting or
27 XmppState.Registering or
28 XmppState.StartingEncryption or
29 XmppState.StreamNegotiation or
30 XmppState.StreamOpened => Colors.Yellow,
33 XmppState.FetchingRoster or
34 XmppState.RequestingSession or
35 XmppState.SettingPresence =>
Blend(Colors.Yellow, connectedColor, 0.5),
37 XmppState.Connected => connectedColor,
43 private static readonly Color connectedColor = Color.FromRgb(146, 208, 80);
52 public static Color
Blend(Color Color1, Color Color2,
double p)
54 int R = (int)(Color1.Red * (1 - p) + Color2.Red * p + 0.5);
55 int G = (int)(Color1.Green * (1 - p) + Color2.Green * p + 0.5);
56 int B = (int)(Color1.Blue * (1 - p) + Color2.Blue * p + 0.5);
57 int A = (int)(Color1.Alpha * (1 - p) + Color2.Alpha * p + 0.5);
59 return new Color(R, G, B, A);
71 XmppState.Authenticating =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_Authenticating)],
76 XmppState.FetchingRoster =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_FetchingRoster)],
78 XmppState.RequestingSession =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_RequestingSession)],
79 XmppState.SettingPresence =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_SettingPresence)],
80 XmppState.StartingEncryption =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_StartingEncryption)],
81 XmppState.StreamNegotiation =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_StreamNegotiation)],
82 XmppState.StreamOpened =>
ServiceRef.
Localizer[nameof(AppResources.XmppState_StreamOpened)],
96 IdentityState.Approved =>
ServiceRef.
Localizer[nameof(AppResources.IdentityState_Approved)],
97 IdentityState.Compromised =>
ServiceRef.
Localizer[nameof(AppResources.IdentityState_Compromised)],
99 IdentityState.Obsoleted =>
ServiceRef.
Localizer[nameof(AppResources.IdentityState_Obsoleted)],
100 IdentityState.Rejected =>
ServiceRef.
Localizer[nameof(AppResources.IdentityState_Rejected)],
Extensions for the XmppState enum.
static Color ToColor(this XmppState State)
Returns a color matching the current connection state.
static string ToDisplayText(this XmppState State)
Converts the state to a localized string.
static Color Blend(Color Color1, Color Color2, double p)
Blends two colors.
static string ToDisplayText(this IdentityState State)
Converts the state to a localized string.
Base class that references services in the app.
static IStringLocalizer Localizer
Localization service
IdentityState
Lists recognized legal identity states.
XmppState
State of XMPP connection.