Skip to content

Add missing Load Order IsActive item state styling #2941

Closed
@Al12rs

Description

@Al12rs

Outline:

Load Order items can be disabled in the loadout, in which case they will have IsActive state set to false.
This needs to be reflected in the UI.

Image

Details:

The styling has been already been implemented, the missing piece is the binding of the IsActive style class to the IsActive state.

IsActive is defined inside the IsActiveComponent of the CompositeItemModel, thus there is no direct property to bind to.

There is a workaround that could be used to add a string value to CompositeItemModel.StyleTags, and then using a converter to check for the presence of the string, but the current problem is being able to set CompositeItemModel<Guid> as the x:DataType to allow setting up the binding.

Avalonia does not currently have a working syntax for defining type parameters for types passed to x:DataType.
There is a merged PR that fixes this, but it hasn't been included in a release yet:

Until Avalonia releases that fix we can't set up a typed binding properly.

QA details:

Design: https://www.figma.com/design/1sbIAJGr8URkY3wmisyaJg/%F0%9F%93%B1-Load-order?node-id=264-14154&node-type=section&t=IoDRh4h53c2O0jTt-0

Test data:

Manage cyberpunk and install some RedMods, e.g:

Expected behaviour

Open a new tab in the app and select LoadOrder WIP page.
Toggle off the RedMods in the loadout and they should change styling in the Load Order page.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Epic: Load OrderNeeds QAFor tickets that should go through the QA validation process

    Type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions