Commit graph

42 commits

Author SHA1 Message Date
d6b778a648 Refactor application to remove Windows Forms dependencies and transition to Avalonia UI
- Deleted MainWindow.xaml.cs, which contained the WPF implementation of the main window.
- Updated Program.cs to remove Windows Forms initialization and support only Avalonia UI.
- Removed Windows Forms specific code from ViewModelBase, including control marshalling logic.
2026-05-09 14:04:21 +02:00
3ddaf31340 feat: Add build workflow for Windows Avalonia with Docker support
Some checks failed
Build Windows Avalonia / build (push) Failing after 1m15s
Build Windows Avalonia / release (push) Has been skipped
2026-03-16 22:14:49 +01:00
b194a2424c feat: Update Microsoft.Extensions packages to version 10.0.5 for improved functionality and stability 2026-03-14 09:44:21 +01:00
3c722a66df feat: Add AI extraction service and related view models
- Introduced `IAiExtractionService` and its implementation `AiExtractionService` for processing images and extracting text.
- Created `AiResultItem` model to hold results from AI extraction.
- Added `ImageProcessingCoordinator` to manage image processing tasks and provide progress updates.
- Implemented view models for AI settings, path settings, processing state, race upload settings, and visual settings to support UI binding.
- Updated `Program.cs` to register new services and dependencies.
- Modified project file to skip MinVer execution during local builds.
2026-03-12 18:48:13 +01:00
e80b427fcc feat: Update Avalonia UI with new tab icons and styles; upgrade AutoMapper and Avalonia packages 2026-03-08 12:09:58 +01:00
4a0973b681 Added avalonia integration and remote proof of concept 2026-02-28 15:30:57 +01:00
775080a178 Removed old projects 2026-02-26 21:19:03 +01:00
73597689ed Cross-platform: remove System.Drawing deps, add #if WINDOWS
Refactored image creation APIs to use byte[] for logo data instead of System.Drawing.Image, enabling cross-platform support. Wrapped all GDI+/Windows-specific code in #if WINDOWS and updated project files to conditionally include Windows-only dependencies. Defaulted to ImageSharp on non-Windows, and updated UI and settings to reflect platform capabilities. Application now builds and runs on Linux/macOS with Avalonia and ImageSharp, while retaining full Windows functionality.
2026-02-26 19:17:23 +01:00
311b3e76f0 Add Avalonia UI frontend alongside WinForms and WPF
Introduce Avalonia as a new cross-platform UI option, including new XAML and code-behind files for the application and main window. Update Program.cs to support a --avalonia launch argument and add corresponding launch profile. Integrate Avalonia NuGet packages and ensure DataModel supports UI-thread invocation for all frontends. All business logic and state are shared via DI, enabling consistent behavior across WinForms, WPF, and Avalonia.
2026-02-26 18:43:07 +01:00
9007a27fb2 Upgrade UI to MahApps.Metro with runtime theming
Modernize WPF UI using MahApps.Metro: switch MainWindow to MetroWindow, add MetroTabControl/MetroTabItem, custom tab styles, and icon-based theme toggle. Move version display to window commands. Integrate MahApps resource dictionaries and ThemeManager for runtime theme switching. Update startup logic for proper theming. WinForms fallback retained.
2026-02-21 16:49:13 +01:00
ec4635a37f Add Material icons to UI and refactor theme resources
Integrated MahApps.Metro.IconPacks for Material icons in tab headers and buttons, enhancing visual clarity and user experience. Refactored resource dictionary to define theme brushes at the top level for easier theme switching. All button content now combines icons and text for a more modern interface. No functional changes; UI/UX improvements only.
2026-02-21 16:04:58 +01:00
f4893a39e9 Improve multi-line text, logo, and version display
- Enhance ImageCreatorAlternate to support multi-line text rendering with correct sizing, spacing, and shadow for each line.
- Only draw logos on non-thumbnail images to match GDI behavior.
- Add a status bar to MainWindow showing the app version at runtime.
- Upgrade MinVer to 7.0.0 and adjust versioning to avoid WPF/XAML assembly identity issues.
- Refactor XAML layout to accommodate the new status bar.
2026-02-17 20:51:35 +01:00
da9d9875b0 Switch to MinVer, add CI/CD, unify thumbnail options
- Add .gitlab-ci.yml for Windows CI/CD: build, publish, and GitLab Release with artifact upload
- Replace GitVersion.MsBuild with MinVer for versioning; update all versioning logic in .csproj
- Remove GitVersion CLI fallback for Visual Studio builds
- Update post-publish renaming to use MinVer's Version property
- Replace multiple thumbnail text checkboxes with a single ComboBox selector in MainWindow.xaml
- Change default UI startup: prefer WPF MainWindow, fallback to WinForms MainForm
2026-02-16 21:49:46 +01:00
6a5173a20d Add AI/OCR extraction feature with UI and CSV export
Integrates optional AI/OCR (AIFotoONLUS.Core) support to extract numbers from images after processing. Adds new "AI" tab in the UI for enabling extraction, selecting models folder, specifying CSV output, and previewing results. Results can be exported to CSV. Uses reflection for AI library invocation, with fallback simulation if unavailable. Persists new AI settings. Updates related NuGet packages and adds theme resources.
2026-02-16 18:37:05 +01:00
10cc574acb Add WPF UI alongside WinForms; improve cancellation logic
Introduced MainWindow.xaml and code-behind for a modern WPF interface with tabbed settings. Enabled WPF in project file. Refactored startup to launch WPF or WinForms UI based on availability. Registered WPF MainWindow in DI. Improved DataModel cancellation to be synchronous and log exceptions. Minor logging and comment updates. App now supports both WPF and WinForms frontends.
2026-02-15 11:14:19 +01:00
a00ab074c4 Prefer GitVersion values for assembly and publish versioning
Enhance versioning by prioritizing GitVersion output for assembly, file, and informational versions. Add fallback MSBuild target to run GitVersion CLI in Visual Studio builds. Update publish rename logic to use FullSemVer and improve version normalization for artifact naming.
2026-02-15 00:03:16 +01:00
69fdf01de3 Modernize versioning and display in app and build output
- Switch to explicit "3.2.0" next-version in GitVersion.yml
- Update NuGet packages and set assembly name to "ImageCatalog"
- Add MSBuild target to rename published exe with year and version
- Add AppVersion property to DataModel, set via IVersionProvider
- Replace static version label with data-bound versionLabel in UI
- Remove manual version label logic from MainForm
- Update DI to inject IVersionProvider into DataModel
- Ensures UI always shows correct version and builds are versioned
2026-02-14 22:18:56 +01:00
509d5357a8 Integrate GitVersion and add version provider abstraction
- Added GitVersion for semantic versioning and build metadata
- Introduced IVersionProvider and VersionProvider for UI-friendly version display
- MainForm now uses IVersionProvider for version label
- Registered VersionProvider in DI container
- Improved logging: filtered out AutoMapper license logs
- General code cleanup in Program.cs
2026-02-14 21:14:06 +01:00
68c1106f65 Enhance image processing performance and flexibility by introducing atomic counters, improving file pattern matching, and refining logo positioning logic. 2026-02-10 21:18:46 +01:00
ba965e8266 Fixes and mapping 2026-02-04 23:16:06 +01:00
d73389d791 Update library and fixes 2026-02-04 21:12:27 +01:00
cfbc6334b6 Refactoring, upgrades and improvements to memory usage 2026-02-04 18:38:44 +01:00
Marco
5d21d3f8ef Version Bump 2025-07-28 14:46:45 +02:00
Marco
abdd2a313a Race time fix 2025-07-28 12:26:23 +02:00
Marco
4ceb46d65c Removed visual basic lib from project 2025-07-28 10:01:27 +02:00
Marco
ab33d4558f Removed visual basic lib dependency 2025-07-28 09:59:58 +02:00
Marco
af987f840d Removed old code 2025-07-28 09:15:45 +02:00
Marco
22cf884d4d Version number 2025-07-24 16:31:39 +02:00
Marco
1b78b245d1 Added configuration file 2025-07-23 15:24:36 +02:00
Marco
d8d8b152bd Errors fix, removed old library, Added logging 2025-07-23 15:08:25 +02:00
Marco
8048c41cd0 Upgraded to .NET 9 2025-07-08 14:35:27 +02:00
a1c950734a Updated version 2024-10-14 22:18:26 +02:00
39a9baf5c6 Added dependency injection 2024-10-14 22:18:03 +02:00
2293c4f9e1 Updated project versions 2024-10-14 21:56:40 +02:00
328d7da303 Reupdated projects 2024-10-14 21:56:05 +02:00
388b9acf32 Added gitversion msbuild task 2024-10-14 21:29:50 +02:00
058b573d48 Added gitversion 2024-10-14 21:27:12 +02:00
16a09d912e Deduplicated package references 2024-10-14 21:04:38 +02:00
3a7a04920d Fixed Build 2024-10-14 19:54:29 +02:00
99b67870a5 2024 reopening 2024-10-14 18:54:30 +02:00
5d2f5e4b45 published 2021-03-04 17:26:08 +01:00
9794ce1abb Gestione status dei thread 2021-03-04 10:44:09 +01:00