Skip to content
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

New ItemSelector Widget (SingleItemSelector, MultiItemSelector) - libyui part #148

Merged
merged 23 commits into from
Sep 19, 2019
Merged

New ItemSelector Widget (SingleItemSelector, MultiItemSelector) - libyui part #148

merged 23 commits into from
Sep 19, 2019

Conversation

shundhammer
Copy link
Contributor

@shundhammer shundhammer commented Sep 12, 2019

Trello

https://trello.com/c/7qI1AAvN/1300-5-libyui-1-of-n-selection-widget

Bugzilla

Mockup Screenshot

time-warp-02

Description

This is a new widget for a scrollable 1-of-n or n-of-m selection with not only a simple text for each item, but a heading text and a (possibly multi-line, even rich text) description.

This is the libyui part of it, providing the base class YItemSelector and factory methods in YWidgetFactory.

Other Changes

  • Code cleanup: Cleaned up 10 years of cruft in the UI (incompatible indentation etc.).

  • Reverted insane change of std:: everything for common data types even in the .cc files. There is absolutely no need to clutter even the C++ implementation files with that; it just makes the code less readable. Now again using plain string and endl in the .cc files again instead of std::string and std::endl. This commit from 2012 should never have been accepted.

    While it might make sense to some extent for .h files to not have using std::something, it is completely insane to demand that in the .cc files as well. Even for .h files this is questionable: Nobody with sense invents a new string class without prefix or whatever because this will automatically clash with std::string in a gazillion places.

  • Moved out some of the helper functions from YDialog.cc to a new file YDialogHelpers.cc. This was completely misplaced there to begin with. YDialog is one of the most important classes in this library; it is counterproductive to clutter it with unrelated stuff like a convenience dialog that can show help texts or release notes. This needs to go to a separate class soonish. YDialog is much too important to have it cluttered with stuff like that.

Related PRs

src/YDialogHelpers.cc Outdated Show resolved Hide resolved
src/YDialogHelpers.cc Outdated Show resolved Hide resolved
@shundhammer
Copy link
Contributor Author

As discussed in the daily meeting, bumping the version to 3.8.0. I had to force-push for that.

@shundhammer shundhammer changed the title WIP: New ItemSelector Widget (SingleItemSelector, MultiItemSelector) - libyui part New ItemSelector Widget (SingleItemSelector, MultiItemSelector) - libyui part Sep 19, 2019
Copy link
Member

@aschnell aschnell left a comment

Choose a reason for hiding this comment

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

LGTM

@shundhammer shundhammer merged commit 214eae4 into libyui:master Sep 19, 2019
@shundhammer shundhammer deleted the huha-item-selector branch September 19, 2019 09:58
@shundhammer shundhammer restored the huha-item-selector branch September 19, 2019 09:59
@shundhammer shundhammer deleted the huha-item-selector branch September 19, 2019 10:11
@shundhammer shundhammer restored the huha-item-selector branch September 23, 2019 13:50
@shundhammer shundhammer deleted the huha-item-selector branch September 23, 2019 13:55
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