rpcsx/rpcs3/rpcs3qt/game_list_frame.cpp

2691 lines
79 KiB
C++
Raw Normal View History

2020-12-05 13:08:24 +01:00
#include "game_list_frame.h"
#include "qt_utils.h"
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
#include "settings_dialog.h"
#include "pad_settings_dialog.h"
2017-12-31 02:43:56 +01:00
#include "custom_table_widget_item.h"
2018-12-09 18:36:30 +01:00
#include "input_dialog.h"
2020-02-06 19:32:37 +01:00
#include "localized.h"
2020-02-22 20:42:49 +01:00
#include "progress_dialog.h"
#include "persistent_settings.h"
#include "emu_settings.h"
#include "gui_settings.h"
#include "game_list_delegate.h"
#include "game_list_table.h"
2020-02-22 20:42:49 +01:00
#include "game_list_grid.h"
#include "game_list_grid_item.h"
#include "patch_manager_dialog.h"
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2018-07-27 21:07:34 +02:00
#include "Emu/Memory/vm.h"
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
#include "Emu/System.h"
#include "Emu/vfs_config.h"
#include "Emu/system_utils.hpp"
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
#include "Loader/PSF.h"
2020-12-12 13:01:29 +01:00
#include "util/types.hpp"
#include "Utilities/File.h"
2022-10-23 12:13:11 +02:00
#include "Utilities/mutex.h"
#include "util/yaml.hpp"
#include "util/sysinfo.hpp"
#include "Input/pad_thread.h"
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
#include <algorithm>
#include <memory>
2017-07-12 15:58:48 +02:00
#include <set>
#include <regex>
#include <unordered_map>
2022-10-23 12:13:11 +02:00
#include <unordered_set>
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2019-07-27 14:37:54 +02:00
#include <QtConcurrent>
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
#include <QDesktopServices>
#include <QHeaderView>
#include <QMenuBar>
#include <QMessageBox>
#include <QScrollBar>
2018-06-11 19:19:15 +02:00
#include <QInputDialog>
#include <QApplication>
#include <QClipboard>
2021-03-12 18:52:22 +01:00
#include <QFileDialog>
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
LOG_CHANNEL(game_list_log, "GameList");
LOG_CHANNEL(sys_log, "SYS");
extern atomic_t<bool> g_system_progress_canceled;
2023-07-23 09:48:17 +02:00
std::string get_savestate_file(std::string_view title_id, std::string_view boot_pat, s64 abs_id, s64 rel_id);
2020-03-07 18:01:09 +01:00
game_list_frame::game_list_frame(std::shared_ptr<gui_settings> gui_settings, std::shared_ptr<emu_settings> emu_settings, std::shared_ptr<persistent_settings> persistent_settings, QWidget* parent)
: custom_dock_widget(tr("Game List"), parent)
2021-04-07 23:05:18 +02:00
, m_gui_settings(std::move(gui_settings))
, m_emu_settings(std::move(emu_settings))
, m_persistent_settings(std::move(persistent_settings))
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2020-03-07 18:01:09 +01:00
m_icon_size = gui::gl_icon_size_min; // ensure a valid size
m_is_list_layout = m_gui_settings->GetValue(gui::gl_listMode).toBool();
m_margin_factor = m_gui_settings->GetValue(gui::gl_marginFactor).toReal();
m_text_factor = m_gui_settings->GetValue(gui::gl_textFactor).toReal();
m_icon_color = m_gui_settings->GetValue(gui::gl_iconColor).value<QColor>();
m_col_sort_order = m_gui_settings->GetValue(gui::gl_sortAsc).toBool() ? Qt::AscendingOrder : Qt::DescendingOrder;
m_sort_column = m_gui_settings->GetValue(gui::gl_sortCol).toInt();
2020-01-19 14:00:57 +01:00
m_hidden_list = gui::utils::list_to_set(m_gui_settings->GetValue(gui::gl_hidden_list).toStringList());
2020-03-07 18:01:09 +01:00
m_old_layout_is_list = m_is_list_layout;
// Save factors for first setup
2020-03-07 18:01:09 +01:00
m_gui_settings->SetValue(gui::gl_iconColor, m_icon_color);
m_gui_settings->SetValue(gui::gl_marginFactor, m_margin_factor);
m_gui_settings->SetValue(gui::gl_textFactor, m_text_factor);
2023-04-24 23:37:24 +02:00
// Only show the progress dialog after some time has passed
m_progress_dialog_timer = new QTimer(this);
m_progress_dialog_timer->setSingleShot(true);
m_progress_dialog_timer->setInterval(200);
connect(m_progress_dialog_timer, &QTimer::timeout, this, [this]()
{
if (m_progress_dialog)
{
m_progress_dialog->show();
}
});
2020-03-07 18:01:09 +01:00
m_game_dock = new QMainWindow(this);
m_game_dock->setWindowFlags(Qt::Widget);
setWidget(m_game_dock);
m_game_grid = new game_list_grid();
m_game_grid->installEventFilter(this);
m_game_grid->scroll_area()->verticalScrollBar()->installEventFilter(this);
m_game_list = new game_list_table(this, m_persistent_settings);
m_game_list->installEventFilter(this);
m_game_list->verticalScrollBar()->installEventFilter(this);
m_game_compat = new game_compatibility(m_gui_settings, this);
2017-12-04 21:59:28 +01:00
2020-03-07 18:01:09 +01:00
m_central_widget = new QStackedWidget(this);
m_central_widget->addWidget(m_game_list);
m_central_widget->addWidget(m_game_grid);
if (m_is_list_layout)
{
m_central_widget->setCurrentWidget(m_game_list);
}
else
{
m_central_widget->setCurrentWidget(m_game_grid);
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2020-03-07 18:01:09 +01:00
m_game_dock->setCentralWidget(m_central_widget);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
// Actions regarding showing/hiding columns
2020-03-07 20:54:42 +01:00
auto add_column = [this](gui::game_list_columns col, const QString& header_text, const QString& action_text)
{
2023-05-18 11:29:23 +02:00
m_game_list->setHorizontalHeaderItem(static_cast<int>(col), new QTableWidgetItem(header_text));
m_columnActs.append(new QAction(action_text, this));
};
2023-05-18 11:29:23 +02:00
add_column(gui::game_list_columns::icon, tr("Icon"), tr("Show Icons"));
add_column(gui::game_list_columns::name, tr("Name"), tr("Show Names"));
add_column(gui::game_list_columns::serial, tr("Serial"), tr("Show Serials"));
add_column(gui::game_list_columns::firmware, tr("Firmware"), tr("Show Firmwares"));
add_column(gui::game_list_columns::version, tr("Version"), tr("Show Versions"));
add_column(gui::game_list_columns::category, tr("Category"), tr("Show Categories"));
add_column(gui::game_list_columns::path, tr("Path"), tr("Show Paths"));
add_column(gui::game_list_columns::move, tr("PlayStation Move"), tr("Show PlayStation Move"));
add_column(gui::game_list_columns::resolution, tr("Supported Resolutions"), tr("Show Supported Resolutions"));
add_column(gui::game_list_columns::sound, tr("Sound Formats"), tr("Show Sound Formats"));
add_column(gui::game_list_columns::parental, tr("Parental Level"), tr("Show Parental Levels"));
add_column(gui::game_list_columns::last_play, tr("Last Played"), tr("Show Last Played"));
add_column(gui::game_list_columns::playtime, tr("Time Played"), tr("Show Time Played"));
add_column(gui::game_list_columns::compat, tr("Compatibility"), tr("Show Compatibility"));
add_column(gui::game_list_columns::dir_size, tr("Space On Disk"), tr("Show Space On Disk"));
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
// Events
2023-04-24 23:37:24 +02:00
connect(&m_parsing_watcher, &QFutureWatcher<void>::finished, this, &game_list_frame::OnParsingFinished);
connect(&m_parsing_watcher, &QFutureWatcher<void>::canceled, this, [this]()
{
WaitAndAbortSizeCalcThreads();
WaitAndAbortRepaintThreads();
m_path_entries.clear();
m_path_list.clear();
m_game_data.clear();
m_serials.clear();
m_games.pop_all();
});
2021-04-16 03:53:31 +02:00
connect(&m_refresh_watcher, &QFutureWatcher<void>::finished, this, &game_list_frame::OnRefreshFinished);
connect(&m_refresh_watcher, &QFutureWatcher<void>::canceled, this, [this]()
{
WaitAndAbortSizeCalcThreads();
WaitAndAbortRepaintThreads();
2021-06-10 12:55:08 +02:00
m_path_entries.clear();
2021-04-16 03:53:31 +02:00
m_path_list.clear();
m_game_data.clear();
m_serials.clear();
m_games.pop_all();
});
2020-03-07 18:01:09 +01:00
connect(m_game_list, &QTableWidget::customContextMenuRequested, this, &game_list_frame::ShowContextMenu);
2021-04-16 03:53:31 +02:00
connect(m_game_list, &QTableWidget::itemSelectionChanged, this, &game_list_frame::ItemSelectionChangedSlot);
connect(m_game_list, &QTableWidget::itemDoubleClicked, this, QOverload<QTableWidgetItem*>::of(&game_list_frame::doubleClickedSlot));
2017-10-06 11:10:18 +02:00
2020-03-07 18:01:09 +01:00
connect(m_game_list->horizontalHeader(), &QHeaderView::sectionClicked, this, &game_list_frame::OnColClicked);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
connect(m_game_grid, &QWidget::customContextMenuRequested, this, &game_list_frame::ShowContextMenu);
connect(m_game_grid, &game_list_grid::ItemSelectionChanged, this, &game_list_frame::NotifyGameSelection);
connect(m_game_grid, &game_list_grid::ItemDoubleClicked, this, QOverload<const game_info&>::of(&game_list_frame::doubleClickedSlot));
2022-02-01 20:53:46 +01:00
connect(m_game_compat, &game_compatibility::DownloadStarted, this, [this]()
2017-12-04 21:59:28 +01:00
{
for (const auto& game : m_game_data)
2017-12-04 21:59:28 +01:00
{
game->compat = m_game_compat->GetStatusData("Download");
2017-12-04 21:59:28 +01:00
}
Refresh();
});
2022-02-01 20:53:46 +01:00
connect(m_game_compat, &game_compatibility::DownloadFinished, this, &game_list_frame::OnCompatFinished);
connect(m_game_compat, &game_compatibility::DownloadCanceled, this, &game_list_frame::OnCompatFinished);
connect(m_game_compat, &game_compatibility::DownloadError, this, [this](const QString& error)
2017-12-04 21:59:28 +01:00
{
2022-02-01 20:53:46 +01:00
OnCompatFinished();
QMessageBox::warning(this, tr("Warning!"), tr("Failed to retrieve the online compatibility database!\nFalling back to local database.\n\n%0").arg(error));
2017-12-04 21:59:28 +01:00
});
connect(m_game_list, &game_list::FocusToSearchBar, this, &game_list_frame::FocusToSearchBar);
connect(m_game_grid, &game_list_grid::FocusToSearchBar, this, &game_list_frame::FocusToSearchBar);
2023-05-18 11:29:23 +02:00
m_game_list->create_header_actions(m_columnActs,
[this](int col) { return m_gui_settings->GetGamelistColVisibility(static_cast<gui::game_list_columns>(col)); },
[this](int col, bool visible) { m_gui_settings->SetGamelistColVisibility(static_cast<gui::game_list_columns>(col), visible); });
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
void game_list_frame::LoadSettings()
{
2020-03-07 18:01:09 +01:00
m_col_sort_order = m_gui_settings->GetValue(gui::gl_sortAsc).toBool() ? Qt::AscendingOrder : Qt::DescendingOrder;
m_sort_column = m_gui_settings->GetValue(gui::gl_sortCol).toInt();
2023-04-18 21:33:31 +02:00
m_category_filters = m_gui_settings->GetGameListCategoryFilters(true);
m_grid_category_filters = m_gui_settings->GetGameListCategoryFilters(false);
2020-03-07 18:01:09 +01:00
m_draw_compat_status_to_grid = m_gui_settings->GetValue(gui::gl_draw_compat).toBool();
2021-03-12 22:24:35 +01:00
m_show_custom_icons = m_gui_settings->GetValue(gui::gl_custom_icon).toBool();
m_play_hover_movies = m_gui_settings->GetValue(gui::gl_hover_gifs).toBool();
for (int col = 0; col < m_columnActs.count(); ++col)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2023-05-18 11:29:23 +02:00
const bool vis = m_gui_settings->GetGamelistColVisibility(static_cast<gui::game_list_columns>(col));
m_columnActs[col]->setChecked(vis);
2020-03-07 18:01:09 +01:00
m_game_list->setColumnHidden(col, !vis);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
}
game_list_frame::~game_list_frame()
{
WaitAndAbortSizeCalcThreads();
WaitAndAbortRepaintThreads();
2023-04-24 23:37:24 +02:00
gui::utils::stop_future_watcher(m_parsing_watcher, true);
gui::utils::stop_future_watcher(m_refresh_watcher, true);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
void game_list_frame::OnColClicked(int col)
{
2023-05-18 11:29:23 +02:00
if (col == static_cast<int>(gui::game_list_columns::icon)) return; // Don't "sort" icons.
2020-03-07 18:01:09 +01:00
if (col == m_sort_column)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2020-03-07 18:01:09 +01:00
m_col_sort_order = (m_col_sort_order == Qt::AscendingOrder) ? Qt::DescendingOrder : Qt::AscendingOrder;
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
else
{
2020-03-07 18:01:09 +01:00
m_col_sort_order = Qt::AscendingOrder;
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
2020-03-07 18:01:09 +01:00
m_sort_column = col;
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2020-03-07 18:01:09 +01:00
m_gui_settings->SetValue(gui::gl_sortAsc, m_col_sort_order == Qt::AscendingOrder);
m_gui_settings->SetValue(gui::gl_sortCol, col);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
m_game_list->sort(m_game_data.count(), m_sort_column, m_col_sort_order);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
// Get visibility of entries
bool game_list_frame::IsEntryVisible(const game_info& game, bool search_fallback) const
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2023-04-18 21:33:31 +02:00
const auto matches_category = [&]()
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2020-03-07 18:01:09 +01:00
if (m_is_list_layout)
{
2020-03-07 18:01:09 +01:00
return m_category_filters.contains(qstr(game->info.category));
}
2020-02-06 19:32:37 +01:00
2023-04-18 21:33:31 +02:00
return m_grid_category_filters.contains(qstr(game->info.category));
};
const QString serial = qstr(game->info.serial);
2021-04-07 23:05:18 +02:00
const bool is_visible = m_show_hidden || !m_hidden_list.contains(serial);
return is_visible && matches_category() && SearchMatchesApp(qstr(game->info.name), serial, search_fallback);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
2019-01-06 22:32:23 +01:00
std::string game_list_frame::GetCacheDirBySerial(const std::string& serial)
{
return rpcs3::utils::get_cache_dir() + serial;
2019-01-06 22:32:23 +01:00
}
std::string game_list_frame::GetDataDirBySerial(const std::string& serial)
{
return fs::get_config_dir() + "data/" + serial;
}
2023-04-24 23:37:24 +02:00
void game_list_frame::push_path(const std::string& path, std::vector<std::string>& legit_paths)
{
{
std::lock_guard lock(m_path_mutex);
if (!m_path_list.insert(path).second)
{
return;
}
}
legit_paths.push_back(path);
}
2020-03-07 18:01:09 +01:00
void game_list_frame::Refresh(const bool from_drive, const bool scroll_after)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
if (from_drive)
{
WaitAndAbortSizeCalcThreads();
}
WaitAndAbortRepaintThreads();
2023-04-24 23:37:24 +02:00
gui::utils::stop_future_watcher(m_parsing_watcher, from_drive);
gui::utils::stop_future_watcher(m_refresh_watcher, from_drive);
2021-04-16 03:53:31 +02:00
2023-04-24 23:37:24 +02:00
if (m_progress_dialog_timer)
{
m_progress_dialog_timer->stop();
}
if (m_progress_dialog)
{
2023-04-24 23:37:24 +02:00
m_progress_dialog->accept();
m_progress_dialog->deleteLater();
m_progress_dialog = nullptr;
}
2023-04-24 23:37:24 +02:00
if (from_drive)
{
m_path_entries.clear();
2021-04-16 03:53:31 +02:00
m_path_list.clear();
m_serials.clear();
m_game_data.clear();
2018-06-11 19:19:15 +02:00
m_notes.clear();
2021-04-16 03:53:31 +02:00
m_games.pop_all();
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2023-04-24 23:37:24 +02:00
m_progress_dialog = new progress_dialog(tr("Loading games"), tr("Loading games, please wait..."), tr("Cancel"), 0, 0, true, this, Qt::Dialog | Qt::WindowTitleHint | Qt::CustomizeWindowHint);
connect(&m_refresh_watcher, &QFutureWatcher<void>::progressRangeChanged, this, [this](int minimum, int maximum)
{
if (m_progress_dialog)
{
m_progress_dialog->SetRange(minimum, maximum);
}
}, Qt::QueuedConnection);
connect(&m_refresh_watcher, &QFutureWatcher<void>::progressValueChanged, this, [this](int value)
{
if (m_progress_dialog)
{
m_progress_dialog->SetValue(value);
}
}, Qt::QueuedConnection);
2023-04-24 23:37:24 +02:00
connect(m_progress_dialog, &QProgressDialog::canceled, this, [this]()
{
gui::utils::stop_future_watcher(m_parsing_watcher, true);
gui::utils::stop_future_watcher(m_refresh_watcher, true);
m_path_entries.clear();
m_path_list.clear();
m_serials.clear();
m_game_data.clear();
m_notes.clear();
m_games.pop_all();
if (m_progress_dialog_timer)
{
m_progress_dialog_timer->stop();
}
m_progress_dialog->deleteLater();
m_progress_dialog = nullptr;
});
if (m_progress_dialog_timer)
{
m_progress_dialog_timer->start();
}
const std::string games_dir = g_cfg_vfs.get(g_cfg_vfs.games_dir, rpcs3::utils::get_emu_dir());
const u32 games_added = Emu.AddGamesFromDir(games_dir);
if (games_added)
{
game_list_log.notice("Refresh added %d new entries found in %s", games_added, games_dir);
}
const std::string _hdd = Emu.GetCallbacks().resolve_path(rpcs3::utils::get_hdd0_dir()) + '/';
2017-07-12 15:58:48 +02:00
2023-04-24 23:37:24 +02:00
m_parsing_watcher.setFuture(QtConcurrent::map(m_parsing_threads, [this, _hdd](int index)
{
2023-04-24 23:37:24 +02:00
if (index > 0)
{
2023-04-24 23:37:24 +02:00
game_list_log.error("Unexpected thread index: %d", index);
return;
}
2023-04-24 23:37:24 +02:00
const auto add_dir = [this](const std::string& path, bool is_disc)
{
2023-04-24 23:37:24 +02:00
for (const auto& entry : fs::dir(path))
{
2023-04-24 23:37:24 +02:00
if (!entry.is_directory || entry.name == "." || entry.name == "..")
{
continue;
}
2023-04-24 23:37:24 +02:00
QApplication::processEvents();
std::lock_guard lock(m_path_mutex);
m_path_entries.emplace_back(path_entry{path + entry.name, is_disc, false});
}
2023-04-24 23:37:24 +02:00
};
const std::string hdd0_game = _hdd + "game/";
add_dir(hdd0_game, false);
2023-04-24 23:37:24 +02:00
add_dir(_hdd + "disc/", true); // Deprecated
for (const auto& [serial, path] : Emu.GetGamesConfig().get_games())
{
2023-04-24 23:37:24 +02:00
std::string game_dir = path;
game_dir.resize(game_dir.find_last_not_of('/') + 1);
if (game_dir.empty() || path.starts_with(hdd0_game))
2017-07-12 15:58:48 +02:00
{
continue;
}
2023-04-24 23:37:24 +02:00
// Don't use the C00 subdirectory in our game list
if (game_dir.ends_with("/C00") || game_dir.ends_with("\\C00"))
{
game_dir = game_dir.substr(0, game_dir.size() - 4);
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2023-04-24 23:37:24 +02:00
QApplication::processEvents();
std::lock_guard lock(m_path_mutex);
m_path_entries.emplace_back(path_entry{game_dir, false, true});
}
}));
2023-04-24 23:37:24 +02:00
return;
}
2023-04-24 23:37:24 +02:00
// Fill Game List / Game Grid
const std::string selected_item = CurrentSelectionPath();
// Release old data
for (const auto& game : m_game_data)
{
game->item = nullptr;
}
// Get list of matching apps
std::vector<game_info> matching_apps;
for (const auto& app : m_game_data)
{
if (IsEntryVisible(app))
{
matching_apps.push_back(app);
}
}
// Fallback is not needed when at least one entry is visible
if (matching_apps.empty())
{
for (const auto& app : m_game_data)
{
if (IsEntryVisible(app, true))
{
matching_apps.push_back(app);
}
}
}
2023-04-24 23:37:24 +02:00
if (m_is_list_layout)
{
m_game_grid->clear_list();
2023-04-24 23:37:24 +02:00
const int scroll_position = m_game_list->verticalScrollBar()->value();
m_game_list->populate(matching_apps, m_notes, m_titles, selected_item, m_play_hover_movies);
m_game_list->sort(m_game_data.count(), m_sort_column, m_col_sort_order);
2023-04-24 23:37:24 +02:00
RepaintIcons();
2023-02-12 21:17:03 +01:00
2023-04-24 23:37:24 +02:00
if (scroll_after)
{
m_game_list->scrollTo(m_game_list->currentIndex(), QAbstractItemView::PositionAtCenter);
}
else
{
m_game_list->verticalScrollBar()->setValue(scroll_position);
2017-07-12 15:58:48 +02:00
}
2023-04-24 23:37:24 +02:00
}
else
{
m_game_list->clear_list();
m_game_grid->populate(matching_apps, m_notes, m_titles, selected_item, m_play_hover_movies);
2023-04-24 23:37:24 +02:00
RepaintIcons();
}
}
2017-07-12 15:58:48 +02:00
2023-04-24 23:37:24 +02:00
void game_list_frame::OnParsingFinished()
{
const Localized localized;
const std::string dev_flash = g_cfg_vfs.get_dev_flash();
const std::string _hdd = rpcs3::utils::get_hdd0_dir();
2023-04-24 23:37:24 +02:00
m_path_entries.emplace_back(path_entry{dev_flash + "vsh/module/vsh.self", false, false});
2023-04-24 23:37:24 +02:00
// Remove duplicates
sort(m_path_entries.begin(), m_path_entries.end(), [](const path_entry& l, const path_entry& r){return l.path < r.path;});
m_path_entries.erase(unique(m_path_entries.begin(), m_path_entries.end(), [](const path_entry& l, const path_entry& r){return l.path == r.path;}), m_path_entries.end());
const std::string game_icon_path = fs::get_config_dir() + "/Icons/game_icons/";
const auto add_game = [this, dev_flash, cat_unknown_localized = localized.category.unknown.toStdString(), cat_unknown = cat::cat_unknown.toStdString(), game_icon_path, _hdd, play_hover_movies = m_play_hover_movies, show_custom_icons = m_show_custom_icons](const std::string& dir_or_elf)
2023-04-24 23:37:24 +02:00
{
GameInfo game{};
game.path = dir_or_elf;
2023-04-24 23:37:24 +02:00
const Localized thread_localized;
2023-04-24 23:37:24 +02:00
const std::string sfo_dir = rpcs3::utils::get_sfo_dir_from_game_path(dir_or_elf);
const psf::registry psf = psf::load_object(sfo_dir + "/PARAM.SFO");
const std::string_view title_id = psf::get_string(psf, "TITLE_ID", "");
2023-04-24 23:37:24 +02:00
if (title_id.empty())
{
if (!fs::is_file(dir_or_elf))
2021-04-16 03:53:31 +02:00
{
2023-04-24 23:37:24 +02:00
// Do not care about invalid entries
return;
}
2021-04-16 03:53:31 +02:00
2023-04-24 23:37:24 +02:00
game.serial = dir_or_elf.substr(dir_or_elf.find_last_of(fs::delim) + 1);
game.category = cat::cat_ps3_os.toStdString(); // Key for operating system executables
game.version = utils::get_firmware_version();
game.app_ver = game.version;
2023-04-24 23:37:24 +02:00
game.fw = game.version;
game.bootable = 1;
game.icon_path = dev_flash + "vsh/resource/explore/icon/icon_home.png";
2023-04-24 23:37:24 +02:00
if (dir_or_elf.starts_with(dev_flash))
{
std::string path_vfs = dir_or_elf.substr(dev_flash.size());
2023-04-24 23:37:24 +02:00
if (const usz pos = path_vfs.find_first_not_of(fs::delim); pos != umax && pos != 0)
{
path_vfs = path_vfs.substr(pos);
}
2023-04-24 23:37:24 +02:00
if (const auto it = thread_localized.title.titles.find(path_vfs); it != thread_localized.title.titles.cend())
{
2023-04-24 23:37:24 +02:00
game.name = it->second.toStdString();
}
}
2023-04-24 23:37:24 +02:00
if (game.name.empty())
2021-04-16 03:53:31 +02:00
{
2023-04-24 23:37:24 +02:00
game.name = game.serial;
}
}
else
{
game.serial = std::string(title_id);
game.name = std::string(psf::get_string(psf, "TITLE", cat_unknown_localized));
game.app_ver = std::string(psf::get_string(psf, "APP_VER", cat_unknown_localized));
game.version = std::string(psf::get_string(psf, "VERSION", cat_unknown_localized));
game.category = std::string(psf::get_string(psf, "CATEGORY", cat_unknown));
game.fw = std::string(psf::get_string(psf, "PS3_SYSTEM_VER", cat_unknown_localized));
game.parental_lvl = psf::get_integer(psf, "PARENTAL_LEVEL", 0);
game.resolution = psf::get_integer(psf, "RESOLUTION", 0);
game.sound_format = psf::get_integer(psf, "SOUND_FORMAT", 0);
game.bootable = psf::get_integer(psf, "BOOTABLE", 0);
game.attr = psf::get_integer(psf, "ATTRIBUTE", 0);
game.icon_path = sfo_dir + "/ICON0.PNG";
game.movie_path = sfo_dir + "/ICON1.PAM";
2023-04-24 23:37:24 +02:00
if (game.category == "DG")
{
const std::string game_data_dir = _hdd + "game/" + game.serial;
if (std::string latest_icon = game_data_dir + "/ICON0.PNG"; fs::is_file(latest_icon))
{
2023-04-24 23:37:24 +02:00
game.icon_path = std::move(latest_icon);
}
if (std::string latest_movie = game_data_dir + "/ICON1.PAM"; fs::is_file(latest_movie))
{
game.movie_path = std::move(latest_movie);
}
2021-04-16 03:53:31 +02:00
}
2023-04-24 23:37:24 +02:00
}
if (show_custom_icons)
2023-04-24 23:37:24 +02:00
{
if (std::string icon_path = game_icon_path + game.serial + "/ICON0.PNG"; fs::is_file(icon_path))
2021-04-16 03:53:31 +02:00
{
2023-04-24 23:37:24 +02:00
game.icon_path = std::move(icon_path);
2021-04-16 03:53:31 +02:00
}
2023-04-24 23:37:24 +02:00
}
2023-04-24 23:37:24 +02:00
const QString serial = qstr(game.serial);
2023-04-24 23:37:24 +02:00
m_games_mutex.lock();
2023-04-24 23:37:24 +02:00
// Read persistent_settings values
const QString note = m_persistent_settings->GetValue(gui::persistent::notes, serial, "").toString();
const QString title = m_persistent_settings->GetValue(gui::persistent::titles, serial, "").toString().simplified();
QString last_played = m_persistent_settings->GetValue(gui::persistent::last_played, serial, "").toString();
quint64 playtime = m_persistent_settings->GetValue(gui::persistent::playtime, serial, 0).toULongLong();
2023-04-24 23:37:24 +02:00
// Set persistent_settings values if values exist
if (!last_played.isEmpty())
{
m_persistent_settings->SetLastPlayed(serial, last_played);
}
if (playtime > 0)
{
m_persistent_settings->SetPlaytime(serial, playtime);
}
2023-04-24 23:37:24 +02:00
m_serials.insert(serial);
2023-04-24 23:37:24 +02:00
if (!note.isEmpty())
{
m_notes.insert(serial, note);
}
2023-04-24 23:37:24 +02:00
if (!title.isEmpty())
{
m_titles.insert(serial, title);
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2023-04-24 23:37:24 +02:00
m_games_mutex.unlock();
2023-04-24 23:37:24 +02:00
QString qt_cat = qstr(game.category);
2023-04-24 23:37:24 +02:00
if (const auto boot_cat = thread_localized.category.cat_boot.find(qt_cat); boot_cat != thread_localized.category.cat_boot.cend())
{
qt_cat = boot_cat->second;
}
else if (const auto data_cat = thread_localized.category.cat_data.find(qt_cat); data_cat != thread_localized.category.cat_data.cend())
{
qt_cat = data_cat->second;
}
else if (game.category == cat_unknown)
{
qt_cat = thread_localized.category.unknown;
}
else
{
qt_cat = thread_localized.category.other;
}
gui_game_info info{};
info.info = std::move(game);
info.localized_category = std::move(qt_cat);
info.compat = m_game_compat->GetCompatibility(info.info.serial);
info.hasCustomConfig = fs::is_file(rpcs3::utils::get_custom_config_path(info.info.serial));
info.hasCustomPadConfig = fs::is_file(rpcs3::utils::get_custom_input_config_path(info.info.serial));
info.has_hover_gif = fs::is_file(game_icon_path + info.info.serial + "/hover.gif");
info.has_hover_pam = fs::is_file(info.info.movie_path);
// Free some memory
if (!info.has_hover_pam)
{
info.info.movie_path.clear();
}
2023-04-24 23:37:24 +02:00
m_games.push(std::make_shared<gui_game_info>(std::move(info)));
};
const auto add_disc_dir = [this](const std::string& path, std::vector<std::string>& legit_paths)
{
for (const auto& entry : fs::dir(path))
{
if (!entry.is_directory || entry.name == "." || entry.name == "..")
2021-04-16 03:53:31 +02:00
{
2023-04-24 23:37:24 +02:00
continue;
2021-04-16 03:53:31 +02:00
}
2023-04-24 23:37:24 +02:00
if (entry.name == "PS3_GAME" || std::regex_match(entry.name, std::regex("^PS3_GM[[:digit:]]{2}$")))
2021-04-16 03:53:31 +02:00
{
2023-04-24 23:37:24 +02:00
push_path(path + "/" + entry.name, legit_paths);
2021-04-16 03:53:31 +02:00
}
2023-04-24 23:37:24 +02:00
}
};
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2023-04-24 23:37:24 +02:00
m_refresh_watcher.setFuture(QtConcurrent::map(m_path_entries, [this, _hdd, add_disc_dir, add_game](const path_entry& entry)
{
std::vector<std::string> legit_paths;
2023-04-24 23:37:24 +02:00
if (entry.is_from_yml)
{
2023-04-24 23:37:24 +02:00
if (fs::is_file(entry.path + "/PARAM.SFO"))
{
2023-04-24 23:37:24 +02:00
push_path(entry.path, legit_paths);
}
else if (fs::is_file(entry.path + "/PS3_DISC.SFB"))
{
// Check if a path loaded from games.yml is already registered in add_dir(_hdd + "disc/");
if (entry.path.starts_with(_hdd))
{
2023-04-24 23:37:24 +02:00
std::string_view frag = std::string_view(entry.path).substr(_hdd.size());
if (frag.starts_with("disc/"))
{
2023-04-24 23:37:24 +02:00
// Our path starts from _hdd + 'disc/'
frag.remove_prefix(5);
2023-04-24 23:37:24 +02:00
// Check if the remaining part is the only path component
if (frag.find_first_of('/') + 1 == 0)
{
2023-04-24 23:37:24 +02:00
game_list_log.trace("Removed duplicate: %s", entry.path);
2023-04-24 23:37:24 +02:00
if (static std::unordered_set<std::string> warn_once_list; warn_once_list.emplace(entry.path).second)
{
2023-04-24 23:37:24 +02:00
game_list_log.todo("Game at '%s' is using deprecated directory '/dev_hdd0/disc/'.\nConsider moving into '%s'.", entry.path, g_cfg_vfs.get(g_cfg_vfs.games_dir, rpcs3::utils::get_emu_dir()));
}
2023-04-24 23:37:24 +02:00
return;
}
}
}
add_disc_dir(entry.path, legit_paths);
}
else
{
2023-04-24 23:37:24 +02:00
game_list_log.trace("Invalid game path registered: %s", entry.path);
return;
}
2023-04-24 23:37:24 +02:00
}
else if (fs::is_file(entry.path + "/PS3_DISC.SFB"))
{
if (!entry.is_disc)
{
2023-04-24 23:37:24 +02:00
game_list_log.error("Invalid game path found in %s", entry.path);
return;
}
2023-04-24 23:37:24 +02:00
add_disc_dir(entry.path, legit_paths);
}
2021-04-16 03:53:31 +02:00
else
{
2023-04-24 23:37:24 +02:00
if (entry.is_disc)
{
game_list_log.error("Invalid disc path found in %s", entry.path);
return;
}
push_path(entry.path, legit_paths);
2021-04-16 03:53:31 +02:00
}
2023-04-24 23:37:24 +02:00
for (const std::string& path : legit_paths)
{
add_game(path);
}
}));
2021-04-16 03:53:31 +02:00
}
2021-04-16 03:53:31 +02:00
void game_list_frame::OnRefreshFinished()
{
WaitAndAbortSizeCalcThreads();
WaitAndAbortRepaintThreads();
2021-06-10 12:55:08 +02:00
2021-04-16 03:53:31 +02:00
for (auto&& g : m_games.pop_all())
{
m_game_data.push_back(g);
}
const Localized localized;
const std::string cat_unknown_localized = localized.category.unknown.toStdString();
2021-04-16 03:53:31 +02:00
// Try to update the app version for disc games if there is a patch
for (const auto& entry : m_game_data)
{
if (entry->info.category == "DG")
{
2021-04-16 03:53:31 +02:00
for (const auto& other : m_game_data)
{
2021-04-16 03:53:31 +02:00
// The patch is game data and must have the same serial and an app version
static constexpr auto version_is_bigger = [](const std::string& v0, const std::string& v1, const std::string& serial, bool is_fw)
{
2021-04-16 03:53:31 +02:00
std::add_pointer_t<char> ev0, ev1;
const double ver0 = std::strtod(v0.c_str(), &ev0);
const double ver1 = std::strtod(v1.c_str(), &ev1);
2021-04-16 03:53:31 +02:00
if (v0.c_str() + v0.size() == ev0 && v1.c_str() + v1.size() == ev1)
{
return ver0 > ver1;
}
2021-04-16 03:53:31 +02:00
game_list_log.error("Failed to update the displayed %s numbers for title ID %s\n'%s'-'%s'", is_fw ? "firmware version" : "version", serial, v0, v1);
return false;
};
if (entry->info.serial == other->info.serial && other->info.category != "DG" && other->info.app_ver != cat_unknown_localized)
2021-04-16 03:53:31 +02:00
{
// Update the app version if it's higher than the disc's version (old games may not have an app version)
if (entry->info.app_ver == cat_unknown_localized || version_is_bigger(other->info.app_ver, entry->info.app_ver, entry->info.serial, true))
{
2021-04-16 03:53:31 +02:00
entry->info.app_ver = other->info.app_ver;
}
// Update the firmware version if possible and if it's higher than the disc's version
if (other->info.fw != cat_unknown_localized && version_is_bigger(other->info.fw, entry->info.fw, entry->info.serial, false))
{
entry->info.fw = other->info.fw;
}
// Update the parental level if possible and if it's higher than the disc's level
if (other->info.parental_lvl != 0 && other->info.parental_lvl > entry->info.parental_lvl)
{
entry->info.parental_lvl = other->info.parental_lvl;
}
}
}
}
2021-04-16 03:53:31 +02:00
}
2021-04-16 03:53:31 +02:00
// Sort by name at the very least.
std::sort(m_game_data.begin(), m_game_data.end(), [&](const game_info& game1, const game_info& game2)
{
const QString title1 = m_titles.value(qstr(game1->info.serial), qstr(game1->info.name));
const QString title2 = m_titles.value(qstr(game2->info.serial), qstr(game2->info.name));
return title1.toLower() < title2.toLower();
});
2021-04-16 03:53:31 +02:00
// clean up hidden games list
m_hidden_list.intersect(m_serials);
m_gui_settings->SetValue(gui::gl_hidden_list, QStringList(m_hidden_list.values()));
m_serials.clear();
m_path_list.clear();
m_path_entries.clear();
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2021-04-16 03:53:31 +02:00
Refresh();
2023-04-24 23:37:24 +02:00
if (!std::exchange(m_initial_refresh_done, true))
{
m_game_list->restore_layout(m_gui_settings->GetValue(gui::gl_state).toByteArray());
2023-04-24 23:37:24 +02:00
}
if (m_progress_dialog_timer)
{
m_progress_dialog_timer->stop();
}
if (m_progress_dialog)
{
m_progress_dialog->accept();
m_progress_dialog->deleteLater();
m_progress_dialog = nullptr;
}
2023-12-01 21:13:02 +01:00
// Emit signal and remove slots
Q_EMIT Refreshed();
m_refresh_funcs_manage_type.reset();
m_refresh_funcs_manage_type.emplace();
2021-04-16 03:53:31 +02:00
}
2022-02-01 20:53:46 +01:00
void game_list_frame::OnCompatFinished()
{
for (const auto& game : m_game_data)
{
game->compat = m_game_compat->GetCompatibility(game->info.serial);
}
Refresh();
}
void game_list_frame::ToggleCategoryFilter(const QStringList& categories, bool show)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2023-04-18 21:33:31 +02:00
QStringList& filters = m_is_list_layout ? m_category_filters : m_grid_category_filters;
if (show)
{
2023-04-18 21:33:31 +02:00
filters.append(categories);
}
else
{
2023-04-18 21:33:31 +02:00
for (const QString& cat : categories)
{
2023-04-18 21:33:31 +02:00
filters.removeAll(cat);
}
}
Refresh();
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
void game_list_frame::SaveSettings()
{
for (int col = 0; col < m_columnActs.count(); ++col)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2023-05-18 11:29:23 +02:00
m_gui_settings->SetGamelistColVisibility(static_cast<gui::game_list_columns>(col), m_columnActs[col]->isChecked());
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
2020-03-07 18:01:09 +01:00
m_gui_settings->SetValue(gui::gl_sortCol, m_sort_column);
m_gui_settings->SetValue(gui::gl_sortAsc, m_col_sort_order == Qt::AscendingOrder);
m_gui_settings->SetValue(gui::gl_state, m_game_list->horizontalHeader()->saveState());
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
void game_list_frame::doubleClickedSlot(QTableWidgetItem *item)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
if (!item)
{
return;
}
doubleClickedSlot(GetGameInfoByMode(item));
}
void game_list_frame::doubleClickedSlot(const game_info& game)
{
if (!game)
{
return;
}
2020-02-01 05:36:53 +01:00
sys_log.notice("Booting from gamelist per doubleclick...");
Q_EMIT RequestBoot(game);
}
2021-04-16 03:53:31 +02:00
void game_list_frame::ItemSelectionChangedSlot()
{
game_info game = nullptr;
if (m_is_list_layout)
{
2023-05-18 11:29:23 +02:00
if (const auto item = m_game_list->item(m_game_list->currentRow(), static_cast<int>(gui::game_list_columns::icon)); item && item->isSelected())
{
game = GetGameInfoByMode(item);
}
}
Q_EMIT NotifyGameSelection(game);
}
void game_list_frame::CreateShortcuts(const game_info& gameinfo, const std::set<gui::utils::shortcut_location>& locations)
2022-12-09 17:54:45 +01:00
{
if (locations.empty())
{
game_list_log.error("Failed to create shortcuts for %s. No locations selected.", qstr(gameinfo->info.name).simplified());
2022-12-09 17:54:45 +01:00
return;
}
std::string gameid_token_value;
const std::string dev_flash = g_cfg_vfs.get_dev_flash();
2022-12-09 17:54:45 +01:00
if (gameinfo->info.category == "DG" && !fs::is_file(rpcs3::utils::get_hdd0_dir() + "/game/" + gameinfo->info.serial + "/USRDIR/EBOOT.BIN"))
{
const usz ps3_game_dir_pos = fs::get_parent_dir(gameinfo->info.path).size();
std::string relative_boot_dir = gameinfo->info.path.substr(ps3_game_dir_pos);
if (usz char_pos = relative_boot_dir.find_first_not_of(fs::delim); char_pos != umax)
{
relative_boot_dir = relative_boot_dir.substr(char_pos);
}
else
{
relative_boot_dir.clear();
}
if (!relative_boot_dir.empty())
{
if (relative_boot_dir != "PS3_GAME")
{
gameid_token_value = gameinfo->info.serial + "/" + relative_boot_dir;
}
else
{
gameid_token_value = gameinfo->info.serial;
}
}
}
else
{
gameid_token_value = gameinfo->info.serial;
}
2022-12-10 17:23:06 +01:00
#ifdef __linux__
const std::string target_cli_args = gameinfo->info.path.starts_with(dev_flash) ? fmt::format("--no-gui \"%%%%RPCS3_VFS%%%%:dev_flash/%s\"", gameinfo->info.path.substr(dev_flash.size()))
: fmt::format("--no-gui \"%%%%RPCS3_GAMEID%%%%:%s\"", gameid_token_value);
2022-12-10 17:23:06 +01:00
#else
const std::string target_cli_args = gameinfo->info.path.starts_with(dev_flash) ? fmt::format("--no-gui \"%%RPCS3_VFS%%:dev_flash/%s\"", gameinfo->info.path.substr(dev_flash.size()))
: fmt::format("--no-gui \"%%RPCS3_GAMEID%%:%s\"", gameid_token_value);
2022-12-10 17:23:06 +01:00
#endif
2022-12-09 17:54:45 +01:00
const std::string target_icon_dir = fmt::format("%sIcons/game_icons/%s/", fs::get_config_dir(), gameinfo->info.serial);
if (!fs::create_path(target_icon_dir))
{
game_list_log.error("Failed to create shortcut path %s (%s)", qstr(gameinfo->info.name).simplified(), target_icon_dir, fs::g_tls_error);
2022-12-09 17:54:45 +01:00
return;
}
bool success = true;
for (const gui::utils::shortcut_location& location : locations)
{
std::string destination;
switch (location)
{
case gui::utils::shortcut_location::desktop:
destination = "desktop";
break;
case gui::utils::shortcut_location::applications:
destination = "application menu";
break;
#ifdef _WIN32
case gui::utils::shortcut_location::rpcs3_shortcuts:
destination = "/games/shortcuts/";
break;
#endif
}
if (!gameid_token_value.empty() && gui::utils::create_shortcut(gameinfo->info.name, target_cli_args, gameinfo->info.name, gameinfo->info.icon_path, target_icon_dir, location))
{
game_list_log.success("Created %s shortcut for %s", destination, qstr(gameinfo->info.name).simplified());
2022-12-09 17:54:45 +01:00
}
else
{
game_list_log.error("Failed to create %s shortcut for %s", destination, qstr(gameinfo->info.name).simplified());
2022-12-09 17:54:45 +01:00
success = false;
}
}
#ifdef _WIN32
if (locations.size() > 1 || !locations.contains(gui::utils::shortcut_location::rpcs3_shortcuts))
#endif
2022-12-09 17:54:45 +01:00
{
if (success)
{
QMessageBox::information(this, tr("Success!"), tr("Successfully created shortcut(s)."));
}
else
{
QMessageBox::warning(this, tr("Warning!"), tr("Failed to create shortcut(s)!"));
}
2022-12-09 17:54:45 +01:00
}
}
void game_list_frame::ShowContextMenu(const QPoint &pos)
{
2020-03-07 20:54:42 +01:00
QPoint global_pos;
game_info gameinfo;
2020-03-07 18:01:09 +01:00
if (m_is_list_layout)
{
2023-05-18 11:29:23 +02:00
QTableWidgetItem* item = m_game_list->item(m_game_list->indexAt(pos).row(), static_cast<int>(gui::game_list_columns::icon));
2020-03-07 20:54:42 +01:00
global_pos = m_game_list->viewport()->mapToGlobal(pos);
gameinfo = GetGameInfoFromItem(item);
}
else if (game_list_grid_item* item = static_cast<game_list_grid_item*>(m_game_grid->selected_item()))
{
gameinfo = item->game();
global_pos = m_game_grid->mapToGlobal(pos);
}
if (!gameinfo)
{
return;
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2020-03-07 20:54:42 +01:00
GameInfo current_game = gameinfo->info;
const QString serial = qstr(current_game.serial);
const QString name = qstr(current_game.name).simplified();
2020-03-07 20:54:42 +01:00
const std::string cache_base_dir = GetCacheDirBySerial(current_game.serial);
const std::string data_base_dir = GetDataDirBySerial(current_game.serial);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
// Make Actions
2020-03-07 20:54:42 +01:00
QMenu menu;
static const auto is_game_running = [](const std::string& serial)
{
return Emu.GetStatus(false) != system_state::stopped && serial == Emu.GetTitleID();
};
const bool is_current_running_game = is_game_running(current_game.serial);
2020-03-20 00:49:06 +01:00
QAction* boot = new QAction(gameinfo->hasCustomConfig
? (is_current_running_game
? tr("&Reboot with global configuration")
: tr("&Boot with global configuration"))
: (is_current_running_game
? tr("&Reboot")
: tr("&Boot")));
2020-03-07 20:54:42 +01:00
QFont font = boot->font();
font.setBold(true);
if (gameinfo->hasCustomConfig)
{
2020-03-20 00:49:06 +01:00
QAction* boot_custom = menu.addAction(is_current_running_game
? tr("&Reboot with custom configuration")
: tr("&Boot with custom configuration"));
2020-03-07 20:54:42 +01:00
boot_custom->setFont(font);
connect(boot_custom, &QAction::triggered, [this, gameinfo]
{
2020-02-01 05:36:53 +01:00
sys_log.notice("Booting from gamelist per context menu...");
Q_EMIT RequestBoot(gameinfo);
});
}
else
{
2020-03-07 20:54:42 +01:00
boot->setFont(font);
}
2020-03-07 20:54:42 +01:00
menu.addAction(boot);
{
QAction* boot_default = menu.addAction(is_current_running_game
? tr("&Reboot with default configuration")
: tr("&Boot with default configuration"));
connect(boot_default, &QAction::triggered, [this, gameinfo]
{
sys_log.notice("Booting from gamelist per context menu...");
2021-09-22 21:44:52 +02:00
Q_EMIT RequestBoot(gameinfo, cfg_mode::default_config);
});
QAction* boot_manual = menu.addAction(is_current_running_game
? tr("&Reboot with manually selected configuration")
: tr("&Boot with manually selected configuration"));
connect(boot_manual, &QAction::triggered, [this, gameinfo]
{
if (std::string file_path = QFileDialog::getOpenFileName(this, "Select Config File", "", tr("Config Files (*.yml);;All files (*.*)")).toStdString(); !file_path.empty())
{
sys_log.notice("Booting from gamelist per context menu...");
2021-09-22 21:44:52 +02:00
Q_EMIT RequestBoot(gameinfo, cfg_mode::custom_selection, file_path);
}
else
{
sys_log.notice("Manual config selection aborted.");
}
});
}
2023-11-15 20:07:42 +01:00
extern bool is_savestate_compatible(fs::file&& file, std::string_view filepath);
2023-11-15 20:07:42 +01:00
if (const std::string sstate = get_savestate_file(current_game.serial, current_game.path, 0, 0); is_savestate_compatible(fs::file(sstate), sstate))
{
QAction* boot_state = menu.addAction(is_current_running_game
? tr("&Reboot with savestate")
: tr("&Boot with savestate"));
connect(boot_state, &QAction::triggered, [this, gameinfo, sstate]
{
sys_log.notice("Booting savestate from gamelist per context menu...");
Q_EMIT RequestBoot(gameinfo, cfg_mode::custom, "", sstate);
});
}
2020-03-07 20:54:42 +01:00
menu.addSeparator();
2020-03-20 00:49:06 +01:00
QAction* configure = menu.addAction(gameinfo->hasCustomConfig
? tr("&Change Custom Configuration")
: tr("&Create Custom Configuration From Global Settings"));
QAction* create_game_default_config = gameinfo->hasCustomConfig ? nullptr
: menu.addAction(tr("&Create Custom Configuration From Default Settings"));
2020-03-20 00:49:06 +01:00
QAction* pad_configure = menu.addAction(gameinfo->hasCustomPadConfig
? tr("&Change Custom Gamepad Configuration")
: tr("&Create Custom Gamepad Configuration"));
QAction* configure_patches = menu.addAction(tr("&Manage Game Patches"));
QAction* create_cpu_cache = menu.addAction(tr("&Create LLVM Cache"));
2022-02-21 14:35:34 +01:00
2022-02-12 02:19:46 +01:00
menu.addSeparator();
2022-02-21 14:35:34 +01:00
2022-02-12 02:19:46 +01:00
QMenu* shortcut_menu = menu.addMenu(tr("&Create Shortcut"));
QAction* create_desktop_shortcut = shortcut_menu->addAction(tr("&Create Desktop Shortcut"));
2022-12-09 17:54:45 +01:00
connect(create_desktop_shortcut, &QAction::triggered, this, [this, gameinfo](){ CreateShortcuts(gameinfo, { gui::utils::shortcut_location::desktop }); });
2022-02-12 02:19:46 +01:00
#ifdef _WIN32
QAction* create_start_menu_shortcut = shortcut_menu->addAction(tr("&Create Start Menu Shortcut"));
2022-02-21 14:35:34 +01:00
#elif defined(__APPLE__)
QAction* create_start_menu_shortcut = shortcut_menu->addAction(tr("&Create Launchpad Shortcut"));
2022-02-12 02:19:46 +01:00
#else
QAction* create_start_menu_shortcut = shortcut_menu->addAction(tr("&Create Application Menu Shortcut"));
#endif
2022-12-09 17:54:45 +01:00
connect(create_start_menu_shortcut, &QAction::triggered, this, [this, gameinfo](){ CreateShortcuts(gameinfo, { gui::utils::shortcut_location::applications }); });
2022-02-21 14:35:34 +01:00
2020-03-07 20:54:42 +01:00
menu.addSeparator();
2022-02-21 14:35:34 +01:00
2020-03-07 20:54:42 +01:00
QAction* rename_title = menu.addAction(tr("&Rename In Game List"));
QAction* hide_serial = menu.addAction(tr("&Hide From Game List"));
hide_serial->setCheckable(true);
hide_serial->setChecked(m_hidden_list.contains(serial));
2020-03-07 20:54:42 +01:00
menu.addSeparator();
QMenu* remove_menu = menu.addMenu(tr("&Remove"));
QAction* remove_game = remove_menu->addAction(tr("&Remove %1").arg(gameinfo->localized_category));
remove_game->setEnabled(!is_current_running_game);
if (gameinfo->hasCustomConfig)
{
QAction* remove_custom_config = remove_menu->addAction(tr("&Remove Custom Configuration"));
connect(remove_custom_config, &QAction::triggered, [this, current_game, gameinfo]()
{
2020-03-07 20:54:42 +01:00
if (RemoveCustomConfiguration(current_game.serial, gameinfo, true))
{
ShowCustomConfigIcon(gameinfo);
}
});
}
if (gameinfo->hasCustomPadConfig)
{
2020-01-26 16:34:04 +01:00
QAction* remove_custom_pad_config = remove_menu->addAction(tr("&Remove Custom Gamepad Configuration"));
connect(remove_custom_pad_config, &QAction::triggered, [this, current_game, gameinfo]()
{
2020-03-07 20:54:42 +01:00
if (RemoveCustomPadConfiguration(current_game.serial, gameinfo, true))
{
ShowCustomConfigIcon(gameinfo);
}
});
}
const bool has_cache_dir = fs::is_dir(cache_base_dir);
if (has_cache_dir)
{
remove_menu->addSeparator();
2020-03-07 20:54:42 +01:00
QAction* remove_shaders_cache = remove_menu->addAction(tr("&Remove Shaders Cache"));
remove_shaders_cache->setEnabled(!is_current_running_game);
connect(remove_shaders_cache, &QAction::triggered, [this, cache_base_dir]()
{
RemoveShadersCache(cache_base_dir, true);
});
2020-03-07 20:54:42 +01:00
QAction* remove_ppu_cache = remove_menu->addAction(tr("&Remove PPU Cache"));
remove_ppu_cache->setEnabled(!is_current_running_game);
connect(remove_ppu_cache, &QAction::triggered, [this, cache_base_dir]()
{
RemovePPUCache(cache_base_dir, true);
});
2020-03-07 20:54:42 +01:00
QAction* remove_spu_cache = remove_menu->addAction(tr("&Remove SPU Cache"));
remove_spu_cache->setEnabled(!is_current_running_game);
connect(remove_spu_cache, &QAction::triggered, [this, cache_base_dir]()
{
RemoveSPUCache(cache_base_dir, true);
});
}
bool has_hdd1_cache = false;
const std::string hdd1 = rpcs3::utils::get_hdd1_dir() + "/caches/";
for (const auto& entry : fs::dir(hdd1))
{
if (entry.is_directory && entry.name.starts_with(current_game.serial))
{
has_hdd1_cache = true;
break;
}
}
if (has_hdd1_cache)
{
QAction* remove_hdd1_cache = remove_menu->addAction(tr("&Remove HDD1 Cache"));
remove_hdd1_cache->setEnabled(!is_current_running_game);
connect(remove_hdd1_cache, &QAction::triggered, [this, hdd1, serial = current_game.serial]()
{
RemoveHDD1Cache(hdd1, serial, true);
});
}
if (has_cache_dir || has_hdd1_cache)
{
2020-03-07 20:54:42 +01:00
QAction* remove_all_caches = remove_menu->addAction(tr("&Remove All Caches"));
remove_all_caches->setEnabled(!is_current_running_game);
connect(remove_all_caches, &QAction::triggered, [this, current_game, cache_base_dir, hdd1]()
{
if (is_game_running(current_game.serial))
return;
if (QMessageBox::question(this, tr("Confirm Removal"), tr("Remove all caches?")) != QMessageBox::Yes)
return;
if (fs::remove_all(cache_base_dir))
game_list_log.success("Removed cache directory: '%s'", cache_base_dir);
else
game_list_log.error("Could not remove cache directory: '%s' (%s)", cache_base_dir, fs::g_tls_error);
RemoveHDD1Cache(hdd1, current_game.serial);
});
}
2020-03-07 20:54:42 +01:00
menu.addSeparator();
QAction* open_game_folder = menu.addAction(tr("&Open Install Folder"));
if (gameinfo->hasCustomConfig)
{
2020-03-07 20:54:42 +01:00
QAction* open_config_dir = menu.addAction(tr("&Open Custom Config Folder"));
connect(open_config_dir, &QAction::triggered, [current_game]()
{
const std::string config_path = rpcs3::utils::get_custom_config_path(current_game.serial);
if (fs::is_file(config_path))
gui::utils::open_dir(config_path);
});
}
if (fs::is_dir(data_base_dir))
{
2020-03-07 20:54:42 +01:00
QAction* open_data_dir = menu.addAction(tr("&Open Data Folder"));
connect(open_data_dir, &QAction::triggered, [data_base_dir]()
{
2020-03-24 20:56:47 +01:00
gui::utils::open_dir(data_base_dir);
});
}
2020-03-07 20:54:42 +01:00
menu.addSeparator();
QAction* check_compat = menu.addAction(tr("&Check Game Compatibility"));
QAction* download_compat = menu.addAction(tr("&Download Compatibility Database"));
menu.addSeparator();
QAction* edit_notes = menu.addAction(tr("&Edit Tooltip Notes"));
2023-04-18 21:17:57 +02:00
QAction* reset_time_played = menu.addAction(tr("&Reset Time Played"));
2021-03-12 18:52:22 +01:00
QMenu* icon_menu = menu.addMenu(tr("&Custom Images"));
const std::array<QAction*, 3> custom_icon_actions =
{
icon_menu->addAction(tr("&Import Custom Icon")),
icon_menu->addAction(tr("&Replace Custom Icon")),
icon_menu->addAction(tr("&Remove Custom Icon"))
};
icon_menu->addSeparator();
const std::array<QAction*, 3> custom_gif_actions =
{
icon_menu->addAction(tr("&Import Hover Gif")),
icon_menu->addAction(tr("&Replace Hover Gif")),
icon_menu->addAction(tr("&Remove Hover Gif"))
};
icon_menu->addSeparator();
const std::array<QAction*, 3> custom_shader_icon_actions =
{
icon_menu->addAction(tr("&Import Custom Shader Loading Background")),
icon_menu->addAction(tr("&Replace Custom Shader Loading Background")),
icon_menu->addAction(tr("&Remove Custom Shader Loading Background"))
};
2021-03-12 18:52:22 +01:00
if (const std::string custom_icon_dir_path = fs::get_config_dir() + "/Icons/game_icons/" + current_game.serial;
fs::create_path(custom_icon_dir_path))
2021-03-12 18:52:22 +01:00
{
enum class icon_action
{
add,
replace,
remove
};
enum class icon_type
2021-03-12 18:52:22 +01:00
{
game_list,
hover_gif,
shader_load
};
const auto handle_icon = [this, serial](const QString& game_icon_path, const QString& suffix, icon_action action, icon_type type)
{
QString icon_path;
if (action != icon_action::remove)
2021-03-12 18:52:22 +01:00
{
QString msg;
switch (type)
{
case icon_type::game_list:
msg = tr("Select Custom Icon");
break;
case icon_type::hover_gif:
msg = tr("Select Custom Hover Gif");
break;
case icon_type::shader_load:
msg = tr("Select Custom Shader Loading Background");
break;
}
icon_path = QFileDialog::getOpenFileName(this, msg, "", tr("%0 (*.%0);;All files (*.*)").arg(suffix));
2021-03-12 18:52:22 +01:00
}
if (action == icon_action::remove || !icon_path.isEmpty())
2021-03-12 18:52:22 +01:00
{
bool refresh = false;
QString msg;
switch (type)
{
case icon_type::game_list:
msg = tr("Remove Custom Icon of %0?").arg(serial);
break;
case icon_type::hover_gif:
msg = tr("Remove Custom Hover Gif of %0?").arg(serial);
break;
case icon_type::shader_load:
msg = tr("Remove Custom Shader Loading Background of %0?").arg(serial);
break;
}
if (action == icon_action::replace || (action == icon_action::remove &&
QMessageBox::question(this, tr("Confirm Removal"), msg) == QMessageBox::Yes))
2021-03-12 18:52:22 +01:00
{
if (QFile file(game_icon_path); file.exists() && !file.remove())
{
game_list_log.error("Could not remove old file: '%s'", game_icon_path, file.errorString());
QMessageBox::warning(this, tr("Warning!"), tr("Failed to remove the old file!"));
return;
}
game_list_log.success("Removed file: '%s'", game_icon_path);
if (action == icon_action::remove)
{
refresh = true;
}
2021-03-12 18:52:22 +01:00
}
if (action != icon_action::remove)
2021-03-12 18:52:22 +01:00
{
2021-04-07 23:05:18 +02:00
if (!QFile::copy(icon_path, game_icon_path))
{
game_list_log.error("Could not import file '%s' to '%s'.", icon_path, game_icon_path);
QMessageBox::warning(this, tr("Warning!"), tr("Failed to import the new file!"));
}
else
{
game_list_log.success("Imported file '%s' to '%s'", icon_path, game_icon_path);
refresh = true;
}
2021-03-12 18:52:22 +01:00
}
if (refresh)
2021-03-12 18:52:22 +01:00
{
Refresh(true);
}
}
};
const std::vector<std::tuple<icon_type, QString, QString, const std::array<QAction*, 3>&>> icon_map =
{
{icon_type::game_list, "/ICON0.PNG", "png", custom_icon_actions},
{icon_type::hover_gif, "/hover.gif", "gif", custom_gif_actions},
{icon_type::shader_load, "/PIC1.PNG", "png", custom_shader_icon_actions},
};
for (const auto& [type, icon_name, suffix, actions] : icon_map)
{
const QString icon_path = qstr(custom_icon_dir_path) + icon_name;
if (QFile::exists(icon_path))
{
actions[static_cast<int>(icon_action::add)]->setVisible(false);
connect(actions[static_cast<int>(icon_action::replace)], &QAction::triggered, this, [handle_icon, icon_path, t = type, s = suffix] { handle_icon(icon_path, s, icon_action::replace, t); });
connect(actions[static_cast<int>(icon_action::remove)], &QAction::triggered, this, [handle_icon, icon_path, t = type, s = suffix] { handle_icon(icon_path, s, icon_action::remove, t); });
}
else
{
connect(actions[static_cast<int>(icon_action::add)], &QAction::triggered, this, [handle_icon, icon_path, t = type, s = suffix] { handle_icon(icon_path, s, icon_action::add, t); });
actions[static_cast<int>(icon_action::replace)]->setVisible(false);
actions[static_cast<int>(icon_action::remove)]->setEnabled(false);
}
}
2021-03-12 18:52:22 +01:00
}
else
{
game_list_log.error("Could not create path '%s'", custom_icon_dir_path);
icon_menu->setEnabled(false);
2021-03-12 18:52:22 +01:00
}
2020-03-07 20:54:42 +01:00
QMenu* info_menu = menu.addMenu(tr("&Copy Info"));
QAction* copy_info = info_menu->addAction(tr("&Copy Name + Serial"));
QAction* copy_name = info_menu->addAction(tr("&Copy Name"));
QAction* copy_serial = info_menu->addAction(tr("&Copy Serial"));
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
2021-03-12 18:52:22 +01:00
connect(boot, &QAction::triggered, this, [this, gameinfo]()
{
2020-02-01 05:36:53 +01:00
sys_log.notice("Booting from gamelist per context menu...");
2021-09-22 21:44:52 +02:00
Q_EMIT RequestBoot(gameinfo, cfg_mode::global);
2017-08-06 21:29:28 +02:00
});
auto configure_l = [this, current_game, gameinfo](bool create_cfg_from_global_cfg)
{
settings_dialog dlg(m_gui_settings, m_emu_settings, 0, this, &current_game, create_cfg_from_global_cfg);
connect(&dlg, &settings_dialog::EmuSettingsApplied, [this, gameinfo]()
{
if (!gameinfo->hasCustomConfig)
{
gameinfo->hasCustomConfig = true;
ShowCustomConfigIcon(gameinfo);
}
Q_EMIT NotifyEmuSettingsChange();
});
dlg.exec();
};
if (create_game_default_config)
{
connect(configure, &QAction::triggered, this, [configure_l]() { configure_l(true); });
connect(create_game_default_config, &QAction::triggered, this, [configure_l = std::move(configure_l)]() { configure_l(false); });
}
else
{
connect(configure, &QAction::triggered, this, [configure_l = std::move(configure_l)]() { configure_l(true); });
}
2021-03-12 18:52:22 +01:00
connect(pad_configure, &QAction::triggered, this, [this, current_game, gameinfo]()
{
pad_settings_dialog dlg(m_gui_settings, this, &current_game);
if (dlg.exec() == QDialog::Accepted && !gameinfo->hasCustomPadConfig)
{
gameinfo->hasCustomPadConfig = true;
ShowCustomConfigIcon(gameinfo);
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
});
2021-03-12 18:52:22 +01:00
connect(hide_serial, &QAction::triggered, this, [serial, this](bool checked)
{
if (checked)
m_hidden_list.insert(serial);
else
m_hidden_list.remove(serial);
2020-01-19 14:00:57 +01:00
m_gui_settings->SetValue(gui::gl_hidden_list, QStringList(m_hidden_list.values()));
Refresh();
});
connect(create_cpu_cache, &QAction::triggered, this, [gameinfo, this]
{
if (m_gui_settings->GetBootConfirmation(this))
{
CreateCPUCaches(gameinfo);
}
});
2021-03-12 18:52:22 +01:00
connect(remove_game, &QAction::triggered, this, [this, current_game, gameinfo, cache_base_dir, name]
2017-07-12 15:58:48 +02:00
{
2020-03-07 20:54:42 +01:00
if (current_game.path.empty())
{
game_list_log.fatal("Cannot remove game. Path is empty");
return;
}
if (is_game_running(current_game.serial))
{
QMessageBox::critical(this, tr("Cannot Remove Game"), tr("The PS3 application is still running, it cannot be removed!"));
return;
}
QString size_information;
if (current_game.size_on_disk != umax)
{
fs::device_stat stat{};
if (fs::statfs(current_game.path, stat))
{
size_information = tr("Game Directory Size: %0\nCurrent Free Disk Space: %1\n\n").arg(gui::utils::format_byte_size(current_game.size_on_disk)).arg(gui::utils::format_byte_size(stat.avail_free));
}
}
QMessageBox mb(QMessageBox::Question, tr("Confirm %1 Removal").arg(gameinfo->localized_category), tr("Permanently remove %0 from drive?\n%1Path: %2").arg(name).arg(size_information).arg(qstr(current_game.path)), QMessageBox::Yes | QMessageBox::No, this);
mb.setCheckBox(new QCheckBox(tr("Remove caches and custom configs")));
if (mb.exec() == QMessageBox::Yes)
{
const bool remove_caches = mb.checkBox()->isChecked();
2020-03-07 20:54:42 +01:00
if (fs::remove_all(current_game.path))
{
if (remove_caches)
{
if (fs::is_dir(cache_base_dir))
{
if (fs::remove_all(cache_base_dir))
game_list_log.notice("Removed cache directory: '%s'", cache_base_dir);
else
game_list_log.error("Could not remove cache directory: '%s' (%s)", cache_base_dir, fs::g_tls_error);
}
2020-03-07 20:54:42 +01:00
RemoveCustomConfiguration(current_game.serial);
RemoveCustomPadConfiguration(current_game.serial);
}
m_game_data.erase(std::remove(m_game_data.begin(), m_game_data.end(), gameinfo), m_game_data.end());
game_list_log.success("Removed %s %s in %s", gameinfo->localized_category, current_game.name, current_game.path);
Refresh(true);
}
else
{
game_list_log.error("Failed to remove %s %s in %s (%s)", gameinfo->localized_category, current_game.name, current_game.path, fs::g_tls_error);
2020-03-20 00:49:06 +01:00
QMessageBox::critical(this, tr("Failure!"), remove_caches
? tr("Failed to remove %0 from drive!\nPath: %1\nCaches and custom configs have been left intact.").arg(name).arg(qstr(current_game.path))
: tr("Failed to remove %0 from drive!\nPath: %1").arg(name).arg(qstr(current_game.path)));
}
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
});
2021-03-12 18:52:22 +01:00
connect(configure_patches, &QAction::triggered, this, [this, gameinfo]()
{
std::unordered_map<std::string, std::set<std::string>> games;
for (const auto& game : m_game_data)
{
if (game)
{
games[game->info.serial].insert(game_list::GetGameVersion(game));
}
}
patch_manager_dialog patch_manager(m_gui_settings, games, gameinfo->info.serial, game_list::GetGameVersion(gameinfo), this);
patch_manager.exec();
});
2021-03-12 18:52:22 +01:00
connect(open_game_folder, &QAction::triggered, this, [current_game]()
{
2020-03-24 20:56:47 +01:00
gui::utils::open_dir(current_game.path);
});
2021-03-12 18:52:22 +01:00
connect(check_compat, &QAction::triggered, this, [serial]
{
const QString link = "https://rpcs3.net/compatibility?g=" + serial;
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
QDesktopServices::openUrl(QUrl(link));
});
2021-03-12 18:52:22 +01:00
connect(download_compat, &QAction::triggered, this, [this]
2017-12-04 21:59:28 +01:00
{
m_game_compat->RequestCompatibility(true);
});
2021-03-12 18:52:22 +01:00
connect(rename_title, &QAction::triggered, this, [this, name, serial, global_pos]
2018-12-09 18:36:30 +01:00
{
const QString custom_title = m_persistent_settings->GetValue(gui::persistent::titles, serial, "").toString();
2018-12-09 18:36:30 +01:00
const QString old_title = custom_title.isEmpty() ? name : custom_title;
input_dialog dlg(128, old_title, tr("Rename Title"), tr("%0\n%1\n\nYou can clear the line in order to use the original title.").arg(name).arg(serial), name, this);
2020-03-07 20:54:42 +01:00
dlg.move(global_pos);
2018-12-09 18:36:30 +01:00
if (dlg.exec() == QDialog::Accepted)
{
2020-12-14 19:19:43 +01:00
const QString new_title = dlg.get_input_text().simplified();
2018-12-09 18:36:30 +01:00
if (new_title.isEmpty() || new_title == name)
{
m_titles.remove(serial);
m_persistent_settings->RemoveValue(gui::persistent::titles, serial);
2018-12-09 18:36:30 +01:00
}
else
{
m_titles.insert(serial, new_title);
m_persistent_settings->SetValue(gui::persistent::titles, serial, new_title);
2018-12-09 18:36:30 +01:00
}
Refresh(true); // full refresh in order to reliably sort the list
}
});
2021-03-12 18:52:22 +01:00
connect(edit_notes, &QAction::triggered, this, [this, name, serial]
2018-06-11 19:19:15 +02:00
{
bool accepted;
const QString old_notes = m_persistent_settings->GetValue(gui::persistent::notes, serial, "").toString();
2018-12-09 18:36:30 +01:00
const QString new_notes = QInputDialog::getMultiLineText(this, tr("Edit Tooltip Notes"), tr("%0\n%1").arg(name).arg(serial), old_notes, &accepted);
if (accepted)
{
2018-12-09 18:36:30 +01:00
if (new_notes.simplified().isEmpty())
{
m_notes.remove(serial);
m_persistent_settings->RemoveValue(gui::persistent::notes, serial);
2018-12-09 18:36:30 +01:00
}
else
{
m_notes.insert(serial, new_notes);
m_persistent_settings->SetValue(gui::persistent::notes, serial, new_notes);
2018-12-09 18:36:30 +01:00
}
Refresh();
2018-06-11 19:19:15 +02:00
}
});
2023-04-18 21:17:57 +02:00
connect(reset_time_played, &QAction::triggered, this, [this, name, serial]
{
if (QMessageBox::question(this, tr("Confirm Reset"), tr("Reset time played?\n\n%0 [%1]").arg(name).arg(serial)) == QMessageBox::Yes)
{
m_persistent_settings->SetPlaytime(serial, 0);
m_persistent_settings->SetLastPlayed(serial, 0);
m_persistent_settings->sync();
Refresh();
}
});
2021-03-12 18:52:22 +01:00
connect(copy_info, &QAction::triggered, this, [name, serial]
{
QApplication::clipboard()->setText(name % QStringLiteral(" [") % serial % QStringLiteral("]"));
});
2021-03-12 18:52:22 +01:00
connect(copy_name, &QAction::triggered, this, [name]
{
QApplication::clipboard()->setText(name);
});
2021-03-12 18:52:22 +01:00
connect(copy_serial, &QAction::triggered, this, [serial]
{
QApplication::clipboard()->setText(serial);
});
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
// Disable options depending on software category
2020-03-07 20:54:42 +01:00
const QString category = qstr(current_game.category);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
if (category == cat::cat_disc_game || category == cat::cat_ps3_os)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2020-03-07 20:54:42 +01:00
remove_game->setEnabled(false);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
2021-04-07 23:05:18 +02:00
else if (category != cat::cat_hdd_game)
2017-06-18 18:14:14 +02:00
{
2020-03-07 20:54:42 +01:00
check_compat->setEnabled(false);
2017-06-18 18:14:14 +02:00
}
2020-03-07 20:54:42 +01:00
menu.exec(global_pos);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
bool game_list_frame::CreateCPUCaches(const std::string& path, const std::string& serial)
2019-01-06 22:32:23 +01:00
{
2022-02-05 11:49:29 +01:00
Emu.GracefulShutdown(false);
2019-01-06 22:32:23 +01:00
Emu.SetForceBoot(true);
2023-06-24 19:44:21 +02:00
if (const auto error = Emu.BootGame(fs::is_file(path) ? fs::get_parent_dir(path) : path, serial, true); error != game_boot_result::no_errors)
2019-01-06 22:32:23 +01:00
{
game_list_log.error("Could not create LLVM caches for %s, error: %s", path, error);
2020-02-25 16:33:06 +01:00
return false;
2019-01-06 22:32:23 +01:00
}
game_list_log.warning("Creating LLVM Caches for %s", path);
2020-02-25 16:33:06 +01:00
return true;
2019-01-06 22:32:23 +01:00
}
bool game_list_frame::CreateCPUCaches(const game_info& game)
2021-07-19 23:27:07 +02:00
{
return game && CreateCPUCaches(game->info.path, game->info.serial);
2021-07-19 23:27:07 +02:00
}
2021-04-07 23:05:18 +02:00
bool game_list_frame::RemoveCustomConfiguration(const std::string& title_id, const game_info& game, bool is_interactive)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
const std::string path = rpcs3::utils::get_custom_config_path(title_id);
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
if (!fs::is_file(path))
2019-01-06 22:32:23 +01:00
return true;
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), tr("Remove custom game configuration?")) != QMessageBox::Yes)
2019-01-06 22:32:23 +01:00
return true;
bool result = true;
if (fs::is_file(path))
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
if (fs::remove_file(path))
{
if (game)
{
game->hasCustomConfig = false;
}
game_list_log.success("Removed configuration file: %s", path);
}
else
{
game_list_log.fatal("Failed to remove configuration file: %s\nError: %s", path, fs::g_tls_error);
result = false;
}
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
if (is_interactive && !result)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
QMessageBox::warning(this, tr("Warning!"), tr("Failed to remove configuration file!"));
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
return result;
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
}
2021-04-07 23:05:18 +02:00
bool game_list_frame::RemoveCustomPadConfiguration(const std::string& title_id, const game_info& game, bool is_interactive)
{
2021-08-10 21:45:26 +02:00
if (title_id.empty())
return true;
const std::string config_dir = rpcs3::utils::get_input_config_dir(title_id);
if (!fs::is_dir(config_dir))
return true;
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), (!Emu.IsStopped() && Emu.GetTitleID() == title_id)
? tr("Remove custom pad configuration?\nYour configuration will revert to the global pad settings.")
: tr("Remove custom pad configuration?")) != QMessageBox::Yes)
return true;
g_cfg_input_configs.load();
g_cfg_input_configs.active_configs.erase(title_id);
g_cfg_input_configs.save();
game_list_log.notice("Removed active input configuration entry for key '%s'", title_id);
2021-09-05 02:15:08 +02:00
if (QDir(qstr(config_dir)).removeRecursively())
{
if (game)
{
game->hasCustomPadConfig = false;
}
if (!Emu.IsStopped() && Emu.GetTitleID() == title_id)
{
pad::set_enabled(false);
pad::reset(title_id);
pad::set_enabled(true);
}
game_list_log.notice("Removed pad configuration directory: %s", config_dir);
return true;
}
2021-04-07 23:05:18 +02:00
if (is_interactive)
{
QMessageBox::warning(this, tr("Warning!"), tr("Failed to completely remove pad configuration directory!"));
game_list_log.fatal("Failed to completely remove pad configuration directory: %s\nError: %s", config_dir, fs::g_tls_error);
}
return false;
}
bool game_list_frame::RemoveShadersCache(const std::string& base_dir, bool is_interactive)
{
if (!fs::is_dir(base_dir))
2019-01-06 22:32:23 +01:00
return true;
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), tr("Remove shaders cache?")) != QMessageBox::Yes)
2019-01-06 22:32:23 +01:00
return true;
u32 caches_removed = 0;
u32 caches_total = 0;
const QStringList filter{ QStringLiteral("shaders_cache") };
const QString q_base_dir = qstr(base_dir);
QDirIterator dir_iter(q_base_dir, filter, QDir::Dirs | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
while (dir_iter.hasNext())
{
const QString filepath = dir_iter.next();
if (QDir(filepath).removeRecursively())
{
++caches_removed;
game_list_log.notice("Removed shaders cache dir: %s", filepath);
}
else
{
game_list_log.warning("Could not completely remove shaders cache dir: %s", filepath);
}
++caches_total;
}
const bool success = caches_total == caches_removed;
if (success)
game_list_log.success("Removed shaders cache in %s", base_dir);
else
game_list_log.fatal("Only %d/%d shaders cache dirs could be removed in %s", caches_removed, caches_total, base_dir);
if (QDir(q_base_dir).isEmpty())
{
if (fs::remove_dir(base_dir))
game_list_log.notice("Removed empty shader cache directory: %s", base_dir);
else
game_list_log.error("Could not remove empty shader cache directory: '%s' (%s)", base_dir, fs::g_tls_error);
}
return success;
}
bool game_list_frame::RemovePPUCache(const std::string& base_dir, bool is_interactive)
{
if (!fs::is_dir(base_dir))
2019-01-06 22:32:23 +01:00
return true;
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), tr("Remove PPU cache?")) != QMessageBox::Yes)
2019-01-06 22:32:23 +01:00
return true;
u32 files_removed = 0;
u32 files_total = 0;
const QStringList filter{ QStringLiteral("v*.obj"), QStringLiteral("v*.obj.gz") };
const QString q_base_dir = qstr(base_dir);
QDirIterator dir_iter(q_base_dir, filter, QDir::Files | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
while (dir_iter.hasNext())
{
const QString filepath = dir_iter.next();
if (QFile::remove(filepath))
{
++files_removed;
game_list_log.notice("Removed PPU cache file: %s", filepath);
}
else
{
game_list_log.warning("Could not remove PPU cache file: %s", filepath);
}
++files_total;
}
2019-01-06 22:32:23 +01:00
const bool success = files_total == files_removed;
if (success)
game_list_log.success("Removed PPU cache in %s", base_dir);
2019-01-06 22:32:23 +01:00
else
game_list_log.fatal("Only %d/%d PPU cache files could be removed in %s", files_removed, files_total, base_dir);
2019-01-06 22:32:23 +01:00
if (QDir(q_base_dir).isEmpty())
{
if (fs::remove_dir(base_dir))
game_list_log.notice("Removed empty PPU cache directory: %s", base_dir);
else
game_list_log.error("Could not remove empty PPU cache directory: '%s' (%s)", base_dir, fs::g_tls_error);
}
2019-01-06 22:32:23 +01:00
return success;
}
bool game_list_frame::RemoveSPUCache(const std::string& base_dir, bool is_interactive)
2018-06-15 17:50:53 +02:00
{
if (!fs::is_dir(base_dir))
2019-01-06 22:32:23 +01:00
return true;
2018-06-15 17:50:53 +02:00
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), tr("Remove SPU cache?")) != QMessageBox::Yes)
2019-01-06 22:32:23 +01:00
return true;
u32 files_removed = 0;
u32 files_total = 0;
2018-06-15 17:50:53 +02:00
const QStringList filter{ QStringLiteral("spu*.dat"), QStringLiteral("spu*.dat.gz"), QStringLiteral("spu*.obj"), QStringLiteral("spu*.obj.gz") };
const QString q_base_dir = qstr(base_dir);
QDirIterator dir_iter(q_base_dir, filter, QDir::Files | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
while (dir_iter.hasNext())
{
const QString filepath = dir_iter.next();
if (QFile::remove(filepath))
2018-06-15 17:50:53 +02:00
{
++files_removed;
game_list_log.notice("Removed SPU cache file: %s", filepath);
}
else
{
game_list_log.warning("Could not remove SPU cache file: %s", filepath);
}
++files_total;
2018-06-15 17:50:53 +02:00
}
2019-01-06 22:32:23 +01:00
const bool success = files_total == files_removed;
if (success)
game_list_log.success("Removed SPU cache in %s", base_dir);
2019-01-06 22:32:23 +01:00
else
game_list_log.fatal("Only %d/%d SPU cache files could be removed in %s", files_removed, files_total, base_dir);
2019-01-06 22:32:23 +01:00
if (QDir(q_base_dir).isEmpty())
{
if (fs::remove_dir(base_dir))
game_list_log.notice("Removed empty SPU cache directory: %s", base_dir);
else
game_list_log.error("Could not remove empty SPU cache directory: '%s' (%s)", base_dir, fs::g_tls_error);
}
2019-01-06 22:32:23 +01:00
return success;
}
void game_list_frame::RemoveHDD1Cache(const std::string& base_dir, const std::string& title_id, bool is_interactive)
{
if (!fs::is_dir(base_dir))
return;
if (is_interactive && QMessageBox::question(this, tr("Confirm Removal"), tr("Remove HDD1 cache?")) != QMessageBox::Yes)
return;
u32 dirs_removed = 0;
u32 dirs_total = 0;
const QString q_base_dir = qstr(base_dir);
const QStringList filter{ qstr(title_id + "_*") };
QDirIterator dir_iter(q_base_dir, filter, QDir::Dirs | QDir::NoDotAndDotDot);
while (dir_iter.hasNext())
{
const QString filepath = dir_iter.next();
if (fs::remove_all(filepath.toStdString()))
{
++dirs_removed;
game_list_log.notice("Removed HDD1 cache directory: %s", filepath);
}
else
{
game_list_log.warning("Could not remove HDD1 cache directory: %s", filepath);
}
++dirs_total;
}
const bool success = dirs_removed == dirs_total;
if (success)
game_list_log.success("Removed HDD1 cache in %s (%s)", base_dir, title_id);
else
game_list_log.fatal("Only %d/%d HDD1 cache directories could be removed in %s (%s)", dirs_removed, dirs_total, base_dir, title_id);
}
2023-12-01 21:13:02 +01:00
void game_list_frame::BatchCreateCPUCaches(const QList<game_info>& game_data)
2019-01-06 22:32:23 +01:00
{
const std::string vsh_path = g_cfg_vfs.get_dev_flash() + "vsh/module/";
2023-12-01 21:13:02 +01:00
const bool vsh_exists = game_data.isEmpty() && fs::is_file(vsh_path + "vsh.self");
const u32 total = !game_data.isEmpty() ? game_data.size() : (m_game_data.size() + (vsh_exists ? 1 : 0));
2019-01-06 22:32:23 +01:00
if (total == 0)
{
QMessageBox::information(this, tr("LLVM Cache Batch Creation"), tr("No titles found"), QMessageBox::Ok);
2019-01-06 22:32:23 +01:00
return;
}
if (!m_gui_settings->GetBootConfirmation(this))
{
return;
}
const QString main_label = tr("Creating all LLVM caches");
progress_dialog* pdlg = new progress_dialog(tr("LLVM Cache Batch Creation"), main_label, tr("Cancel"), 0, total, false, this);
pdlg->setWindowFlags(Qt::Window | Qt::WindowMinimizeButtonHint);
2019-01-06 22:32:23 +01:00
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
2021-07-19 23:43:05 +02:00
QApplication::processEvents();
2019-01-06 22:32:23 +01:00
u32 created = 0;
2021-07-19 23:27:07 +02:00
const auto wait_until_compiled = [pdlg]() -> bool
2021-07-19 23:27:07 +02:00
{
while (!Emu.IsStopped())
{
if (pdlg->wasCanceled())
{
return false;
}
QApplication::processEvents();
}
return true;
};
if (vsh_exists)
{
pdlg->setLabelText(tr("%0\nProgress: %1/%2. Compiling caches for VSH...", "Second line after main label").arg(main_label).arg(created).arg(total));
QApplication::processEvents();
if (CreateCPUCaches(vsh_path) && wait_until_compiled())
{
pdlg->SetValue(++created);
}
2021-07-19 23:27:07 +02:00
}
2023-12-01 21:13:02 +01:00
for (const auto& game : (game_data.isEmpty() ? m_game_data : game_data))
2019-01-06 22:32:23 +01:00
{
if (pdlg->wasCanceled() || g_system_progress_canceled)
2019-01-06 22:32:23 +01:00
{
break;
}
pdlg->setLabelText(tr("%0\nProgress: %1/%2. Compiling caches for %3...", "Second line after main label").arg(main_label).arg(created).arg(total).arg(qstr(game->info.serial)));
2019-01-06 22:32:23 +01:00
QApplication::processEvents();
if (CreateCPUCaches(game) && wait_until_compiled())
2019-01-06 22:32:23 +01:00
{
pdlg->SetValue(++created);
}
}
if (pdlg->wasCanceled() || g_system_progress_canceled)
2021-07-19 23:43:05 +02:00
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("LLVM Cache Batch Creation was canceled");
Emu.GracefulShutdown(false);
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("Created LLVM Caches for %n title(s)", "", created));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
2021-07-19 23:43:05 +02:00
}
2019-01-06 22:32:23 +01:00
}
void game_list_frame::BatchRemovePPUCaches()
{
if (Emu.GetStatus(false) != system_state::stopped)
{
return;
}
2019-01-06 22:32:23 +01:00
std::set<std::string> serials;
for (const auto& game : m_game_data)
{
serials.emplace(game->info.serial);
}
const u32 total = ::size32(serials);
2019-01-06 22:32:23 +01:00
if (total == 0)
{
QMessageBox::information(this, tr("PPU Cache Batch Removal"), tr("No files found"), QMessageBox::Ok);
return;
}
progress_dialog* pdlg = new progress_dialog(tr("PPU Cache Batch Removal"), tr("Removing all PPU caches"), tr("Cancel"), 0, total, false, this);
2019-01-06 22:32:23 +01:00
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
u32 removed = 0;
for (const auto& serial : serials)
{
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents();
if (RemovePPUCache(GetCacheDirBySerial(serial)))
{
pdlg->SetValue(++removed);
}
}
if (pdlg->wasCanceled())
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("PPU Cache Batch Removal was canceled");
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("%0/%1 caches cleared").arg(removed).arg(total));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
}
2019-01-06 22:32:23 +01:00
}
void game_list_frame::BatchRemoveSPUCaches()
{
if (Emu.GetStatus(false) != system_state::stopped)
{
return;
}
2019-01-06 22:32:23 +01:00
std::set<std::string> serials;
for (const auto& game : m_game_data)
{
serials.emplace(game->info.serial);
}
const u32 total = ::size32(serials);
2019-01-06 22:32:23 +01:00
if (total == 0)
{
QMessageBox::information(this, tr("SPU Cache Batch Removal"), tr("No files found"), QMessageBox::Ok);
return;
}
progress_dialog* pdlg = new progress_dialog(tr("SPU Cache Batch Removal"), tr("Removing all SPU caches"), tr("Cancel"), 0, total, false, this);
2019-01-06 22:32:23 +01:00
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
u32 removed = 0;
for (const auto& serial : serials)
{
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents();
if (RemoveSPUCache(GetCacheDirBySerial(serial)))
{
pdlg->SetValue(++removed);
}
}
if (pdlg->wasCanceled())
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("SPU Cache Batch Removal was canceled. %d/%d folders cleared", removed, total);
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("%0/%1 caches cleared").arg(removed).arg(total));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
}
2019-01-06 22:32:23 +01:00
}
void game_list_frame::BatchRemoveCustomConfigurations()
{
std::set<std::string> serials;
for (const auto& game : m_game_data)
{
if (game->hasCustomConfig && !serials.count(game->info.serial))
{
serials.emplace(game->info.serial);
}
}
const u32 total = ::size32(serials);
2019-01-06 22:32:23 +01:00
if (total == 0)
{
QMessageBox::information(this, tr("Custom Configuration Batch Removal"), tr("No files found"), QMessageBox::Ok);
return;
}
progress_dialog* pdlg = new progress_dialog(tr("Custom Configuration Batch Removal"), tr("Removing all custom configurations"), tr("Cancel"), 0, total, false, this);
2019-01-06 22:32:23 +01:00
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
u32 removed = 0;
for (const auto& serial : serials)
{
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents();
if (RemoveCustomConfiguration(serial))
{
pdlg->SetValue(++removed);
}
}
if (pdlg->wasCanceled())
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("Custom Configuration Batch Removal was canceled. %d/%d custom configurations cleared", removed, total);
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("%0/%1 custom configurations cleared").arg(removed).arg(total));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
}
2019-01-06 22:32:23 +01:00
Refresh(true);
}
void game_list_frame::BatchRemoveCustomPadConfigurations()
{
std::set<std::string> serials;
for (const auto& game : m_game_data)
{
if (game->hasCustomPadConfig && !serials.count(game->info.serial))
{
serials.emplace(game->info.serial);
}
}
const u32 total = ::size32(serials);
if (total == 0)
{
QMessageBox::information(this, tr("Custom Pad Configuration Batch Removal"), tr("No files found"), QMessageBox::Ok);
return;
}
progress_dialog* pdlg = new progress_dialog(tr("Custom Pad Configuration Batch Removal"), tr("Removing all custom pad configurations"), tr("Cancel"), 0, total, false, this);
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
u32 removed = 0;
for (const auto& serial : serials)
{
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents();
if (RemoveCustomPadConfiguration(serial))
{
pdlg->SetValue(++removed);
}
}
if (pdlg->wasCanceled())
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("Custom Pad Configuration Batch Removal was canceled. %d/%d custom pad configurations cleared", removed, total);
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("%0/%1 custom pad configurations cleared").arg(removed).arg(total));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
}
Refresh(true);
}
2019-01-06 22:32:23 +01:00
void game_list_frame::BatchRemoveShaderCaches()
{
if (Emu.GetStatus(false) != system_state::stopped)
{
return;
}
2019-01-06 22:32:23 +01:00
std::set<std::string> serials;
for (const auto& game : m_game_data)
{
serials.emplace(game->info.serial);
}
const u32 total = ::size32(serials);
2019-01-06 22:32:23 +01:00
if (total == 0)
{
QMessageBox::information(this, tr("Shader Cache Batch Removal"), tr("No files found"), QMessageBox::Ok);
return;
}
progress_dialog* pdlg = new progress_dialog(tr("Shader Cache Batch Removal"), tr("Removing all shader caches"), tr("Cancel"), 0, total, false, this);
2019-01-06 22:32:23 +01:00
pdlg->setAutoClose(false);
pdlg->setAutoReset(false);
pdlg->show();
u32 removed = 0;
for (const auto& serial : serials)
{
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents();
if (RemoveShadersCache(GetCacheDirBySerial(serial)))
{
pdlg->SetValue(++removed);
}
}
if (pdlg->wasCanceled())
{
pdlg->deleteLater(); // We did not allow deletion earlier to prevent segfaults when canceling.
game_list_log.notice("Shader Cache Batch Removal was canceled");
}
else
{
pdlg->SetDeleteOnClose();
pdlg->setLabelText(tr("%0/%1 shader caches cleared").arg(removed).arg(total));
pdlg->setCancelButtonText(tr("OK"));
QApplication::beep();
}
2018-06-15 17:50:53 +02:00
}
2021-04-07 23:05:18 +02:00
void game_list_frame::ShowCustomConfigIcon(const game_info& game)
{
if (!game)
{
return;
}
const std::string serial = game->info.serial;
const bool has_custom_config = game->hasCustomConfig;
2020-03-07 20:54:42 +01:00
const bool has_custom_pad_config = game->hasCustomPadConfig;
2021-04-07 23:05:18 +02:00
for (const auto& other_game : m_game_data)
{
if (other_game->info.serial == serial)
{
2020-03-07 20:54:42 +01:00
other_game->hasCustomConfig = has_custom_config;
other_game->hasCustomPadConfig = has_custom_pad_config;
}
}
m_game_list->set_custom_config_icon(game);
RepaintIcons();
}
2020-03-07 18:01:09 +01:00
void game_list_frame::ResizeIcons(const int& slider_pos)
RPCS3 QT (#2645) * Fix windows build. I made sure to do everything with a win32 prefix to not effect linux build. * Make the window resizable instead of fixed in the corner. * Ignore moc files and things in the debug/release folder. I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file. But, this helps clean out clutter for now. * Add cmake. This doesn't interact with the rest of rpcs3 nor the main cmake file. That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt. * The build works. I'd like to thank my friends, Google and Stackoverflow. Setted up by importing rpcs3Qt project using Qt's visual studio plugin. * Cleanup. Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files. * Update readme to reflect getting Qt. * Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild. * Add rpcs3_version, few GUI tweaks * Set defaultSize to 70% of screen size * Add the view menu (#3) * Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets. * Make log visible by default * Improve UI by making it into a checkbox that's easier to use. * fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users) * updated readme for qt * update appveyor for qt - cleaned formatting for the post build command * fix build (#6) * fix build legit this time i promise * [Ready] Gamepadsettings (#4) * WIP Gamepadsettings pushbutton Eventhandling missing * GamepadSettings should work except for cfg Init Some KeyInputs are missing * Update padsettingsdialog.h * Update padsettingsdialog.cpp (#5) * Update padsettingsdialog.cpp removed silly tabs * Update padsettingsdialog.cpp * GetKeyCode simplified * rename pad settings to keyboard settings o.O * rename keyboard setting to input settings * Remvoed the QT_UI defines. * Readded new line at end of file. Replaced define in padsettings with constant. * GUI fixes (Settings) * Stub the logger UI. Nothing special besides a simple stub. * Unstub the log. I haven't tested TTY but it should work. Only thing to do, but this is in general, is add persistent settings. * Minor refactoring to simplify code. * Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images. * Made game lists much more functional than it was. * mainwindow * gamelist * Please forgive me for I have lambdaed. Added the ability to toggle showing columns via a context menu. * Fix GameList further * sort by name on init fixed * Created the baseline refactoring. I'm going to start working on the callbacks now. May need to implement other classes in the process. Fun stuff, I know. * adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation adds RefreshGameList obliterates 10sec Refresh * messages * Rpcs3 gs frame (#16) * Messing with project settings try to get trails of cold steel to boot.bluh Definitely one change is needed in linker settings for RPCS3 to not crash immediately. Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf. * remove random ! not that it matters much right now * minor additions * "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it. However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call) Crashes due to needing pad callback to be done. * With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol) * Fix release mode. Fix the Qt debug assert by using ancient occault rituals. I want to be able to remove the blocking connects but it won't work right now without it. It isn't perfect but it's good enough for now IMO. * Add enters to the end of files. * Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event. Works, though, it's admittedly probably not optimal by ANY means. * Fix comment. * Fix libpng wit zlib. * Move Qt GUI into RPCS3Qt. (#17) Restore wx GUI. * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * Add stylesheet to git ignore. * XInput.. * Joystick... * Rpcs3 qt small fixes (#20) * Small fixes. Have emulator stop when x button is pressed on game window. Have emulator/application stop when the main window is closed. * If I forget another new line ending for a file............................................. * Add CgDisasm (#21) * fix install-progressdialogs randomly not showing * install-progressdialog cosmetics * add stylesheet file loading * apply request * add CgDisasm add code to disable contextmenu options fix gamelist issue * missing proj changes * Add ability to open stylesheets from menu. * Mega searcher (#23) * add MemoryStringSearcher set minimum Sizes for mainwindow and CgDisasm * minor fixes * Since the system.cpp callbacks for emulator state were unused, I removed them. Then, I replaced them with callbacks for the Gui. * added stylesheet options setfocus on settings fixed newline added * added signals and slots for EmuRun and EmuStop * update ui update ui now works added callback onReady added EnableMenues added ps3 commands * added restart logic to menu * newline * event header removed * Added graphic settings class. (#26) * Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful. Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets. But, that'll come in time as I update this class. * Add view debugger, logger, gamelist to settings and synchronize them. * Separate initializing actions from connects * Add invisible fullscreen cursor and double click event. * Add the UI log settings. * Add MemoryViewer (#30) * Add Memoryviewer Image Button crashes/not fully implemented focus on some button annoying minor changes for question dialogs * GuiSettings Refactoring (#31) * Add settings for columns shown and which one is saved * I accidentally refactored the settings class. Added ability to reset to default GUI. Added statefulness to column widths. * add gui tab * Fix logging at startup. * Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase. * Removed dock widget controls. * Added style sheets. Removed the option from the menu. * Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right? * It's remarkable how tricky this is. * Added convenience button to open up the settings folder in explorer * Add newlines at end of file * simplified logic. Fixed a bug.. hopefully not more bugs * Fix the undocumented feature * Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol * Make warning messagebox instead of changing the title of the dialog. * marking... * Hcorion suggested changes. * [WIP] autopause (#32) * autopause added needs fixing headers do not show text * fix compile stuff * Add MsgDialog + edge widgets (#33) * Add MsgDialog needs magic * add "Debugger" Buttons to menubar * Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller. But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation. * [Ready] Add KernelExplorer (#36) * KernelExplorer added * Fix build. Connect mainwindow to show explorer. * qstr formatting added hid header, fixed button size * Taskbar Progress for install PUP/PKG (#37) * Add Taskbar Progress for both PKG and PUP installer * fix missing ifdefs for windows * add mainwindow icon + thumbnail toolbar * add game specific icons to the GSFrame * fix icon crash * fix appIcon's aspect ratio in SetAppIconFromPath * Fix black borders in RGB32 icons * rename thumbar related buttons * EmuSettings (#35) * Core tab done minus doing the library list. * Graphics tab. * Audio tab * Input tab * Added the other tabs * LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega) * add search and add other libraries that aren't checked. * Finish adding lle selecting things. * marking my territory (#38) fixed settingsdialog glitch and width added groupbox to gui buttons removed parents from layouts * add debuggerframe + RSXDebugger (#34) * Add Debuggerframe * add RSXDebugger * add RSXDebugger fo real * RSXDebugger improved minor adjustments * add utf8 conversions like neko told me to hopefully i did not utf8-ise too many things xD * fix some variables * maybe fix image buffers in RSXDebugger * fixed image view (pretty sure) * fixed image buffer (hopefully) * QT Opengl frame (#41) * fix RSX Debugger headers (#40) * fix some debugger layout issues fix RSX Debugger headers + some comments * add kd-11's SPU options fix D3D12 showing on non-compatible systems tidy up coretab * improve D3D12 behaviour in graphicstab: adapter selection and D3D12 render won't show on non-compatible systems add monospace font to cgDisasm * enable update only on visibility * Rpcs3 qt llvm build (#42) * LLVM pushed so mega can test * probably is what is needed with Release LLVM * should probably have RPCS3-Qt be using release-llvm * include zlib the same way. * don't talk to me about how I made this happen. * I applied the magical treatment to debug mode too. Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant * hack * progress bar for LLVM spawns but doesn't close yet. * fix msgDialog (#43) fix oskDialog * Minor bug fixzz * fix osk and msgdialog for real (#44) * fix msgDialog fix oskDialog * fix OskDialog part 2 fix MsgDialog part 2 * This bug is evil, and it should be ashamed of itself. * Refactor YAML. Commented out gui options that aren't added to config yet (add em back later when we merge that in) * Fix pad stuff. * add SaveDataUtility (#45) * add SaveDataUtility * fix slots * fix slots again fix lists not showing stuff fix dialogs not showing add colClicked refactor stuff and polish some layouts * add SaveDataDialog.h and SaveDataDialog.cpp * tidy up mainwindow * add callback * fix RegisterEditor (#47) * fix RegisterEditor * fix other dialogs' immortality (gasp...vampires) * remove debug leftovers * fix InstructionEditor (#46) * fix InstructionEditor * fix typo * Fix MouseClickEvents in RSXDebugger (#50) * Fix MouseClickEvents in RSXDebugger Fix focus on MemoryViewer and RSXDebugger Adjust PadButtonWidth * fix another comment * fix debuggerframe events (#49) * Fix pad settings bro (#48) * Fix pad settings bro * fix comment * Icons and Menu-Additions (#39) * Add Icons and iconlogic to cornerWidget and actions * add cornerWidget toggle fix dockwidget action state on start remove DoSettings * fix game removal bug remove tableitem focus rectangle therefore add TableItemDelegate.h * remove grid and focus rectangle from autopausedialog * add fullscreen checkbox to misctab minor padsettings layout improvements * Add show category submenu to view menu Add gamelist filter accordingly fix minor bug where play icon was displayed despite pause label add boolean b_fullscreen to mainwindow for later use in GSFrame * fix headers in autopausesettings fix remove bug in autopausesettings add delete keypressevent in autopausesettings fix missing tr() and minor refactoring in gamelist * add default Icons for play/pause/stop/restart * Fix fullscreen start. Some stuff was wrong with settings, just trust me. * remove fullscreen leftovers and fix merge * SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build) * please neko's lambda fetishes (#53) * please neko's lambda fetish in mainwindow * please neko's lambda fetish in gamelistframe * please neko's lambda fetish in logframe * fix neko's lambda fetish in debuggerframe * pleasefixdofetishsomething in Autopausesettingsdialog * fix sth sth lambda in cg disasm * lambda stuff in instructioneditor * lambda kernelexplorer * lambda-ise memoryviewer * lambda rsxdebugger * lambda savedatautil this could be done even more, but the functions are not implemented * Rpcs3 qt fixes -- shadow taskbar bug (#52) * SShadow's bug of taskbar progress staying fixed on cancelling pkg install. * other taskbar * i'm still a baka * Fix a warning * qtQt refactoring (#54) * fix neko's snake fetish * File names should match headers. Are these the names I want? Not necessarily. But, this is much less confusing. * i thought I committed everything with stage all......................... * remove unused utilities * The most important commit of them all. * Disable legacy opengl buffers when not using opengl. * fix code review comment * Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab * Merge lovely things from master (#55) * Configuration simplified * untrivial parts of the merge * no need for these options anymore * Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever) * here ya go * FIx hitting okay in settings causing graphics to messup (#57) * fixes + msgdialog taskbarprogress (#56) * fix ok button in taskbar add taskicon progressbar for msgdialog add tablewidgetitem to rsxdebugger fix comments in save_data_utility.cpp * fix d3d adapter default * fix taskicon progressbar not being destroyed properly * add last_path to filedialogs * fix msgdialog crash on ok (#58) * fix thread stopping in debbugerFrame (#59) * Move Emu.init to be first. This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60) * Fix full screen opening on double RIGHT click. * fix other instances of double click ... * Fix locaiton of gui config. (#61) * fix d3d bug (#62) * fix d3d bug * small utf8 addition * Fix cmake for qt (#64) * Initial CMake fix * Fix compilation with GCC * Get rid of awful hack * Update cotire with qt support * Maybe fix travis * Emergency Hack Relief Program Activated * Fix travis build (#65) * make about dialog great again (#67) and add previous additions * Fix library sort / smart gamelist context menu (#63) * fix library sort * add Title to custom game config dialog * disable options on gamelist context menu * use namespace for category Strings * introduce sstr * fix some tr nonsense * Rpcs3qt Appveyor (#68) Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * possible fix for gamelist icons (#69) add warning for appicon * Fix clang build (#66) Hcorion, the build savior. * Rpcs3 qt resources (#70) * Resource files attempt 1 * Autorcc should probably be on? * forgot the most important file lol * Forgot an instance of the icon in the code... * Patch fix for clang build. * vulkan/d3d12 combobox merge (#71) * add vulkan adapterbox and merge with d3d12 box * fix adapter text on other renderer * gather render strings * attempt fix on gamelist row height * adjust adapter behaviour to new guideline * Compiler of Peace. * High critical hit rate. * Mugi eating strawberries is savage. * Apply KD-11 Hotfix (#73) * Most of Ani Adjusts (#72) * Most of the adjustments are made here. * fix gamelist rowheight * fix msg dialog layout and disable_cancel * cleanup * fix disable cancle again * fix debuggerframe buttons and doubleclick * Add a fun little bonus feature :) (#74) * category filters simplyfied (#75) * Cleaning up cmake a bit. * fixezzzzzz (#76) * upgrade Info Boxes * upgrade file explorer * refactor GetSettings and SetSettings * second refactoring * cleanup * travis is a grammar nazi * second travis shenanigans * third travis weirdo thingy * travis 4 mega fun * travis 5 default to def * finish refactoring for settings fix gamelist headers * hotfix msgdialog and infobox (#77) * msgdialog fix 1 * fix zombie infobox * Rpcs3 Qt Welcome Page (#78) * Add a welcome dialog. * Add enter to end of file * i'm an idiot * last mistake i hope * sponsored via --> funded by * RPCS3 does not condone piracy. * Mega Adjusts * Ani Adjustments and a few refactorings * Yay * Add Gamelist Icon Sizes (#79) * Reverting Mega's suggestion. If people can use alt-f4 to get around this dialog, they can probably use an emulator too. * Fix firmware file choice dialog in QT GUI (#80) * ani adjusts 2 + minor icon size simplifications (#81) FPS Additions * Update Travis to Qt 5.9 (#82)
2017-06-04 16:48:33 +02:00
{
2020-03-07 18:01:09 +01:00
m_icon_size_index = slider_pos;
m_icon_size = gui_settings::SizeFromSlider(slider_pos);
RepaintIcons();
}
2020-03-07 18:01:09 +01:00
void game_list_frame::RepaintIcons(const bool& from_settings)
{
2023-04-24 23:37:24 +02:00
gui::utils::stop_future_watcher(m_parsing_watcher, false);
gui::utils::stop_future_watcher(m_refresh_watcher, false);
WaitAndAbortRepaintThreads();
2020-03-07 18:01:09 +01:00
if (from_settings)
{
if (m_gui_settings->GetValue(gui::m_enableUIColors).toBool())
2017-08-20 18:10:02 +02:00
{
2020-03-07 18:01:09 +01:00
m_icon_color = m_gui_settings->GetValue(gui::gl_iconColor).value<QColor>();
2017-08-20 18:10:02 +02:00
}
else
{
m_icon_color = gui::utils::get_label_color("gamelist_icon_background_color", Qt::transparent, Qt::transparent);
2017-08-20 18:10:02 +02:00
}
}
if (m_is_list_layout)
{
m_game_list->repaint_icons(m_game_data, m_icon_color, m_icon_size, devicePixelRatioF());
}
else
2021-04-16 03:53:31 +02:00
{
m_game_grid->set_draw_compat_status_to_grid(m_draw_compat_status_to_grid);
m_game_grid->repaint_icons(m_game_data, m_icon_color, m_icon_size, devicePixelRatioF());
}
}
void game_list_frame::SetShowHidden(bool show)
{
m_show_hidden = show;
}
2020-03-07 18:01:09 +01:00
void game_list_frame::SetListMode(const bool& is_list)
{
2020-03-07 18:01:09 +01:00
m_old_layout_is_list = m_is_list_layout;
m_is_list_layout = is_list;
2020-03-07 18:01:09 +01:00
m_gui_settings->SetValue(gui::gl_listMode, is_list);
Refresh();
if (m_is_list_layout)
{
m_central_widget->setCurrentWidget(m_game_list);
}
else
{
m_central_widget->setCurrentWidget(m_game_grid);
}
}
void game_list_frame::SetSearchText(const QString& text)
{
2018-02-02 05:11:57 +01:00
m_search_text = text;
Refresh();
}
void game_list_frame::FocusAndSelectFirstEntryIfNoneIs()
{
if (m_is_list_layout)
{
if (m_game_list)
{
m_game_list->FocusAndSelectFirstEntryIfNoneIs();
}
}
else
{
if (m_game_grid)
{
m_game_grid->FocusAndSelectFirstEntryIfNoneIs();
}
}
}
void game_list_frame::closeEvent(QCloseEvent *event)
{
SaveSettings();
m_gui_settings->sync();
QDockWidget::closeEvent(event);
Q_EMIT GameListFrameClosed();
}
bool game_list_frame::eventFilter(QObject *object, QEvent *event)
{
// Zoom gamelist/gamegrid
if (event->type() == QEvent::Wheel && (object == m_game_list->verticalScrollBar() || object == m_game_grid->scroll_area()->verticalScrollBar()))
{
QWheelEvent* wheel_event = static_cast<QWheelEvent*>(event);
2020-03-07 20:54:42 +01:00
if (wheel_event->modifiers() & Qt::ControlModifier)
{
2021-04-07 23:05:18 +02:00
const QPoint num_steps = wheel_event->angleDelta() / 8 / 15; // http://doc.qt.io/qt-5/qwheelevent.html#pixelDelta
2020-03-07 20:54:42 +01:00
const int value = num_steps.y();
2018-02-02 05:11:57 +01:00
Q_EMIT RequestIconSizeChange(value);
return true;
}
}
2020-03-07 18:01:09 +01:00
else if (event->type() == QEvent::KeyPress && (object == m_game_list || object == m_game_grid))
{
QKeyEvent* key_event = static_cast<QKeyEvent*>(event);
2020-03-07 20:54:42 +01:00
if (key_event->modifiers() & Qt::ControlModifier)
{
2020-03-07 20:54:42 +01:00
if (key_event->key() == Qt::Key_Plus)
{
2018-02-02 05:11:57 +01:00
Q_EMIT RequestIconSizeChange(1);
return true;
}
if (key_event->key() == Qt::Key_Minus)
{
2018-02-02 05:11:57 +01:00
Q_EMIT RequestIconSizeChange(-1);
return true;
}
}
2021-09-02 20:48:56 +02:00
else if (!key_event->isAutoRepeat())
{
2020-03-07 20:54:42 +01:00
if (key_event->key() == Qt::Key_Enter || key_event->key() == Qt::Key_Return)
{
game_info gameinfo{};
2020-03-07 18:01:09 +01:00
if (object == m_game_list)
{
2023-05-18 11:29:23 +02:00
QTableWidgetItem* item = m_game_list->item(m_game_list->currentRow(), static_cast<int>(gui::game_list_columns::icon));
if (!item || !item->isSelected())
return false;
gameinfo = GetGameInfoFromItem(item);
}
else if (game_list_grid_item* item = static_cast<game_list_grid_item*>(m_game_grid->selected_item()))
{
gameinfo = item->game();
}
if (!gameinfo)
return false;
2020-03-07 20:54:42 +01:00
sys_log.notice("Booting from gamelist by pressing %s...", key_event->key() == Qt::Key_Enter ? "Enter" : "Return");
Q_EMIT RequestBoot(gameinfo);
return true;
}
}
}
2018-06-11 19:19:15 +02:00
return QDockWidget::eventFilter(object, event);
}
/**
* Returns false if the game should be hidden because it doesn't match search term in toolbar.
*/
bool game_list_frame::SearchMatchesApp(const QString& name, const QString& serial, bool fallback) const
{
2018-02-02 05:11:57 +01:00
if (!m_search_text.isEmpty())
{
QString search_text = m_search_text.toLower();
QString title_name = m_titles.value(serial, name).toLower();
// Ignore trademarks when no search results have been yielded by unmodified search
static const QRegularExpression s_ignored_on_fallback(reinterpret_cast<const char*>(u8"[:\\-®©™]+"));
if (fallback)
{
search_text = search_text.simplified();
title_name = title_name.simplified();
QString title_name_replaced_trademarks_with_spaces = title_name;
QString title_name_simplified = title_name;
search_text.remove(s_ignored_on_fallback);
title_name.remove(s_ignored_on_fallback);
title_name_replaced_trademarks_with_spaces.replace(s_ignored_on_fallback, " ");
// Before simplify to allow spaces in the beginning and end where ignored characters may have been
if (title_name_replaced_trademarks_with_spaces.contains(search_text))
{
return true;
}
title_name_replaced_trademarks_with_spaces = title_name_replaced_trademarks_with_spaces.simplified();
if (title_name_replaced_trademarks_with_spaces.contains(search_text))
{
return true;
}
2023-08-21 14:55:36 +02:00
// Initials-only search
if (search_text.size() >= 2 && search_text.count(QRegularExpression(QStringLiteral("[a-z0-9]"))) >= 2 && !search_text.contains(QRegularExpression(QStringLiteral("[^a-z0-9 ]"))))
{
QString initials = QStringLiteral("\\b");
for (auto it = search_text.begin(); it != search_text.end(); it++)
{
if (it->isSpace())
{
continue;
}
initials += *it;
initials += QStringLiteral("\\w*\\b ");
}
initials += QChar('?');
if (title_name_replaced_trademarks_with_spaces.contains(QRegularExpression(initials)))
{
return true;
}
}
}
return title_name.contains(search_text) || serial.toLower().contains(search_text);
}
return true;
}
std::string game_list_frame::CurrentSelectionPath()
{
2020-02-26 21:13:54 +01:00
std::string selection;
game_info game{};
2020-03-07 18:01:09 +01:00
if (m_old_layout_is_list)
{
2020-03-07 18:01:09 +01:00
if (!m_game_list->selectedItems().isEmpty())
{
if (QTableWidgetItem* item = m_game_list->item(m_game_list->currentRow(), 0))
{
if (const QVariant var = item->data(gui::game_role); var.canConvert<game_info>())
{
game = var.value<game_info>();
}
}
}
}
else if (m_game_grid)
{
if (game_list_grid_item* item = static_cast<game_list_grid_item*>(m_game_grid->selected_item()))
{
game = item->game();
}
}
if (game)
{
selection = game->info.path + game->info.icon_path;
}
2020-03-07 18:01:09 +01:00
m_old_layout_is_list = m_is_list_layout;
return selection;
}
2021-04-07 23:05:18 +02:00
game_info game_list_frame::GetGameInfoByMode(const QTableWidgetItem* item) const
{
if (!item)
{
return nullptr;
}
2020-03-07 18:01:09 +01:00
if (m_is_list_layout)
{
2023-05-18 11:29:23 +02:00
return GetGameInfoFromItem(m_game_list->item(item->row(), static_cast<int>(gui::game_list_columns::icon)));
}
return GetGameInfoFromItem(item);
}
game_info game_list_frame::GetGameInfoFromItem(const QTableWidgetItem* item)
{
if (!item)
{
return nullptr;
}
2020-03-07 18:01:09 +01:00
const QVariant var = item->data(gui::game_role);
if (!var.canConvert<game_info>())
{
return nullptr;
}
return var.value<game_info>();
}
void game_list_frame::SetShowCompatibilityInGrid(bool show)
{
2020-03-07 18:01:09 +01:00
m_draw_compat_status_to_grid = show;
RepaintIcons();
2018-10-13 16:34:00 +02:00
m_gui_settings->SetValue(gui::gl_draw_compat, show);
}
2021-03-12 22:24:35 +01:00
void game_list_frame::SetShowCustomIcons(bool show)
{
if (m_show_custom_icons != show)
{
m_show_custom_icons = show;
m_gui_settings->SetValue(gui::gl_custom_icon, show);
Refresh(true);
}
}
void game_list_frame::SetPlayHoverGifs(bool play)
{
if (m_play_hover_movies != play)
{
m_play_hover_movies = play;
m_gui_settings->SetValue(gui::gl_hover_gifs, play);
Refresh(true);
}
}
2022-12-09 17:54:45 +01:00
const QList<game_info>& game_list_frame::GetGameInfo() const
{
return m_game_data;
}
void game_list_frame::WaitAndAbortRepaintThreads()
{
for (const game_info& game : m_game_data)
{
if (game && game->item)
{
game->item->wait_for_icon_loading(true);
}
}
}
void game_list_frame::WaitAndAbortSizeCalcThreads()
{
for (const game_info& game : m_game_data)
{
if (game && game->item)
{
game->item->wait_for_size_on_disk_loading(true);
}
}
}