Unify offline startup state and strengthen empty-state cards

This commit is contained in:
Meik
2026-03-05 15:06:48 +01:00
parent ad83f69037
commit 36652cb8c4
5 changed files with 45 additions and 15 deletions

View File

@@ -31,6 +31,7 @@
### Ankündigungen/Tickets
- Farbmarkierung in Ankündigungen sauber an Rundungen/Containergrenzen angepasst.
- Read-All-Aktionen mit Tooltip versehen und auf dezenten Hover-Hintergrund im Navbar-Stil umgestellt.
- Empty-State-Kacheln ("Keine Ankündigungen"/"Keine Tickets") in Höhe und Gewichtung vergrößert.
### Dialog "Konfiguration anzeigen"
- Optisch an Haupt-GUI angeglichen und vergrößert, um abgeschnittene Inhalte zu vermeiden.
@@ -45,6 +46,8 @@
- Alt+F4 minimiert in den Tray statt vollständigem Schließen.
- `isDraggable` aus Web-Konfiguration wird korrekt berücksichtigt.
- Mehrdeutigkeitsfehler (`Brushes`) behoben.
- Vor erfolgreichem Konfig-Ladevorgang wird die Oberfläche analog Offline-Zustand eingeschränkt (nur Info-Navigation und Info-Panel sichtbar).
- Header-Verbindungsindikator für Offline/Verbindungsaufbau im Top-Bereich neu positioniert, damit er nicht von Action-Buttons überdeckt wird.
### Lokalisierung
- DE/EN-Ressourcen sprachlich bereinigt und vereinheitlicht.

View File

@@ -420,18 +420,20 @@
<Image Source="{DynamicResource nav_appbar_network_server_disconnect}"
Tag="ICO"
x:Name="ConnProblem"
Panel.ZIndex="505"
Width="20"
Height="20"
Margin="0,16,54,0"
Margin="0,16,88,0"
HorizontalAlignment="Right"
VerticalAlignment="Top"
Visibility="Visible" />
<Image Source="{DynamicResource nav_appbar_network_server_connecting}"
Tag="ICO"
x:Name="Connecting"
Panel.ZIndex="505"
Width="20"
Height="20"
Margin="0,16,54,0"
Margin="0,16,88,0"
HorizontalAlignment="Right"
VerticalAlignment="Top"
Visibility="Visible">
@@ -531,7 +533,7 @@
<Button Tag="0"
x:Uid="1"
x:Name="BtnAnnouncements"
Visibility="Visible"
Visibility="Hidden"
Style="{StaticResource FlatButtonStyle2}"
ToolTip="{x:Static resx:Resources.mo_announcement}"
BorderThickness="0"
@@ -839,7 +841,7 @@
<Button x:Name="BtnInfo"
x:Uid="5"
Margin="0,0,0,0"
Visibility="Hidden"
Visibility="Visible"
Style="{StaticResource FlatButtonStyle2}"
ToolTip="{x:Static resx:Resources.mo_information}"
BorderThickness="0"
@@ -937,12 +939,12 @@
<uctrl:Announcements x:Name="AnnouncementCtrl"
Canvas.Left="0"
Canvas.Top="10"
Visibility="Visible"/>
Visibility="Collapsed"/>
<uctrl:ComputerInformation x:Name="ComputerInfoCtrl"
Canvas.Left="0"
Canvas.Top="10"
Visibility="Collapsed"/>
Visibility="Visible"/>
<uctrl:Incidents x:Name="IncidentCtrl"
Canvas.Left="0"

View File

@@ -662,12 +662,25 @@ namespace C4IT_CustomerPanel
{
var TopMarginCount = 0;
const double railTopOffset = 14.5;
foreach (var navButton in new[] { BtnAnnouncements, BtnIncident, BtnSsp, BtnCustomLink, BtnInfo })
{
if (navButton != null)
navButton.Visibility = Visibility.Hidden;
}
if (OnlineState != enumOnlineState.Online && ActiveButton != BtnInfo)
ActivateFirstEntry = true;
foreach (var entry in MainFunctionButtons)
{
try
{
var Info = entry.Value;
var isVisible = ConfigSettings.GetConfig().MainFunctionActivation[entry.Key];
var isVisible = OnlineState == enumOnlineState.Online
? ConfigSettings.GetConfig().MainFunctionActivation[entry.Key]
: entry.Key == enumMainFunctions.Information;
if (isVisible)
{
Info.button.Visibility = Visibility.Visible;
@@ -680,8 +693,12 @@ namespace C4IT_CustomerPanel
if (Info.button == ActiveButton)
ActivateFirstEntry = true;
}
entry.Value.MenuStrip.Enabled = true;
entry.Value.MenuStrip.Visible = ConfigSettings.GetConfig().MainFunctionActivation[entry.Key];
if (entry.Value.MenuStrip != null)
{
entry.Value.MenuStrip.Enabled = isVisible;
entry.Value.MenuStrip.Visible = isVisible;
}
}
catch { }
}

View File

@@ -84,14 +84,18 @@
x:FieldModifier="private"
Background="Transparent"
Width="{Binding ActualWidth, ElementName=Canvas, Mode=OneWay}"
Height="58">
Height="86">
<Border Margin="2,0,2,0"
Height="86"
BorderThickness="1"
CornerRadius="10"
BorderBrush="{DynamicResource cardBorderColor}"
Background="{DynamicResource cardBackgroundColor}">
Background="{DynamicResource cardBackgroundColor}"
Padding="18,0,12,0">
<TextBlock Text="{x:Static resx:Resources.noannouncement}"
Margin="18,12,10,0"
VerticalAlignment="Center"
FontSize="14"
FontWeight="SemiBold"
Foreground="{DynamicResource subtleTextColor}" />
</Border>
</StackPanel>

View File

@@ -121,16 +121,20 @@
<StackPanel x:Name="NoIncident"
Background="Transparent"
Width="{Binding ActualWidth, ElementName=Canvas2, Mode=OneWay}"
Height="58"
Height="86"
Canvas.Top="56"
Canvas.Left="0">
<Border Margin="2,0,2,0"
Height="86"
BorderThickness="1"
CornerRadius="10"
BorderBrush="{DynamicResource cardBorderColor}"
Background="{DynamicResource cardBackgroundColor}">
Background="{DynamicResource cardBackgroundColor}"
Padding="18,0,12,0">
<TextBlock Text="{x:Static resx:Resources.noincidents}"
Margin="18,12,10,0"
VerticalAlignment="Center"
FontSize="14"
FontWeight="SemiBold"
Foreground="{DynamicResource subtleTextColor}" />
</Border>
</StackPanel>