New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GUI Redesign #132
Comments
IconsI'm using some icons from the Font Awesome icon font. There are a few possibilities for some icons:
I think it would be good for the menus and buttons to all have icons. |
Progress is going well now, I think the UI is now receiving all the necessary initialisation data. Two missing things in addition to the list above are:
The Javascript code is also in serious need of a refactor. The newer C++ stuff could do with a bit of a tidy too. |
I've been refactoring the JS code in the As well as object-orientating the code where it makes sense to do so, I've also:
I have run into a Chromium bug though, which causes elements with shadow roots to be undraggable. I think that's now almost all the UI initialisation done - the only things that still come to mind are:
|
I've just realised that the new UI is missing one feature compared to the 0.6 release, that being the ability to view and edit multiple content strings for messages. It's a difficult thing to have a good UI for, the 0.6 one isn't particularly great. I can't really think of a better way than a dialog box that gets displayed when the message content input element is displayed though. In light of the difficulties, I've decided to drop this feature. |
Hmm, although I've now implemented the callbacks for wiping user metadata, they don't update the UI completely: the reason for this is that the following properties of the plugin object are partially derived in C++ from the userlist, and so need to be re-derived too:
Also, the card's editor panel gets filled out when the card is created, but it should probably be done when switching to the editor panel. Either way, the plugin observer needs to update the content for when the Edit: This should now be done as of cefdc91 |
Sidebar now gets 33%, content the rest. The sidebar also no longer changes size when the filters are displayed. Part of #132.
@Freso: as resident UI critic, do you have any suggestions on how plugin priority display in edit mode could be improved? |
Are priorities being displayed in the UI at all at the moment? Loading up LOOT, I see this: My initial thought is having the raw priority numbers shown just left of the "mod menu" to the right, italicised and in grey text. Possibly with a slightly smaller font size. Possibly with "Priority: " prepended, though I don't think that would be needed. Perhaps as a hover text though. |
Oh. In edit mode. D'oh. Let me take another look. |
I'm not sure what you mean by "how plugin priority display in edit mode". The current text field seems proper for the job. Showing the priority in the general UI would give more of a hint how to weigh it in the editor though (e.g., you need to have it be less than -100 if you want to sort above |
The UI is clearly so bad you don't know what I'm referring to. 😢 Go into edit mode, and hover over the plugins in the sidebar to see what their priority values are. Clearly this needs to be done better... |
Haha. Yeah. I see it now. :) That would have never occurred to me on my own, though it's not a bad thing. I still think displaying the priorities right there smack-in-the-face on the list would be good. If you think it'll clutter up the UI too much, make the filter default to not showing them. As a masterlist editor, I would appreciate the overview of the (raw, no global priority filtering, please) priorities directly in the list. |
What about this instead: The globe and exclamation icons could be only shown while there is an editor open, since that's the only time you'd want to know about priorities. I may be going icon-mad, but it does solve the problem of showing mostly zero priorities and so making it more difficult to see non-zero priorities. |
As a masterlist editor, I think I would still like to be able to see the priorities directly in the list, though the icons do seem to be an improvement (based on the screenshot - I don't have time to try it right now). As I said, this could be with a filter that defaults to being off, to not clutter the interface for "regular users", and it could not show the priority for mods that do not have one set (it is |
It's not implemented properly yet anyway. ;) I'll go ahead and implement it as above, since I think it's an improvement over the current situation, and I can always go back and try a separate priority column later. |
Ah, OK. That looks quite good, though it might mean a fair bit of scrolling if you're trying to set a priority value against others. |
Yeah. I think this should be added in addition to the priorities being displayed on the left. This would mostly be for giving hints at a glance as to why LOOT has sorted plugins as it has (e.g., when showing only conflicting mods) and to verify that LOOT has picked up the priority from the masterlist (as I said before, this would probably mostly be useful for masterlist editors, and as thus could probably be hidden by default). |
Note for later: the current section highlighting is commonly known as scrollspy, here is a non-jQuery implementation. |
Something I'd like to do is try out a single-window design for LOOT's GUI, since as it is, it can get a bit messy with windows and dialogs all over the place.
One of the major problems I have with wxWidgets is that I find it difficult to create responsive UIs with it. As such, since I have experience with HTML/CSS, I decided to look for something which could be used to have a GUI built using them, and I found Chromium Embedded Framework.
UI Feature Implementation
Current section highlighting (like GitHub Guides have, for example)Not really workable with how the UI is implemented.Stuff That Calls C++
updateMasterlist
)sortPlugins
)applySort
)cancelSort
)getConflictingPlugins
)redatePlugins
)openLogLocation
)clearAllMetadata
)openReadme
)copyMetadata
)clearPluginMetadata
)changeGame
)UI Improvements
The text was updated successfully, but these errors were encountered: