Files
HC_APTBS/HC_APTBS.csproj
LucianoDev 197e9d1775 feat: redesign dashboard with Fluent KPI tiles, connection strip, and devices column
- Replace LCD-style readings with a 3×2 KPI tile grid (Fluent card surfaces, 52pt values)
- Add persistent top connection strip with horizontal chips + pump name badge
- Add elapsed test timer (DispatcherTimer, mm:ss) to Test Summary card
- Restyle Test Summary and Active Alarms with Fluent brushes/iconography
- Add Devices column (CAN / K-Line / Bench tiles) between KPI grid and test/alarms
  - Enumerates attached PCAN USB channels via PCAN_ATTACHED_CHANNELS API
  - Enumerates FTDI K-Line adapters via existing FtdiInterface helpers
  - Click to connect/disconnect; confirmation dialog when session active or test running
  - Hover tint: blue = will connect, red = will disconnect; Bench row is read-only stub
- Extend ICanService with SelectedChannel + EnumerateAttachedChannels()
- Expose IKwpService.ConnectedPort for active session device tracking
- Add DeviceRow button style with MultiDataTrigger hover colour logic
- Add 30+ new localization keys (ES + EN) for KPI labels, devices, confirmations

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 22:25:00 +02:00

63 lines
2.4 KiB
XML

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net10.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UseWPF>true</UseWPF>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<!-- PCAN-Basic and FTD2XX native DLLs are 64-bit only -->
<PlatformTarget>x64</PlatformTarget>
<AssemblyName>HC_APTBS</AssemblyName>
<RootNamespace>HC_APTBS</RootNamespace>
</PropertyGroup>
<ItemGroup>
<Compile Remove="old_source\**" />
<EmbeddedResource Remove="old_source\**" />
<None Remove="old_source\**" />
<Page Remove="old_source\**" />
</ItemGroup>
<ItemGroup>
<!-- MVVM source generators: [ObservableProperty], [RelayCommand], etc. -->
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
<!-- PDF report generation — replaces legacy PdfSharp -->
<PackageReference Include="QuestPDF" Version="2025.3.2" />
<!-- Real-time charting for test result graphs -->
<PackageReference Include="LiveChartsCore.SkiaSharpView.WPF" Version="2.0.0-rc3.5" />
<!-- XAML Behaviors: EventTrigger, InvokeCommandAction -->
<PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.122" />
<!-- Extended WPF Toolkit: AvalonDock, NumericUpDown, BusyIndicator -->
<PackageReference Include="Extended.Wpf.Toolkit" Version="4.6.1" />
<!-- DI container for application bootstrapping -->
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
<PackageReference Include="Microsoft.Extensions.Hosting" Version="9.0.5" />
<PackageReference Include="System.IO.Ports" Version="10.0.5" />
<!-- WPF-UI: FluentWindow chrome + unified control theming -->
<PackageReference Include="WPF-UI" Version="3.0.5" />
</ItemGroup>
<!-- Embedded images — default report logo fallback -->
<ItemGroup>
<EmbeddedResource Include="Resources\Images\default_logo.png" />
</ItemGroup>
<!-- Native DLLs — must sit next to the executable at runtime -->
<ItemGroup>
<Content Include="Resources\Native\PCANBasic.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Resources\Native\ftd2xx.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>