Refactor: Full QML UI Migration#6
Merged
Merged
Conversation
added 24 commits
March 19, 2026 17:01
- Introduced SubscriptionStatus.qml as a singleton to mirror the C++ SubscriptionStatus::Value enum. - Updated SubscriptionWindow.qml to reference the new SubscriptionStatus enum for subscription status handling. - Refactored kanbanMain.qml to remove unnecessary code and improve readability. - Created subscriptionstatus.h to define the SubscriptionStatus class and its enum values. - Enhanced TagListModel to include roleNames for better data representation in QML.
…ate editors, tree view logic, and widget style utilities. Update test suite to exclude removed tests and adjust dependencies accordingly.
- Deleted the UpdaterWindow class implementation (updaterwindow.cpp, updaterwindow.h, updaterwindow.ui). - Removed all related test files and configurations (CMakeLists.txt, main.cpp, tst_notedata.cpp, tst_notedata.h, tst_notemodel.cpp, tst_notemodel.h, tests.pro).
…create qmlmodulecompat.qrc for resource management
…w functions for note preview and tree icon handling
…tures; add context menu for note actions, including restore and delete options
…eadability and consistency
…lobal menu, and refine note context menu interactions
…g, padding, and implicit height for improved usability
…dling, and improve layout for better usability
…alculation and set width/height based on content
…p, and refine margins for improved visual consistency
…oved responsiveness
…stency and usability
…ts.txt to use globbing for source files.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR migrates the ArcNotes application from a QtWidgets-based UI to a modern QML-based UI.
Key Changes:
MainWindow,UpdaterWindow,NodeTreeView,NoteListView) to a full QML frontend located insrc/qml/(e.g.,Main.qml,KanbanBoard.qml,UpdaterDialog.qml,AboutDialog.qml).AppBackend,NoteEditorBackend, andUpdateBackendto replace legacy view-logic files and cleanly bridge C++ application logic with the new QML frontend.QSimpleUpdater,qautostart,qmarkdowntextedit, andqxt, significantly reducing the codebase size.CMakeLists.txtto dynamically glob QML resources and cpp sources, adjusting internal resources and translation files..cssstylesheet files for Qt Widgets in favor of native QML styling and integrated theme management.Overall, this simplifies the application architecture, removing over 26k lines of legacy widget code while adding ~6.4k lines of modern QML/C++ integration code.