-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Debugger: Redesign UI based on docking system #12241
base: master
Are you sure you want to change the base?
Conversation
BTW for the final version, you should link to kddockwidgets as a system library and add it to the dependency build scripts instead of including the source here. This should also allow you to not enable rtti/exceptions on the rest of PCSX2. |
This is a good idea. |
de69dba
to
cdc89aa
Compare
I've switched to pulling in KDDockWidgets in the build-dependencies scripts, and I agree that regardless it's better, but it doesn't seem to be solving the problem with exceptions/RTTI. Whenever it enters a dynamic_cast in KDDW it just aborts with RTTI disabled. Does anyone have experience with this? Note that |
A google search found this stackoverflow answer, You are inheriting a KDDW class from within PCSX2 ( |
Ah yes, I forgot about that. It does. |
cdc89aa
to
de5232d
Compare
It seems we have two options: Either I develop a patch for KDDockWidgets to remove the uses of dynamic_cast, or we enable RTTI for pcsx2-qt. What would you all prefer I do? |
dbee3aa
to
f4790f9
Compare
ef51360
to
44d7331
Compare
cddbf69
to
c60fd14
Compare
c60fd14
to
c4098c9
Compare
c4098c9
to
9e45d94
Compare
Description of Changes
I have redesigned the debugger's UI based on the KDDockWidgets docking system library. Work in progress!
Some issues:
Rationale behind Changes
I feel like the current design has been limiting the kind of improvements I can make to the debugger.
As for the choice of library, there were three to pick from: Qt's own QDockWidget class, Qt Advanced Docking System and KDDockWidgets.
QDockWidget isn't really appropriate since the dock widgets behave more like oversized toolbars surrounding an unmoving central widget rather than a tree of splitters.
I evaluated Qt Advanced Docking System but dropped it due to poor Linux compatibility and extremely poor Wayland compatibility.
KDDockWidgets seems like the overall best pick. Best feature set, best platform compatibility, and it's backed up by KDAB.
Suggested Testing Steps
This is not yet ready for testing.