Skip to content

Conversation

@tolgayilmaz86
Copy link

We have RaceElement.UI project which has modern ui prototype

@tolgayilmaz86
Copy link
Author

tolgayilmaz86 commented Apr 9, 2025

image

tolgayilmaz86 and others added 10 commits April 9, 2025 21:11
Adds control panel buttons and ready to be filled
Based on selected game load different Overlay settings view.

Refactor game selection and UI components

- Refactored `GameSelectionService` to use a singleton pattern with `Lazy<T>`, added `GameChanged` event, and improved game selection methods.
- Cleaned up using directives in `MainTopMenuViewModel` and defined an asynchronous command for opening settings.
- Updated `ControlButtonsPanelViewModel` to manage favorite icon color and overlay status, with improved command initialization.
- Enhanced `OverlaysViewModel` to handle game-specific view models and respond to game changes.
- Modified several XAML files to remove `ControlButtonsPanelView` and reorganize UI layout for better structure.
- Updated `OverlaysPageView.axaml` to include a new column for global control buttons and adjusted code-behind for initialization.
dont messup with indexes
Refactor overlay management and game selection system

- Updated `GameSelectionService` to support nullable `GameChanged` events and removed the internal `SelectGame` method for a streamlined approach.
- Introduced `OverlayType` enum in `OverlaySelectionService` to define overlay types with display attributes.
- Implemented `OverlaySelectionService` as a singleton to manage overlay availability across games.
- Enhanced `OverlaySettingViewModelBase` with new properties and event subscriptions for overlay availability.
- Updated `OverlaysViewModel` to utilize `OverlayType` for improved type safety and clarity.
- Modified XAML files for overlays to include display names and improved UI.
- Replaced hardcoded overlay items in `OverlaysPageView` with dynamic data binding for better maintainability.
- Added `EnumToIndexConverter` for converting between `OverlayType` enums and indices.
- Ensured `OverlaysPageView.axaml.cs` reflects view model changes for control button updates.

These changes significantly enhance the maintainability and user experience of the overlay management system.

namespace RaceElement.UI.Services;

public enum SupportedGame
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants