ousnius / BodySlide-and-Outfit-Studio

BodySlide and Outfit Studio, a tool to convert, create, and customize outfits and bodies for Bethesda games.
GNU General Public License v3.0
290 stars 64 forks source link

View output conflicts and file paths in BodySlide #387

Closed Iloei closed 2 years ago

Iloei commented 2 years ago

Exposes the bodyslide conflict management logic used in batch builds in the base UI.

Supports quick navigation between conflicting alternatives.

Implements Issue #386

This is a first draft -- if you do not like something about the code, please let me know and I will fix it.

(Note also that I have only tested this under VS2022 so there may be issues under VS2019)

ousnius commented 2 years ago

@Iloei Thanks for contributing, I've taken a look at it, it seems like a nice addition.

So what this does on a technical level is:

I don't have any issue with the draft as a whole, but I'd do some minor changes to the UI to make things clearer to the user about what things mean.

Let me know if you don't want to do any of those yourself, then I can work on them instead.

Iloei commented 2 years ago
  1. Adding the full output file names makes sense to me. I will draft something up.
  2. I think I have figured out how to do this, using the wxGridBagSizer.
  3. Removing the default selection when deselecting the checkbox should be doable. I'll put something together for that.
  4. Thank you.
Iloei commented 2 years ago

I have implemented the functional aspects of your request (and merged your dev changes).

ousnius commented 2 years ago

@Iloei Thank you. I've implemented some more tweaks for better UI clarity/UX. Do those look fine to you as well?

Iloei commented 2 years ago

That should be fine, I imagine.

(I like that now the initial display is cleaner. My only worry would be that the abbreviation of the file name might be too much for the people who are just starting... (but I think that people who are just starting would also be having other bigger problems and by the time they get those issues sorted that they would be fine with the file name abbreviation mechanism))

I also like that you explicitly call attention to the right click mechanism. Expecting people to "just know" to use the context menu was me asking too much of the user.

Thank you.

ousnius commented 2 years ago

@Iloei I'm not so much worried about the file name abbreviation (and _1.nif) but more so about the checkbox and path/color being there in general. A new user might not understand what the checkbox does or what conflict means when they first see it, so it makes the UI unnecessarily more busy for them.

But I couldn't really think of another way or place to put it or make it more clearer. There's a wxCollapsiblePane where one could hide it under, but in wxWidgets it's really ugly and takes up too much space (and you can't change its background color). So this has to do for now.

Iloei commented 2 years ago

@ousnius If it becomes a problem, that part of the display could be left blank by default and such that it only appears if enabled in settings.

That would still be less than ideal, but should be relatively easy to implement.

That said, people with the technical ability to run and use bodyslide are probably capable of understanding the concept of .nif files (and this is a concept which many users of bodyslide are already familiar with).