Skip to content

Comments

Add Profile Management System#100

Open
mcfalld wants to merge 4 commits intosw3103:masterfrom
mcfalld:profileManagement
Open

Add Profile Management System#100
mcfalld wants to merge 4 commits intosw3103:masterfrom
mcfalld:profileManagement

Conversation

@mcfalld
Copy link

@mcfalld mcfalld commented Oct 2, 2025

This PR introduces a comprehensive profile management system that allows users to create, manage, and switch between different Move Mouse configurations.

New Features

  • Profile Creation & Management: Users can create multiple named profiles with distinct settings
  • Profile Switching: Easy switching between profiles via dropdown selection
  • Profile Persistence: All profiles are automatically saved and restored between sessions
  • Intuitive UI: Clean profile management interface integrated into the Settings window

Technical Implementation

  • New ActionProfile class with proper data binding support
  • ProfileManager class for XML-based profile persistence
  • Updated MouseWindowViewModel to use profile-specific settings
  • Enhanced SettingsWindowViewModel with profile management commands

UI Improvements

  • Added profile dropdown selector in Settings window
  • Profile management buttons (New, Rename, Delete, Duplicate)

Testing

  • Verified profile creation, switching, and deletion functionality
  • Confirmed settings persistence across application restarts
  • Tested UI responsiveness and visual states
  • Validated continuous operation with profile-specific configurations

This enhancement significantly improves the user experience by allowing multiple use cases and configurations within a single application instance.

- Enhanced the SettingsWindowViewModel to manage profile-specific settings directly through the SelectedProfile property, eliminating unnecessary synchronization with the Settings object.
- Improved property change handling for profiles to prevent infinite loops during updates.
- Updated the UI in SettingsWindow.xaml to bind profile-specific settings directly to the SelectedProfile, ensuring a more intuitive user experience.
- Added functionality to create unique profile names when adding new profiles.
- Introduced a new method to create independent copies of actions for profiles.
- Removed obsolete methods that synced settings to profiles, streamlining the codebase.
@joaopedroovb
Copy link

@sw3103 can you please consider merging this?

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