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

refactor: rewrite settings to support object #955

Open
wants to merge 26 commits into
base: v7.0
Choose a base branch
from

Conversation

neko-para
Copy link
Contributor

This PR is to replace the old PR #858 and helps reviewers to know what has changed.

ChungZH and others added 25 commits August 4, 2021 12:31
…#947)

* Change the command-line option --no-hot-exit to --no-restore-session.

* Change the command-line option --no-hot-exit to --no-restore-session.

* update

* style: format codes

* style: format codes

Co-authored-by: Yufan You <ouuansteve@gmail.com>
Co-authored-by: ChungZH <ChungZH@users.noreply.github.com>
Remove dependence to python3.
Update build workflow for installing library.
Update release workflow[win] to bundle yaml-cpp.dll.
Update DEB/control.
Update aur/*/PKGBUILD.
Update snap/snapcraft.yaml.
Change genSettings.py to genSettings.cpp.
Add new target for generated code.
Update sources list.
Remove genSettings.py.
Remove settings.json.
Add settings.yaml.
Move data to SettingManager.
Use SettingsHelper to access.
Remove from/to variantlist as we no longer directly load or save.
Declare store type(QStringList) for yaml parser.
Adjust minimum width because the dialog frame has changed.
Fix button to language settings.
Combine three buttons into one.
Use the rewrote wrapper.
Add registerWidgets to support focusing to SettingBase.
Plz refer to old PR #858 for details.
Use the new template.
Use the generated code for page creation.
Reload settings for PreferencePage when the dialog get focused.
Add SettingIter for setting tracking with keys for object.
Move some functions' implement to SettingsInfo.cpp
Add calling method support.
Add string formatting(replace @ to keys) support.
Reconstruct SettingInfo.
Add methods and replace onApply.
Remove `old` support.
Introduce and changed to yaml format.
Add YAML binding to some qt types.
Remove old warnings.
Add `load` for YAML and move `load` to `load_INI`. Same to `save`.
Remove supporting to the old type `QMap:xxx`.
Changed the logic for default value.
  Now we load the setting and fill up with default value.
Remove support for getting the default value.
  Now we can get that from SettingsInfo directly.
Use the rewrote SettingUpdater for different type.
Add backward compability for INI.
  Transfer `Formatter`.
  Transfer `Language`.
    Transfer `Parentheses`.
    Transfer `Snippets`.
  Transfer `LSP`.
  Transfer `Default Path`.
  Transfer `Actions`.
Remove old backward compability.
  Remove theme rename.
  Remove editor status parse.
Fix config location after changing app name.
This may be fixed by others already.
Add support to tristate.
Use SettingsHelper to rewrite logic using SettingsManager.
Use Application in application.hpp
This commit is just an exception.
@neko-para neko-para requested review from a team, coder3101, ouuan and swiftqwq and removed request for a team August 4, 2021 12:57
@neko-para
Copy link
Contributor Author

After all, we still don't know how to solve that AUR build test failed🤔

Comment on lines +135 to +140
add_library(
target_generated
OBJECT
src/Settings/SettingsInfo.hpp
${CMAKE_BINARY_DIR}/generated/SettingsInfo.cpp
)
Copy link
Member

Choose a reason for hiding this comment

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

I guess this caused the CI to fail. Why separate them as a library?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

check this
So I move the generated sources into another target to apply different clang-tidy setting.

Copy link
Member

Choose a reason for hiding this comment

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

@neko-para is this resolved?

@ouuan ouuan changed the title Support object reconstruct refactor: rewrite settings to support object Aug 6, 2021
@coder3101 coder3101 added this to the v7.0 milestone Aug 6, 2021
@coder3101 coder3101 added this to In progress in CP Editor 7.0 via automation Aug 6, 2021
@coder3101 coder3101 changed the base branch from master to v7.0 August 6, 2021 14:12
@stale
Copy link

stale bot commented Sep 5, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale Inactive issues label Sep 5, 2021
@ouuan ouuan added work in progress The work has been started and is in progress. and removed stale Inactive issues labels Sep 5, 2021
@ouuan ouuan added high_priority High Priority Issues are marked with this label. preferences Something related to the preferences refactor Code changes that neither bring a new feature nor fix a bug, but are good for developing. labels Nov 5, 2021
@neko-para
Copy link
Contributor Author

After all, what happended to this pr 🤔

@coder3101 coder3101 requested a review from ouuan June 15, 2022 16:37
@ouuan ouuan force-pushed the v7.0 branch 2 times, most recently from 699b182 to 061f146 Compare February 17, 2024 04:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
high_priority High Priority Issues are marked with this label. preferences Something related to the preferences refactor Code changes that neither bring a new feature nor fix a bug, but are good for developing. work in progress The work has been started and is in progress.
Projects
CP Editor 7.0
In progress
4 participants