diff --git a/.ci/compile.sh b/.ci/compile.sh index d76d32bcc..aab41d1f9 100755 --- a/.ci/compile.sh +++ b/.ci/compile.sh @@ -357,21 +357,15 @@ if [[ $MAKE_PACKAGE ]]; then fi echo "Installer content is clean" - # Fail the build if the installer does not carry the runtime the - # applications link against - a file that must be there, or a DLL that must - # not be. The runtime DLLs reach the package by globbing every *.dll out of - # the build output directories, so anything that build produced can ride - # along and nothing else in the build objects to it: a Qt module the client - # links statically (Qt6Multimedia.dll, Qt6QuickWidgets.dll) can be left out, - # and the test framework's gtest.dll can be shipped. Either only surfaces on - # a user's machine after an update has already replaced their install, as - # "The code execution cannot proceed because Qt6Multimedia.dll was not - # found" or "abseil_dll.dll is either not designed to run on Windows or it - # contains an error". required-runtime.txt is written by the top level - # CMakeLists.txt from the same module lists the targets are built against - # plus the vcpkg bin directory the app-local copies come from. - if [[ ! -f required-runtime.txt ]]; then - echo "::error file=$0::required-runtime.txt not found in the build dir, cannot verify the runtime" + # Fail the build if the installer is missing a Qt runtime the applications + # link against. The DLLs reach the package by globbing every *.dll out of + # the build output directories, so a module the client links statically + # (Qt6Multimedia.dll, Qt6QuickWidgets.dll) can be left out without anything + # else noticing, and the only symptom is a client that refuses to start + # after an update. required-qt-runtime.txt is written by the top level + # CMakeLists.txt from the same module list the targets are built against. + if [[ ! -f required-qt-runtime.txt ]]; then + echo "::error file=$0::required-qt-runtime.txt not found in the build dir, cannot verify the Qt runtime" exit 1 fi # 7-Zip writes CRLF on Windows, so the \r has to come off before any @@ -381,7 +375,7 @@ if [[ $MAKE_PACKAGE ]]; then # being a wildcard; -i because that is how the installed tree behaves - # the uninstaller clears both $INSTDIR\plugins and $INSTDIR\Plugins. # The archive side and the manifest side have to agree on line endings. - # CMake writes required-runtime.txt with the platform's line ending and + # CMake writes required-qt-runtime.txt with the platform's line ending and # 7-Zip writes CRLF on Windows, so a trailing \r survives on $entry and # defeats the whole-line match - every entry then reads as missing even # though the listing holds it verbatim. @@ -390,7 +384,7 @@ if [[ $MAKE_PACKAGE ]]; then installer_paths="$("$seven_zip" l -slt "$package" | tr -d '\r' | sed -n 's/^Path = //p' | sed -e 's|\\|/|g' -e 's|^[$]INSTDIR/||' -e 's|^[$]OUTDIR/||' -e 's|^[$]PLUGINSDIR/||' -e 's|^\./||' -e 's|^/||')" - manifest="$(tr -d '\r' . Used to record the DLL inventory -; before and after the upgrade purge, which is what shows whether Qt6Gui.dll was -; on disk and what (if anything) survived the deletes. -!macro CockLogListing label mask - Push "${label}" - Push "$INSTDIR\${mask}" - Call CockLogListing -!macroend - -Function CockLogListing - Pop $LogMatchPattern - Pop $LogMatchLabel - !insertmacro CockLog "listing [$LogMatchLabel] pattern=$LogMatchPattern" - FindFirst $LogFindHandle $LogFindName "$LogMatchPattern" - ${If} $LogFindHandle == "" - !insertmacro CockLog "listing [$LogMatchLabel] (no matches)" - Return - ${EndIf} - log_listing_loop: - !insertmacro CockLog "listing [$LogMatchLabel] $LogFindName" - ClearErrors - FindNext $LogFindHandle $LogFindName - IfErrors 0 log_listing_loop - FindClose $LogFindHandle -FunctionEnd - Function .onInit -StrCpy $InstallLogPath "$TEMP\Cockatrice-installer.log" -; Start each run from a clean file so the log that gets sent back is the last -; run, not every past run glued together. -FileOpen $LogHandle "$InstallLogPath" w -FileClose $LogHandle -!insertmacro CockLog "==================================================================" -!insertmacro CockLog "installer start: @CPACK_PACKAGE_NAME@ @CPACK_PACKAGE_VERSION@" - ${If} ${NSIS_IS_64_BIT} == 1 #NSIS 64bit ${IfNot} ${RunningX64} MessageBox MB_OK|MB_ICONSTOP "This version of Cockatrice requires a 64-bit Windows system." @@ -224,13 +158,6 @@ ${EndIf} ; Now that $PortableMode reflects reality, commit InstDir into the correct slot Call SetModeDestinationFromInstdir -!insertmacro CockLog "options: InstDir=$InstDir PortableMode=$PortableMode ReinstallMode=$ReinstallMode WaitPid=$WaitPid" -${If} ${Silent} - !insertmacro CockLog "options: running silently" -${Else} - !insertmacro CockLog "options: interactive" -${EndIf} - ; Wait for the process that launched this installer to exit before anything is ; replaced or deleted. It goes first because it is the one check here that needs ; no powershell.exe: on a machine where the process lookup cannot run at all, the @@ -248,14 +175,12 @@ ${EndIf} ; interactive installs the section re-checks after the directory page, when ; $INSTDIR is the directory the user actually picked. ${If} $ReinstallMode = 1 - !insertmacro CockLog "reinstall: waiting for launcher and other instances" Call WaitForLauncherToExit Call EnsureAppsNotRunning ${EndIf} ${If} $ReinstallMode = 1 ${AndIf} $PortableMode = 0 - !insertmacro CockLog "reinstall: auto-uninstalling previous version" Call AutoUninstallIfNeeded ${EndIf} @@ -301,22 +226,13 @@ Function AutoUninstallIfNeeded SetShellVarContext all -; _?=$INSTDIR keeps the old uninstaller running in place. An NSIS uninstaller -; normally copies itself to %TEMP% and runs from there so that it can delete its -; own directory, and the process we started exits at once. ExecWait then returns -; before the uninstall has run, and the temp copy's "RMDir /r $INSTDIR" executes -; while the section below is still writing the new payload. _?= disables the copy -; and makes ExecWait block until the uninstall finishes. It must be the last -; argument and must not be quoted, even when the path contains spaces. -; ; --- 32-bit uninstall --- SetRegView 32 ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cockatrice" "QuietUninstallString" -!insertmacro CockLog "uninstall (32-bit): '$R0 _?=$INSTDIR'" StrCmp $R0 "" done32 DetailPrint "Removing previous version (32-bit)..." -ExecWait '$R0 _?=$INSTDIR' +ExecWait '$R0' done32: @@ -325,10 +241,9 @@ ${If} ${RunningX64} SetRegView 64 ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cockatrice" "QuietUninstallString" - !insertmacro CockLog "uninstall (64-bit): '$R0 _?=$INSTDIR'" StrCmp $R0 "" done64 DetailPrint "Removing previous version (64-bit)..." - ExecWait '$R0 _?=$INSTDIR' + ExecWait '$R0' done64: ${EndIf} @@ -445,7 +360,6 @@ Function WaitForAppToClose ; usage: set $R1 to the display name (e.g. "cockatrice.exe") and $R2 to the ; base image name (e.g. "cockatrice") Call IsAppRunning - !insertmacro CockLog "guard $R1: state=$R0 (dir=$GuardDir)" ; Only a definite "running" is worth waiting for. "Not running" is done, and ; "could not determine" must not keep the installer waiting on an answer it ; will never get - but it cannot simply be waved through either, see @@ -470,7 +384,6 @@ Function WaitForAppToClose Sleep 500 Call IsAppRunning ${If} $R0 = 0 - !insertmacro CockLog "guard $R1: closed gracefully" DetailPrint "$R1 closed." Return ${EndIf} @@ -489,7 +402,6 @@ Function WaitForAppToClose ; deck, and nothing has been replaced yet, so aborting just defers the ; update and preserves the user's data. ${If} $AllowForceClose = 0 - !insertmacro CockLog "guard $R1: still running after 60s, aborting (no force close)" DetailPrint "$R1 is still running after 60 s; aborting the update so that no data is lost." StrCpy $AbortReason \ "$R1 did not close within 60 seconds, so the installation was aborted to avoid losing unsaved data.$\r$\n$\r$\nPlease close $R1 and run the installer again." @@ -498,13 +410,11 @@ Function WaitForAppToClose ; Oracle and Servatrice are console applications: CloseMainWindow() ; returned false for them and waiting longer cannot help. They hold no ; unsaved user data, so stop them by PID. - !insertmacro CockLog "guard $R1: still running after 60s, force-stopping" DetailPrint "Force-stopping $R1 ..." Call ForceCloseApps Sleep 2000 Call IsAppRunning ${If} $R0 = 0 - !insertmacro CockLog "guard $R1: force-stopped" DetailPrint "$R1 closed." Return ${EndIf} @@ -512,7 +422,6 @@ Function WaitForAppToClose Call HandleUnknownAppState Return ${EndIf} - !insertmacro CockLog "guard $R1: could not be stopped, aborting" DetailPrint "$R1 is still running after 60 s; aborting the update." StrCpy $AbortReason \ "$R1 could not be stopped, so the installation was aborted.$\r$\n$\r$\nPlease close $R1 and run the installer again." @@ -577,16 +486,8 @@ FunctionEnd ; Only the first of those two gets a dialog; the second reports through the log ; and the exit code. Function AbortInstall - !insertmacro CockLog "ABORT: $AbortReason" - !insertmacro CockLog "full installer log: $InstallLogPath" - ; Show a dialog whenever someone is at the keyboard to see it: an interactive - ; install, or the in-app updater's /R upgrade. The /R upgrade is silent, but - ; the client that launched the installer has already quit, so the user is - ; still there. Only a /S install without /R is attended by a package manager - ; and must go straight to the exit code. - ${If} $ReinstallMode = 1 - ${OrIfNot} ${Silent} - MessageBox MB_OK|MB_ICONEXCLAMATION "$AbortReason$\r$\n$\r$\nA detailed installer log was written to:$\r$\n$InstallLogPath" + ${IfNot} ${Silent} + MessageBox MB_OK|MB_ICONEXCLAMATION "$AbortReason" ${EndIf} SetErrorLevel 1 Abort @@ -609,33 +510,17 @@ FunctionEnd ; falls back to the name based guard. Function WaitForLauncherToExit StrCpy $LauncherExited 0 - !insertmacro CockLog "wait-launcher: pid='$WaitPid'" ${If} $WaitPid == "" - !insertmacro CockLog "wait-launcher: no pid given, falling back to name check" Return ${EndIf} ; PROCESS_SYNCHRONIZE is the only access this needs - enough to wait on the ; handle, and the least likely to be refused for a reason that has nothing to ; do with the upgrade. - ; - ; System.dll maps its output registers so that .rN writes $N and .RN writes - ; $RN. The caller reads $R0/$R1, so the uppercase .RN form is required; the - ; original .r0/.r1 wrote $0/$1 and left $R1 empty, which made the "did not - ; exit" test below compare "" against "0" and abort on every /PID= upgrade. ClearErrors - System::Call 'kernel32::OpenProcess(i 0x00100000, i 0, i $WaitPid) p.R0' - ; OpenProcess returns a null handle for a process that is already gone. The - ; System plugin does not raise the NSIS error flag from a called function's - ; return value, so ${Errors} alone never saw that case and the null handle was - ; passed straight to WaitForSingleObject. Fold a plugin failure into the same - ; null-handle case instead of reading a handle that was never written. + System::Call 'kernel32::OpenProcess(i 0x00100000, i 0, i $WaitPid) p.r0' ${If} ${Errors} - StrCpy $R0 0 - ${EndIf} - ${If} $R0 == 0 ; The launcher is gone - OpenProcess cannot open a dead process - which is ; exactly the state the wait was for. - !insertmacro CockLog "wait-launcher: already exited" DetailPrint "The application that started this installer has already exited." StrCpy $LauncherExited 1 Return @@ -644,16 +529,14 @@ Function WaitForLauncherToExit ; Same 60 s grace period the name based check uses, so a client that is slow ; to flush its card database does not get less room than it used to. ; WAIT_OBJECT_0 is 0; WAIT_TIMEOUT is 258 and a failed wait reports 0xFFFFFFFF. - System::Call 'kernel32::WaitForSingleObject(p R0, i 60000) i.R1' - System::Call 'kernel32::CloseHandle(p R0)' + System::Call 'kernel32::WaitForSingleObject(p r0, i 60000) i.r1' + System::Call 'kernel32::CloseHandle(p r0)' ${If} $R1 != 0 - !insertmacro CockLog "wait-launcher: did not exit within 60s (wait=$R1)" DetailPrint "The application that started this installer did not exit within 60 s." StrCpy $AbortReason \ "The application that started this update has not exited yet, so the installation was cancelled rather than replace files it is still using.$\r$\n$\r$\nPlease close Cockatrice and run the installer again." Call AbortInstall ${EndIf} - !insertmacro CockLog "wait-launcher: launcher exited" DetailPrint "The application that started this installer has exited." StrCpy $LauncherExited 1 FunctionEnd @@ -679,11 +562,9 @@ FunctionEnd Function GuardAppsNotRunning ; usage: set $GuardDir to the directory to guard, then call this Call IsProcessLookupAvailable - !insertmacro CockLog "guard: powershell available=$R0 dir=$GuardDir launcherExited=$LauncherExited" ${If} $R0 = 0 ; Without PowerShell we cannot tell whether a running instance is ; holding locks on the files we are about to replace. - !insertmacro CockLog "guard: powershell unavailable, skipping instance check" DetailPrint "Could not start powershell.exe; skipping the running instance check. Close Cockatrice, Oracle and Servatrice manually if the installation reports a problem." ; On a silent upgrade that used to be a warning and nothing more, which ; left the very process that launched the installer free to go on @@ -706,8 +587,7 @@ Function GuardAppsNotRunning ${EndIf} ; The user has to be told to close the applications by hand, but a /S ; install without /R is unattended and would block on this forever. - ${If} $ReinstallMode = 1 - ${OrIfNot} ${Silent} + ${IfNot} ${Silent} MessageBox MB_OK|MB_ICONEXCLAMATION "This installer could not check whether Cockatrice is still running, because powershell.exe could not be started.$\r$\n$\r$\nPlease close Cockatrice, Oracle and Servatrice manually before continuing." ${EndIf} Return @@ -753,11 +633,7 @@ Function IsExistingCockatriceInstall ; there to prove that it is one. Every Qt module Cockatrice links is part of ; the payload, so match them all: probing only Qt6Core.dll would miss a ; directory where that one file happened to be deletable and the others - ; were not. Qt6*.dll rather than *.dll on purpose: this function decides - ; whether a directory is ours, and a folder that merely holds some DLLs of - ; its own must not be purged. Qt6*.dll is enough even when only the protobuf - ; runtime survived, because the whole Qt set is mapped by the same process - ; that maps abseil_dll.dll and so is locked or free with it. + ; were not. StrCpy $R3 "Qt6*.dll" Call CheckStaleRuntimeMask ${If} ${FileExists} "$INSTDIR\qt.conf" @@ -769,23 +645,36 @@ FunctionEnd ; the purge. NSIS silently skips whatever it cannot delete, so one surviving file ; is enough to prove that something still holds a lock on the install directory. ; -; Any DLL at all counts, not a list of expected ones. The purge removes every -; top-level DLL, so after it has run the only DLL that can still be there is one -; it failed to delete, whatever its name. A mask per library family (Qt, then -; OpenSSL, then zlib) is what let abseil_dll.dll through: it is in neither the -; purge nor this check, so it survived a 3.0.2 to 3.1 update untouched, the new -; executables were written next to it, and the client then failed to start with -; "abseil_dll.dll is either not designed to run on Windows or it contains an -; error". Probing *.dll has no list to fall out of date when the next -; transitive dependency appears. +; The masks below have to cover the purge above one for one. A check that only +; probed named files could not see a locked Qt6Multimedia.dll or a Plugins +; directory the purge was unable to remove, so the exact files that broke the +; install were also the ones this check was blind to. Function HasStaleRuntimeFiles StrCpy $R0 0 - StrCpy $R3 "*.dll" + StrCpy $R3 "Qt*.dll" Call CheckStaleRuntimeMask + StrCpy $R3 "libcrypto*.dll" + Call CheckStaleRuntimeMask + StrCpy $R3 "libssl*.dll" + Call CheckStaleRuntimeMask + StrCpy $R3 "zlib*.dll" + Call CheckStaleRuntimeMask + StrCpy $R3 "icu*.dll" + Call CheckStaleRuntimeMask + StrCpy $R3 "libeay32.dll" + Call CheckStaleRuntimeMask + StrCpy $R3 "ssleay32.dll" + Call CheckStaleRuntimeMask + ${If} $R0 = 1 + Return + ${EndIf} + ${If} ${FileExists} "$INSTDIR\libmysql.dll" + StrCpy $R0 1 + Return + ${EndIf} ; IfFileExists takes wildcards, so a Plugins directory the purge could not ; remove counts as a leftover too. ${If} ${FileExists} "$INSTDIR\Plugins\*.*" - !insertmacro CockLog "stale-runtime: Plugins directory survived the purge" StrCpy $R0 1 ${EndIf} FunctionEnd @@ -798,7 +687,6 @@ Function CheckStaleRuntimeMask ${EndIf} FindFirst $StaleFindHandle $StaleFindName "$INSTDIR\$R3" ${If} $StaleFindHandle != "" - !insertmacro CockLog "stale-runtime: '$StaleFindName' matched $R3 in $INSTDIR" StrCpy $R0 1 FindClose $StaleFindHandle ${EndIf} @@ -1037,10 +925,9 @@ ${If} $PortableMode = 0 ; directory before letting it delete anything. The uninstall string is ; stashed away first, the check works on $R0. StrCpy $OldUninstallString $R0 - !insertmacro CockLog "componentsPagePre: old 32-bit uninstall '$OldUninstallString _?=$INSTDIR'" Call EnsureOldInstallNotRunning ClearErrors - ExecWait "$OldUninstallString _?=$INSTDIR" + ExecWait "$OldUninstallString" done32: @@ -1060,10 +947,9 @@ ${If} $PortableMode = 0 uninst64: StrCpy $OldUninstallString $R0 - !insertmacro CockLog "componentsPagePre: old 64-bit uninstall '$OldUninstallString _?=$INSTDIR'" Call EnsureOldInstallNotRunning ClearErrors - ExecWait "$OldUninstallString _?=$INSTDIR" + ExecWait "$OldUninstallString" done64: ${EndIf} @@ -1078,19 +964,15 @@ Section "Application" SecApplication SetShellVarContext all SetOutPath "$INSTDIR" -!insertmacro CockLog "section: InstDir=$INSTDIR PortableMode=$PortableMode ReinstallMode=$ReinstallMode" - ; No application instance may be running while any file below is deleted or ; replaced: both upgrade blocks start by removing the old executables and ; runtime DLLs, and NSIS silently skips whatever is locked, which is how an -; install ends up with a mix of old and new runtimes next to the new executable. -; The next start then fails with "The procedure entry point X could not be -; located in the dynamic link library ...Qt6Network.dll" for the Qt ones, or -; "abseil_dll.dll is either not designed to run on Windows or it contains an -; error" for the protobuf ones. So the check has to come before the first -; Delete/RMDir and not after it: an interactive install into an existing portable -; directory with cockatrice.exe still running would otherwise delete the old -; files under its feet. +; install ends up with a mix of old and new Qt DLLs next to the new executable +; ("The procedure entry point X could not be located in the dynamic link +; library ...Qt6Network.dll"). So the check has to come before the first +; Delete/RMDir and not after it - an interactive install into an existing +; portable directory with cockatrice.exe still running would otherwise delete +; the old files under its feet. ; ; It is skipped on the /R path: .onInit already ran it before ; AutoUninstallIfNeeded removed the previous installation, so by the time this @@ -1105,8 +987,6 @@ ${EndIf} ${If} $PortableMode = 1 ${AndIf} ${FileExists} "$INSTDIR\portable.dat" ; upgrade portable mode - !insertmacro CockLog "section: portable upgrade purge" - !insertmacro CockLogListing "before-portable-purge" "*.dll" RMDir /r "$INSTDIR\plugins" RMDir /r "$INSTDIR\sounds" RMDir /r "$INSTDIR\themes" @@ -1115,24 +995,24 @@ ${AndIf} ${FileExists} "$INSTDIR\portable.dat" Delete "$INSTDIR\cockatrice.exe" Delete "$INSTDIR\oracle.exe" Delete "$INSTDIR\servatrice.exe" - ; Every top-level DLL, not a list of expected ones. The payload is written - ; after this block, so a DLL the new build still needs is put straight back; - ; what this has to guarantee is that nothing from the previous build is left - ; to be loaded next to the new executables. Naming the families by hand is - ; what let abseil_dll.dll through; see HasStaleRuntimeFiles. - Delete "$INSTDIR\*.dll" + Delete "$INSTDIR\Qt*.dll" + Delete "$INSTDIR\libmysql.dll" + Delete "$INSTDIR\icu*.dll" + Delete "$INSTDIR\libcrypto*.dll" + Delete "$INSTDIR\libssl*.dll" + Delete "$INSTDIR\libeay32.dll" + Delete "$INSTDIR\ssleay32.dll" Delete "$INSTDIR\qt.conf" Delete "$INSTDIR\qdebug.txt" Delete "$INSTDIR\servatrice.sql" Delete "$INSTDIR\servatrice.ini.example" + Delete "$INSTDIR\zlib*.dll" RMDir "$INSTDIR" - !insertmacro CockLogListing "after-portable-purge" "*.dll" ${EndIf} ; Remove any runtime DLLs left over from older versions, so a mismatched -; Qt/OpenSSL/protobuf set cannot survive next to the new executables. +; Qt/OpenSSL set cannot survive next to the new executables. Call IsExistingCockatriceInstall -!insertmacro CockLog "section: IsExistingCockatriceInstall=$R0" ; Remembered because the stale-runtime check below must only ever fire for a ; directory this installer recognised as a Cockatrice install. Scanning for ; leftovers in an unrelated directory (a first-time install into a folder that @@ -1141,48 +1021,48 @@ Call IsExistingCockatriceInstall StrCpy $IsUpgrade $R0 ${If} $PortableMode = 0 ${AndIf} $R0 = 1 - !insertmacro CockLog "section: non-portable upgrade purge" - !insertmacro CockLogListing "before-purge" "*.dll" RMDir /r "$INSTDIR\Plugins" - Delete "$INSTDIR\*.dll" - !insertmacro CockLogListing "after-purge" "*.dll" - !insertmacro CockLogListing "after-plugins" "Plugins\*.*" + Delete "$INSTDIR\Qt*.dll" + Delete "$INSTDIR\libcrypto*.dll" + Delete "$INSTDIR\libssl*.dll" + Delete "$INSTDIR\zlib*.dll" + Delete "$INSTDIR\libmysql.dll" + Delete "$INSTDIR\icu*.dll" + Delete "$INSTDIR\libeay32.dll" + Delete "$INSTDIR\ssleay32.dll" ${EndIf} -; Whatever was locked during the purge (by an instance that started while the +; Whatever was locked during the purge - by an instance that started while the ; installer was running, or because the running instance check could not be -; performed at all) is still on disk, and the new executables are about to be +; performed at all - is still on disk, and the new executables are about to be ; written next to it. That mix is exactly what makes the next start fail with ; "The procedure entry point X could not be located in the dynamic link library -; ...Qt6QuickWidgets.dll", "The code execution cannot proceed because -; Qt6Multimedia.dll was not found", or "abseil_dll.dll is either not designed to -; run on Windows or it contains an error", so stop here instead of compounding -; it. Nothing of the new payload has been written at this point, so the next run, -; with the applications closed, gets a clean install. +; ...Qt6QuickWidgets.dll" or "The code execution cannot proceed because +; Qt6Multimedia.dll was not found", so stop here instead of compounding it. +; Nothing of the new payload has been written at this point, so the next run - +; with the applications closed - gets a clean install. ${If} $IsUpgrade = 1 Call HasStaleRuntimeFiles - !insertmacro CockLog "section: HasStaleRuntimeFiles=$R0" ${Else} StrCpy $R0 0 ${EndIf} ${If} $R0 = 1 - !insertmacro CockLog "section: aborting, files of a previous version survived the purge" DetailPrint "Files of a previous version could not be removed; aborting the installation." ; The in-app updater runs this installer silent and detached and never looks ; at its exit code, so the user has to be told what happened. A /S install - ; without /R is unattended (a package manager, for instance) and a message + ; without /R is unattended - a package manager, for instance - and a message ; box there would block forever, so that case only reports through the log - ; and the exit code. AbortInstall owns that decision. - StrCpy $AbortReason \ - "The installation could not remove all files of a previous version of Cockatrice, most likely because it is still running or was started as administrator, and was cancelled rather than leave a mismatched install behind.$\r$\n$\r$\nPlease close Cockatrice, Oracle and Servatrice and run the installer again." - Call AbortInstall + ; and the exit code. + ${IfNot} ${Silent} + MessageBox MB_OK|MB_ICONEXCLAMATION \ + "The installation could not remove all files of a previous version of Cockatrice, most likely because it is still running or was started as administrator, and was cancelled rather than leave a mismatched install behind.$\r$\n$\r$\nPlease close Cockatrice, Oracle and Servatrice and run the installer again." + ${EndIf} + SetErrorLevel 1 + Abort ${EndIf} @CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS@ -!insertmacro CockLog "section: writing payload to $INSTDIR" @CPACK_NSIS_FULL_INSTALL@ -!insertmacro CockLog "section: payload written" -!insertmacro CockLogListing "final" "Qt6*.dll" ${If} $PortableMode = 0 WriteUninstaller "$INSTDIR\uninstall.exe" @@ -1246,7 +1126,6 @@ ${If} $ReinstallMode = 1 Exec '"$INSTDIR\cockatrice.exe"' ${EndIf} -!insertmacro CockLog "section: application install complete" SectionEnd Section "Start menu item" SecStartMenu diff --git a/cockatrice/CMakeLists.txt b/cockatrice/CMakeLists.txt index 32b81cf61..1760d86b8 100644 --- a/cockatrice/CMakeLists.txt +++ b/cockatrice/CMakeLists.txt @@ -140,10 +140,6 @@ set(cockatrice_SOURCES src/game_graphics/zones/view_zone.cpp src/game_graphics/zones/view_zone_widget.cpp src/game_graphics/board/abstract_graphics_item.cpp - src/interface/card_database_update/card_database_update_status_bar.cpp - src/interface/card_database_update/card_database_update_status_bar.h - src/interface/card_database_update/card_update_progress.cpp - src/interface/card_database_update/card_update_progress.h src/interface/card_picture_loader/card_picture_loader.cpp src/interface/card_picture_loader/card_picture_loader_local.cpp src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.cpp @@ -691,7 +687,7 @@ if(WIN32) # import table, and the glob above only sees DLLs that were already copied next # to the executable. Qt6::Concurrent is linked but never imported - QtConcurrent::run # and QFutureWatcher are header-only in Qt 6 - so neither step ships - # Qt6Concurrent.dll, even though required-runtime.txt lists it and the + # Qt6Concurrent.dll, even though required-qt-runtime.txt lists it and the # Windows package check then fails on a package that is fine to run. # Qt6::ShaderTools is skipped for the same reason. # diff --git a/cockatrice/cockatrice.desktop b/cockatrice/cockatrice.desktop index 70db9d472..4b15fa9c1 100644 --- a/cockatrice/cockatrice.desktop +++ b/cockatrice/cockatrice.desktop @@ -6,4 +6,5 @@ Name=Cockatrice Exec=cockatrice %U Icon=cockatrice Categories=Game;CardGame; -MimeType=application/x-cockatrice;x-scheme-handler/cockatrice; +MimeType=application/x-cockatrice; +X-Scheme-Handler/cockatrice=true diff --git a/cockatrice/src/client/lag_monitor.cpp b/cockatrice/src/client/lag_monitor.cpp index 6b72087ec..383d64644 100644 --- a/cockatrice/src/client/lag_monitor.cpp +++ b/cockatrice/src/client/lag_monitor.cpp @@ -1,10 +1,7 @@ #include "lag_monitor.h" -#include #include -#include #include -#include #include LagMonitor::LagMonitor(QObject *parent) : QObject(parent) diff --git a/cockatrice/src/client/lag_monitor.h b/cockatrice/src/client/lag_monitor.h index 0bb98c25e..9fdf6b283 100644 --- a/cockatrice/src/client/lag_monitor.h +++ b/cockatrice/src/client/lag_monitor.h @@ -6,15 +6,15 @@ #ifndef LAG_MONITOR_H #define LAG_MONITOR_H +#include #include #include #include #include -#include -#include inline Q_LOGGING_CATEGORY(LagMonitorLog, "lag_monitor"); +class QEvent; class QTimer; /** diff --git a/cockatrice/src/client/latency_graph_widget.cpp b/cockatrice/src/client/latency_graph_widget.cpp index 72df3ce6c..46d6ccdd3 100644 --- a/cockatrice/src/client/latency_graph_widget.cpp +++ b/cockatrice/src/client/latency_graph_widget.cpp @@ -5,11 +5,7 @@ #include "latency_graph_widget.h" -#include #include -#include -#include -#include LatencyGraphWidget::LatencyGraphWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/client/latency_graph_widget.h b/cockatrice/src/client/latency_graph_widget.h index 31a7022b2..4f6f38f8b 100644 --- a/cockatrice/src/client/latency_graph_widget.h +++ b/cockatrice/src/client/latency_graph_widget.h @@ -8,8 +8,6 @@ #include #include -#include -#include /** * @brief Bar graph of recent network round-trip samples. diff --git a/cockatrice/src/client/latency_status_widget.cpp b/cockatrice/src/client/latency_status_widget.cpp index 940074581..779c726eb 100644 --- a/cockatrice/src/client/latency_status_widget.cpp +++ b/cockatrice/src/client/latency_status_widget.cpp @@ -6,15 +6,11 @@ #include "latency_status_widget.h" #include "latency_graph_widget.h" -#include "latency_tracker.h" #include #include #include -#include -#include #include -#include LatencyStatusWidget::LatencyStatusWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/client/latency_status_widget.h b/cockatrice/src/client/latency_status_widget.h index 24d6fda4d..d9e1d130c 100644 --- a/cockatrice/src/client/latency_status_widget.h +++ b/cockatrice/src/client/latency_status_widget.h @@ -7,10 +7,8 @@ #define LATENCY_STATUS_WIDGET_H #include -#include #include #include -#include class QLabel; class LatencyGraphWidget; diff --git a/cockatrice/src/client/network/connection_controller/remote_connection_controller.cpp b/cockatrice/src/client/network/connection_controller/remote_connection_controller.cpp index 7480da27e..c1598bd25 100644 --- a/cockatrice/src/client/network/connection_controller/remote_connection_controller.cpp +++ b/cockatrice/src/client/network/connection_controller/remote_connection_controller.cpp @@ -8,25 +8,14 @@ #include "../interface/widgets/dialogs/dlg_forgot_password_reset.h" #include "../interface/widgets/dialogs/dlg_register.h" #include "../interface/widgets/utility/get_text_with_max.h" -#include "libcockatrice/protocol/pb/event_connection_closed.pb.h" -#include "libcockatrice/protocol/pb/event_server_shutdown.pb.h" -#include #include -#include #include -#include #include -#include -#include -#include #include #include #include #include -#include - -class QWidget; ConnectionController::ConnectionController(QWidget *dialogParent, QObject *parent) : QObject(parent), dialogParent(dialogParent) diff --git a/cockatrice/src/client/network/connection_controller/remote_connection_controller.h b/cockatrice/src/client/network/connection_controller/remote_connection_controller.h index d4a832c75..bae99a3e0 100644 --- a/cockatrice/src/client/network/connection_controller/remote_connection_controller.h +++ b/cockatrice/src/client/network/connection_controller/remote_connection_controller.h @@ -2,22 +2,17 @@ #define COCKATRICE_REMOTE_CONNECTION_CONTROLLER_H #include "abstract_client.h" -#include "latency_tracker.h" #include #include #include -#include -#include +#include +#include +#include class RemoteClient; class ServerInfo_User; class DlgConnect; -class Event_ConnectionClosed; -class Event_ServerShutdown; -class QThread; -class QWidget; -template class QList; /** * Owns the RemoteClient and its worker thread. diff --git a/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp b/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp index d5cfdbbc9..42292b2aa 100644 --- a/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp +++ b/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp @@ -1,22 +1,11 @@ #include "deck_stats_interface.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" - -#include #include #include -#include #include #include #include -#include -#include -#include -#include #include -#include #include #include #include diff --git a/cockatrice/src/client/network/interfaces/deck_stats_interface.h b/cockatrice/src/client/network/interfaces/deck_stats_interface.h index e7791075c..09bf998de 100644 --- a/cockatrice/src/client/network/interfaces/deck_stats_interface.h +++ b/cockatrice/src/client/network/interfaces/deck_stats_interface.h @@ -7,8 +7,7 @@ #ifndef DECKSTATS_INTERFACE_H #define DECKSTATS_INTERFACE_H -#include -#include +#include class QByteArray; class QNetworkAccessManager; diff --git a/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp b/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp index 30044c2b6..627b7fe34 100644 --- a/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp +++ b/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp @@ -1,28 +1,11 @@ #include "tapped_out_interface.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" - -#include -#include #include -#include #include -#include -#include #include #include #include -#include -#include -#include -#include -#include -#include #include -#include -#include #include #include #include diff --git a/cockatrice/src/client/network/interfaces/tapped_out_interface.h b/cockatrice/src/client/network/interfaces/tapped_out_interface.h index 615991b07..32f9369d5 100644 --- a/cockatrice/src/client/network/interfaces/tapped_out_interface.h +++ b/cockatrice/src/client/network/interfaces/tapped_out_interface.h @@ -9,7 +9,6 @@ #include #include -#include inline Q_LOGGING_CATEGORY(TappedOutInterfaceLog, "tapped_out_interface"); diff --git a/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.cpp b/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.cpp index 7127b0a29..010b63684 100644 --- a/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.cpp +++ b/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.cpp @@ -1,7 +1,6 @@ #include "deck_link_to_api_transformer.h" #include -#include namespace DeckLinkToApiTransformer { diff --git a/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.cpp b/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.cpp index ae5e92d6c..dae633717 100644 --- a/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.cpp +++ b/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.cpp @@ -1,35 +1,21 @@ #include "spoiler_background_updater.h" +#include "../../../../interface/window_main.h" #include "../../../../main.h" #include "../../../settings/cache_settings.h" -#include #include #include #include -#include #include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include #include -#include -#include -#include +#include #include #include #include #include -#include -#include #include #define SPOILERS_STATUS_URL "https://raw.githubusercontent.com/Cockatrice/Magic-Spoiler/files/SpoilerSeasonEnabled" diff --git a/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.h b/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.h index a6c4ed00f..03d4897a2 100644 --- a/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.h +++ b/cockatrice/src/client/network/update/card_spoiler/spoiler_background_updater.h @@ -10,11 +10,7 @@ #include #include #include -#include -#include - -class QProcess; -class QUrl; +#include inline Q_LOGGING_CATEGORY(SpoilerBackgroundUpdaterLog, "spoiler_background_updater"); diff --git a/cockatrice/src/client/network/update/client/client_update_checker.h b/cockatrice/src/client/network/update/client/client_update_checker.h index 16cbd0369..1a89de533 100644 --- a/cockatrice/src/client/network/update/client/client_update_checker.h +++ b/cockatrice/src/client/network/update/client/client_update_checker.h @@ -6,12 +6,9 @@ #ifndef CLIENT_UPDATE_CHECKER_H #define CLIENT_UPDATE_CHECKER_H -#include "release_channel.h" - -#include #include -#include -#include + +class Release; /** * We use a singleton instance of UpdateChannel, which can cause interference and feedback loops when multiple objects diff --git a/cockatrice/src/client/network/update/client/release_channel.cpp b/cockatrice/src/client/network/update/client/release_channel.cpp index 45c503623..f401dfd00 100644 --- a/cockatrice/src/client/network/update/client/release_channel.cpp +++ b/cockatrice/src/client/network/update/client/release_channel.cpp @@ -2,27 +2,15 @@ #include "version_string.h" -#include -#include #include #include #include -#include -#include -#include -#include -#include +#include #include -#include #include -#include -#include -#include -#include +#include #include #include -#include -#include #if defined(Q_OS_MACOS) #include diff --git a/cockatrice/src/client/network/update/client/release_channel.h b/cockatrice/src/client/network/update/client/release_channel.h index 183a766ab..e038cb2f4 100644 --- a/cockatrice/src/client/network/update/client/release_channel.h +++ b/cockatrice/src/client/network/update/client/release_channel.h @@ -11,9 +11,8 @@ #include #include #include -#include +#include #include -#include #include inline Q_LOGGING_CATEGORY(ReleaseChannelLog, "release_channel"); diff --git a/cockatrice/src/client/network/update/client/update_downloader.cpp b/cockatrice/src/client/network/update/client/update_downloader.cpp index c86972d60..a71bcf8f8 100644 --- a/cockatrice/src/client/network/update/client/update_downloader.cpp +++ b/cockatrice/src/client/network/update/client/update_downloader.cpp @@ -1,14 +1,6 @@ #include "update_downloader.h" -#include -#include -#include -#include -#include -#include -#include #include -#include UpdateDownloader::UpdateDownloader(QObject *parent) : QObject(parent), response(nullptr) { diff --git a/cockatrice/src/client/network/update/client/update_downloader.h b/cockatrice/src/client/network/update/client/update_downloader.h index 8aeefb22a..9a0caccbc 100644 --- a/cockatrice/src/client/network/update/client/update_downloader.h +++ b/cockatrice/src/client/network/update/client/update_downloader.h @@ -7,14 +7,8 @@ #ifndef COCKATRICE_UPDATEDOWNLOADER_H #define COCKATRICE_UPDATEDOWNLOADER_H -#include #include -#include -#include -#include -#include - -class QNetworkAccessManager; +#include class UpdateDownloader : public QObject { diff --git a/cockatrice/src/client/settings/cache_settings.cpp b/cockatrice/src/client/settings/cache_settings.cpp index 15a41e7e1..0f8693f2d 100644 --- a/cockatrice/src/client/settings/cache_settings.cpp +++ b/cockatrice/src/client/settings/cache_settings.cpp @@ -2,20 +2,15 @@ #include "../network/update/client/release_channel.h" #include "card_counter_settings.h" -#include "libcockatrice/interfaces/interface_card_database_path_provider.h" #include "shortcuts_settings.h" +#include "version_string.h" -#include #include #include #include #include -#include #include -#include #include -#include -#include #include #include #include diff --git a/cockatrice/src/client/settings/cache_settings.h b/cockatrice/src/client/settings/cache_settings.h index 5f699247d..7a90d82f1 100644 --- a/cockatrice/src/client/settings/cache_settings.h +++ b/cockatrice/src/client/settings/cache_settings.h @@ -7,13 +7,11 @@ #ifndef SETTINGSCACHE_H #define SETTINGSCACHE_H -#include #include -#include #include #include #include -#include +#include inline Q_LOGGING_CATEGORY(SettingsCacheLog, "settings_cache"); diff --git a/cockatrice/src/client/settings/card_counter_settings.cpp b/cockatrice/src/client/settings/card_counter_settings.cpp index 4bdd581b5..d4030c174 100644 --- a/cockatrice/src/client/settings/card_counter_settings.cpp +++ b/cockatrice/src/client/settings/card_counter_settings.cpp @@ -1,15 +1,8 @@ #include "card_counter_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include #include #include -#include #include -#include - -class QObject; CardCounterSettings::CardCounterSettings(const QString &settingsPath, QObject *parent) : SettingsManager(settingsPath + "card_counters.ini", "cards", "counters", parent) diff --git a/cockatrice/src/client/settings/card_counter_settings.h b/cockatrice/src/client/settings/card_counter_settings.h index e5ca0a9bb..2ac658177 100644 --- a/cockatrice/src/client/settings/card_counter_settings.h +++ b/cockatrice/src/client/settings/card_counter_settings.h @@ -7,12 +7,10 @@ #ifndef CARD_COUNTER_SETTINGS_H #define CARD_COUNTER_SETTINGS_H -#include #include -#include +class QSettings; class QColor; -class QObject; class CardCounterSettings : public SettingsManager { diff --git a/cockatrice/src/client/settings/shortcut_treeview.cpp b/cockatrice/src/client/settings/shortcut_treeview.cpp index 4a5bafb01..b909d47ac 100644 --- a/cockatrice/src/client/settings/shortcut_treeview.cpp +++ b/cockatrice/src/client/settings/shortcut_treeview.cpp @@ -3,24 +3,7 @@ #include "cache_settings.h" #include "shortcuts_settings.h" -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QObject; -class QWidget; ShortcutFilterProxyModel::ShortcutFilterProxyModel(QObject *parent) : QSortFilterProxyModel(parent) { diff --git a/cockatrice/src/client/settings/shortcut_treeview.h b/cockatrice/src/client/settings/shortcut_treeview.h index 53f3fa0ef..afaf7e7ed 100644 --- a/cockatrice/src/client/settings/shortcut_treeview.h +++ b/cockatrice/src/client/settings/shortcut_treeview.h @@ -8,13 +8,8 @@ #define SHORTCUT_TREEVIEW_H #include -#include +#include #include -#include - -class QObject; -class QStandardItemModel; -class QWidget; /** * Custom implementation of QSortFilterProxyModel that appends the source and parent strings together when filtering diff --git a/cockatrice/src/client/settings/shortcuts_settings.cpp b/cockatrice/src/client/settings/shortcuts_settings.cpp index ffb4afcac..2ff65ab6f 100644 --- a/cockatrice/src/client/settings/shortcuts_settings.cpp +++ b/cockatrice/src/client/settings/shortcuts_settings.cpp @@ -2,13 +2,9 @@ #include #include -#include #include -#include -#include -#include #include -#include +#include ShortcutKey::ShortcutKey(const QString &_name, QList _sequence, ShortcutGroup::Groups _group) : QList(_sequence), name(_name), group(_group) diff --git a/cockatrice/src/client/settings/shortcuts_settings.h b/cockatrice/src/client/settings/shortcuts_settings.h index 24790a407..f4ebc204e 100644 --- a/cockatrice/src/client/settings/shortcuts_settings.h +++ b/cockatrice/src/client/settings/shortcuts_settings.h @@ -8,18 +8,9 @@ #define SHORTCUTSSETTINGS_H #include -#include -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include +#include inline Q_LOGGING_CATEGORY(ShortcutsSettingsLog, "shortcuts_settings"); diff --git a/cockatrice/src/client/sound_engine.cpp b/cockatrice/src/client/sound_engine.cpp index 4ac142cf4..96cafa3d3 100644 --- a/cockatrice/src/client/sound_engine.cpp +++ b/cockatrice/src/client/sound_engine.cpp @@ -4,15 +4,8 @@ #include #include -#include #include -#include -#include #include -#include -#include -#include -#include #include #define DEFAULT_THEME_NAME "Default" diff --git a/cockatrice/src/client/sound_engine.h b/cockatrice/src/client/sound_engine.h index 8167c71b5..0c201523a 100644 --- a/cockatrice/src/client/sound_engine.h +++ b/cockatrice/src/client/sound_engine.h @@ -7,17 +7,17 @@ #ifndef SOUNDENGINE_H #define SOUNDENGINE_H +#include #include #include +#include #include #include -#include - -class QAudioOutput; -class QMediaPlayer; inline Q_LOGGING_CATEGORY(SoundEngineLog, "sound_engine"); +class QBuffer; + typedef QMap QStringMap; class SoundEngine : public QObject diff --git a/cockatrice/src/database/interface/settings_card_preference_provider.h b/cockatrice/src/database/interface/settings_card_preference_provider.h index 1feb2006b..64502e3a7 100644 --- a/cockatrice/src/database/interface/settings_card_preference_provider.h +++ b/cockatrice/src/database/interface/settings_card_preference_provider.h @@ -13,6 +13,11 @@ public: { return SettingsCache::instance().cardOverrides().getCardPreferenceOverride(cardName); } + + [[nodiscard]] bool getIncludeRebalancedCards() const override + { + return SettingsCache::instance().cardsDisplay().getIncludeRebalancedCards(); + } }; #endif // COCKATRICE_SETTINGS_CARD_PREFERENCE_PROVIDER_H diff --git a/cockatrice/src/filters/deck_filter_string.cpp b/cockatrice/src/filters/deck_filter_string.cpp index 616311750..a2b7519a8 100644 --- a/cockatrice/src/filters/deck_filter_string.cpp +++ b/cockatrice/src/filters/deck_filter_string.cpp @@ -1,27 +1,9 @@ #include "deck_filter_string.h" -#include "../interface/deck_loader/loaded_deck.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" - -#include -#include #include -#include -#include -#include -#include -#include #include #include #include -#include -#include -#include -#include -#include static peg::parser search(R"( Start <- QueryPartList diff --git a/cockatrice/src/filters/deck_filter_string.h b/cockatrice/src/filters/deck_filter_string.h index 76b891b59..5b1419004 100644 --- a/cockatrice/src/filters/deck_filter_string.h +++ b/cockatrice/src/filters/deck_filter_string.h @@ -7,14 +7,13 @@ #ifndef DECK_FILTER_STRING_H #define DECK_FILTER_STRING_H +#include "../interface/deck_loader/loaded_deck.h" + #include #include #include #include -struct CardSearchLanguage; -struct LoadedDeck; - inline Q_LOGGING_CATEGORY(DeckFilterStringLog, "deck_filter_string"); /** diff --git a/cockatrice/src/filters/filter_builder.cpp b/cockatrice/src/filters/filter_builder.cpp index 6cc893224..f109fbcd3 100644 --- a/cockatrice/src/filters/filter_builder.cpp +++ b/cockatrice/src/filters/filter_builder.cpp @@ -5,15 +5,8 @@ #include #include -#include #include -#include -#include -#include -#include -#include #include -#include FilterBuilder::FilterBuilder(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/filters/filter_builder.h b/cockatrice/src/filters/filter_builder.h index 2aa38c992..98fe3fd02 100644 --- a/cockatrice/src/filters/filter_builder.h +++ b/cockatrice/src/filters/filter_builder.h @@ -8,8 +8,8 @@ #define FILTERBUILDER_H #include -#include +class QCheckBox; class QComboBox; class LineEditUnfocusable; class CardFilter; diff --git a/cockatrice/src/filters/filter_tree_model.cpp b/cockatrice/src/filters/filter_tree_model.cpp index b3bf307f1..33b54530e 100644 --- a/cockatrice/src/filters/filter_tree_model.cpp +++ b/cockatrice/src/filters/filter_tree_model.cpp @@ -1,15 +1,8 @@ #include "filter_tree_model.h" -#include #include -#include -#include -#include #include #include -#include - -class QObject; FilterTreeModel::FilterTreeModel(QObject *parent) : QAbstractItemModel(parent) { diff --git a/cockatrice/src/filters/filter_tree_model.h b/cockatrice/src/filters/filter_tree_model.h index 826fcc941..7452f7a61 100644 --- a/cockatrice/src/filters/filter_tree_model.h +++ b/cockatrice/src/filters/filter_tree_model.h @@ -8,15 +8,11 @@ #define FILTERTREEMODEL_H #include -#include -#include #include -#include -#include class FilterTree; +class CardFilter; class FilterTreeNode; -class QObject; class FilterTreeModel : public QAbstractItemModel { diff --git a/cockatrice/src/filters/syntax_help.cpp b/cockatrice/src/filters/syntax_help.cpp index baf5764d0..fa5338a41 100644 --- a/cockatrice/src/filters/syntax_help.cpp +++ b/cockatrice/src/filters/syntax_help.cpp @@ -1,21 +1,8 @@ #include "syntax_help.h" -#include #include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include -#include -#include /** * Creates the card search syntax help window diff --git a/cockatrice/src/filters/syntax_help.h b/cockatrice/src/filters/syntax_help.h index 52c878691..d06fe03e5 100644 --- a/cockatrice/src/filters/syntax_help.h +++ b/cockatrice/src/filters/syntax_help.h @@ -8,10 +8,9 @@ #ifndef SEARCH_SYNTAX_HELP_H #define SEARCH_SYNTAX_HELP_H +#include #include - -class QLineEdit; -class QTextBrowser; +#include inline Q_LOGGING_CATEGORY(SyntaxHelpLog, "syntax_help"); diff --git a/cockatrice/src/game/abstract_game.cpp b/cockatrice/src/game/abstract_game.cpp index efc575eff..6aa2ab28f 100644 --- a/cockatrice/src/game/abstract_game.cpp +++ b/cockatrice/src/game/abstract_game.cpp @@ -1,18 +1,7 @@ #include "abstract_game.h" -#include "game_event_handler.h" -#include "game_meta_info.h" -#include "game_state.h" -#include "libcockatrice/protocol/pb/game_replay.pb.h" -#include "player/player_info.h" +#include "../interface/widgets/tabs/tab_game.h" #include "player/player_logic.h" -#include "player/player_manager.h" -#include "zones/card_zone_logic.h" - -#include -#include - -class AbstractClient; AbstractGame::AbstractGame(QObject *_parent) : QObject(_parent) { diff --git a/cockatrice/src/game/abstract_game.h b/cockatrice/src/game/abstract_game.h index 326af8ac9..fcf764492 100644 --- a/cockatrice/src/game/abstract_game.h +++ b/cockatrice/src/game/abstract_game.h @@ -7,18 +7,15 @@ #ifndef COCKATRICE_ABSTRACT_GAME_H #define COCKATRICE_ABSTRACT_GAME_H +#include "game_event_handler.h" +#include "game_meta_info.h" +#include "game_state.h" +#include "player/player_manager.h" + #include -#include -#include +#include class CardItem; -class AbstractClient; -class GameEventHandler; -class GameMetaInfo; -class GameReplay; -class GameState; -class PlayerManager; - class AbstractGame : public QObject { Q_OBJECT diff --git a/cockatrice/src/game/arrow_registry.cpp b/cockatrice/src/game/arrow_registry.cpp index c05134a75..286764b3b 100644 --- a/cockatrice/src/game/arrow_registry.cpp +++ b/cockatrice/src/game/arrow_registry.cpp @@ -1,9 +1,6 @@ #include "arrow_registry.h" #include "../game_graphics/board/arrow_item.h" -#include "board/arrow_data.h" - -#include void ArrowRegistry::insert(QSharedPointer data, ArrowItem *arrow) { diff --git a/cockatrice/src/game/arrow_registry.h b/cockatrice/src/game/arrow_registry.h index ca3b04090..ef98229a2 100644 --- a/cockatrice/src/game/arrow_registry.h +++ b/cockatrice/src/game/arrow_registry.h @@ -1,13 +1,13 @@ #ifndef COCKATRICE_ARROW_REGISTRY_H #define COCKATRICE_ARROW_REGISTRY_H -#include +#include "board/arrow_data.h" + #include #include +#include class ArrowItem; -struct ArrowData; -template class QSharedPointer; struct ArrowKey { diff --git a/cockatrice/src/game/board/arrow_data.cpp b/cockatrice/src/game/board/arrow_data.cpp index d5accd16e..9e89deed0 100644 --- a/cockatrice/src/game/board/arrow_data.cpp +++ b/cockatrice/src/game/board/arrow_data.cpp @@ -1,8 +1,5 @@ #include "arrow_data.h" -#include "libcockatrice/protocol/pb/serverinfo_arrow.pb.h" -#include "libcockatrice/utility/color.h" - ArrowData ArrowData::fromProto(const ServerInfo_Arrow &arrow, int creatorId, bool isLocalCreator) { ArrowData data; diff --git a/cockatrice/src/game/board/arrow_data.h b/cockatrice/src/game/board/arrow_data.h index 00217512f..2752f97e3 100644 --- a/cockatrice/src/game/board/arrow_data.h +++ b/cockatrice/src/game/board/arrow_data.h @@ -3,8 +3,8 @@ #include #include - -class ServerInfo_Arrow; +#include +#include struct ArrowData { diff --git a/cockatrice/src/game/board/card_list.cpp b/cockatrice/src/game/board/card_list.cpp index 94bae67cd..0080b5ae6 100644 --- a/cockatrice/src/game/board/card_list.cpp +++ b/cockatrice/src/game/board/card_list.cpp @@ -1,14 +1,9 @@ #include "card_list.h" #include "../../game_graphics/board/card_item.h" -#include "libcockatrice/card/printing/exact_card.h" -#include #include -#include -#include #include -#include #include CardList::CardList(bool _contentsKnown) : QList(), contentsKnown(_contentsKnown) diff --git a/cockatrice/src/game/board/card_list.h b/cockatrice/src/game/board/card_list.h index b5427df0d..85a6848b7 100644 --- a/cockatrice/src/game/board/card_list.h +++ b/cockatrice/src/game/board/card_list.h @@ -9,8 +9,6 @@ #include #include -#include -#include inline Q_LOGGING_CATEGORY(CardListLog, "card_list"); diff --git a/cockatrice/src/game/board/card_state.cpp b/cockatrice/src/game/board/card_state.cpp index 3f879a849..4319400d7 100644 --- a/cockatrice/src/game/board/card_state.cpp +++ b/cockatrice/src/game/board/card_state.cpp @@ -1,7 +1,5 @@ #include "card_state.h" -#include - void CardState::resetState(bool keepAnnotations) { attacking = false; diff --git a/cockatrice/src/game/board/card_state.h b/cockatrice/src/game/board/card_state.h index ca7aaf927..0498b1aa2 100644 --- a/cockatrice/src/game/board/card_state.h +++ b/cockatrice/src/game/board/card_state.h @@ -3,12 +3,9 @@ #include #include -#include -#include class CardZoneLogic; class CardItem; - class CardState : public QObject { Q_OBJECT diff --git a/cockatrice/src/game/board/counter_state.cpp b/cockatrice/src/game/board/counter_state.cpp index 5d8c73d5b..0970e4272 100644 --- a/cockatrice/src/game/board/counter_state.cpp +++ b/cockatrice/src/game/board/counter_state.cpp @@ -1,7 +1,5 @@ #include "counter_state.h" -#include "libcockatrice/protocol/pb/serverinfo_counter.pb.h" - #include CounterState::CounterState(int id, const QString &name, const QColor &color, int radius, int value, QObject *parent) diff --git a/cockatrice/src/game/board/counter_state.h b/cockatrice/src/game/board/counter_state.h index 8badc6217..4c7b34473 100644 --- a/cockatrice/src/game/board/counter_state.h +++ b/cockatrice/src/game/board/counter_state.h @@ -4,9 +4,7 @@ #include #include #include -#include - -class ServerInfo_Counter; +#include class CounterState : public QObject { diff --git a/cockatrice/src/game/game.cpp b/cockatrice/src/game/game.cpp index 7343d052a..4c8b109c2 100644 --- a/cockatrice/src/game/game.cpp +++ b/cockatrice/src/game/game.cpp @@ -1,17 +1,9 @@ #include "game.h" -#include "game_meta_info.h" -#include "game_state.h" -#include "player/player_manager.h" +#include "../interface/widgets/tabs/tab_game.h" -#include -#include -#include #include -class AbstractClient; -class QObject; - Game::Game(QObject *_parent, bool isLocalGame, QList &_clients, diff --git a/cockatrice/src/game/game.h b/cockatrice/src/game/game.h index 6a309cfb2..4f912664c 100644 --- a/cockatrice/src/game/game.h +++ b/cockatrice/src/game/game.h @@ -9,14 +9,7 @@ #include "abstract_game.h" -#include - -class AbstractClient; -class Event_GameJoined; -class QObject; -class QString; -template class QMap; -template class QList; +#include class Game : public AbstractGame { diff --git a/cockatrice/src/game/game_event_handler.cpp b/cockatrice/src/game/game_event_handler.cpp index b86f661bb..f146cdbb4 100644 --- a/cockatrice/src/game/game_event_handler.cpp +++ b/cockatrice/src/game/game_event_handler.cpp @@ -1,30 +1,9 @@ #include "game_event_handler.h" +#include "../game_graphics/log/message_log_widget.h" +#include "../interface/widgets/tabs/tab_game.h" #include "abstract_game.h" -#include "game_meta_info.h" -#include "game_state.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/game_commands.pb.h" -#include "libcockatrice/protocol/pb/game_event.pb.h" -#include "libcockatrice/protocol/pb/game_event_context.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_player.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "player/player_event_handler.h" -#include "player/player_info.h" -#include "player/player_logic.h" -#include "player/player_manager.h" -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include @@ -34,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -48,8 +28,6 @@ #include #include #include -#include -#include GameEventHandler::GameEventHandler(AbstractGame *_game) : QObject(_game), game(_game) { diff --git a/cockatrice/src/game/game_event_handler.h b/cockatrice/src/game/game_event_handler.h index 30021d295..99277abb7 100644 --- a/cockatrice/src/game/game_event_handler.h +++ b/cockatrice/src/game/game_event_handler.h @@ -19,29 +19,23 @@ #include #include -#include -#include -#include #include -#include - -// IWYU pragma: keep -// GameEventContext, ServerInfo_Player and ServerInfo_User are passed by value -// to signals and slots, so the moc-generated code needs the complete types. -#include #include -#include class AbstractClient; class AbstractGame; +class CommandContainer; +class GameCommand; class GameEventContainer; class GameEventContext; class PendingCommand; class PlayerLogic; class Response; + class Event_GameStateChanged; class Event_PlayerPropertiesChanged; class Event_Join; +class Event_Leave; class Event_GameHostChanged; class Event_GameClosed; class Event_SetActivePlayer; @@ -50,15 +44,6 @@ class Event_GameSay; class Event_Kicked; class Event_ReverseTurn; class Event_Ping; -class ServerInfo_PlayerProperties; -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google -template class QList; inline Q_LOGGING_CATEGORY(GameEventHandlerLog, "game_event_handler"); diff --git a/cockatrice/src/game/game_meta_info.h b/cockatrice/src/game/game_meta_info.h index ef8f0c08e..cdba1605f 100644 --- a/cockatrice/src/game/game_meta_info.h +++ b/cockatrice/src/game/game_meta_info.h @@ -9,16 +9,13 @@ #include #include -#include #include -#include // Translation layer class to expose protobuf safely and hook it up to Qt Signals. // This class de-couples the domain object (i.e. the GameMetaInfo) from the network object. // If the network object changes, only this class needs to be adjusted. class AbstractGame; - class GameMetaInfo : public QObject { Q_OBJECT diff --git a/cockatrice/src/game/game_state.cpp b/cockatrice/src/game/game_state.cpp index e3bbbec00..dc9ba02a3 100644 --- a/cockatrice/src/game/game_state.cpp +++ b/cockatrice/src/game/game_state.cpp @@ -2,11 +2,6 @@ #include "abstract_game.h" -#include -#include - -class AbstractClient; - GameState::GameState(AbstractGame *parent, int _secondsElapsed, int _hostId, diff --git a/cockatrice/src/game/game_state.h b/cockatrice/src/game/game_state.h index 55784fb91..94bbb853c 100644 --- a/cockatrice/src/game/game_state.h +++ b/cockatrice/src/game/game_state.h @@ -7,14 +7,12 @@ #ifndef COCKATRICE_GAME_STATE_H #define COCKATRICE_GAME_STATE_H -#include -#include -#include -#include +#include +#include class AbstractGame; -class AbstractClient; -class QTimer; +class ServerInfo_PlayerProperties; +class ServerInfo_User; class GameState : public QObject { diff --git a/cockatrice/src/game/phase.cpp b/cockatrice/src/game/phase.cpp index f56228279..7fb1700a5 100644 --- a/cockatrice/src/game/phase.cpp +++ b/cockatrice/src/game/phase.cpp @@ -1,10 +1,5 @@ #include "phase.h" -#include -#include -#include -#include - Phase::Phase(const QString &_name, const QString &_color, const QString &_soundFileName) : name(_name), color(_color), soundFileName(_soundFileName) { diff --git a/cockatrice/src/game/phase.h b/cockatrice/src/game/phase.h index b4eaa6e46..a888ad43b 100644 --- a/cockatrice/src/game/phase.h +++ b/cockatrice/src/game/phase.h @@ -7,9 +7,8 @@ #ifndef PHASE_H #define PHASE_H -#include +#include #include -#include class Phase { diff --git a/cockatrice/src/game/player/player_actions.cpp b/cockatrice/src/game/player/player_actions.cpp index 35682ede8..67c3295d6 100644 --- a/cockatrice/src/game/player/player_actions.cpp +++ b/cockatrice/src/game/player/player_actions.cpp @@ -1,54 +1,14 @@ #include "player_actions.h" -#include "../../client/settings/cache_settings.h" -#include "../../game_graphics/board/card_item.h" -#include "../../game_graphics/dialogs/dlg_create_token.h" #include "../../game_graphics/dialogs/dlg_move_top_cards_until.h" +#include "../../game_graphics/dialogs/dlg_roll_dice.h" #include "../../game_graphics/player/card_menu_action_type.h" +#include "../../game_graphics/zones/hand_zone.h" #include "../../game_graphics/zones/table_zone.h" -#include "../../interface/deck_loader/loaded_deck.h" -#include "../abstract_game.h" -#include "../board/counter_state.h" -#include "../game_event_handler.h" -#include "../zones/card_zone_logic.h" -#include "../zones/hand_zone_logic.h" -#include "../zones/pile_zone_logic.h" -#include "../zones/table_zone_logic.h" +#include "../../interface/widgets/tabs/tab_game.h" +#include "../../interface/widgets/utility/get_text_with_max.h" #include "../zones/view_zone_logic.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/relation/card_relation_type.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/filters/filter_string.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" -#include "libcockatrice/protocol/pb/game_commands.pb.h" -#include "libcockatrice/settings/cards_display_settings.h" -#include "player_info.h" -#include "player_logic.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include @@ -66,16 +26,13 @@ #include #include #include +#include #include #include #include #include #include #include -#include -#include -#include -#include // milliseconds in between triggers of the move top cards until action static constexpr int MOVE_TOP_CARD_UNTIL_INTERVAL = 100; diff --git a/cockatrice/src/game/player/player_actions.h b/cockatrice/src/game/player/player_actions.h index 8fff81635..fa4d54110 100644 --- a/cockatrice/src/game/player/player_actions.h +++ b/cockatrice/src/game/player/player_actions.h @@ -8,25 +8,17 @@ #ifndef COCKATRICE_PLAYER_ACTIONS_H #define COCKATRICE_PLAYER_ACTIONS_H -#include "../../game_graphics/board/card_item.h" // IWYU pragma: keep - moc instantiates the metatype for QList, which Qt 6.4 needs complete +#include "../../game_graphics/board/card_item.h" #include "../../game_graphics/dialogs/dlg_create_token.h" #include "../../game_graphics/dialogs/dlg_move_top_cards_until.h" #include "../../game_graphics/player/card_menu_action_type.h" -#include "../board/card_list.h" -#include "libcockatrice/card/card_info.h" +#include "event_processing_options.h" +#include "player_logic.h" +#include #include -#include -#include #include #include -#include - -class CardItem; -class CardRelation; -class QAction; -class QTimer; -template class QList; namespace google { @@ -37,9 +29,9 @@ class Message; } // namespace google class Command_MoveCard; +class GameEventContext; class PendingCommand; class PlayerLogic; - class PlayerActions : public QObject { Q_OBJECT diff --git a/cockatrice/src/game/player/player_event_handler.cpp b/cockatrice/src/game/player/player_event_handler.cpp index 18f6573df..277b8b1d4 100644 --- a/cockatrice/src/game/player/player_event_handler.cpp +++ b/cockatrice/src/game/player/player_event_handler.cpp @@ -1,32 +1,15 @@ #include "player_event_handler.h" +#include "../../game_graphics/board/arrow_item.h" #include "../../game_graphics/board/card_item.h" #include "../../game_graphics/zones/view_zone.h" -#include "../abstract_game.h" +#include "../../interface/widgets/tabs/tab_game.h" #include "../board/arrow_data.h" #include "../board/card_list.h" -#include "../board/counter_state.h" -#include "../zones/card_zone_logic.h" -#include "../zones/hand_zone_logic.h" -#include "../zones/pile_zone_logic.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" -#include "libcockatrice/protocol/pb/game_event.pb.h" -#include "libcockatrice/protocol/pb/game_event_context.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_card.pb.h" -#include "libcockatrice/utility/card_ref.h" #include "player_actions.h" -#include "player_info.h" #include "player_logic.h" -#include "player_manager.h" -#include -#include -#include -#include -#include -#include +#include #include #include #include @@ -49,9 +32,8 @@ #include #include #include +#include #include -#include -#include PlayerEventHandler::PlayerEventHandler(PlayerLogic *_player) : QObject(_player), player(_player) { diff --git a/cockatrice/src/game/player/player_event_handler.h b/cockatrice/src/game/player/player_event_handler.h index 88254119b..300cacd08 100644 --- a/cockatrice/src/game/player/player_event_handler.h +++ b/cockatrice/src/game/player/player_event_handler.h @@ -22,14 +22,14 @@ #include "event_processing_options.h" #include -#include +#include #include -#include -#include +#include class CardItem; class CardZoneLogic; class PlayerLogic; + class Event_AttachCard; class Event_ChangeZoneProperties; class Event_CreateArrow; @@ -50,9 +50,6 @@ class Event_SetCardCounter; class Event_SetCounter; class Event_Shuffle; class Event_GameLogNotice; -class GameEventContext; -enum CardAttribute : int; -template class QList; /** * @class PlayerEventHandler diff --git a/cockatrice/src/game/player/player_info.cpp b/cockatrice/src/game/player/player_info.cpp index aef0d82aa..c4debde0f 100644 --- a/cockatrice/src/game/player/player_info.cpp +++ b/cockatrice/src/game/player/player_info.cpp @@ -1,7 +1,5 @@ #include "player_info.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" - PlayerInfo::PlayerInfo(const ServerInfo_User &info, int _id, bool _local, bool _judge) : id(_id), local(_local), judge(_judge) { diff --git a/cockatrice/src/game/player/player_info.h b/cockatrice/src/game/player/player_info.h index 58e877f8e..4ec39edbd 100644 --- a/cockatrice/src/game/player/player_info.h +++ b/cockatrice/src/game/player/player_info.h @@ -7,10 +7,10 @@ #ifndef COCKATRICE_PLAYER_INFO_H #define COCKATRICE_PLAYER_INFO_H +#include "../../game_graphics/player/player_target.h" + #include -#include #include -#include class PlayerInfo : public QObject { diff --git a/cockatrice/src/game/player/player_logic.cpp b/cockatrice/src/game/player/player_logic.cpp index b545b7088..143df5c57 100644 --- a/cockatrice/src/game/player/player_logic.cpp +++ b/cockatrice/src/game/player/player_logic.cpp @@ -1,37 +1,33 @@ #include "player_logic.h" +#include "../../game_graphics/board/arrow_item.h" #include "../../game_graphics/board/card_item.h" -#include "../abstract_game.h" -#include "../board/arrow_data.h" -#include "../board/counter_state.h" -#include "../game_meta_info.h" -#include "../zones/hand_zone_logic.h" -#include "../zones/pile_zone_logic.h" -#include "../zones/stack_zone_logic.h" -#include "../zones/table_zone_logic.h" -#include "libcockatrice/protocol/pb/serverinfo_card.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_counter.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/utility/zone_names.h" +#include "../../game_graphics/board/counter_general.h" +#include "../../game_graphics/game_scene.h" +#include "../../game_graphics/player/player_target.h" +#include "../../game_graphics/zones/hand_zone.h" +#include "../../game_graphics/zones/pile_zone.h" +#include "../../game_graphics/zones/stack_zone.h" +#include "../../game_graphics/zones/table_zone.h" +#include "../../interface/theme_manager.h" +#include "../../interface/widgets/tabs/tab_game.h" +#include "../board/card_list.h" #include "player_actions.h" -#include "player_event_handler.h" -#include "player_info.h" -#include "player_manager.h" #include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include -#include #include -#include -#include PlayerLogic::PlayerLogic(const ServerInfo_User &info, int _id, bool _local, bool _judge, AbstractGame *_parent) : QObject(_parent), game(_parent), playerInfo(new PlayerInfo(info, _id, _local, _judge)), diff --git a/cockatrice/src/game/player/player_logic.h b/cockatrice/src/game/player/player_logic.h index 59da7cc32..6923b3afe 100644 --- a/cockatrice/src/game/player/player_logic.h +++ b/cockatrice/src/game/player/player_logic.h @@ -7,48 +7,57 @@ #ifndef PLAYER_H #define PLAYER_H -#include "../zones/card_zone_logic.h" +#include "../../game_graphics/player/player_area.h" +#include "../../interface/widgets/menus/tearoff_menu.h" +#include "../board/arrow_data.h" +#include "../interface/deck_loader/loaded_deck.h" #include "../zones/hand_zone_logic.h" #include "../zones/pile_zone_logic.h" #include "../zones/stack_zone_logic.h" #include "../zones/table_zone_logic.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" +#include "player_event_handler.h" +#include "player_info.h" +#include "player_manager.h" -#include #include -#include #include #include -#include -#include +#include +#include +#include +#include #include -#include - -// IWYU pragma: keep -// ServerInfo_Card appears inside QList<...> in signal and slot -// signatures, which the moc-generated code needs to be complete. -#include - -class CardItem; -class CounterState; -class QWidget; -class ServerInfo_PlayerProperties; -struct ArrowData; -struct LoadedDeck; -template class QSharedPointer; inline Q_LOGGING_CATEGORY(PlayerLog, "player"); + +namespace google +{ +namespace protobuf +{ +class Message; +} +} // namespace google class AbstractCardItem; class AbstractGame; +class ArrowItem; +class ArrowTarget; +class CardDatabase; +class CardZone; +class CommandContainer; +class GameCommand; +class GameEvent; class PlayerInfo; class PlayerEventHandler; class PlayerActions; +class PlayerMenu; +class QAction; +class QMenu; +class ServerInfo_Arrow; class ServerInfo_Card; class ServerInfo_Counter; class ServerInfo_Player; class ServerInfo_User; +class TabGame; const int MAX_TOKENS_PER_DIALOG = 99; diff --git a/cockatrice/src/game/player/player_manager.cpp b/cockatrice/src/game/player/player_manager.cpp index 4730805ad..8486efbeb 100644 --- a/cockatrice/src/game/player/player_manager.cpp +++ b/cockatrice/src/game/player/player_manager.cpp @@ -1,14 +1,8 @@ #include "player_manager.h" #include "../abstract_game.h" -#include "../game_state.h" -#include "player_info.h" #include "player_logic.h" -#include -#include -#include - PlayerManager::PlayerManager(AbstractGame *_game, int _localPlayerId, bool _localPlayerIsJudge, diff --git a/cockatrice/src/game/player/player_manager.h b/cockatrice/src/game/player/player_manager.h index 7a9f7645b..504e65396 100644 --- a/cockatrice/src/game/player/player_manager.h +++ b/cockatrice/src/game/player/player_manager.h @@ -7,17 +7,12 @@ #ifndef COCKATRICE_PLAYER_MANAGER_H #define COCKATRICE_PLAYER_MANAGER_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" - #include #include -#include #include -#include class AbstractGame; class PlayerLogic; - class PlayerManager : public QObject { Q_OBJECT diff --git a/cockatrice/src/game/replay.cpp b/cockatrice/src/game/replay.cpp index 4ab4a6321..dcf3e9b9b 100644 --- a/cockatrice/src/game/replay.cpp +++ b/cockatrice/src/game/replay.cpp @@ -1,13 +1,6 @@ #include "replay.h" -#include "game_meta_info.h" -#include "game_state.h" -#include "player/player_manager.h" - -#include - -class GameReplay; -class QObject; +#include "../interface/widgets/tabs/tab_game.h" Replay::Replay(QObject *_parent, const GameReplay *_replay, bool isLocalGame) : AbstractGame(_parent) { diff --git a/cockatrice/src/game/replay.h b/cockatrice/src/game/replay.h index cc995dbac..1c269b273 100644 --- a/cockatrice/src/game/replay.h +++ b/cockatrice/src/game/replay.h @@ -10,11 +10,6 @@ #include "abstract_game.h" -#include - -class GameReplay; -class QObject; - class Replay : public AbstractGame { Q_OBJECT diff --git a/cockatrice/src/game/zones/card_zone_logic.cpp b/cockatrice/src/game/zones/card_zone_logic.cpp index d997ab9ad..7e0585f4e 100644 --- a/cockatrice/src/game/zones/card_zone_logic.cpp +++ b/cockatrice/src/game/zones/card_zone_logic.cpp @@ -1,25 +1,16 @@ #include "card_zone_logic.h" -#include "../../client/translation.h" #include "../../game_graphics/board/card_item.h" -#include "../../game_graphics/zones/card_zone.h" #include "../../game_graphics/zones/view_zone.h" -#include "../board/card_list.h" #include "../player/player_actions.h" -#include "../player/player_info.h" #include "../player/player_logic.h" -#include "libcockatrice/card/database/card_database.h" #include "view_zone_logic.h" #include #include -#include -#include -#include #include #include #include -#include /** * @param _player the player that the zone belongs to diff --git a/cockatrice/src/game/zones/card_zone_logic.h b/cockatrice/src/game/zones/card_zone_logic.h index 2e232b258..ae97719a9 100644 --- a/cockatrice/src/game/zones/card_zone_logic.h +++ b/cockatrice/src/game/zones/card_zone_logic.h @@ -10,18 +10,17 @@ #include "../../client/translation.h" #include "../board/card_list.h" -#include #include #include -#include -#include - -class CardItem; inline Q_LOGGING_CATEGORY(CardZoneLogicLog, "card_zone_logic"); class PlayerLogic; class ZoneViewZone; +class QMenu; +class QAction; +class QPainter; +class CardDragItem; class CardZoneLogic : public QObject { diff --git a/cockatrice/src/game/zones/hand_zone_logic.cpp b/cockatrice/src/game/zones/hand_zone_logic.cpp index cea17d031..3bdd15902 100644 --- a/cockatrice/src/game/zones/hand_zone_logic.cpp +++ b/cockatrice/src/game/zones/hand_zone_logic.cpp @@ -3,9 +3,6 @@ #include "../../game_graphics/board/card_item.h" #include "card_zone_algorithms.h" -class PlayerLogic; -class QObject; - HandZoneLogic::HandZoneLogic(PlayerLogic *_player, const QString &_name, bool _hasCardAttr, diff --git a/cockatrice/src/game/zones/hand_zone_logic.h b/cockatrice/src/game/zones/hand_zone_logic.h index c7d63bc0d..400506248 100644 --- a/cockatrice/src/game/zones/hand_zone_logic.h +++ b/cockatrice/src/game/zones/hand_zone_logic.h @@ -8,12 +8,6 @@ #define COCKATRICE_HAND_ZONE_LOGIC_H #include "card_zone_logic.h" -#include -#include - -class PlayerLogic; -class QObject; - class HandZoneLogic : public CardZoneLogic { Q_OBJECT diff --git a/cockatrice/src/game/zones/pile_zone_logic.cpp b/cockatrice/src/game/zones/pile_zone_logic.cpp index 40af25cc5..0f374fb84 100644 --- a/cockatrice/src/game/zones/pile_zone_logic.cpp +++ b/cockatrice/src/game/zones/pile_zone_logic.cpp @@ -1,10 +1,6 @@ #include "pile_zone_logic.h" #include "../../game_graphics/board/card_item.h" -#include "../board/card_list.h" - -class PlayerLogic; -class QObject; PileZoneLogic::PileZoneLogic(PlayerLogic *_player, const QString &_name, diff --git a/cockatrice/src/game/zones/pile_zone_logic.h b/cockatrice/src/game/zones/pile_zone_logic.h index ed6841b75..522d99b89 100644 --- a/cockatrice/src/game/zones/pile_zone_logic.h +++ b/cockatrice/src/game/zones/pile_zone_logic.h @@ -8,12 +8,6 @@ #define COCKATRICE_PILE_ZONE_LOGIC_H #include "card_zone_logic.h" -#include -#include - -class PlayerLogic; -class QObject; - class PileZoneLogic : public CardZoneLogic { diff --git a/cockatrice/src/game/zones/stack_zone_logic.cpp b/cockatrice/src/game/zones/stack_zone_logic.cpp index 454274971..341d4b0e4 100644 --- a/cockatrice/src/game/zones/stack_zone_logic.cpp +++ b/cockatrice/src/game/zones/stack_zone_logic.cpp @@ -3,9 +3,6 @@ #include "../../game_graphics/board/card_item.h" #include "card_zone_algorithms.h" -class PlayerLogic; -class QObject; - StackZoneLogic::StackZoneLogic(PlayerLogic *_player, const QString &_name, bool _hasCardAttr, diff --git a/cockatrice/src/game/zones/stack_zone_logic.h b/cockatrice/src/game/zones/stack_zone_logic.h index 657d44ecf..cce4bd0fa 100644 --- a/cockatrice/src/game/zones/stack_zone_logic.h +++ b/cockatrice/src/game/zones/stack_zone_logic.h @@ -8,12 +8,6 @@ #define COCKATRICE_STACK_ZONE_LOGIC_H #include "card_zone_logic.h" -#include -#include - -class PlayerLogic; -class QObject; - class StackZoneLogic : public CardZoneLogic { Q_OBJECT diff --git a/cockatrice/src/game/zones/table_zone_logic.cpp b/cockatrice/src/game/zones/table_zone_logic.cpp index 07e4a759b..a4f033819 100644 --- a/cockatrice/src/game/zones/table_zone_logic.cpp +++ b/cockatrice/src/game/zones/table_zone_logic.cpp @@ -1,13 +1,6 @@ #include "table_zone_logic.h" #include "../../game_graphics/board/card_item.h" -#include "../board/card_list.h" -#include "libcockatrice/card/card_info.h" - -#include - -class PlayerLogic; -class QObject; TableZoneLogic::TableZoneLogic(PlayerLogic *_player, const QString &_name, diff --git a/cockatrice/src/game/zones/table_zone_logic.h b/cockatrice/src/game/zones/table_zone_logic.h index 8078bfd05..6d8d64a20 100644 --- a/cockatrice/src/game/zones/table_zone_logic.h +++ b/cockatrice/src/game/zones/table_zone_logic.h @@ -8,12 +8,6 @@ #define COCKATRICE_TABLE_ZONE_LOGIC_H #include "card_zone_logic.h" -#include -#include - -class PlayerLogic; -class QObject; - class TableZoneLogic : public CardZoneLogic { Q_OBJECT diff --git a/cockatrice/src/game/zones/view_zone_logic.cpp b/cockatrice/src/game/zones/view_zone_logic.cpp index eb3b7715f..de00581d1 100644 --- a/cockatrice/src/game/zones/view_zone_logic.cpp +++ b/cockatrice/src/game/zones/view_zone_logic.cpp @@ -2,14 +2,8 @@ #include "../../client/settings/cache_settings.h" #include "../../game_graphics/board/card_item.h" -#include "../board/card_list.h" -#include #include - -class PlayerLogic; -class QObject; - /** * @param _player the player that the cards are revealed to. * @param _origZone the zone the cards were revealed from. diff --git a/cockatrice/src/game/zones/view_zone_logic.h b/cockatrice/src/game/zones/view_zone_logic.h index 6fae301e4..e3080d044 100644 --- a/cockatrice/src/game/zones/view_zone_logic.h +++ b/cockatrice/src/game/zones/view_zone_logic.h @@ -8,11 +8,6 @@ #define COCKATRICE_VIEW_ZONE_LOGIC_H #include "card_zone_logic.h" -#include - -class PlayerLogic; -class QObject; - class ZoneViewZoneLogic : public CardZoneLogic { Q_OBJECT diff --git a/cockatrice/src/game_graphics/board/abstract_card_drag_item.cpp b/cockatrice/src/game_graphics/board/abstract_card_drag_item.cpp index 2e18fca2d..2f43591ac 100644 --- a/cockatrice/src/game_graphics/board/abstract_card_drag_item.cpp +++ b/cockatrice/src/game_graphics/board/abstract_card_drag_item.cpp @@ -2,20 +2,12 @@ #include "../../client/settings/cache_settings.h" #include "../z_values.h" -#include "abstract_card_item.h" -#include -#include #include +#include #include #include -#include -#include -#include #include -#include - -class QPointF; const QColor GHOST_MASK = QColor(255, 255, 255, 50); diff --git a/cockatrice/src/game_graphics/board/abstract_card_drag_item.h b/cockatrice/src/game_graphics/board/abstract_card_drag_item.h index 18afdcbb8..1cbeb4fe7 100644 --- a/cockatrice/src/game_graphics/board/abstract_card_drag_item.h +++ b/cockatrice/src/game_graphics/board/abstract_card_drag_item.h @@ -7,17 +7,11 @@ #ifndef ABSTRACTCARDDRAGITEM_H #define ABSTRACTCARDDRAGITEM_H -#include "../card_dimensions.h" -#include "graphics_item_type.h" +#include "abstract_card_item.h" -#include -#include -#include -#include -#include -#include - -class AbstractCardItem; +class QGraphicsScene; +class CardZone; +class CardInfo; class AbstractCardDragItem : public QObject, public QGraphicsItem { diff --git a/cockatrice/src/game_graphics/board/abstract_card_item.cpp b/cockatrice/src/game_graphics/board/abstract_card_item.cpp index a79c5873e..3969b7d03 100644 --- a/cockatrice/src/game_graphics/board/abstract_card_item.cpp +++ b/cockatrice/src/game_graphics/board/abstract_card_item.cpp @@ -3,42 +3,19 @@ #include "../../client/settings/cache_settings.h" #include "../../interface/card_localization.h" #include "../../interface/card_picture_loader/card_picture_loader.h" -#include "../card_dimensions.h" #include "../game_scene.h" #include "../z_values.h" -#include "abstract_graphics_item.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include #include -#include -#include #include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include +#include #include #include #include #include -#include - -class QSizeF; AbstractCardItem::AbstractCardItem(QGraphicsItem *parent, const CardRef &cardRef, PlayerLogic *_owner, int _id) : ArrowTarget(_owner, parent), id(_id), cardRef(cardRef), tapped(false), facedown(false), tapAngle(0), diff --git a/cockatrice/src/game_graphics/board/abstract_card_item.h b/cockatrice/src/game_graphics/board/abstract_card_item.h index 385f9c32f..8cbe95282 100644 --- a/cockatrice/src/game_graphics/board/abstract_card_item.h +++ b/cockatrice/src/game_graphics/board/abstract_card_item.h @@ -8,22 +8,14 @@ #define ABSTRACTCARDITEM_H #include "../animated_item.h" +#include "../card_dimensions.h" #include "arrow_target.h" #include "graphics_item_type.h" -#include -#include -#include -#include -#include #include #include -#include class PlayerLogic; -class CardInfo; -class QPainter; -class QPoint; class AbstractCardItem : public ArrowTarget, public IAnimatedItem { diff --git a/cockatrice/src/game_graphics/board/abstract_counter.cpp b/cockatrice/src/game_graphics/board/abstract_counter.cpp index 8500b9c51..4ba04804f 100644 --- a/cockatrice/src/game_graphics/board/abstract_counter.cpp +++ b/cockatrice/src/game_graphics/board/abstract_counter.cpp @@ -2,33 +2,21 @@ #include "../../client/settings/cache_settings.h" #include "../../client/settings/shortcuts_settings.h" -#include "../../game/board/counter_state.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" #include "../../game_graphics/board/translate_counter_name.h" -#include "../../interface/widgets/menus/tearoff_menu.h" +#include "../../interface/widgets/tabs/tab_game.h" #include #include -#include -#include -#include #include #include #include -#include -#include -#include +#include #include -#include -#include #include #include #include -#include - -class QWidget; AbstractCounter::AbstractCounter(CounterState *state, PlayerLogic *_player, diff --git a/cockatrice/src/game_graphics/board/abstract_counter.h b/cockatrice/src/game_graphics/board/abstract_counter.h index 7ba686a93..67b5b4074 100644 --- a/cockatrice/src/game_graphics/board/abstract_counter.h +++ b/cockatrice/src/game_graphics/board/abstract_counter.h @@ -7,21 +7,18 @@ #ifndef COUNTER_H #define COUNTER_H +#include "../../game/board/counter_state.h" #include "../../interface/widgets/menus/tearoff_menu.h" #include "../player/menu/abstract_player_component.h" -#include #include #include -#include -#include -#include class PlayerLogic; class QAction; +class QKeyEvent; class QMenu; -class CounterState; -class QWidget; +class QString; class AbstractCounter : public QObject, public QGraphicsItem, public AbstractPlayerComponent { diff --git a/cockatrice/src/game_graphics/board/abstract_graphics_item.cpp b/cockatrice/src/game_graphics/board/abstract_graphics_item.cpp index 50e80d359..8da8ab708 100644 --- a/cockatrice/src/game_graphics/board/abstract_graphics_item.cpp +++ b/cockatrice/src/game_graphics/board/abstract_graphics_item.cpp @@ -1,14 +1,6 @@ #include "abstract_graphics_item.h" -#include -#include -#include #include -#include -#include -#include -#include -#include void AbstractGraphicsItem::paintNumberEllipse(int number, int fontSize, diff --git a/cockatrice/src/game_graphics/board/abstract_graphics_item.h b/cockatrice/src/game_graphics/board/abstract_graphics_item.h index ebc2a3761..287c2c0b3 100644 --- a/cockatrice/src/game_graphics/board/abstract_graphics_item.h +++ b/cockatrice/src/game_graphics/board/abstract_graphics_item.h @@ -7,12 +7,7 @@ #ifndef ABSTRACTGRAPHICSITEM_H #define ABSTRACTGRAPHICSITEM_H -#include -#include -#include - -class QGraphicsItem; -class QPainter; +#include /** * Parent class of all objects that appear in a game. diff --git a/cockatrice/src/game_graphics/board/arrow_item.cpp b/cockatrice/src/game_graphics/board/arrow_item.cpp index c5a9b9c5e..664d44ecc 100644 --- a/cockatrice/src/game_graphics/board/arrow_item.cpp +++ b/cockatrice/src/game_graphics/board/arrow_item.cpp @@ -2,42 +2,28 @@ #include "arrow_item.h" #include "../../client/settings/cache_settings.h" -#include "../../game/board/arrow_data.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" #include "../game_scene.h" #include "../player/player_target.h" #include "../z_values.h" +#include "../zones/card_zone.h" #include "card_item.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/protocol/pb/color.pb.h" -#include +#include #include #include #include -#include -#include #include -#include -#include -#include -#include -#include #include #include #include #include +#include #include #include #include #include -#include -#include -#include -#include namespace { diff --git a/cockatrice/src/game_graphics/board/arrow_item.h b/cockatrice/src/game_graphics/board/arrow_item.h index 2395165fc..76a2d5d6c 100644 --- a/cockatrice/src/game_graphics/board/arrow_item.h +++ b/cockatrice/src/game_graphics/board/arrow_item.h @@ -6,23 +6,15 @@ #include "arrow_target.h" #include "graphics_item_type.h" -#include #include #include -#include -#include -#include #include -#include #include -#include #include -#include -#include class CardItem; +class QGraphicsSceneMouseEvent; class PlayerLogic; -template class QSharedPointer; class ArrowItem : public QObject, public QGraphicsItem, public IAnimatedItem { diff --git a/cockatrice/src/game_graphics/board/arrow_target.cpp b/cockatrice/src/game_graphics/board/arrow_target.cpp index 024479ee6..79b21d921 100644 --- a/cockatrice/src/game_graphics/board/arrow_target.cpp +++ b/cockatrice/src/game_graphics/board/arrow_target.cpp @@ -1,8 +1,7 @@ #include "arrow_target.h" -#include - -class QGraphicsItem; +#include "../../game/player/player_logic.h" +#include "arrow_item.h" ArrowTarget::ArrowTarget(PlayerLogic *_owner, QGraphicsItem *parent) : AbstractGraphicsItem(parent), owner(_owner) { diff --git a/cockatrice/src/game_graphics/board/arrow_target.h b/cockatrice/src/game_graphics/board/arrow_target.h index 5c55e0e5d..bf89c5456 100644 --- a/cockatrice/src/game_graphics/board/arrow_target.h +++ b/cockatrice/src/game_graphics/board/arrow_target.h @@ -9,10 +9,10 @@ #include "abstract_graphics_item.h" -#include +#include class PlayerLogic; -class QGraphicsItem; +class ArrowItem; class ArrowTarget : public AbstractGraphicsItem { diff --git a/cockatrice/src/game_graphics/board/card_drag_item.cpp b/cockatrice/src/game_graphics/board/card_drag_item.cpp index 265ea759c..49467c5c9 100644 --- a/cockatrice/src/game_graphics/board/card_drag_item.cpp +++ b/cockatrice/src/game_graphics/board/card_drag_item.cpp @@ -6,20 +6,9 @@ #include "../zones/view_zone.h" #include "card_item.h" -#include -#include #include -#include -#include #include -#include -#include #include -#include -#include -#include - -class CardZoneLogic; CardDragItem::CardDragItem(CardItem *_item, int _id, diff --git a/cockatrice/src/game_graphics/board/card_drag_item.h b/cockatrice/src/game_graphics/board/card_drag_item.h index d5e9a9e83..74d25ad04 100644 --- a/cockatrice/src/game_graphics/board/card_drag_item.h +++ b/cockatrice/src/game_graphics/board/card_drag_item.h @@ -9,11 +9,7 @@ #include "abstract_card_drag_item.h" -#include -#include - class CardItem; -class CardZone; class CardDragItem : public AbstractCardDragItem { diff --git a/cockatrice/src/game_graphics/board/card_item.cpp b/cockatrice/src/game_graphics/board/card_item.cpp index a04d86c15..c2dc455cc 100644 --- a/cockatrice/src/game_graphics/board/card_item.cpp +++ b/cockatrice/src/game_graphics/board/card_item.cpp @@ -1,52 +1,26 @@ #include "card_item.h" #include "../../client/settings/cache_settings.h" -#include "../../game/abstract_game.h" -#include "../../game/board/card_state.h" -#include "../../game/game_state.h" +#include "../../client/settings/card_counter_settings.h" #include "../../game/phase.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/player/player_manager.h" -#include "../../game/zones/card_zone_logic.h" -#include "../../game/zones/table_zone_logic.h" #include "../../game/zones/view_zone_logic.h" -#include "../card_dimensions.h" +#include "../../interface/widgets/tabs/tab_game.h" #include "../game_scene.h" +#include "../zones/table_zone.h" +#include "../zones/view_zone.h" #include "arrow_item.h" #include "card_drag_item.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/protocol/pb/serverinfo_cardcounter.pb.h" #include <../../client/settings/card_counter_settings.h> #include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include +#include #include -#include -#include -#include -#include -#include -#include -#include #include #include #include -#include -#include - -struct CardRef; CardItem::CardItem(PlayerLogic *_owner, QGraphicsItem *parent, diff --git a/cockatrice/src/game_graphics/board/card_item.h b/cockatrice/src/game_graphics/board/card_item.h index df79ef378..2ba43d03d 100644 --- a/cockatrice/src/game_graphics/board/card_item.h +++ b/cockatrice/src/game_graphics/board/card_item.h @@ -8,24 +8,18 @@ #define CARDITEM_H #include "../../game/board/card_state.h" +#include "../../game/zones/card_zone_logic.h" #include "abstract_card_item.h" -#include "graphics_item_type.h" -#include -#include -#include -#include -#include -#include +#include +class CardDatabase; class CardDragItem; +class CardZone; class ServerInfo_Card; class PlayerLogic; +class QAction; class QColor; -class CardZoneLogic; -class QGraphicsItem; -struct CardRef; -template class QMap; const int ROTATION_DEGREES_PER_FRAME = 10; diff --git a/cockatrice/src/game_graphics/board/counter_general.cpp b/cockatrice/src/game_graphics/board/counter_general.cpp index 4a8bbd6a4..379c6f837 100644 --- a/cockatrice/src/game_graphics/board/counter_general.cpp +++ b/cockatrice/src/game_graphics/board/counter_general.cpp @@ -3,20 +3,7 @@ #include "../../interface/pixel_map_generator.h" #include "abstract_graphics_item.h" -#include #include -#include -#include -#include -#include -#include -#include -#include -#include - -class CounterState; -class PlayerLogic; -class QGraphicsItem; GeneralCounter::GeneralCounter(CounterState *state, PlayerLogic *player, bool useNameForShortcut, QGraphicsItem *parent) : AbstractCounter(state, player, true, useNameForShortcut, parent) diff --git a/cockatrice/src/game_graphics/board/counter_general.h b/cockatrice/src/game_graphics/board/counter_general.h index 2e49f11d7..0a2e882ce 100644 --- a/cockatrice/src/game_graphics/board/counter_general.h +++ b/cockatrice/src/game_graphics/board/counter_general.h @@ -9,12 +9,6 @@ #include "abstract_counter.h" -#include - -class CounterState; -class PlayerLogic; -class QGraphicsItem; - class GeneralCounter : public AbstractCounter { Q_OBJECT diff --git a/cockatrice/src/game_graphics/board/translate_counter_name.cpp b/cockatrice/src/game_graphics/board/translate_counter_name.cpp index 3a2a5c7c8..4f1c97657 100644 --- a/cockatrice/src/game_graphics/board/translate_counter_name.cpp +++ b/cockatrice/src/game_graphics/board/translate_counter_name.cpp @@ -1,8 +1,5 @@ #include "translate_counter_name.h" -#include -#include - const QMap TranslateCounterName::translated = { {"life", QT_TRANSLATE_NOOP("TranslateCounterName", "Life")}, {"w", QT_TRANSLATE_NOOP("TranslateCounterName", "White")}, diff --git a/cockatrice/src/game_graphics/board/translate_counter_name.h b/cockatrice/src/game_graphics/board/translate_counter_name.h index e7e42e5fc..ba3a94fa5 100644 --- a/cockatrice/src/game_graphics/board/translate_counter_name.h +++ b/cockatrice/src/game_graphics/board/translate_counter_name.h @@ -7,10 +7,8 @@ #ifndef TRANSLATECOUNTERNAME_H #define TRANSLATECOUNTERNAME_H -#include -#include -#include #include +#include class TranslateCounterName { diff --git a/cockatrice/src/game_graphics/deckview/deck_view.cpp b/cockatrice/src/game_graphics/deckview/deck_view.cpp index c86bc9925..1acd02a75 100644 --- a/cockatrice/src/game_graphics/deckview/deck_view.cpp +++ b/cockatrice/src/game_graphics/deckview/deck_view.cpp @@ -2,47 +2,15 @@ #include "../../client/settings/cache_settings.h" #include "../../interface/theme_manager.h" -#include "../board/abstract_card_drag_item.h" -#include "../card_dimensions.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "libcockatrice/protocol/pb/move_card_to_zone.pb.h" #include -#include -#include -#include -#include -#include -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include #include -#include #include #include #include -#include -#include -#include -#include - -class QObject; -class QRectF; -class QWidget; -struct CardRef; DeckViewCardDragItem::DeckViewCardDragItem(DeckViewCard *_item, const QPointF &_hotSpot, diff --git a/cockatrice/src/game_graphics/deckview/deck_view.h b/cockatrice/src/game_graphics/deckview/deck_view.h index 3b5b4b6f4..f996fd4da 100644 --- a/cockatrice/src/game_graphics/deckview/deck_view.h +++ b/cockatrice/src/game_graphics/deckview/deck_view.h @@ -8,30 +8,17 @@ #define DECKVIEW_H #include "../board/abstract_card_drag_item.h" -#include "../board/abstract_card_item.h" -#include "../board/graphics_item_type.h" -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include -#include #include -#include class DeckList; +class InnerDecklistNode; +class CardInfo; class DeckViewCardContainer; class DeckViewCardDragItem; -class QObject; -class QWidget; -struct CardRef; +class MoveCardToZone; class DeckViewCard : public AbstractCardItem { diff --git a/cockatrice/src/game_graphics/deckview/deck_view_container.cpp b/cockatrice/src/game_graphics/deckview/deck_view_container.cpp index c97767ec7..bc07ac183 100644 --- a/cockatrice/src/game_graphics/deckview/deck_view_container.cpp +++ b/cockatrice/src/game_graphics/deckview/deck_view_container.cpp @@ -2,36 +2,18 @@ #include "../../client/settings/cache_settings.h" #include "../../client/settings/shortcuts_settings.h" -#include "../../game/abstract_game.h" -#include "../../game/game_event_handler.h" -#include "../../game/game_state.h" #include "../../interface/card_picture_loader/card_picture_loader.h" -#include "../../interface/deck_loader/deck_file_format.h" #include "../../interface/deck_loader/deck_loader.h" -#include "../../interface/deck_loader/loaded_deck.h" #include "../../interface/widgets/dialogs/dlg_load_deck.h" #include "../../interface/widgets/dialogs/dlg_load_deck_from_clipboard.h" #include "../../interface/widgets/dialogs/dlg_load_deck_from_website.h" #include "../../interface/widgets/dialogs/dlg_load_remote_deck.h" #include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/visual_deck_storage/visual_deck_storage_widget.h" -#include "../board/abstract_card_item.h" #include "deck_view.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/protocol/pb/move_card_to_zone.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include #include -#include -#include -#include -#include +#include #include #include #include @@ -44,9 +26,6 @@ #include #include #include -#include -#include -#include ToggleButton::ToggleButton(QWidget *parent) : QPushButton(parent), state(false) { diff --git a/cockatrice/src/game_graphics/deckview/deck_view_container.h b/cockatrice/src/game_graphics/deckview/deck_view_container.h index 80b82b6e5..b5317c39a 100644 --- a/cockatrice/src/game_graphics/deckview/deck_view_container.h +++ b/cockatrice/src/game_graphics/deckview/deck_view_container.h @@ -7,17 +7,14 @@ #ifndef DECK_VIEW_CONTAINER_H #define DECK_VIEW_CONTAINER_H -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/utility/playmat_params.h" +#include "../../interface/deck_loader/deck_loader.h" #include -#include -#include -#include class QVBoxLayout; class AbstractCardItem; class VisualDeckStorageWidget; +class DeckPreviewWidget; class Response; class TabGame; class DeckView; diff --git a/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.cpp b/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.cpp index 90cbed9a1..2ffb214f7 100644 --- a/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.cpp +++ b/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.cpp @@ -1,15 +1,7 @@ #include "tabbed_deck_view_container.h" -#include "../board/abstract_card_item.h" +#include "../../interface/widgets/tabs/tab_game.h" #include "deck_view.h" -#include "deck_view_container.h" - -#include -#include -#include - -class DeckList; -class TabGame; TabbedDeckViewContainer::TabbedDeckViewContainer(int _playerId, TabGame *parent) : QTabWidget(nullptr), playerId(_playerId), parentGame(parent) diff --git a/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.h b/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.h index 7d73b78a2..7cfa8c9aa 100644 --- a/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.h +++ b/cockatrice/src/game_graphics/deckview/tabbed_deck_view_container.h @@ -6,15 +6,9 @@ #ifndef TABBED_DECK_VIEW_CONTAINER_H #define TABBED_DECK_VIEW_CONTAINER_H -#include -#include -#include -#include +#include "deck_view_container.h" -class DeckList; -class DeckView; -class DeckViewContainer; -class TabGame; +#include class TabbedDeckViewContainer : public QTabWidget { diff --git a/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp b/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp index 5ce050380..6d8ad0534 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp +++ b/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp @@ -2,30 +2,23 @@ #include "../../client/settings/cache_settings.h" #include "../../interface/widgets/cards/card_info_picture_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" +#include "../../main.h" -#include -#include #include #include #include #include #include #include +#include #include -#include #include #include -#include #include -#include -#include #include -#include -#include #include #include +#include #include #include #include @@ -33,10 +26,6 @@ #include #include #include -#include - -class QModelIndex; -class QWidget; DlgCreateToken::DlgCreateToken(const QStringList &_predefinedTokens, QWidget *parent) : QDialog(parent), predefinedTokens(_predefinedTokens) diff --git a/cockatrice/src/game_graphics/dialogs/dlg_create_token.h b/cockatrice/src/game_graphics/dialogs/dlg_create_token.h index a03a1046b..281e161fc 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_create_token.h +++ b/cockatrice/src/game_graphics/dialogs/dlg_create_token.h @@ -8,22 +8,19 @@ #define DLG_CREATETOKEN_H #include -#include -#include -#include -#include class QLabel; class QLineEdit; class QComboBox; class QCheckBox; +class QPushButton; class QRadioButton; +class QCloseEvent; class QTreeView; +class DeckList; class CardDatabaseModel; class TokenDisplayModel; class CardInfoPictureWidget; -class QModelIndex; -class QWidget; struct TokenInfo { diff --git a/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.cpp b/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.cpp index b7cd73d79..41c907163 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.cpp +++ b/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.cpp @@ -1,24 +1,17 @@ #include "dlg_move_top_cards_until.h" -#include "libcockatrice/card/card_info.h" - -#include -#include #include #include -#include #include +#include #include #include #include #include -#include +#include #include #include #include -#include - -class QWidget; DlgMoveTopCardsUntil::DlgMoveTopCardsUntil(QWidget *parent, const MoveTopCardsUntilOptions &options) : QDialog(parent) { diff --git a/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.h b/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.h index b9080bcc1..ac9d41a94 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.h +++ b/cockatrice/src/game_graphics/dialogs/dlg_move_top_cards_until.h @@ -7,19 +7,14 @@ #ifndef DLG_MOVE_TOP_CARDS_UNTIL_H #define DLG_MOVE_TOP_CARDS_UNTIL_H +#include +#include #include -#include -#include -#include -#include +#include +#include +#include class FilterString; -class QCheckBox; -class QComboBox; -class QDialogButtonBox; -class QLabel; -class QSpinBox; -class QWidget; struct MoveTopCardsUntilOptions { diff --git a/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.cpp b/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.cpp index b17881211..4f5d5b861 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.cpp +++ b/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.cpp @@ -1,15 +1,12 @@ #include "dlg_roll_dice.h" #include -#include #include #include -#include #include +#include #include -class QWidget; - DlgRollDice::DlgRollDice(QWidget *parent) : QDialog(parent) { numberOfSidesLabel = new QLabel(tr("Number of sides:")); diff --git a/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.h b/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.h index 4c146a054..15f7dc1ba 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.h +++ b/cockatrice/src/game_graphics/dialogs/dlg_roll_dice.h @@ -8,13 +8,9 @@ #define DLG_ROLL_DICE_H #include -#include -#include - -class QDialogButtonBox; -class QLabel; -class QSpinBox; -class QWidget; +#include +#include +#include class DlgRollDice : public QDialog { diff --git a/cockatrice/src/game_graphics/game_scene.cpp b/cockatrice/src/game_graphics/game_scene.cpp index cc3f9f1d3..e4466f95d 100644 --- a/cockatrice/src/game_graphics/game_scene.cpp +++ b/cockatrice/src/game_graphics/game_scene.cpp @@ -2,50 +2,25 @@ #include "../client/settings/cache_settings.h" #include "../game/abstract_game.h" -#include "../game/arrow_registry.h" -#include "../game/board/arrow_data.h" #include "../game/player/player_actions.h" -#include "../game/player/player_event_handler.h" -#include "../game/player/player_info.h" #include "../game/player/player_logic.h" -#include "../game/zones/card_zone_logic.h" -#include "../game/zones/view_zone_logic.h" -#include "animated_item.h" -#include "board/abstract_card_item.h" -#include "board/arrow_item.h" +#include "../game_graphics/player/player_graphics_item.h" #include "board/card_item.h" #include "phases_toolbar.h" #include "player/menu/player_menu.h" #include "player/player_graphics_item.h" -#include "player/player_target.h" -#include "zones/card_zone.h" #include "zones/select_zone.h" #include "zones/view_zone.h" #include "zones/view_zone_widget.h" #include #include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include #include #include #include -#include - -class ArrowTarget; /** * @brief Constructs the GameScene. diff --git a/cockatrice/src/game_graphics/game_scene.h b/cockatrice/src/game_graphics/game_scene.h index c7cae1e76..cf81eec9d 100644 --- a/cockatrice/src/game_graphics/game_scene.h +++ b/cockatrice/src/game_graphics/game_scene.h @@ -2,33 +2,16 @@ #define GAMESCENE_H #include "../game/arrow_registry.h" +#include "../game/board/arrow_data.h" +#include "../game/zones/card_zone_logic.h" +#include "animated_item.h" +#include "board/arrow_item.h" #include #include #include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include - -// IWYU pragma: keep -// ServerInfo_Card appears inside QList<...> in signal and slot -// signatures, which the moc-generated code needs to be complete. -#include - -class CardZoneLogic; -class IAnimatedItem; -class QGraphicsItem; -class QPoint; -struct ArrowData; -template class QSharedPointer; inline Q_LOGGING_CATEGORY(GameSceneLog, "game_scene"); inline Q_LOGGING_CATEGORY(GameScenePlayerAdditionRemovalLog, "game_scene.player_addition_removal"); diff --git a/cockatrice/src/game_graphics/game_view.cpp b/cockatrice/src/game_graphics/game_view.cpp index 1c92d74ae..ed6355157 100644 --- a/cockatrice/src/game_graphics/game_view.cpp +++ b/cockatrice/src/game_graphics/game_view.cpp @@ -5,24 +5,13 @@ #include "game_scene.h" #include -#include -#include -#include -#include #include #include -#include -#include -#include +#include #include #include -#include -#include -#include -#include #include #include -#include // QRubberBand calls raise() in showEvent() and changeEvent() to stay on top of siblings. // This subclass disables that behavior so dragCountLabel can appear above it. diff --git a/cockatrice/src/game_graphics/game_view.h b/cockatrice/src/game_graphics/game_view.h index e57267734..a23655513 100644 --- a/cockatrice/src/game_graphics/game_view.h +++ b/cockatrice/src/game_graphics/game_view.h @@ -10,19 +10,11 @@ #include "tally/tally.h" #include -#include -#include -#include -#include -#include -#include class GameScene; class QGridLayout; class QLabel; class QRubberBand; -class QAction; -class QWidget; class GameView : public QGraphicsView { diff --git a/cockatrice/src/game_graphics/hand_counter.cpp b/cockatrice/src/game_graphics/hand_counter.cpp index 9320c1295..8dcbcfdaa 100644 --- a/cockatrice/src/game_graphics/hand_counter.cpp +++ b/cockatrice/src/game_graphics/hand_counter.cpp @@ -1,22 +1,11 @@ #include "hand_counter.h" -#include "../game/board/card_list.h" -#include "../game/zones/card_zone_logic.h" #include "../interface/pixel_map_generator.h" +#include "zones/card_zone.h" #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include - -class QGraphicsItem; HandCounter::HandCounter(QGraphicsItem *parent) : AbstractGraphicsItem(parent), number(0) { diff --git a/cockatrice/src/game_graphics/hand_counter.h b/cockatrice/src/game_graphics/hand_counter.h index c1f5d09d8..9aa65d514 100644 --- a/cockatrice/src/game_graphics/hand_counter.h +++ b/cockatrice/src/game_graphics/hand_counter.h @@ -10,10 +10,10 @@ #include "board/abstract_graphics_item.h" #include "board/graphics_item_type.h" -#include +#include -class QGraphicsItem; -class QPoint; +class QPainter; +class QPixmap; class HandCounter : public AbstractGraphicsItem { diff --git a/cockatrice/src/game_graphics/log/message_log_widget.cpp b/cockatrice/src/game_graphics/log/message_log_widget.cpp index 4a9750fca..b998a3650 100644 --- a/cockatrice/src/game_graphics/log/message_log_widget.cpp +++ b/cockatrice/src/game_graphics/log/message_log_widget.cpp @@ -3,39 +3,20 @@ #include "../../client/settings/cache_settings.h" #include "../../client/settings/card_counter_settings.h" #include "../../client/sound_engine.h" -#include "../../client/translation.h" -#include "../../game/abstract_game.h" -#include "../../game/board/card_list.h" #include "../../game/game_state.h" #include "../../game/phase.h" -#include "../../game/player/player_event_handler.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/player/player_manager.h" -#include "../../game/zones/card_zone_logic.h" #include "../../interface/card_localization.h" -#include "../../interface/widgets/server/chat_view/chat_view.h" +#include "../../interface/widgets/tabs/tab_game.h" #include "../board/card_item.h" #include "../board/translate_counter_name.h" -#include "libcockatrice/protocol/pb/game_event_context.pb.h" -#include -#include -#include -#include -#include #include #include #include #include -#include -#include #include -class QWidget; -class ServerInfo_User; -class TabSupervisor; - static QString sanitizeHtml(QString dirty) { return dirty.replace("&", "&").replace("<", "<").replace(">", ">").replace("\"", """); diff --git a/cockatrice/src/game_graphics/log/message_log_widget.h b/cockatrice/src/game_graphics/log/message_log_widget.h index 6800ba8ed..375c6df4d 100644 --- a/cockatrice/src/game_graphics/log/message_log_widget.h +++ b/cockatrice/src/game_graphics/log/message_log_widget.h @@ -7,23 +7,14 @@ #ifndef MESSAGELOGWIDGET_H #define MESSAGELOGWIDGET_H +#include "../../game/zones/card_zone_logic.h" #include "../../interface/widgets/server/chat_view/chat_view.h" -#include -#include -#include -#include - class AbstractGame; class CardItem; class GameEventContext; class PlayerLogic; class PlayerEventHandler; -class CardZoneLogic; -class QWidget; -class ServerInfo_User; -class TabSupervisor; -template class QList; class MessageLogWidget : public ChatView { diff --git a/cockatrice/src/game_graphics/phases_toolbar.cpp b/cockatrice/src/game_graphics/phases_toolbar.cpp index d0a3f74fd..3361f9d55 100644 --- a/cockatrice/src/game_graphics/phases_toolbar.cpp +++ b/cockatrice/src/game_graphics/phases_toolbar.cpp @@ -1,26 +1,17 @@ #include "phases_toolbar.h" #include "../interface/pixel_map_generator.h" -#include "board/abstract_graphics_item.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" #include -#include +#include #include -#include -#include -#include +#include #include -#include -#include -#include #include #include #include #include #include -#include -#include PhaseButton::PhaseButton(const QString &_name, QGraphicsItem *parent, QAction *_doubleClickAction, bool _highlightable) : QObject(), QGraphicsItem(parent), name(_name), active(false), highlightable(_highlightable), diff --git a/cockatrice/src/game_graphics/phases_toolbar.h b/cockatrice/src/game_graphics/phases_toolbar.h index 376775284..39884ef75 100644 --- a/cockatrice/src/game_graphics/phases_toolbar.h +++ b/cockatrice/src/game_graphics/phases_toolbar.h @@ -8,14 +8,11 @@ #ifndef PHASESTOOLBAR_H #define PHASESTOOLBAR_H -#include -#include -#include -#include -#include +#include "board/abstract_graphics_item.h" -class QAction; -class QTimer; +#include +#include +#include namespace google { @@ -24,6 +21,8 @@ namespace protobuf class Message; } } // namespace google +class PlayerLogic; +class GameCommand; class PhaseButton : public QObject, public QGraphicsItem { diff --git a/cockatrice/src/game_graphics/player/menu/card_menu.cpp b/cockatrice/src/game_graphics/player/menu/card_menu.cpp index 137ec2ed1..75ca1b28b 100644 --- a/cockatrice/src/game_graphics/player/menu/card_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/card_menu.cpp @@ -1,43 +1,21 @@ #include "card_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/card_counter_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/abstract_game.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_manager.h" -#include "../../../game/zones/card_zone_logic.h" +#include "../../../interface/widgets/tabs/tab_game.h" #include "../../board/card_item.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../../game/zones/view_zone_logic.h" -#include "../../game_scene.h" #include "../card_menu_action_type.h" #include "../player_graphics_item.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/utility/card_ref.h" #include "move_menu.h" #include "pt_menu.h" -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include #include #include -#include -#include /** * @brief Creates a circular icon filled with the specified color. diff --git a/cockatrice/src/game_graphics/player/menu/card_menu.h b/cockatrice/src/game_graphics/player/menu/card_menu.h index 337d77b3e..d67ef3876 100644 --- a/cockatrice/src/game_graphics/player/menu/card_menu.h +++ b/cockatrice/src/game_graphics/player/menu/card_menu.h @@ -7,18 +7,12 @@ #ifndef COCKATRICE_CARD_MENU_H #define COCKATRICE_CARD_MENU_H -#include #include -#include -#include -#include +#include class CardItem; class PlayerGraphicsItem; class PlayerLogic; -class QAction; -struct CardRef; - class CardMenu : public QMenu { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/custom_zone_menu.cpp b/cockatrice/src/game_graphics/player/menu/custom_zone_menu.cpp index e16ebc112..743746cc8 100644 --- a/cockatrice/src/game_graphics/player/menu/custom_zone_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/custom_zone_menu.cpp @@ -1,14 +1,8 @@ #include "custom_zone_menu.h" -#include "../../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game_scene.h" #include "../player_graphics_item.h" -#include -#include -#include - CustomZoneMenu::CustomZoneMenu(PlayerGraphicsItem *_player) : player(_player) { menuAction()->setVisible(false); diff --git a/cockatrice/src/game_graphics/player/menu/custom_zone_menu.h b/cockatrice/src/game_graphics/player/menu/custom_zone_menu.h index 07f5510ca..46dd58db6 100644 --- a/cockatrice/src/game_graphics/player/menu/custom_zone_menu.h +++ b/cockatrice/src/game_graphics/player/menu/custom_zone_menu.h @@ -10,11 +10,8 @@ #include "abstract_player_component.h" #include -#include -#include class PlayerGraphicsItem; - class CustomZoneMenu : public QMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/grave_menu.cpp b/cockatrice/src/game_graphics/player/menu/grave_menu.cpp index 580d2642e..6d9364579 100644 --- a/cockatrice/src/game_graphics/player/menu/grave_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/grave_menu.cpp @@ -1,28 +1,15 @@ #include "grave_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_manager.h" -#include "../../../game/zones/pile_zone_logic.h" -#include "../../../interface/widgets/menus/tearoff_menu.h" #include "../../game/abstract_game.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" #include -#include -#include -#include #include -#include -#include -#include #include -class QWidget; - GraveyardMenu::GraveyardMenu(PlayerGraphicsItem *_player, QWidget *parent) : TearOffMenu(parent), player(_player) { createMoveActions(); diff --git a/cockatrice/src/game_graphics/player/menu/grave_menu.h b/cockatrice/src/game_graphics/player/menu/grave_menu.h index fa285409f..116261e9b 100644 --- a/cockatrice/src/game_graphics/player/menu/grave_menu.h +++ b/cockatrice/src/game_graphics/player/menu/grave_menu.h @@ -10,13 +10,10 @@ #include "../../../interface/widgets/menus/tearoff_menu.h" #include "abstract_player_component.h" -#include +#include +#include class PlayerGraphicsItem; -class QAction; -class QMenu; -class QWidget; - class GraveyardMenu : public TearOffMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/hand_menu.cpp b/cockatrice/src/game_graphics/player/menu/hand_menu.cpp index 141542cb4..ba0702f07 100644 --- a/cockatrice/src/game_graphics/player/menu/hand_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/hand_menu.cpp @@ -2,28 +2,16 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/board/card_list.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_manager.h" -#include "../../../game/zones/hand_zone_logic.h" -#include "../../../interface/widgets/menus/tearoff_menu.h" +#include "../../../game_graphics/zones/hand_zone.h" #include "../../game/abstract_game.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" #include -#include -#include -#include #include -#include -#include -#include #include -class QWidget; - HandMenu::HandMenu(PlayerGraphicsItem *_player, QWidget *parent) : TearOffMenu(parent), player(_player) { auto *actions = player->getLogic()->getPlayerActions(); diff --git a/cockatrice/src/game_graphics/player/menu/hand_menu.h b/cockatrice/src/game_graphics/player/menu/hand_menu.h index de7726064..d5204612b 100644 --- a/cockatrice/src/game_graphics/player/menu/hand_menu.h +++ b/cockatrice/src/game_graphics/player/menu/hand_menu.h @@ -10,12 +10,11 @@ #include "../../../interface/widgets/menus/tearoff_menu.h" #include "abstract_player_component.h" -#include +#include +#include class PlayerGraphicsItem; -class QAction; -class QMenu; -class QWidget; +class PlayerActions; class HandMenu : public TearOffMenu, public AbstractPlayerComponent { diff --git a/cockatrice/src/game_graphics/player/menu/library_menu.cpp b/cockatrice/src/game_graphics/player/menu/library_menu.cpp index aa389006e..4c15e09ec 100644 --- a/cockatrice/src/game_graphics/player/menu/library_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/library_menu.cpp @@ -2,29 +2,15 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/board/card_list.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_manager.h" -#include "../../../game/zones/pile_zone_logic.h" -#include "../../../interface/widgets/menus/tearoff_menu.h" +#include "../../../interface/widgets/tabs/tab_game.h" #include "../../game/abstract_game.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" #include -#include #include -#include -#include -#include -#include #include -#include -#include -#include - -class QWidget; LibraryMenu::LibraryMenu(PlayerGraphicsItem *_player, QWidget *parent) : TearOffMenu(parent), player(_player) { diff --git a/cockatrice/src/game_graphics/player/menu/library_menu.h b/cockatrice/src/game_graphics/player/menu/library_menu.h index 72e90d0ba..bc0e6fb8e 100644 --- a/cockatrice/src/game_graphics/player/menu/library_menu.h +++ b/cockatrice/src/game_graphics/player/menu/library_menu.h @@ -11,11 +11,11 @@ #include "abstract_player_component.h" #include -#include +#include class PlayerGraphicsItem; -class QMenu; -class QWidget; +class PlayerLogic; +class PlayerActions; class LibraryMenu : public TearOffMenu, public AbstractPlayerComponent { diff --git a/cockatrice/src/game_graphics/player/menu/move_menu.cpp b/cockatrice/src/game_graphics/player/menu/move_menu.cpp index 2991100ec..632e0ddda 100644 --- a/cockatrice/src/game_graphics/player/menu/move_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/move_menu.cpp @@ -1,15 +1,11 @@ #include "move_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" -#include "../../game_scene.h" #include "../card_menu_action_type.h" #include "../player_graphics_item.h" -#include - MoveMenu::MoveMenu(PlayerGraphicsItem *player) : QMenu(tr("Move to")) { aMoveToTopLibrary = new QAction(this); diff --git a/cockatrice/src/game_graphics/player/menu/move_menu.h b/cockatrice/src/game_graphics/player/menu/move_menu.h index f1f239abd..150bdbd3c 100644 --- a/cockatrice/src/game_graphics/player/menu/move_menu.h +++ b/cockatrice/src/game_graphics/player/menu/move_menu.h @@ -7,11 +7,8 @@ #ifndef COCKATRICE_MOVE_MENU_H #define COCKATRICE_MOVE_MENU_H #include -#include class PlayerGraphicsItem; -class QAction; - class MoveMenu : public QMenu { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/player_menu.cpp b/cockatrice/src/game_graphics/player/menu/player_menu.cpp index 44b184cfe..7c90211df 100644 --- a/cockatrice/src/game_graphics/player/menu/player_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/player_menu.cpp @@ -1,31 +1,16 @@ #include "player_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/abstract_game.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_logic.h" -#include "../../../game/player/player_manager.h" #include "../../../game_graphics/zones/hand_zone.h" #include "../../../game_graphics/zones/pile_zone.h" #include "../../../game_graphics/zones/table_zone.h" -#include "../../../interface/widgets/menus/tearoff_menu.h" +#include "../../../interface/widgets/tabs/tab_game.h" #include "../../board/card_item.h" #include "../player_graphics_item.h" -#include "abstract_player_component.h" #include "card_menu.h" -#include "custom_zone_menu.h" -#include "grave_menu.h" #include "hand_menu.h" -#include "library_menu.h" -#include "rfg_menu.h" -#include "say_menu.h" -#include "sideboard_menu.h" -#include "tally_menu.h" -#include "utility_menu.h" -#include -#include +#include PlayerMenu::PlayerMenu(PlayerGraphicsItem *_player) : QObject(_player), player(_player) { diff --git a/cockatrice/src/game_graphics/player/menu/player_menu.h b/cockatrice/src/game_graphics/player/menu/player_menu.h index 97dd2fc56..a6e89fab0 100644 --- a/cockatrice/src/game_graphics/player/menu/player_menu.h +++ b/cockatrice/src/game_graphics/player/menu/player_menu.h @@ -8,28 +8,24 @@ #define COCKATRICE_PLAYER_MENU_H #include "../../../interface/widgets/menus/tearoff_menu.h" +#include "custom_zone_menu.h" +#include "grave_menu.h" +#include "hand_menu.h" +#include "library_menu.h" +#include "rfg_menu.h" +#include "say_menu.h" +#include "sideboard_menu.h" +#include "tally_menu.h" +#include "utility_menu.h" #include +#include #include -#include -#include +#include class CardItem; class CardMenu; class PlayerGraphicsItem; -class AbstractPlayerComponent; -class CustomZoneMenu; -class GraveyardMenu; -class HandMenu; -class LibraryMenu; -class QMenu; -class RfgMenu; -class SayMenu; -class SideboardMenu; -class TallyMenu; -class UtilityMenu; -struct CardRef; - class PlayerMenu : public QObject { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/pt_menu.cpp b/cockatrice/src/game_graphics/player/menu/pt_menu.cpp index b4f852b43..152461c18 100644 --- a/cockatrice/src/game_graphics/player/menu/pt_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/pt_menu.cpp @@ -1,14 +1,10 @@ #include "pt_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" -#include "../../game_scene.h" #include "../player_graphics_item.h" -#include - PtMenu::PtMenu(PlayerGraphicsItem *player) : QMenu(tr("Power / toughness")) { PlayerActions *playerActions = player->getLogic()->getPlayerActions(); diff --git a/cockatrice/src/game_graphics/player/menu/pt_menu.h b/cockatrice/src/game_graphics/player/menu/pt_menu.h index aaf17cead..72f828801 100644 --- a/cockatrice/src/game_graphics/player/menu/pt_menu.h +++ b/cockatrice/src/game_graphics/player/menu/pt_menu.h @@ -7,11 +7,8 @@ #ifndef COCKATRICE_PT_MENU_H #define COCKATRICE_PT_MENU_H #include -#include class PlayerGraphicsItem; -class QAction; - class PtMenu : public QMenu { diff --git a/cockatrice/src/game_graphics/player/menu/rfg_menu.cpp b/cockatrice/src/game_graphics/player/menu/rfg_menu.cpp index 98514280f..45abadbf7 100644 --- a/cockatrice/src/game_graphics/player/menu/rfg_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/rfg_menu.cpp @@ -1,21 +1,11 @@ #include "rfg_menu.h" -#include "../../../game/player/player_info.h" -#include "../../../game/zones/pile_zone_logic.h" -#include "../../../interface/widgets/menus/tearoff_menu.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" -#include -#include -#include -#include -#include #include -class QWidget; - RfgMenu::RfgMenu(PlayerGraphicsItem *_player, QWidget *parent) : TearOffMenu(parent), player(_player) { createMoveActions(); diff --git a/cockatrice/src/game_graphics/player/menu/rfg_menu.h b/cockatrice/src/game_graphics/player/menu/rfg_menu.h index 8e1460316..f5dd888e4 100644 --- a/cockatrice/src/game_graphics/player/menu/rfg_menu.h +++ b/cockatrice/src/game_graphics/player/menu/rfg_menu.h @@ -10,13 +10,10 @@ #include "../../../interface/widgets/menus/tearoff_menu.h" #include "abstract_player_component.h" -#include +#include +#include class PlayerGraphicsItem; -class QAction; -class QMenu; -class QWidget; - class RfgMenu : public TearOffMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/say_menu.cpp b/cockatrice/src/game_graphics/player/menu/say_menu.cpp index d467c6469..e7b0b3826 100644 --- a/cockatrice/src/game_graphics/player/menu/say_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/say_menu.cpp @@ -5,12 +5,7 @@ #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" -#include -#include -#include -#include #include - SayMenu::SayMenu(PlayerGraphicsItem *_player) : player(_player) { connect(&SettingsCache::instance().messages(), &MessageSettings::messageMacrosChanged, this, &SayMenu::initSayMenu); diff --git a/cockatrice/src/game_graphics/player/menu/say_menu.h b/cockatrice/src/game_graphics/player/menu/say_menu.h index 72169d18f..3ff160d05 100644 --- a/cockatrice/src/game_graphics/player/menu/say_menu.h +++ b/cockatrice/src/game_graphics/player/menu/say_menu.h @@ -10,10 +10,8 @@ #include "abstract_player_component.h" #include -#include class PlayerGraphicsItem; - class SayMenu : public QMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/sideboard_menu.cpp b/cockatrice/src/game_graphics/player/menu/sideboard_menu.cpp index 1eef3604f..6753f743e 100644 --- a/cockatrice/src/game_graphics/player/menu/sideboard_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/sideboard_menu.cpp @@ -1,15 +1,10 @@ #include "sideboard_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/player/player_info.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" #include "../player_graphics_item.h" -#include -#include - SideboardMenu::SideboardMenu(PlayerGraphicsItem *player, QMenu *playerMenu) : QMenu(playerMenu) { aViewSideboard = new QAction(this); diff --git a/cockatrice/src/game_graphics/player/menu/sideboard_menu.h b/cockatrice/src/game_graphics/player/menu/sideboard_menu.h index 3e6501c90..b3b547291 100644 --- a/cockatrice/src/game_graphics/player/menu/sideboard_menu.h +++ b/cockatrice/src/game_graphics/player/menu/sideboard_menu.h @@ -10,11 +10,8 @@ #include "abstract_player_component.h" #include -#include class PlayerGraphicsItem; -class QAction; - class SideboardMenu : public QMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/menu/tally_menu.cpp b/cockatrice/src/game_graphics/player/menu/tally_menu.cpp index 7ae5b36ce..08cb6cac9 100644 --- a/cockatrice/src/game_graphics/player/menu/tally_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/tally_menu.cpp @@ -1,10 +1,7 @@ #include "tally_menu.h" #include "../../../client/settings/cache_settings.h" -#include "../../tally/tally.h" -#include "libcockatrice/settings/interface_settings.h" -#include #include TallyMenu::TallyMenu() diff --git a/cockatrice/src/game_graphics/player/menu/tally_menu.h b/cockatrice/src/game_graphics/player/menu/tally_menu.h index 75bd41ac0..11802fd20 100644 --- a/cockatrice/src/game_graphics/player/menu/tally_menu.h +++ b/cockatrice/src/game_graphics/player/menu/tally_menu.h @@ -2,13 +2,10 @@ #define COCKATRICE_TALLY_MENU_H #include "../../../interface/widgets/menus/tearoff_menu.h" +#include "../../tally/tally.h" #include "abstract_player_component.h" -#include - -class QAction; -class QActionGroup; -enum class TallyType; +#include class TallyMenu : public TearOffMenu, public AbstractPlayerComponent { diff --git a/cockatrice/src/game_graphics/player/menu/utility_menu.cpp b/cockatrice/src/game_graphics/player/menu/utility_menu.cpp index 7c18b3f4c..a7ea38d9a 100644 --- a/cockatrice/src/game_graphics/player/menu/utility_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/utility_menu.cpp @@ -1,17 +1,12 @@ #include "utility_menu.h" -#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/player/player_info.h" +#include "../../../interface/deck_loader/deck_loader.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" -#include "../../game_scene.h" #include "../player_graphics_item.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/deck_list/deck_list.h" +#include "player_menu.h" -#include -#include #include #include diff --git a/cockatrice/src/game_graphics/player/menu/utility_menu.h b/cockatrice/src/game_graphics/player/menu/utility_menu.h index 009e4aca3..bdc2a81a5 100644 --- a/cockatrice/src/game_graphics/player/menu/utility_menu.h +++ b/cockatrice/src/game_graphics/player/menu/utility_menu.h @@ -9,16 +9,10 @@ #include "abstract_player_component.h" -#include -#include #include -#include -#include #include -#include class PlayerGraphicsItem; - class UtilityMenu : public QMenu, public AbstractPlayerComponent { Q_OBJECT diff --git a/cockatrice/src/game_graphics/player/player_area.cpp b/cockatrice/src/game_graphics/player/player_area.cpp index 2af642eb5..86b8c2d1b 100644 --- a/cockatrice/src/game_graphics/player/player_area.cpp +++ b/cockatrice/src/game_graphics/player/player_area.cpp @@ -2,7 +2,6 @@ #include "../../interface/theme_manager.h" -#include #include PlayerArea::PlayerArea(QGraphicsItem *parentItem) : QObject(), QGraphicsItem(parentItem) diff --git a/cockatrice/src/game_graphics/player/player_area.h b/cockatrice/src/game_graphics/player/player_area.h index 7370a78be..d73547f81 100644 --- a/cockatrice/src/game_graphics/player/player_area.h +++ b/cockatrice/src/game_graphics/player/player_area.h @@ -8,14 +8,7 @@ #define COCKATRICE_PLAYER_AREA_H #include "../board/graphics_item_type.h" - -#include -#include -#include -#include -#include - -class QGraphicsItem; +#include "QGraphicsItem" /** * The entire graphical area belonging to a single player. diff --git a/cockatrice/src/game_graphics/player/player_dialogs.cpp b/cockatrice/src/game_graphics/player/player_dialogs.cpp index 74f5de601..95c225812 100644 --- a/cockatrice/src/game_graphics/player/player_dialogs.cpp +++ b/cockatrice/src/game_graphics/player/player_dialogs.cpp @@ -1,21 +1,12 @@ #include "player_dialogs.h" -#include "../../client/settings/cache_settings.h" #include "../../client/settings/card_counter_settings.h" -#include "../../game/player/player_actions.h" -#include "../../game/player/player_logic.h" #include "../../interface/widgets/utility/get_text_with_max.h" -#include "../board/abstract_counter.h" #include "../board/card_item.h" -#include "../dialogs/dlg_create_token.h" -#include "../dialogs/dlg_move_top_cards_until.h" #include "../dialogs/dlg_roll_dice.h" -#include "../game_scene.h" #include "../player/player_graphics_item.h" -#include #include -#include #include #include diff --git a/cockatrice/src/game_graphics/player/player_dialogs.h b/cockatrice/src/game_graphics/player/player_dialogs.h index 86d7282a2..f87704f2d 100644 --- a/cockatrice/src/game_graphics/player/player_dialogs.h +++ b/cockatrice/src/game_graphics/player/player_dialogs.h @@ -1,26 +1,12 @@ #ifndef COCKATRICE_PLAYER_DIALOGS_H #define COCKATRICE_PLAYER_DIALOGS_H +#include "../../game/player/player_actions.h" #include "player_graphics_item.h" -// IWYU pragma: keep -// MoveTopCardsUntilOptions is passed by value to a slot, so the moc-generated -// code needs the complete type. -#include "../dialogs/dlg_move_top_cards_until.h" - -#include #include -#include #include -#include -#include -#include - -class CardItem; -class CardRelation; -class PlayerActions; -class QWidget; -struct MoveTopCardsUntilOptions; +class PlayerGraphicsItem; class PlayerDialogs : public QObject { diff --git a/cockatrice/src/game_graphics/player/player_graphics_item.cpp b/cockatrice/src/game_graphics/player/player_graphics_item.cpp index 419816087..122ab83be 100644 --- a/cockatrice/src/game_graphics/player/player_graphics_item.cpp +++ b/cockatrice/src/game_graphics/player/player_graphics_item.cpp @@ -1,53 +1,26 @@ #include "player_graphics_item.h" -#include "../../client/settings/cache_settings.h" -#include "../../game/board/counter_state.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" -#include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" -#include "../../game/zones/hand_zone_logic.h" -#include "../../game/zones/pile_zone_logic.h" -#include "../../game/zones/stack_zone_logic.h" -#include "../../game/zones/table_zone_logic.h" #include "../../interface/card_picture_loader/card_picture_loader.h" #include "../../interface/widgets/cards/art_crop_attribution.h" #include "../../interface/widgets/cards/card_art_utils.h" #include "../../interface/widgets/playmat/playmat_utils.h" -#include "../board/abstract_counter.h" +#include "../../interface/widgets/tabs/tab_game.h" +#include "../board/abstract_card_item.h" #include "../board/counter_general.h" -#include "../card_dimensions.h" #include "../hand_counter.h" #include "../zones/hand_zone.h" #include "../zones/pile_zone.h" #include "../zones/stack_zone.h" #include "../zones/table_zone.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/utility/card_ref.h" #include "menu/player_menu.h" -#include "player_area.h" #include "player_dialogs.h" -#include "player_target.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include #include #include #include -#include -#include PlayerGraphicsItem::PlayerGraphicsItem(PlayerLogic *_player) : player(_player) { diff --git a/cockatrice/src/game_graphics/player/player_graphics_item.h b/cockatrice/src/game_graphics/player/player_graphics_item.h index e1ca0a036..e5ae59a61 100644 --- a/cockatrice/src/game_graphics/player/player_graphics_item.h +++ b/cockatrice/src/game_graphics/player/player_graphics_item.h @@ -6,20 +6,12 @@ #ifndef COCKATRICE_PLAYER_GRAPHICS_ITEM_H #define COCKATRICE_PLAYER_GRAPHICS_ITEM_H -#include "../board/graphics_item_type.h" +#include "../../game/player/player_logic.h" +#include "../board/abstract_counter.h" #include "../game_scene.h" -#include "libcockatrice/utility/playmat_params.h" #include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include class HandZone; class PileZone; @@ -28,12 +20,7 @@ class PlayerMenu; class PlayerTarget; class StackZone; class TableZone; -class AbstractCounter; -class CardZone; -class CounterState; -class PlayerArea; -class PlayerLogic; -struct CardRef; +class ZoneViewZone; class PlayerGraphicsItem : public QGraphicsObject { diff --git a/cockatrice/src/game_graphics/player/player_list_widget.cpp b/cockatrice/src/game_graphics/player/player_list_widget.cpp index 7b358010f..a7ec2e4a9 100644 --- a/cockatrice/src/game_graphics/player/player_list_widget.cpp +++ b/cockatrice/src/game_graphics/player/player_list_widget.cpp @@ -2,30 +2,16 @@ #include "../../interface/pixel_map_generator.h" #include "../../interface/widgets/server/user/user_context_menu.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "user_level.h" +#include "../../interface/widgets/server/user/user_list_manager.h" +#include "../../interface/widgets/server/user/user_list_widget.h" +#include "../../interface/widgets/tabs/tab_game.h" +#include "../../interface/widgets/tabs/tab_supervisor.h" -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include -#include -#include +#include #include -#include - -class QModelIndex; -class QObject; -class QPoint; -class QWidget; +#include PlayerListItemDelegate::PlayerListItemDelegate(QObject *const parent) : QStyledItemDelegate(parent) { diff --git a/cockatrice/src/game_graphics/player/player_list_widget.h b/cockatrice/src/game_graphics/player/player_list_widget.h index b070fe312..f2f0be5fd 100644 --- a/cockatrice/src/game_graphics/player/player_list_widget.h +++ b/cockatrice/src/game_graphics/player/player_list_widget.h @@ -7,23 +7,18 @@ #ifndef PLAYERLISTWIDGET_H #define PLAYERLISTWIDGET_H +#include "../../game/player/player_logic.h" + #include #include -#include #include #include -#include -#include class ServerInfo_PlayerProperties; class TabSupervisor; class AbstractClient; class AbstractGame; class UserContextMenu; -class QModelIndex; -class QObject; -class QPoint; -class QWidget; class PlayerListItemDelegate : public QStyledItemDelegate { diff --git a/cockatrice/src/game_graphics/player/player_target.cpp b/cockatrice/src/game_graphics/player/player_target.cpp index 24734cd42..d6c28370d 100644 --- a/cockatrice/src/game_graphics/player/player_target.cpp +++ b/cockatrice/src/game_graphics/player/player_target.cpp @@ -1,43 +1,16 @@ #include "player_target.h" #include "../../client/settings/cache_settings.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" #include "../../interface/pixel_map_generator.h" -#include "../board/abstract_counter.h" -#include "../board/abstract_graphics_item.h" -#include "../board/arrow_target.h" #include "../game_scene.h" -#include "libcockatrice/settings/interface_settings.h" -#include "user_level.h" -#include -#include -#include -#include -#include -#include +#include +#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include - -class CounterState; -class QGraphicsItem; PlayerCounter::PlayerCounter(CounterState *state, PlayerLogic *player, QGraphicsItem *parent) : AbstractCounter(state, player, false, false, parent) diff --git a/cockatrice/src/game_graphics/player/player_target.h b/cockatrice/src/game_graphics/player/player_target.h index 7780104d2..1d06c6274 100644 --- a/cockatrice/src/game_graphics/player/player_target.h +++ b/cockatrice/src/game_graphics/player/player_target.h @@ -14,12 +14,8 @@ #include #include -#include -#include class PlayerLogic; -class CounterState; -class QGraphicsItem; class PlayerCounter : public AbstractCounter, public IAnimatedItem { diff --git a/cockatrice/src/game_graphics/tally/stats_tally.cpp b/cockatrice/src/game_graphics/tally/stats_tally.cpp index 28e280c02..7e05c3fb1 100644 --- a/cockatrice/src/game_graphics/tally/stats_tally.cpp +++ b/cockatrice/src/game_graphics/tally/stats_tally.cpp @@ -4,11 +4,6 @@ #include #include -#include -#include -#include -#include -#include #include static int sumPowers(const QList &cards) diff --git a/cockatrice/src/game_graphics/tally/stats_tally.h b/cockatrice/src/game_graphics/tally/stats_tally.h index cb0bdf81b..e499587eb 100644 --- a/cockatrice/src/game_graphics/tally/stats_tally.h +++ b/cockatrice/src/game_graphics/tally/stats_tally.h @@ -2,10 +2,6 @@ #define COCKATRICE_STATS_TALLY_H #include "tally.h" -#include - -class CardItem; - /** * @brief Extracts and tallies stats from selected cards. */ diff --git a/cockatrice/src/game_graphics/tally/subtype_tally.cpp b/cockatrice/src/game_graphics/tally/subtype_tally.cpp index ccd727405..2241eb3b2 100644 --- a/cockatrice/src/game_graphics/tally/subtype_tally.cpp +++ b/cockatrice/src/game_graphics/tally/subtype_tally.cpp @@ -1,18 +1,9 @@ #include "subtype_tally.h" #include "../board/card_item.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" #include -#include -#include -#include -#include #include -#include -#include -#include namespace { diff --git a/cockatrice/src/game_graphics/tally/subtype_tally.h b/cockatrice/src/game_graphics/tally/subtype_tally.h index 019a797d4..9926528e0 100644 --- a/cockatrice/src/game_graphics/tally/subtype_tally.h +++ b/cockatrice/src/game_graphics/tally/subtype_tally.h @@ -4,6 +4,7 @@ #include "tally.h" #include +#include class CardItem; diff --git a/cockatrice/src/game_graphics/tally/tally.h b/cockatrice/src/game_graphics/tally/tally.h index 5699758e7..84c54918f 100644 --- a/cockatrice/src/game_graphics/tally/tally.h +++ b/cockatrice/src/game_graphics/tally/tally.h @@ -1,6 +1,5 @@ #ifndef COCKATRICE_TALLY_H #define COCKATRICE_TALLY_H -#include #include class CardItem; diff --git a/cockatrice/src/game_graphics/zones/card_zone.cpp b/cockatrice/src/game_graphics/zones/card_zone.cpp index d09bb588c..3457b681e 100644 --- a/cockatrice/src/game_graphics/zones/card_zone.cpp +++ b/cockatrice/src/game_graphics/zones/card_zone.cpp @@ -1,18 +1,10 @@ #include "card_zone.h" -#include "../../game/board/card_list.h" -#include "../../game/zones/card_zone_logic.h" -#include "../board/abstract_graphics_item.h" #include "../board/card_item.h" +#include "view_zone.h" -#include #include #include -#include - -class QGraphicsItem; -class QPoint; -class QPointF; CardZone::CardZone(CardZoneLogic *_logic, QGraphicsItem *parent) : AbstractGraphicsItem(parent), menu(nullptr), doubleClickAction(0), logic(_logic) @@ -48,7 +40,7 @@ void CardZone::mouseDoubleClickEvent(QGraphicsSceneMouseEvent * /*event*/) bool CardZone::showContextMenu(const QPoint &screenPos) { if (menu) { - menu->popup(screenPos); + menu->exec(screenPos); return true; } return false; diff --git a/cockatrice/src/game_graphics/zones/card_zone.h b/cockatrice/src/game_graphics/zones/card_zone.h index def3eee14..4cef6ca80 100644 --- a/cockatrice/src/game_graphics/zones/card_zone.h +++ b/cockatrice/src/game_graphics/zones/card_zone.h @@ -7,21 +7,12 @@ #ifndef CARDZONE_H #define CARDZONE_H +#include "../../game/zones/card_zone_logic.h" #include "../board/abstract_graphics_item.h" #include "../board/graphics_item_type.h" #include -#include -#include - -class CardDragItem; -class CardItem; -class CardZoneLogic; -class QAction; -class QGraphicsItem; -class QMenu; -class QPoint; -template class QList; +#include inline Q_LOGGING_CATEGORY(CardZoneLog, "card_zone"); diff --git a/cockatrice/src/game_graphics/zones/hand_zone.cpp b/cockatrice/src/game_graphics/zones/hand_zone.cpp index 3e527c081..1a8f7a910 100644 --- a/cockatrice/src/game_graphics/zones/hand_zone.cpp +++ b/cockatrice/src/game_graphics/zones/hand_zone.cpp @@ -2,27 +2,14 @@ #include "../../client/settings/cache_settings.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" -#include "../../game/zones/hand_zone_logic.h" #include "../../interface/theme_manager.h" #include "../board/card_drag_item.h" #include "../board/card_item.h" -#include "../card_dimensions.h" -#include -#include #include -#include -#include -#include -#include #include #include -#include - -class QGraphicsItem; HandZone::HandZone(HandZoneLogic *_logic, int _zoneHeight, QGraphicsItem *parent) : SelectZone(_logic, parent), zoneHeight(_zoneHeight) diff --git a/cockatrice/src/game_graphics/zones/hand_zone.h b/cockatrice/src/game_graphics/zones/hand_zone.h index 5c91d684d..c3f3f252b 100644 --- a/cockatrice/src/game_graphics/zones/hand_zone.h +++ b/cockatrice/src/game_graphics/zones/hand_zone.h @@ -7,16 +7,9 @@ #ifndef HANDZONE_H #define HANDZONE_H -#include "../../game/board/card_list.h" +#include "../../game/zones/hand_zone_logic.h" #include "select_zone.h" -#include -#include - -class HandZoneLogic; -class QGraphicsItem; -template class QList; - class HandZone : public SelectZone { Q_OBJECT diff --git a/cockatrice/src/game_graphics/zones/pile_zone.cpp b/cockatrice/src/game_graphics/zones/pile_zone.cpp index 77a87a4af..abdf262f4 100644 --- a/cockatrice/src/game_graphics/zones/pile_zone.cpp +++ b/cockatrice/src/game_graphics/zones/pile_zone.cpp @@ -1,33 +1,18 @@ #include "pile_zone.h" #include "../../client/settings/cache_settings.h" -#include "../../game/board/card_list.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" #include "../../game/zones/pile_zone_logic.h" #include "../board/card_drag_item.h" #include "../board/card_item.h" -#include "../card_dimensions.h" +#include "view_zone.h" #include -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include PileZone::PileZone(PileZoneLogic *_logic, QGraphicsItem *parent) : CardZone(_logic, parent) { diff --git a/cockatrice/src/game_graphics/zones/pile_zone.h b/cockatrice/src/game_graphics/zones/pile_zone.h index b2d8d0cd2..099bc6f60 100644 --- a/cockatrice/src/game_graphics/zones/pile_zone.h +++ b/cockatrice/src/game_graphics/zones/pile_zone.h @@ -7,13 +7,9 @@ #ifndef PILEZONE_H #define PILEZONE_H +#include "../../game/zones/pile_zone_logic.h" #include "card_zone.h" -#include - -class PileZoneLogic; -class QGraphicsItem; - /** * A CardZone where the cards are in a single pile instead of being laid out. * Usually only top card is accessible by clicking. diff --git a/cockatrice/src/game_graphics/zones/select_zone.cpp b/cockatrice/src/game_graphics/zones/select_zone.cpp index d69ec32f5..470c70fcf 100644 --- a/cockatrice/src/game_graphics/zones/select_zone.cpp +++ b/cockatrice/src/game_graphics/zones/select_zone.cpp @@ -1,25 +1,13 @@ #include "select_zone.h" #include "../../client/settings/cache_settings.h" -#include "../../game/board/card_list.h" -#include "../../game/zones/card_zone_logic.h" #include "../board/card_item.h" #include "../game_scene.h" -#include -#include #include -#include #include -#include -#include -#include -#include -#include #include #include -#include -#include static qreal stackingOffset(qreal cardHeight) { diff --git a/cockatrice/src/game_graphics/zones/select_zone.h b/cockatrice/src/game_graphics/zones/select_zone.h index 8a56949e3..b5d3ca37a 100644 --- a/cockatrice/src/game_graphics/zones/select_zone.h +++ b/cockatrice/src/game_graphics/zones/select_zone.h @@ -9,16 +9,10 @@ #include "card_zone.h" -#include #include -#include #include -#include class QGraphicsRectItem; -class CardItem; -class CardZoneLogic; -class QGraphicsItem; /** * A CardZone where the cards are laid out, with each card directly interactable by clicking. diff --git a/cockatrice/src/game_graphics/zones/stack_zone.cpp b/cockatrice/src/game_graphics/zones/stack_zone.cpp index de1ff8ba9..ff62097c7 100644 --- a/cockatrice/src/game_graphics/zones/stack_zone.cpp +++ b/cockatrice/src/game_graphics/zones/stack_zone.cpp @@ -1,27 +1,15 @@ #include "stack_zone.h" -#include "../../game/board/card_list.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" #include "../../game/zones/stack_zone_logic.h" #include "../../interface/theme_manager.h" #include "../board/card_drag_item.h" #include "../board/card_item.h" #include "../card_dimensions.h" -#include -#include -#include -#include #include -#include -#include -#include #include -#include -#include StackZone::StackZone(StackZoneLogic *_logic, int _zoneHeight, QGraphicsItem *parent) : SelectZone(_logic, parent), zoneHeight(_zoneHeight) diff --git a/cockatrice/src/game_graphics/zones/stack_zone.h b/cockatrice/src/game_graphics/zones/stack_zone.h index 5dea481b6..96b3f96a6 100644 --- a/cockatrice/src/game_graphics/zones/stack_zone.h +++ b/cockatrice/src/game_graphics/zones/stack_zone.h @@ -7,14 +7,9 @@ #ifndef STACKZONE_H #define STACKZONE_H +#include "../../game/zones/stack_zone_logic.h" #include "select_zone.h" -#include -#include - -class QGraphicsItem; -class StackZoneLogic; - class StackZone : public SelectZone { Q_OBJECT diff --git a/cockatrice/src/game_graphics/zones/table_zone.cpp b/cockatrice/src/game_graphics/zones/table_zone.cpp index b704b79e0..88e9abe6c 100644 --- a/cockatrice/src/game_graphics/zones/table_zone.cpp +++ b/cockatrice/src/game_graphics/zones/table_zone.cpp @@ -1,50 +1,23 @@ #include "table_zone.h" #include "../../client/settings/cache_settings.h" -#include "../../game/board/card_list.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" #include "../../game/zones/table_zone_logic.h" #include "../../interface/theme_manager.h" -#include "../board/abstract_card_item.h" +#include "../board/arrow_item.h" #include "../board/card_drag_item.h" #include "../board/card_item.h" #include "../game_scene.h" #include "../z_values.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" -#include -#include -#include -#include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include #include #include #include #include #include -#include - -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google const QColor TableZone::BACKGROUND_COLOR = QColor(100, 100, 100); const QColor TableZone::FADE_MASK = QColor(0, 0, 0, 80); diff --git a/cockatrice/src/game_graphics/zones/table_zone.h b/cockatrice/src/game_graphics/zones/table_zone.h index ccd1d8e81..92915a2ed 100644 --- a/cockatrice/src/game_graphics/zones/table_zone.h +++ b/cockatrice/src/game_graphics/zones/table_zone.h @@ -7,26 +7,12 @@ #ifndef TABLEZONE_H #define TABLEZONE_H +#include "../../game/zones/table_zone_logic.h" #include "../animated_item.h" -#include "../card_dimensions.h" +#include "../board/abstract_card_item.h" #include "select_zone.h" #include -#include -#include -#include -#include -#include -#include - -class CardDragItem; -class CardItem; -class CardZoneLogic; -class QColor; -class QGraphicsItem; -class QPainter; -class TableZoneLogic; -template class QList; /** * @brief TableZone is the grid based rect where CardItems may be placed. diff --git a/cockatrice/src/game_graphics/zones/view_zone.cpp b/cockatrice/src/game_graphics/zones/view_zone.cpp index a2aa124dc..5bd5d262f 100644 --- a/cockatrice/src/game_graphics/zones/view_zone.cpp +++ b/cockatrice/src/game_graphics/zones/view_zone.cpp @@ -2,29 +2,16 @@ #include "../../client/settings/cache_settings.h" #include "../../game/player/player_actions.h" -#include "../../game/player/player_info.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" #include "../../game/zones/view_zone_logic.h" #include "../board/card_drag_item.h" #include "../board/card_item.h" -#include "../card_dimensions.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/filters/filter_string.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_zone.pb.h" -#include "libcockatrice/utility/card_ref.h" #include -#include #include -#include -#include +#include #include -#include -#include #include -#include #include #include #include @@ -32,9 +19,6 @@ #include #include #include -#include - -class QGraphicsItem; /** * @param parent the parent QGraphicsWidget containing the reveal zone diff --git a/cockatrice/src/game_graphics/zones/view_zone.h b/cockatrice/src/game_graphics/zones/view_zone.h index 4032da760..9dfa00ce2 100644 --- a/cockatrice/src/game_graphics/zones/view_zone.h +++ b/cockatrice/src/game_graphics/zones/view_zone.h @@ -7,29 +7,17 @@ #ifndef ZONEVIEWERZONE_H #define ZONEVIEWERZONE_H -#include "../../game/board/card_list.h" +#include "../../game/zones/view_zone_logic.h" #include "select_zone.h" #include -#include #include -#include -#include -#include #include -#include -#include - -// IWYU pragma: keep -// ServerInfo_Card appears inside QList<...> in signal and slot -// signatures, which the moc-generated code needs to be complete. -#include - -class QGraphicsItem; -class ZoneViewZoneLogic; +#include inline Q_LOGGING_CATEGORY(ViewZoneLog, "view_zone"); +class ZoneViewWidget; class Response; class ServerInfo_Card; class QGraphicsSceneWheelEvent; diff --git a/cockatrice/src/game_graphics/zones/view_zone_widget.cpp b/cockatrice/src/game_graphics/zones/view_zone_widget.cpp index 49d9955e0..fa6733413 100644 --- a/cockatrice/src/game_graphics/zones/view_zone_widget.cpp +++ b/cockatrice/src/game_graphics/zones/view_zone_widget.cpp @@ -1,63 +1,32 @@ #include "view_zone_widget.h" #include "../../client/settings/cache_settings.h" -#include "../../client/translation.h" #include "../../filters/syntax_help.h" -#include "../../game/board/card_list.h" #include "../../game/player/player_actions.h" #include "../../game/player/player_logic.h" -#include "../../game/zones/card_zone_logic.h" -#include "../../game/zones/view_zone_logic.h" #include "../../interface/pixel_map_generator.h" -#include "../card_dimensions.h" +#include "../board/card_item.h" +#include "../game_scene.h" #include "../z_values.h" -#include "libcockatrice/utility/macros.h" #include "view_zone.h" -#include #include -#include -#include -#include -#include -#include -#include -#include #include #include -#include #include -#include #include -#include -#include -#include +#include +#include #include -#include -#include -#include -#include #include #include -#include -#include -#include -#include -#include #include #include #include -#include namespace { -qreal titleBarHeight(QWidget *styleWidget) -{ - if (styleWidget) { - return static_cast(styleWidget->style()->pixelMetric(QStyle::PM_TitleBarHeight, nullptr, styleWidget)); - } - return 24.0; -} +constexpr qreal kTitleBarHeight = 24.0; constexpr qreal kMinVisibleWidth = 100.0; } // namespace @@ -321,8 +290,7 @@ QRectF ZoneViewWidget::closeButtonRect(QWidget *styleWidget) const // query the style for the close button position (handles macOS top-left placement) // Title bar rect MUST be local (0,0-based) for QStyle - const qreal tbh = titleBarHeight(styleWidget); - const QRect titleBarRect(0, 0, static_cast(frameRectF.width()), static_cast(tbh)); + const QRect titleBarRect(0, 0, static_cast(frameRectF.width()), static_cast(kTitleBarHeight)); if (styleWidget) { QStyleOptionTitleBar opt; @@ -351,7 +319,7 @@ QRectF ZoneViewWidget::closeButtonRect(QWidget *styleWidget) const } // Fallback: frame-relative top-right - return QRectF(frameRectF.right() - tbh, frameRectF.top(), tbh, tbh); + return QRectF(frameRectF.right() - kTitleBarHeight, frameRectF.top(), kTitleBarHeight, kTitleBarHeight); } QGraphicsView *ZoneViewWidget::findDragView(QWidget *eventWidget) const @@ -475,9 +443,8 @@ QVariant ZoneViewWidget::itemChange(GraphicsItemChange change, const QVariant &v const qreal minX = sceneRect.left(); const qreal maxX = qMax(minX, sceneRect.right() - kMinVisibleWidth); - const qreal tbh = titleBarHeight(nullptr); - const qreal minY = sceneRect.top() + tbh; - const qreal maxY = qMax(minY, sceneRect.bottom() - tbh); + const qreal minY = sceneRect.top() + kTitleBarHeight; + const qreal maxY = qMax(minY, sceneRect.bottom() - kTitleBarHeight); desiredPos.setX(qBound(minX, desiredPos.x(), maxX)); desiredPos.setY(qBound(minY, desiredPos.y(), maxY)); diff --git a/cockatrice/src/game_graphics/zones/view_zone_widget.h b/cockatrice/src/game_graphics/zones/view_zone_widget.h index 9fe022b27..de5ad28d5 100644 --- a/cockatrice/src/game_graphics/zones/view_zone_widget.h +++ b/cockatrice/src/game_graphics/zones/view_zone_widget.h @@ -6,34 +6,30 @@ #ifndef ZONEVIEWWIDGET_H #define ZONEVIEWWIDGET_H +#include "../../game/zones/card_zone_logic.h" + #include #include #include #include #include -#include -#include -#include #include -#include -#include #include -#include - -// IWYU pragma: keep -// ServerInfo_Card appears inside QList<...> in signal and slot -// signatures, which the moc-generated code needs to be complete. -#include +class QLabel; +class QPushButton; +class CardZone; class ZoneViewZone; class PlayerLogic; +class CardDatabase; class QScrollBar; +class GameScene; class ServerInfo_Card; class QGraphicsSceneMouseEvent; class QGraphicsSceneWheelEvent; +class QStyleOption; class QGraphicsView; class QWidget; -class CardZoneLogic; class ScrollableGraphicsProxyWidget : public QGraphicsProxyWidget { diff --git a/cockatrice/src/interface/card_database_update/card_database_update_status_bar.cpp b/cockatrice/src/interface/card_database_update/card_database_update_status_bar.cpp deleted file mode 100644 index 721fdd6c8..000000000 --- a/cockatrice/src/interface/card_database_update/card_database_update_status_bar.cpp +++ /dev/null @@ -1,117 +0,0 @@ -#include "card_database_update_status_bar.h" - -#include -#include -#include -#include -#include -#include -#include - -namespace -{ -/** - * @brief Translated name of one updater stage. - * @param fallback shown when the stage is unknown or not reported yet - */ -QString stageName(CardUpdateStage stage, const QString &fallback) -{ - switch (stage) { - case CardUpdateStage::Download: - return QCoreApplication::translate("CardDatabaseUpdateStatusBar", "Downloading"); - case CardUpdateStage::Scan: - return QCoreApplication::translate("CardDatabaseUpdateStatusBar", "Parsing"); - case CardUpdateStage::Import: - return QCoreApplication::translate("CardDatabaseUpdateStatusBar", "Importing"); - case CardUpdateStage::Unknown: - return fallback; - } - return fallback; -} -} // namespace - -CardDatabaseUpdateStatusBar::CardDatabaseUpdateStatusBar(QWidget *parent) : QWidget(parent) -{ - layout = new QHBoxLayout(this); - layout->setContentsMargins(0, 0, 0, 0); - - stageLabel = new QLabel(this); - progressBar = new QProgressBar(this); - progressBar->setMinimumWidth(120); - - layout->addWidget(stageLabel); - layout->addWidget(progressBar); - - setLayout(layout); - refresh(); - hide(); -} - -QString CardDatabaseUpdateStatusBar::statusText() const -{ - if (!active) { - return {}; - } - const QString name = stageName(progress.stage, tr("Updating the card database")); - if (progress.total <= 0) { - return name; - } - const int percent = static_cast((100.0 * progress.done) / progress.total); - return tr("%1 (%2%)").arg(name).arg(percent); -} - -void CardDatabaseUpdateStatusBar::updateStarted() -{ - active = true; - progress = {}; - refresh(); - show(); -} - -void CardDatabaseUpdateStatusBar::updateProgress(const CardUpdateProgress &progress) -{ - active = true; - this->progress = progress; - refresh(); -} - -void CardDatabaseUpdateStatusBar::updateFinished() -{ - active = false; - progress = {}; - refresh(); - hide(); -} - -void CardDatabaseUpdateStatusBar::changeEvent(QEvent *event) -{ - if (event->type() == QEvent::LanguageChange) { - refresh(); - } - QWidget::changeEvent(event); -} - -void CardDatabaseUpdateStatusBar::refresh() -{ - const QString name = stageName(progress.stage, tr("Updating the card database")); - stageLabel->setText(name); - - const qint64 cappedTotal = qMin(progress.total, INT_MAX); - const qint64 cappedDone = qMin(progress.done, INT_MAX); - const int minimum = 0; - const int maximum = static_cast(cappedTotal); - if (progressBar->minimum() != minimum || progressBar->maximum() != maximum) { - // A zero range is the busy indicator, used until the first report arrives. - progressBar->setRange(minimum, maximum); - } - progressBar->setValue(static_cast(cappedDone)); - - if (active && progress.total > 0) { - const int percent = static_cast((100.0 * progress.done) / progress.total); - setToolTip(tr("Card database update in progress: %1 (%2%)").arg(name).arg(percent)); - } else if (active) { - setToolTip(tr("Card database update in progress.")); - } else { - setToolTip({}); - } -} diff --git a/cockatrice/src/interface/card_database_update/card_database_update_status_bar.h b/cockatrice/src/interface/card_database_update/card_database_update_status_bar.h deleted file mode 100644 index 6db3bd225..000000000 --- a/cockatrice/src/interface/card_database_update/card_database_update_status_bar.h +++ /dev/null @@ -1,68 +0,0 @@ -#ifndef CARD_DATABASE_UPDATE_STATUS_BAR_H -#define CARD_DATABASE_UPDATE_STATUS_BAR_H - -#include "card_update_progress.h" - -#include -#include -#include - -class QEvent; -class QHBoxLayout; -class QLabel; -class QProgressBar; - -/** - * @class CardDatabaseUpdateStatusBar - * @brief Status bar widget showing what the card database updater (Oracle) is doing. - * - * The updater runs as a separate process, so this widget is the in-client view of - * its progress: it appears when an update starts, tracks the download/scan/import - * stages reported by the updater, and disappears when the update finishes. - */ -class CardDatabaseUpdateStatusBar : public QWidget -{ - Q_OBJECT -public: - /** - * @brief Constructs a hidden progress widget. - * @param parent Parent widget - */ - explicit CardDatabaseUpdateStatusBar(QWidget *parent = nullptr); - - /** - * @brief Human readable description of the running stage, e.g. "Downloading (42%)". - * @return the description, or an empty string when no update is running - */ - QString statusText() const; - -public slots: - /** - * @brief Shows the widget and resets it to the indeterminate state. - */ - void updateStarted(); - - /** - * @brief Shows the progress of one update stage. - */ - void updateProgress(const CardUpdateProgress &progress); - - /** - * @brief Hides the widget and clears the reported progress. - */ - void updateFinished(); - -protected: - void changeEvent(QEvent *event) override; - -private: - void refresh(); - - QHBoxLayout *layout; ///< Horizontal layout holding the stage label and the progress bar - QLabel *stageLabel; ///< Name of the stage currently running - QProgressBar *progressBar; ///< Progress within the current stage - CardUpdateProgress progress; ///< Last reported progress - bool active = false; ///< Whether an update is currently running -}; - -#endif // CARD_DATABASE_UPDATE_STATUS_BAR_H diff --git a/cockatrice/src/interface/card_database_update/card_update_progress.cpp b/cockatrice/src/interface/card_database_update/card_update_progress.cpp deleted file mode 100644 index 1f8e500d0..000000000 --- a/cockatrice/src/interface/card_database_update/card_update_progress.cpp +++ /dev/null @@ -1,59 +0,0 @@ -#include "card_update_progress.h" - -#include - -namespace -{ -CardUpdateStage parseStage(const QByteArray &token) -{ - if (token == "download") { - return CardUpdateStage::Download; - } - if (token == "scan") { - return CardUpdateStage::Scan; - } - if (token == "import") { - return CardUpdateStage::Import; - } - return CardUpdateStage::Unknown; -} -} // namespace - -std::optional CardUpdateProgress::fromProtocolLine(const QByteArray &line) -{ - const QByteArray trimmed = line.trimmed(); - if (!trimmed.startsWith("PROGRESS ")) { - return std::nullopt; - } - const QList parts = trimmed.split(' '); - if (parts.size() != 4) { - return std::nullopt; - } - bool doneOk = false; - bool totalOk = false; - const qint64 done = parts.at(2).toLongLong(&doneOk); - const qint64 total = parts.at(3).toLongLong(&totalOk); - if (!doneOk || !totalOk || done < 0 || total < 0) { - return std::nullopt; - } - CardUpdateProgress progress; - progress.stage = parseStage(parts.at(1)); - progress.done = done; - progress.total = total; - return progress; -} - -QString CardUpdateProgress::stageToken() const -{ - switch (stage) { - case CardUpdateStage::Download: - return QStringLiteral("download"); - case CardUpdateStage::Scan: - return QStringLiteral("scan"); - case CardUpdateStage::Import: - return QStringLiteral("import"); - case CardUpdateStage::Unknown: - return QStringLiteral("unknown"); - } - return QStringLiteral("unknown"); -} diff --git a/cockatrice/src/interface/card_database_update/card_update_progress.h b/cockatrice/src/interface/card_database_update/card_update_progress.h deleted file mode 100644 index 743f32209..000000000 --- a/cockatrice/src/interface/card_database_update/card_update_progress.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef CARD_UPDATE_PROGRESS_H -#define CARD_UPDATE_PROGRESS_H - -#include -#include -#include -#include - -/** - * @brief One stage of the card database updater's progress protocol. - */ -enum class CardUpdateStage -{ - Download, ///< downloading the source data - Scan, ///< parsing the downloaded data - Import, ///< importing cards into the database - Unknown, ///< a stage the client does not recognize -}; - -/** - * @brief One progress line read from the card database updater's stdout. - */ -struct CardUpdateProgress -{ - /** - * @brief Parses one line of the updater stdout protocol: "PROGRESS ". - * @param line a single stdout line, with or without its trailing newline - * @return the parsed progress, or @c std::nullopt when the line is not a valid progress line - */ - static std::optional fromProtocolLine(const QByteArray &line); - - /** - * @brief Protocol token of the stage ("download", "scan", "import" or "unknown"), for logging. - */ - QString stageToken() const; - - CardUpdateStage stage = CardUpdateStage::Unknown; - qint64 done = 0; - qint64 total = 0; -}; - -#endif // CARD_UPDATE_PROGRESS_H diff --git a/cockatrice/src/interface/card_localization.h b/cockatrice/src/interface/card_localization.h index 39cbd7700..1a1e7be5d 100644 --- a/cockatrice/src/interface/card_localization.h +++ b/cockatrice/src/interface/card_localization.h @@ -6,7 +6,6 @@ #include #include #include -#include #include namespace CardLocalization diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader.cpp index 4f77c7096..8e34942e1 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader.cpp @@ -4,45 +4,27 @@ #include "../pixel_map_generator.h" #include "card_picture_loader_cache_method.h" #include "card_picture_loader_local_schemes.h" -#include "card_picture_loader_status_bar.h" -#include "card_picture_loader_worker.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" #include -#include -#include -#include +#include #include #include -#include #include -#include -#include -#include #include -#include #include -#include -#include +#include +#include +#include #include #include -#include -#include #include -#include -#include #include -#include -#include -#include +#include #include #include #include #include -#include +#include // never cache more than 300 cards at once for a single deck #define CACHED_CARD_PER_DECK_MAX 300 diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader.h index c6d91570b..6224befbf 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader.h @@ -1,20 +1,12 @@ #ifndef CARD_PICTURE_LOADER_H #define CARD_PICTURE_LOADER_H +#include "card_picture_loader_status_bar.h" +#include "card_picture_loader_worker.h" + +#include #include #include -#include -#include - -class CardPictureLoaderStatusBar; -class CardPictureLoaderWorker; -class ExactCard; -class QDateTime; -class QImage; -class QPixmap; -class QSize; -class QString; -template class QList; inline Q_LOGGING_CATEGORY(CardPictureLoaderLog, "card_picture_loader"); inline Q_LOGGING_CATEGORY(CardPictureLoaderCardBackCacheFailLog, "card_picture_loader.card_back_cache_fail"); diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.cpp index 1437e23f4..12165e8f3 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.cpp @@ -2,21 +2,11 @@ #include "../../client/settings/cache_settings.h" #include "card_picture_loader_local_schemes.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" +#include "card_picture_to_load.h" -#include -#include #include -#include -#include -#include -#include -#include -#include -#include +#include +#include #include static constexpr int REFRESH_INTERVAL_MS = 10 * 1000; diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.h index 009897acc..44163d1db 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_local.h @@ -1,15 +1,8 @@ #ifndef PICTURE_LOADER_LOCAL_H #define PICTURE_LOADER_LOCAL_H -#include -#include -#include -#include -#include -#include - -class ExactCard; -class QTimer; +#include +#include inline Q_LOGGING_CATEGORY(CardPictureLoaderLocalLog, "card_picture_loader.local"); diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.cpp index 98364e3cb..d1895af06 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.cpp @@ -1,11 +1,5 @@ #include "card_picture_loader_request_status_display_widget.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" - -#include -#include - CardPictureLoaderRequestStatusDisplayWidget::CardPictureLoaderRequestStatusDisplayWidget(QWidget *parent, const QUrl &_url, const ExactCard &card, diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.h index 58051cc1e..c9a272b68 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_request_status_display_widget.h @@ -1,16 +1,11 @@ #ifndef PICTURE_LOADER_REQUEST_STATUS_DISPLAY_WIDGET_H #define PICTURE_LOADER_REQUEST_STATUS_DISPLAY_WIDGET_H -#include +#include #include -#include -#include +#include #include -#include - -class ExactCard; -class QHBoxLayout; -class QUrl; +#include /** * @class CardPictureLoaderRequestStatusDisplayWidget diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.cpp index 3b26c8033..9e7e645bd 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.cpp @@ -1,19 +1,7 @@ #include "card_picture_loader_status_bar.h" -#include "../widgets/quick_settings/settings_button_widget.h" -#include "../widgets/quick_settings/settings_popup_widget.h" #include "card_picture_loader_request_status_display_widget.h" -#include -#include -#include -#include -#include -#include -#include - -class ExactCard; - CardPictureLoaderStatusBar::CardPictureLoaderStatusBar(QWidget *parent) : QWidget(parent) { layout = new QHBoxLayout(this); diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.h index 2ba386c42..7f1f509db 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_status_bar.h @@ -1,16 +1,12 @@ #ifndef PICTURE_LOADER_STATUS_BAR_H #define PICTURE_LOADER_STATUS_BAR_H -#include -#include -#include +#include "../../interface/widgets/quick_settings/settings_button_widget.h" +#include "card_picture_loader_worker_work.h" -class ExactCard; -class QHBoxLayout; -class QProgressBar; -class QTimer; -class QUrl; -class SettingsButtonWidget; +#include +#include +#include /** * @class CardPictureLoaderStatusBar diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.cpp index 150b4c544..0fd6a42d5 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.cpp @@ -4,34 +4,15 @@ #include "card_picture_loader_cache_method.h" #include "card_picture_loader_local.h" #include "card_picture_loader_worker_work.h" -#include "card_picture_to_load.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/server_rate_limiter.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include #include #include -#include -#include -#include #include -#include -#include -#include #include #include #include -#include #include #include diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.h index 4b42c6e59..8b136f309 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker.h @@ -1,25 +1,21 @@ #ifndef PICTURE_LOADER_WORKER_H #define PICTURE_LOADER_WORKER_H +#include "card_picture_loader_local.h" +#include "card_picture_loader_worker_work.h" +#include "card_picture_to_load.h" + +#include #include #include +#include +#include +#include #include -#include #include -#include -#include #include -#include -#include - -class CardPictureLoaderLocal; -class ExactCard; -class QDateTime; -class QImage; -class QNetworkAccessManager; -class QNetworkDiskCache; -class QNetworkReply; -class QThread; +#include +#include #define REDIRECT_HEADER_NAME "redirects" #define REDIRECT_ORIGINAL_URL "original" diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.cpp index 92524384a..19c6be469 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.cpp @@ -2,35 +2,19 @@ #include "../../client/settings/cache_settings.h" #include "card_picture_loader_worker.h" -#include "card_picture_to_load.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/server_rate_limiter.h" #include -#include -#include -#include -#include -#include -#include +#include #include -#include #include #include -#include #include -#include -#include +#include +#include #include -#include -#include ServerRateLimiter CardPictureLoaderWorkerWork::s_rateLimiter; -#include #include -#include -#include // Card back returned by gatherer when card is not found static const QStringList MD5_BLACKLIST = { diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.h b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.h index c3dbcc6e8..84a7dafdb 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_loader_worker_work.h @@ -1,18 +1,19 @@ #ifndef PICTURE_LOADER_WORKER_WORK_H #define PICTURE_LOADER_WORKER_WORK_H +#include "card_picture_loader_worker.h" #include "card_picture_to_load.h" -#include +#include #include +#include +#include #include +#include #include -#include - -class ExactCard; -class QNetworkReply; -class QUrl; -class ServerRateLimiter; +#include +#include +#include inline Q_LOGGING_CATEGORY(CardPictureLoaderWorkerWorkLog, "card_picture_loader.worker"); diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_to_load.cpp b/cockatrice/src/interface/card_picture_loader/card_picture_to_load.cpp index e35c417c8..4f933207e 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_to_load.cpp +++ b/cockatrice/src/interface/card_picture_loader/card_picture_to_load.cpp @@ -1,22 +1,12 @@ #include "card_picture_to_load.h" #include "../../client/settings/cache_settings.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" +#include #include -#include -#include -#include #include -#include -#include -#include #include -#include #include -#include #include #include #include diff --git a/cockatrice/src/interface/card_picture_loader/card_picture_to_load.h b/cockatrice/src/interface/card_picture_loader/card_picture_to_load.h index fe56dc4c6..9e0e7449c 100644 --- a/cockatrice/src/interface/card_picture_loader/card_picture_to_load.h +++ b/cockatrice/src/interface/card_picture_loader/card_picture_to_load.h @@ -1,12 +1,6 @@ #ifndef PICTURE_TO_LOAD_H #define PICTURE_TO_LOAD_H -#include "libcockatrice/card/card_info.h" - -#include -#include -#include -#include #include inline Q_LOGGING_CATEGORY(CardPictureToLoadLog, "card_picture_loader.picture_to_load"); diff --git a/cockatrice/src/interface/deck_loader/card_node_function.cpp b/cockatrice/src/interface/deck_loader/card_node_function.cpp index 8d59a6c15..9441fe428 100644 --- a/cockatrice/src/interface/deck_loader/card_node_function.cpp +++ b/cockatrice/src/interface/deck_loader/card_node_function.cpp @@ -1,12 +1,5 @@ #include "card_node_function.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" - -#include -#include -#include #include #include #include @@ -15,14 +8,13 @@ void CardNodeFunction::SetProviderIdToPreferred::operator()(const InnerDecklistN { Q_UNUSED(node); PrintingInfo preferredPrinting = CardDatabaseManager::query()->getPreferredPrinting(card->getName()); - CardSetPtr preferredSet = preferredPrinting.getSet(); - if (!preferredSet) { - return; - } + QString providerId = preferredPrinting.getUuid(); + QString setShortName = preferredPrinting.getSet()->getShortName(); + QString collectorNumber = preferredPrinting.getProperty("num"); - card->setCardProviderId(preferredPrinting.getUuid()); - card->setCardCollectorNumber(preferredPrinting.getProperty("num")); - card->setCardSetShortName(preferredSet->getShortName()); + card->setCardProviderId(providerId); + card->setCardCollectorNumber(collectorNumber); + card->setCardSetShortName(setShortName); } void CardNodeFunction::ClearPrintingData::operator()(const InnerDecklistNode *node, DecklistCardNode *card) const diff --git a/cockatrice/src/interface/deck_loader/deck_file_format.cpp b/cockatrice/src/interface/deck_loader/deck_file_format.cpp index ba5a44e4c..3c88cde4e 100644 --- a/cockatrice/src/interface/deck_loader/deck_file_format.cpp +++ b/cockatrice/src/interface/deck_loader/deck_file_format.cpp @@ -1,7 +1,5 @@ #include "deck_file_format.h" -#include - DeckFileFormat::Format DeckFileFormat::getFormatFromName(const QString &fileName) { if (fileName.endsWith(".cod", Qt::CaseInsensitive)) { diff --git a/cockatrice/src/interface/deck_loader/deck_loader.cpp b/cockatrice/src/interface/deck_loader/deck_loader.cpp index d413a6c04..f29b4eed2 100644 --- a/cockatrice/src/interface/deck_loader/deck_loader.cpp +++ b/cockatrice/src/interface/deck_loader/deck_loader.cpp @@ -1,51 +1,26 @@ #include "deck_loader.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" - #include #include -#include #include #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include +#include #include #include #include -#include -#include #include -#include -#include #include #include -#include #include #include -#include -#include -#include #include -#include +#include #include #include #include #include -#include - -class QTextLength; const QStringList DeckLoader::ACCEPTED_FILE_EXTENSIONS = {"*.cod", "*.dec", "*.dek", "*.txt", "*.mwDeck"}; diff --git a/cockatrice/src/interface/deck_loader/deck_loader.h b/cockatrice/src/interface/deck_loader/deck_loader.h index 16402b14b..be0df311d 100644 --- a/cockatrice/src/interface/deck_loader/deck_loader.h +++ b/cockatrice/src/interface/deck_loader/deck_loader.h @@ -7,23 +7,13 @@ #ifndef DECK_LOADER_H #define DECK_LOADER_H -#include "deck_file_format.h" #include "loaded_deck.h" #include -#include -#include -#include +#include +#include +#include #include -#include - -class DeckList; -class DecklistCardNode; -class InnerDecklistNode; -class QPrinter; -class QTextCursor; -class QTextStream; -template class QList; inline Q_LOGGING_CATEGORY(DeckLoaderLog, "deck_loader"); diff --git a/cockatrice/src/interface/intents/intent.h b/cockatrice/src/interface/intents/intent.h index ad8d4b5af..5d9fdd3d6 100644 --- a/cockatrice/src/interface/intents/intent.h +++ b/cockatrice/src/interface/intents/intent.h @@ -2,8 +2,6 @@ #define COCKATRICE_INTENT_H #include -#include -#include class Intent : public QObject { diff --git a/cockatrice/src/interface/intents/intent_connect_to_server.cpp b/cockatrice/src/interface/intents/intent_connect_to_server.cpp index 42ddc97cc..1cccc5a23 100644 --- a/cockatrice/src/interface/intents/intent_connect_to_server.cpp +++ b/cockatrice/src/interface/intents/intent_connect_to_server.cpp @@ -1,14 +1,8 @@ #include "intent_connect_to_server.h" -#include "contexts/context_connect_to_server.h" #include "intent_disconnect_from_server.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "remote_client.h" #include -#include - -template class QList; IntentConnectToServer::IntentConnectToServer(RemoteClient *_remoteClient, ContextConnectToServer *_context) : Intent(), remoteClient(_remoteClient), context(_context) diff --git a/cockatrice/src/interface/intents/intent_connect_to_server.h b/cockatrice/src/interface/intents/intent_connect_to_server.h index 50d7f088b..eab4d1a21 100644 --- a/cockatrice/src/interface/intents/intent_connect_to_server.h +++ b/cockatrice/src/interface/intents/intent_connect_to_server.h @@ -1,14 +1,9 @@ #ifndef COCKATRICE_INTENT_CONNECT_TO_SERVER_H #define COCKATRICE_INTENT_CONNECT_TO_SERVER_H -#include "abstract_client.h" +#include "contexts/context_connect_to_server.h" #include "intent.h" - -#include -#include - -class RemoteClient; -struct ContextConnectToServer; +#include "remote_client.h" class IntentConnectToServer : public Intent { diff --git a/cockatrice/src/interface/intents/intent_disconnect_from_server.cpp b/cockatrice/src/interface/intents/intent_disconnect_from_server.cpp index e865c4a2b..cb39d7bab 100644 --- a/cockatrice/src/interface/intents/intent_disconnect_from_server.cpp +++ b/cockatrice/src/interface/intents/intent_disconnect_from_server.cpp @@ -1,7 +1,5 @@ #include "intent_disconnect_from_server.h" -#include "remote_client.h" - IntentDisconnectFromServer::IntentDisconnectFromServer(RemoteClient *_remoteClient) : Intent(), remoteClient(_remoteClient) { diff --git a/cockatrice/src/interface/intents/intent_disconnect_from_server.h b/cockatrice/src/interface/intents/intent_disconnect_from_server.h index 5425e973b..6e1dfd0c1 100644 --- a/cockatrice/src/interface/intents/intent_disconnect_from_server.h +++ b/cockatrice/src/interface/intents/intent_disconnect_from_server.h @@ -1,12 +1,8 @@ #ifndef COCKATRICE_INTENT_DISCONNECT_FROM_SERVER_H #define COCKATRICE_INTENT_DISCONNECT_FROM_SERVER_H -#include "abstract_client.h" #include "intent.h" - -#include - -class RemoteClient; +#include "remote_client.h" class IntentDisconnectFromServer : public Intent { diff --git a/cockatrice/src/interface/intents/intent_join_server_game.cpp b/cockatrice/src/interface/intents/intent_join_server_game.cpp index 52e02b276..b22b200ed 100644 --- a/cockatrice/src/interface/intents/intent_join_server_game.cpp +++ b/cockatrice/src/interface/intents/intent_join_server_game.cpp @@ -3,17 +3,9 @@ #include "../widgets/server/game_selector.h" #include "../widgets/tabs/tab_room.h" #include "../widgets/tabs/tab_supervisor.h" -#include "abstract_client.h" -#include "contexts/context_connect_to_server.h" -#include "contexts/context_join_room.h" #include "intent_join_server_room.h" -#include "remote_client.h" -#include -#include -#include #include -#include IntentJoinServerGame::IntentJoinServerGame(TabSupervisor *_tabSupervisor, RemoteClient *_remoteClient, diff --git a/cockatrice/src/interface/intents/intent_join_server_game.h b/cockatrice/src/interface/intents/intent_join_server_game.h index 5abb31fc5..5e196df38 100644 --- a/cockatrice/src/interface/intents/intent_join_server_game.h +++ b/cockatrice/src/interface/intents/intent_join_server_game.h @@ -3,14 +3,13 @@ #include "contexts/context_join_game.h" #include "intent.h" +#include "remote_client.h" #include #include -#include class TabRoom; class TabSupervisor; -class RemoteClient; class IntentJoinServerGame : public Intent { diff --git a/cockatrice/src/interface/intents/intent_join_server_room.cpp b/cockatrice/src/interface/intents/intent_join_server_room.cpp index 24349cadf..d25bc8d17 100644 --- a/cockatrice/src/interface/intents/intent_join_server_room.cpp +++ b/cockatrice/src/interface/intents/intent_join_server_room.cpp @@ -3,15 +3,8 @@ #include "../widgets/tabs/tab_room.h" #include "../widgets/tabs/tab_server.h" #include "../widgets/tabs/tab_supervisor.h" -#include "abstract_client.h" -#include "contexts/context_connect_to_server.h" -#include "contexts/context_join_room.h" #include "intent_connect_to_server.h" -#include "remote_client.h" -#include -#include -#include #include #include diff --git a/cockatrice/src/interface/intents/intent_join_server_room.h b/cockatrice/src/interface/intents/intent_join_server_room.h index b4febae7b..4a5599896 100644 --- a/cockatrice/src/interface/intents/intent_join_server_room.h +++ b/cockatrice/src/interface/intents/intent_join_server_room.h @@ -1,13 +1,11 @@ #ifndef COCKATRICE_INTENT_JOIN_SERVER_ROOM_H #define COCKATRICE_INTENT_JOIN_SERVER_ROOM_H +#include "contexts/context_join_room.h" #include "intent.h" - -#include +#include "remote_client.h" class TabSupervisor; -class RemoteClient; -struct ContextJoinRoom; class IntentJoinServerRoom : public Intent { diff --git a/cockatrice/src/interface/intents/intent_login.cpp b/cockatrice/src/interface/intents/intent_login.cpp index 0d8390015..7beb63e1d 100644 --- a/cockatrice/src/interface/intents/intent_login.cpp +++ b/cockatrice/src/interface/intents/intent_login.cpp @@ -2,13 +2,9 @@ #include "../../client/settings/cache_settings.h" #include "../widgets/dialogs/dlg_login_prompt.h" -#include "contexts/context_connect_to_server.h" #include "libcockatrice/settings/servers_settings.h" #include -#include -#include -#include IntentGetLoginCredentials::IntentGetLoginCredentials(ContextConnectToServer *_context, bool _promptForMissingCredentials) diff --git a/cockatrice/src/interface/intents/intent_login.h b/cockatrice/src/interface/intents/intent_login.h index a805f1d75..8ffd91a0a 100644 --- a/cockatrice/src/interface/intents/intent_login.h +++ b/cockatrice/src/interface/intents/intent_login.h @@ -1,12 +1,9 @@ #ifndef COCKATRICE_INTENT_LOGIN_H #define COCKATRICE_INTENT_LOGIN_H +#include "contexts/context_connect_to_server.h" #include "intent.h" -#include - -struct ContextConnectToServer; - class IntentGetLoginCredentials : public Intent { Q_OBJECT diff --git a/cockatrice/src/interface/intents/intent_open_local_deck.cpp b/cockatrice/src/interface/intents/intent_open_local_deck.cpp index 5b673d106..2457bec72 100644 --- a/cockatrice/src/interface/intents/intent_open_local_deck.cpp +++ b/cockatrice/src/interface/intents/intent_open_local_deck.cpp @@ -2,14 +2,10 @@ #include "../deck_loader/deck_file_format.h" #include "../deck_loader/deck_loader.h" -#include "../deck_loader/loaded_deck.h" #include "../widgets/tabs/tab_supervisor.h" #include "intent_wait_for_database_load.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" #include -#include IntentOpenLocalDeck::IntentOpenLocalDeck(TabSupervisor *_tabSupervisor, const QString &_file) : Intent(), tabSupervisor(_tabSupervisor), file(_file) diff --git a/cockatrice/src/interface/intents/intent_open_local_deck.h b/cockatrice/src/interface/intents/intent_open_local_deck.h index 0338e9384..97f875e39 100644 --- a/cockatrice/src/interface/intents/intent_open_local_deck.h +++ b/cockatrice/src/interface/intents/intent_open_local_deck.h @@ -4,7 +4,6 @@ #include "intent.h" #include -#include class TabSupervisor; diff --git a/cockatrice/src/interface/intents/intent_open_server_room_by_name.cpp b/cockatrice/src/interface/intents/intent_open_server_room_by_name.cpp index 63aef004b..d50f509a0 100644 --- a/cockatrice/src/interface/intents/intent_open_server_room_by_name.cpp +++ b/cockatrice/src/interface/intents/intent_open_server_room_by_name.cpp @@ -2,22 +2,13 @@ #include "../widgets/tabs/tab_room.h" #include "../widgets/tabs/tab_supervisor.h" -#include "contexts/context_connect_to_server.h" #include "intent_connect_to_server.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_room.pb.h" -#include "remote_client.h" -#include -#include #include #include #include #include -class CommandContainer; -class QVariant; - IntentOpenServerRoomByName::IntentOpenServerRoomByName(TabSupervisor *_tabSupervisor, RemoteClient *_remoteClient, std::unique_ptr _context, diff --git a/cockatrice/src/interface/intents/intent_open_server_room_by_name.h b/cockatrice/src/interface/intents/intent_open_server_room_by_name.h index e163796fc..2f9e716af 100644 --- a/cockatrice/src/interface/intents/intent_open_server_room_by_name.h +++ b/cockatrice/src/interface/intents/intent_open_server_room_by_name.h @@ -1,21 +1,19 @@ #ifndef COCKATRICE_INTENT_OPEN_SERVER_ROOM_BY_NAME_H #define COCKATRICE_INTENT_OPEN_SERVER_ROOM_BY_NAME_H -#include "abstract_client.h" #include "contexts/context_join_room.h" #include "intent.h" +#include "remote_client.h" #include #include #include #include -#include +class TabRoom; class TabSupervisor; class Event_ListRooms; class ServerInfo_Room; -class RemoteClient; -class Response; /** * @brief Connects to the configured server and opens a room identified by its name. diff --git a/cockatrice/src/interface/intents/intent_open_shared_deck.cpp b/cockatrice/src/interface/intents/intent_open_shared_deck.cpp index 8abad3d88..016de63e6 100644 --- a/cockatrice/src/interface/intents/intent_open_shared_deck.cpp +++ b/cockatrice/src/interface/intents/intent_open_shared_deck.cpp @@ -3,17 +3,11 @@ #include "../deck_loader/deck_loader.h" #include "../widgets/dialogs/dlg_shared_decks_preview.h" #include "../widgets/tabs/tab_supervisor.h" -#include "abstract_client.h" -#include "contexts/context_connect_to_server.h" #include "intent_connect_to_server.h" -#include "remote_client.h" -#include #include -#include #include -#include -#include +#include #include #include #include @@ -21,11 +15,6 @@ #include #include #include -#include -#include -#include - -class CommandContainer; IntentOpenSharedDeck::IntentOpenSharedDeck(TabSupervisor *_tabSupervisor, RemoteClient *_remoteClient, diff --git a/cockatrice/src/interface/intents/intent_open_shared_deck.h b/cockatrice/src/interface/intents/intent_open_shared_deck.h index afce2370f..87812bdea 100644 --- a/cockatrice/src/interface/intents/intent_open_shared_deck.h +++ b/cockatrice/src/interface/intents/intent_open_shared_deck.h @@ -1,24 +1,20 @@ #ifndef COCKATRICE_INTENT_OPEN_SHARED_DECK_H #define COCKATRICE_INTENT_OPEN_SHARED_DECK_H -#include "../deck_loader/loaded_deck.h" #include "contexts/context_open_deck.h" #include "intent.h" +#include "remote_client.h" #include #include #include -#include #include -#include class TabSupervisor; +struct LoadedDeck; class CardDatabaseQuerier; class DlgSharedDecksPreview; class QTimer; -class CommandContainer; -class RemoteClient; -class Response; class IntentOpenSharedDeck : public Intent { diff --git a/cockatrice/src/interface/intents/intent_wait_for_database_load.cpp b/cockatrice/src/interface/intents/intent_wait_for_database_load.cpp index 7a7da90a4..c36378818 100644 --- a/cockatrice/src/interface/intents/intent_wait_for_database_load.cpp +++ b/cockatrice/src/interface/intents/intent_wait_for_database_load.cpp @@ -1,8 +1,5 @@ #include "intent_wait_for_database_load.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" - #include bool IntentWaitForDatabaseLoad::checkPrecondition() const diff --git a/cockatrice/src/interface/intents/intent_wait_for_database_load.h b/cockatrice/src/interface/intents/intent_wait_for_database_load.h index 715918f04..72f4a1ffc 100644 --- a/cockatrice/src/interface/intents/intent_wait_for_database_load.h +++ b/cockatrice/src/interface/intents/intent_wait_for_database_load.h @@ -3,8 +3,6 @@ #include "intent.h" -#include - class IntentWaitForDatabaseLoad : public Intent { Q_OBJECT diff --git a/cockatrice/src/interface/intents/url_parser.cpp b/cockatrice/src/interface/intents/url_parser.cpp index 966fd1213..707863354 100644 --- a/cockatrice/src/interface/intents/url_parser.cpp +++ b/cockatrice/src/interface/intents/url_parser.cpp @@ -4,34 +4,22 @@ #include "../widgets/tabs/tab_room.h" #include "../widgets/tabs/tab_supervisor.h" #include "../window_main.h" -#include "contexts/context_connect_to_server.h" #include "contexts/context_join_game.h" -#include "contexts/context_join_room.h" #include "contexts/context_open_deck.h" #include "intent.h" #include "intent_join_server_game.h" #include "intent_login.h" #include "intent_open_shared_deck.h" -#include "remote_client.h" #include #include -#include #include -#include -#include -#include #include #include -#include -#include #include #include #include #include -#include -#include -#include inline Q_LOGGING_CATEGORY(UrlParserLog, "url_parser"); diff --git a/cockatrice/src/interface/intents/url_parser.h b/cockatrice/src/interface/intents/url_parser.h index 9b8594275..ea29fed53 100644 --- a/cockatrice/src/interface/intents/url_parser.h +++ b/cockatrice/src/interface/intents/url_parser.h @@ -2,11 +2,8 @@ #define COCKATRICE_URL_PARSER_H #include -#include #include -#include #include -#include class Intent; class MainWindow; diff --git a/cockatrice/src/interface/key_signals.cpp b/cockatrice/src/interface/key_signals.cpp index 4c3074139..a78997cc2 100644 --- a/cockatrice/src/interface/key_signals.cpp +++ b/cockatrice/src/interface/key_signals.cpp @@ -1,9 +1,6 @@ #include "key_signals.h" -#include -#include #include -#include bool KeySignals::eventFilter(QObject * /*object*/, QEvent *event) { diff --git a/cockatrice/src/interface/key_signals.h b/cockatrice/src/interface/key_signals.h index dbe147ad8..30dcee0ba 100644 --- a/cockatrice/src/interface/key_signals.h +++ b/cockatrice/src/interface/key_signals.h @@ -8,8 +8,8 @@ #ifndef KEYSIGNALS_H #define KEYSIGNALS_H +#include #include -#include class KeySignals : public QObject { diff --git a/cockatrice/src/interface/layouts/flow_layout.cpp b/cockatrice/src/interface/layouts/flow_layout.cpp index ba5e492e3..0d03b7789 100644 --- a/cockatrice/src/interface/layouts/flow_layout.cpp +++ b/cockatrice/src/interface/layouts/flow_layout.cpp @@ -15,18 +15,13 @@ #include "flow_layout.h" +#include "../widgets/general/layout_containers/flow_widget.h" + #include #include -#include -#include -#include -#include -#include -#include +#include #include -#include #include -#include FlowLayout::FlowLayout(QWidget *parent, const Qt::Orientation flowDirection, diff --git a/cockatrice/src/interface/layouts/flow_layout.h b/cockatrice/src/interface/layouts/flow_layout.h index a6e015e3e..9adcd8bb5 100644 --- a/cockatrice/src/interface/layouts/flow_layout.h +++ b/cockatrice/src/interface/layouts/flow_layout.h @@ -12,14 +12,8 @@ #include #include #include -#include #include -#include -#include -#include - -class QLayoutItem; -class QWidget; +#include inline Q_LOGGING_CATEGORY(FlowLayoutLog, "flow_layout", QtInfoMsg); diff --git a/cockatrice/src/interface/layouts/overlap_layout.cpp b/cockatrice/src/interface/layouts/overlap_layout.cpp index 2b4da9138..a4c13518a 100644 --- a/cockatrice/src/interface/layouts/overlap_layout.cpp +++ b/cockatrice/src/interface/layouts/overlap_layout.cpp @@ -1,15 +1,7 @@ #include "overlap_layout.h" #include -#include -#include -#include -#include -#include -#include -#include #include -#include /** * @class OverlapLayout diff --git a/cockatrice/src/interface/layouts/overlap_layout.h b/cockatrice/src/interface/layouts/overlap_layout.h index 32c74c18a..c1b6a8e51 100644 --- a/cockatrice/src/interface/layouts/overlap_layout.h +++ b/cockatrice/src/interface/layouts/overlap_layout.h @@ -10,11 +10,7 @@ #include #include #include -#include -#include - -class QLayoutItem; -class QWidget; +#include inline Q_LOGGING_CATEGORY(OverlapLayoutLog, "overlap_layout"); diff --git a/cockatrice/src/interface/logger.cpp b/cockatrice/src/interface/logger.cpp index 87fdcbd8c..3e00a0b24 100644 --- a/cockatrice/src/interface/logger.cpp +++ b/cockatrice/src/interface/logger.cpp @@ -5,16 +5,9 @@ #include #include #include -#include -#include #include -#include -#include -#include #include #include -#include -#include #define LOGGER_MAX_ENTRIES 128 #define LOGGER_FILENAME "qdebug.txt" diff --git a/cockatrice/src/interface/logger.h b/cockatrice/src/interface/logger.h index 2287da804..fc6dd70be 100644 --- a/cockatrice/src/interface/logger.h +++ b/cockatrice/src/interface/logger.h @@ -8,15 +8,10 @@ #define LOGGER_H #include -#include #include -#include #include #include -#include -#include -#include -#include +#include #if defined(Q_PROCESSOR_X86_32) #define BUILD_ARCHITECTURE "32-bit" diff --git a/cockatrice/src/interface/palette_editor/color_button.cpp b/cockatrice/src/interface/palette_editor/color_button.cpp index a7db23d31..e1a490d20 100644 --- a/cockatrice/src/interface/palette_editor/color_button.cpp +++ b/cockatrice/src/interface/palette_editor/color_button.cpp @@ -1,19 +1,7 @@ #include "color_button.h" -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include - -class QWidget; ColorButton::ColorButton(QWidget *parent) : QToolButton(parent) { diff --git a/cockatrice/src/interface/palette_editor/color_button.h b/cockatrice/src/interface/palette_editor/color_button.h index f9991ec6b..4b139ef68 100644 --- a/cockatrice/src/interface/palette_editor/color_button.h +++ b/cockatrice/src/interface/palette_editor/color_button.h @@ -3,9 +3,6 @@ #include #include -#include - -class QWidget; class ColorButton : public QToolButton { diff --git a/cockatrice/src/interface/palette_editor/palette_editor_dialog.cpp b/cockatrice/src/interface/palette_editor/palette_editor_dialog.cpp index 20e16614a..d5a168708 100644 --- a/cockatrice/src/interface/palette_editor/palette_editor_dialog.cpp +++ b/cockatrice/src/interface/palette_editor/palette_editor_dialog.cpp @@ -1,6 +1,5 @@ #include "palette_editor_dialog.h" -#include "../theme_config.h" #include "../theme_manager.h" #include "palette_generator.h" #include "palette_grid_widget.h" @@ -10,22 +9,12 @@ #include #include #include -#include #include #include -#include #include -#include #include -#include #include -#include -#include #include -#include -#include -#include -#include PaletteEditorDialog::PaletteEditorDialog(const QString &_themeDirPath, const QString &_themeName, QWidget *parent) : QDialog(parent), themeDirPath(_themeDirPath), themeName(_themeName) diff --git a/cockatrice/src/interface/palette_editor/palette_editor_dialog.h b/cockatrice/src/interface/palette_editor/palette_editor_dialog.h index e29a70cb0..953902c06 100644 --- a/cockatrice/src/interface/palette_editor/palette_editor_dialog.h +++ b/cockatrice/src/interface/palette_editor/palette_editor_dialog.h @@ -3,21 +3,18 @@ #include "../theme_config.h" -#include #include +#include #include -#include -#include class QTimer; + class QLabel; class QComboBox; class QDialogButtonBox; class QPushButton; class PaletteGridWidget; class QuickSetupPanel; -class QFrame; -class QWidget; class PaletteEditorDialog : public QDialog { diff --git a/cockatrice/src/interface/palette_editor/palette_generator.cpp b/cockatrice/src/interface/palette_editor/palette_generator.cpp index c98dcbe03..822e57250 100644 --- a/cockatrice/src/interface/palette_editor/palette_generator.cpp +++ b/cockatrice/src/interface/palette_editor/palette_generator.cpp @@ -1,13 +1,6 @@ #include "palette_generator.h" -#include "../theme_config.h" - #include -#include -#include -#include -#include -#include // ════════════════════════════════════════════════════════════════════════════ // PaletteGenerator::fromAccent diff --git a/cockatrice/src/interface/palette_editor/palette_grid_widget.cpp b/cockatrice/src/interface/palette_editor/palette_grid_widget.cpp index de069bc80..97d28b731 100644 --- a/cockatrice/src/interface/palette_editor/palette_grid_widget.cpp +++ b/cockatrice/src/interface/palette_editor/palette_grid_widget.cpp @@ -1,25 +1,14 @@ #include "palette_grid_widget.h" -#include "../theme_config.h" #include "../theme_manager.h" -#include "color_button.h" #include -#include -#include -#include -#include #include #include #include #include -#include -#include #include #include -#include -#include -#include static QList allRoles() { diff --git a/cockatrice/src/interface/palette_editor/palette_grid_widget.h b/cockatrice/src/interface/palette_editor/palette_grid_widget.h index f1ff41ec2..77cbf1c62 100644 --- a/cockatrice/src/interface/palette_editor/palette_grid_widget.h +++ b/cockatrice/src/interface/palette_editor/palette_grid_widget.h @@ -2,19 +2,15 @@ #define COCKATRICE_PALETTE_GRID_WIDGET_H #include "../theme_config.h" +#include "color_button.h" -#include #include #include -#include +#include #include -#include class QLabel; class QScrollArea; -class ColorButton; -class QVBoxLayout; - // Scrollable grid of ColorButtons — one per (ColorGroup × ColorRole) cell. // Owns the load/read round-trip for PaletteConfig but has no file I/O itself. class PaletteGridWidget : public QWidget diff --git a/cockatrice/src/interface/palette_editor/quick_setup_panel.cpp b/cockatrice/src/interface/palette_editor/quick_setup_panel.cpp index 04f98dcc3..85098bde5 100644 --- a/cockatrice/src/interface/palette_editor/quick_setup_panel.cpp +++ b/cockatrice/src/interface/palette_editor/quick_setup_panel.cpp @@ -1,15 +1,9 @@ #include "quick_setup_panel.h" -#include "color_button.h" - #include -#include #include #include -#include #include -#include -#include QuickSetupPanel::QuickSetupPanel(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/palette_editor/quick_setup_panel.h b/cockatrice/src/interface/palette_editor/quick_setup_panel.h index ea402086f..c83e27cf2 100644 --- a/cockatrice/src/interface/palette_editor/quick_setup_panel.h +++ b/cockatrice/src/interface/palette_editor/quick_setup_panel.h @@ -1,14 +1,13 @@ #ifndef COCKATRICE_QUICK_SETUP_PANEL_H #define COCKATRICE_QUICK_SETUP_PANEL_H -#include +#include "color_button.h" + #include -#include class QHBoxLayout; class QLabel; class QSlider; -class ColorButton; /** * @class QuickSetupPanel diff --git a/cockatrice/src/interface/pixel_map_generator.cpp b/cockatrice/src/interface/pixel_map_generator.cpp index 2f5c4b6dd..b70dc576f 100644 --- a/cockatrice/src/interface/pixel_map_generator.cpp +++ b/cockatrice/src/interface/pixel_map_generator.cpp @@ -1,37 +1,15 @@ #include "pixel_map_generator.h" -#include "libcockatrice/network/server/remote/user_level.h" #include "theme_manager.h" #include -#include -#include -#include -#include -#include #include -#include -#include -#include #include -#include -#include #include -#include -#include -#include #include #include -#include -#include -#include -#include -#include #include -#include -#include #include -#include #define DEFAULT_COLOR_UNREGISTERED "#32c8ec"; #define DEFAULT_COLOR_REGISTERED "#5ed900"; diff --git a/cockatrice/src/interface/pixel_map_generator.h b/cockatrice/src/interface/pixel_map_generator.h index 7c01bb332..b6e822fd9 100644 --- a/cockatrice/src/interface/pixel_map_generator.h +++ b/cockatrice/src/interface/pixel_map_generator.h @@ -7,20 +7,14 @@ #ifndef PIXMAPGENERATOR_H #define PIXMAPGENERATOR_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" - #include #include #include #include #include -#include -#include #include #include -class QSize; - inline Q_LOGGING_CATEGORY(PixelMapGeneratorLog, "pixel_map_generator"); class PhasePixmapGenerator diff --git a/cockatrice/src/interface/theme_config.cpp b/cockatrice/src/interface/theme_config.cpp index 652e322c8..8293a82cf 100644 --- a/cockatrice/src/interface/theme_config.cpp +++ b/cockatrice/src/interface/theme_config.cpp @@ -1,17 +1,9 @@ #include "theme_config.h" -#include -#include #include #include -#include -#include -#include #include -#include #include -#include -#include bool ThemeConfig::isEmpty() const { diff --git a/cockatrice/src/interface/theme_config.h b/cockatrice/src/interface/theme_config.h index 8b91613f5..567aeccda 100644 --- a/cockatrice/src/interface/theme_config.h +++ b/cockatrice/src/interface/theme_config.h @@ -3,10 +3,9 @@ #include #include +#include #include -#include #include -#include // Application-specific color roles, layered on top of the fixed QPalette role // set. Stored in the same palette-.toml under an [AppColors] section diff --git a/cockatrice/src/interface/theme_manager.cpp b/cockatrice/src/interface/theme_manager.cpp index 9a96b3e45..08374c8fd 100644 --- a/cockatrice/src/interface/theme_manager.cpp +++ b/cockatrice/src/interface/theme_manager.cpp @@ -2,40 +2,25 @@ #include "../../client/settings/cache_settings.h" #include "pixel_map_generator.h" -#include "theme_config.h" #include -#include #include #include -#include #include #include -#include -#include -#include -#include -#include +#include #include -#include #include #include -#include #include -#include +#include #include -#include -#include #include #include #include -#include #include #include -#include #include -#include -#include #define SYSTEM_THEME_NAME "System" #define LEGACY_SYSTEM_THEME_NAME "Default" @@ -111,17 +96,12 @@ struct PaletteColorInfo static QString usableDefaultStyle(const QString &style) { - // Only the OS/default ("System") style is sanitized: the Windows 11 and - // Windows Vista native styles are broken (dragging cards across zones can + // The Windows 11 native style is broken: dragging cards across zones can // shrink the board to a tiny grey window that is unfixable without - // rejoining), so a "System" choice falls through to the built-in "windows" - // style (QWindowsStyle) instead. They remain selectable by hand, where the - // settings page warns about them. - if (style.compare("windows11", Qt::CaseInsensitive) == 0 || - style.compare("windowsvista", Qt::CaseInsensitive) == 0) { - return QStringLiteral("windows"); - } - return style; + // rejoining. It is never usable, so guard against it no matter how it was + // requested (OS default or an explicit "windows11" theme choice) and fall + // back to the Vista style. + return style.compare("windows11", Qt::CaseInsensitive) == 0 ? QStringLiteral("windowsvista") : style; } ThemeManager::ThemeManager(QObject *parent) : QObject(parent) @@ -501,13 +481,14 @@ void ThemeManager::applyStyleAndPalette(const QString &themeName, if (themeName == FUSION_THEME_NAME) { styleName = "Fusion"; } else { - // "System" resolves through the guard, which steers the broken - // Windows native styles to "windows". An explicitly chosen style - // name is honored as-is. styleName = usableDefaultStyle(defaultStyleName); } } + // The Windows 11 style is broken even when selected explicitly in a theme, + // so sanitize the resolved name here rather than trusting the theme config. + styleName = usableDefaultStyle(styleName); + QStyle *style = QStyleFactory::create(styleName); if (!style) { style = QStyleFactory::create(usableDefaultStyle(defaultStyleName)); diff --git a/cockatrice/src/interface/theme_manager.h b/cockatrice/src/interface/theme_manager.h index c1ab65685..4c9d070dc 100644 --- a/cockatrice/src/interface/theme_manager.h +++ b/cockatrice/src/interface/theme_manager.h @@ -10,21 +10,21 @@ #include "theme_config.h" #include -#include +#include #include #include #include -#include +#include #include -#include #include -#include inline Q_LOGGING_CATEGORY(ThemeManagerLog, "theme_manager"); typedef QMap QStringMap; typedef QMap QBrushMap; +class QApplication; + class ThemeManager : public QObject { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.cpp b/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.cpp index ef7fb0e0e..2199faf30 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.cpp @@ -1,24 +1,15 @@ #include "color_identity_widget.h" #include "../../../../client/settings/cache_settings.h" -#include "libcockatrice/card/card_info.h" #include "mana_symbol_widget.h" -#include #include -#include -#include -#include +#include #include -#include -#include #include -#include #include -#include #include #include -#include ColorIdentityWidget::ColorIdentityWidget(QWidget *parent, const QString &_colorIdentity) : QWidget(parent), colorIdentity(_colorIdentity) diff --git a/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.h b/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.h index 3caf1a964..315ac07d6 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.h +++ b/cockatrice/src/interface/widgets/cards/additional_info/color_identity_widget.h @@ -7,13 +7,9 @@ #ifndef COLOR_IDENTITY_WIDGET_H #define COLOR_IDENTITY_WIDGET_H -#include -#include +#include #include #include -#include - -class QHBoxLayout; class ColorIdentityWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp index 13c185a79..62b01511e 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp +++ b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp @@ -1,11 +1,6 @@ #include "deck_color_identity.h" -#include "libcockatrice/card/card_info.h" - -#include -#include #include -#include #include #include #include diff --git a/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.cpp b/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.cpp index 7da97f88c..fcbb69c2e 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.cpp @@ -1,16 +1,12 @@ #include "mana_cost_widget.h" -#include "libcockatrice/card/card_info.h" #include "mana_symbol_widget.h" #include -#include -#include -#include -#include +#include #include #include -#include +#include ManaCostWidget::ManaCostWidget(QWidget *parent, CardInfoPtr _card) : QWidget(parent), card(_card) { diff --git a/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.h b/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.h index a181f1148..8bd2e9bc0 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.h +++ b/cockatrice/src/interface/widgets/cards/additional_info/mana_cost_widget.h @@ -7,13 +7,9 @@ #ifndef MANA_COST_WIDGET_H #define MANA_COST_WIDGET_H -#include -#include +#include #include #include -#include - -class QHBoxLayout; class ManaCostWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.cpp b/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.cpp index 80dc11852..18011909f 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.cpp @@ -3,16 +3,8 @@ #include "../../../../client/settings/cache_settings.h" #include "../../../pixel_map_generator.h" -#include -#include #include -#include -#include -#include #include -#include - -class QWidget; ManaSymbolWidget::ManaSymbolWidget(QWidget *parent, QString _symbol, bool _isActive, bool _mayBeToggled) : QLabel(parent), symbol(std::move(_symbol)), isActive(_isActive), mayBeToggled(_mayBeToggled) diff --git a/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.h b/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.h index 8dad15785..705873dff 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.h +++ b/cockatrice/src/interface/widgets/cards/additional_info/mana_symbol_widget.h @@ -7,13 +7,8 @@ #ifndef MANA_SYMBOL_WIDGET_H #define MANA_SYMBOL_WIDGET_H -#include +#include #include -#include -#include - -class QGraphicsOpacityEffect; -class QWidget; class ManaSymbolWidget : public QLabel { diff --git a/cockatrice/src/interface/widgets/cards/art_crop_attribution.cpp b/cockatrice/src/interface/widgets/cards/art_crop_attribution.cpp index c4b347047..8ab18ddd9 100644 --- a/cockatrice/src/interface/widgets/cards/art_crop_attribution.cpp +++ b/cockatrice/src/interface/widgets/cards/art_crop_attribution.cpp @@ -1,17 +1,8 @@ #include "art_crop_attribution.h" -#include "libcockatrice/card/printing/printing_info.h" - -#include -#include #include #include #include -#include -#include -#include -#include -#include #include QString buildArtAttribution(const ExactCard &card) diff --git a/cockatrice/src/interface/widgets/cards/art_crop_attribution.h b/cockatrice/src/interface/widgets/cards/art_crop_attribution.h index b4acbef26..0b3fb3d56 100644 --- a/cockatrice/src/interface/widgets/cards/art_crop_attribution.h +++ b/cockatrice/src/interface/widgets/cards/art_crop_attribution.h @@ -1,8 +1,7 @@ #ifndef COCKATRICE_ART_CROP_ATTRIBUTION_H #define COCKATRICE_ART_CROP_ATTRIBUTION_H -#include -#include +#include class ExactCard; class QPainter; diff --git a/cockatrice/src/interface/widgets/cards/card_art_utils.cpp b/cockatrice/src/interface/widgets/cards/card_art_utils.cpp index ebf79282e..b26b73593 100644 --- a/cockatrice/src/interface/widgets/cards/card_art_utils.cpp +++ b/cockatrice/src/interface/widgets/cards/card_art_utils.cpp @@ -1,10 +1,7 @@ #include "card_art_utils.h" -#include "libcockatrice/card/card_info.h" - #include #include -#include namespace CardArtUtils { diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp index b15ac5d23..8df3700c3 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp @@ -1,33 +1,13 @@ #include "card_group_display_widget.h" #include "../../../../client/settings/cache_settings.h" -#include "../../general/display/banner_widget.h" -#include "../card_info_picture_widget.h" #include "../card_info_picture_with_text_overlay_widget.h" -#include "../card_size_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include #include #include #include -#include -#include CardGroupDisplayWidget::CardGroupDisplayWidget(QWidget *parent, DeckListModel *_deckListModel, diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.h b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.h index f4a555766..e5f7c7ee2 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.h @@ -7,24 +7,15 @@ #ifndef CARD_GROUP_DISPLAY_WIDGET_H #define CARD_GROUP_DISPLAY_WIDGET_H -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include "../../general/display/banner_widget.h" +#include "../card_info_picture_with_text_overlay_widget.h" +#include "../card_size_widget.h" -class BannerWidget; -class CardSizeWidget; -class DeckListModel; -class ExactCard; -class QItemSelection; -class QItemSelectionModel; -class QModelIndex; +#include +#include +#include +#include +#include class CardGroupDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.cpp index 3256e0ca8..a192d13d8 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.cpp @@ -1,20 +1,10 @@ #include "flat_card_group_display_widget.h" -#include "../../general/display/banner_widget.h" -#include "../../general/layout_containers/flow_widget.h" - -#include -#include -#include -#include -#include +#include +#include #include -#include #include -class CardSizeWidget; -class QItemSelectionModel; - FlatCardGroupDisplayWidget::FlatCardGroupDisplayWidget(QWidget *parent, DeckListModel *_deckListModel, QItemSelectionModel *_selectionModel, diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.h b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.h index d13dcddb5..0772c1ab4 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/flat_card_group_display_widget.h @@ -10,16 +10,6 @@ #include "../../general/layout_containers/flow_widget.h" #include "card_group_display_widget.h" -#include -#include -#include -#include - -class CardSizeWidget; -class DeckListModel; -class QItemSelectionModel; -class QWidget; - class FlatCardGroupDisplayWidget : public CardGroupDisplayWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.cpp index 6e923cdbe..dca8ee2a5 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.cpp @@ -1,20 +1,8 @@ #include "overlapped_card_group_display_widget.h" -#include "../../general/display/banner_widget.h" -#include "../../general/layout_containers/overlap_widget.h" -#include "../card_size_widget.h" - -#include -#include -#include #include -#include -#include -#include +#include #include -#include - -class QItemSelectionModel; OverlappedCardGroupDisplayWidget::OverlappedCardGroupDisplayWidget(QWidget *parent, DeckListModel *_deckListModel, diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.h b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.h index 76be3069f..5b4b80d6b 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/overlapped_card_group_display_widget.h @@ -10,16 +10,6 @@ #include "../../general/layout_containers/overlap_widget.h" #include "card_group_display_widget.h" -#include -#include -#include -#include - -class CardSizeWidget; -class DeckListModel; -class QItemSelectionModel; -class QWidget; - class OverlappedCardGroupDisplayWidget : public CardGroupDisplayWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp index 7ec2ee38e..577dafe0a 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp @@ -1,25 +1,14 @@ #include "card_info_display_widget.h" -#include "../../../game_graphics/board/abstract_card_item.h" -#include "../../../game_graphics/card_dimensions.h" +#include "../../../game_graphics/board/card_item.h" #include "card_info_picture_widget.h" #include "card_info_text_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include -#include +#include #include -#include -#include #include #include -class QWidget; - CardInfoDisplayWidget::CardInfoDisplayWidget(const CardRef &cardRef, QWidget *parent, Qt::WindowFlags flags) : QFrame(parent, flags), aspectRatio(CardDimensions::HEIGHT_F / CardDimensions::WIDTH_F) { diff --git a/cockatrice/src/interface/widgets/cards/card_info_display_widget.h b/cockatrice/src/interface/widgets/cards/card_info_display_widget.h index 65965a63e..f8f33f3d4 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_display_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_display_widget.h @@ -7,17 +7,15 @@ #ifndef CARDINFOWIDGET_H #define CARDINFOWIDGET_H +#include #include -#include +#include #include -#include -#include +#include class CardInfoPictureWidget; class CardInfoTextWidget; class AbstractCardItem; -class QWidget; -struct CardRef; class CardInfoDisplayWidget : public QFrame { diff --git a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp index 0f66eb209..fcccf445a 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp @@ -1,27 +1,16 @@ #include "card_info_frame_widget.h" #include "../../../client/settings/cache_settings.h" -#include "../../../game_graphics/board/abstract_card_item.h" +#include "../../../game_graphics/board/card_item.h" +#include "card_info_display_widget.h" #include "card_info_picture_widget.h" #include "card_info_text_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include -#include -#include #include #include -#include -#include #include #include #include -#include -#include - -struct CardRef; CardInfoFrameWidget::CardInfoFrameWidget(QWidget *parent) : QTabWidget(parent), viewTransformationButton(nullptr), cardTextOnly(false) diff --git a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.h b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.h index 1f8143785..e766fac7a 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.h @@ -7,19 +7,16 @@ #ifndef CARDFRAME_H #define CARDFRAME_H -#include +#include #include #include -#include +#include class AbstractCardItem; class CardInfoPictureWidget; class CardInfoTextWidget; class QVBoxLayout; class QSplitter; -class QPushButton; -class QWidget; -struct CardRef; class CardInfoFrameWidget : public QTabWidget { diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.cpp index 5ec4c8a25..e5b0c4872 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.cpp @@ -1,12 +1,6 @@ #include "card_info_picture_art_crop_widget.h" #include "../../../interface/card_picture_loader/card_picture_loader.h" -#include "libcockatrice/card/printing/exact_card.h" - -#include -#include - -class QWidget; CardInfoPictureArtCropWidget::CardInfoPictureArtCropWidget(QWidget *parent) : CardInfoPictureWidget(parent, false, false) diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.h b/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.h index 540b0c2fa..ce22a1a44 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_art_crop_widget.h @@ -9,11 +9,6 @@ #include "card_info_picture_widget.h" -#include -#include - -class QWidget; - class CardInfoPictureArtCropWidget : public CardInfoPictureWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.cpp index ba10d4a0f..40bef3df3 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.cpp @@ -2,17 +2,10 @@ #include "../../../client/settings/cache_settings.h" #include "../../../interface/card_picture_loader/card_picture_loader.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" #include -#include -#include -#include #include -#include #include -#include /** * @brief Constructs a CardPictureEnlargedWidget. diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.h b/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.h index f5ead2a18..a158ac6cf 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_enlarged_widget.h @@ -8,12 +8,8 @@ #ifndef CARD_PICTURE_ENLARGED_WIDGET_H #define CARD_PICTURE_ENLARGED_WIDGET_H -#include #include #include -#include - -class QSize; class CardInfoPictureEnlargedWidget final : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp index 3c1e1b77f..2dd21e78a 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp @@ -1,47 +1,21 @@ #include "card_info_picture_widget.h" #include "../../../client/settings/cache_settings.h" +#include "../../../game_graphics/board/card_item.h" #include "../../../interface/card_picture_loader/card_picture_loader.h" #include "../../../interface/widgets/tabs/tab_supervisor.h" #include "../../window_main.h" -#include "../tabs/abstract_tab_deck_editor.h" #include "card_art_utils.h" -#include "card_info_picture_enlarged_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include #include -#include -#include -#include #include -#include #include -#include -#include #include #include #include -#include -#include +#include static constexpr qreal MTG_CARD_ASPECT_RATIO = 1.396; // static constexpr qreal YUGIOH_CARD_ASPECT_RATIO = 1.457; diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.h b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.h index 8d2d63736..4fe84ed0b 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.h @@ -7,20 +7,15 @@ #ifndef CARD_INFO_PICTURE_H #define CARD_INFO_PICTURE_H -#include -#include -#include -#include +#include "card_info_picture_enlarged_widget.h" + +#include #include #include -#include - -class CardInfoPictureEnlargedWidget; -class QPropertyAnimation; -class QTimer; inline Q_LOGGING_CATEGORY(CardInfoPictureWidgetLog, "card_info_picture_widget"); +class AbstractCardItem; class QMenu; class CardInfoPictureWidget : public QWidget diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.cpp index 04fe9ab69..000a88b2f 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.cpp @@ -1,24 +1,8 @@ #include "card_info_picture_with_text_overlay_widget.h" -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include - -class QWidget; /** * @brief Constructs a CardPictureWithTextOverlay widget. diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.h b/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.h index 6c547dc13..ba978498d 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_with_text_overlay_widget.h @@ -11,14 +11,8 @@ #include "card_info_picture_widget.h" #include -#include +#include #include -#include -#include - -class QPainter; -class QRect; -class QWidget; class CardInfoPictureWithTextOverlayWidget : public CardInfoPictureWidget { diff --git a/cockatrice/src/interface/widgets/cards/card_info_text_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_text_widget.cpp index fa6cde311..e98c3c02a 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_text_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_text_widget.cpp @@ -1,26 +1,15 @@ #include "card_info_text_widget.h" -#include "../../../client/settings/cache_settings.h" +#include "../../../game_graphics/board/card_item.h" #include "../../card_localization.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/settings/cards_display_settings.h" #include #include -#include #include #include -#include -#include -#include #include -#include #include #include -#include -#include CardInfoTextWidget::CardInfoTextWidget(QWidget *parent) : QFrame(parent) { diff --git a/cockatrice/src/interface/widgets/cards/card_info_text_widget.h b/cockatrice/src/interface/widgets/cards/card_info_text_widget.h index 8223093fe..683be5ab5 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_text_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_info_text_widget.h @@ -10,13 +10,10 @@ #include "libcockatrice/card/printing/exact_card.h" #include -#include -#include - +#include class QLabel; class QScrollArea; class QTextEdit; -class QWidget; class CardInfoTextWidget : public QFrame { diff --git a/cockatrice/src/interface/widgets/cards/card_size_widget.cpp b/cockatrice/src/interface/widgets/cards/card_size_widget.cpp index ab1840591..9cdfd4bce 100644 --- a/cockatrice/src/interface/widgets/cards/card_size_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_size_widget.cpp @@ -1,19 +1,10 @@ #include "card_size_widget.h" -#include "../general/layout_containers/flow_widget.h" +#include "../printing_selector/printing_selector.h" +#include "../visual_deck_storage/visual_deck_storage_widget.h" -#include -#include -#include -#include -#include -#include #include -#include -#include #include -#include -#include /** * @class CardSizeWidget diff --git a/cockatrice/src/interface/widgets/cards/card_size_widget.h b/cockatrice/src/interface/widgets/cards/card_size_widget.h index 7de97a5e9..46883e792 100644 --- a/cockatrice/src/interface/widgets/cards/card_size_widget.h +++ b/cockatrice/src/interface/widgets/cards/card_size_widget.h @@ -9,15 +9,15 @@ #ifndef CARD_SIZE_WIDGET_H #define CARD_SIZE_WIDGET_H +#include "../general/layout_containers/flow_widget.h" + +#include +#include +#include #include #include -#include class QWheelEvent; -class FlowWidget; -class QHBoxLayout; -class QLabel; -class QSlider; class CardSizeWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp index 911e35285..a4b4eaf54 100644 --- a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp @@ -1,38 +1,14 @@ #include "deck_card_zone_display_widget.h" #include "../../../client/settings/cache_settings.h" -#include "../general/display/banner_widget.h" -#include "../visual_deck_editor/visual_deck_editor_widget.h" -#include "card_group_display_widgets/card_group_display_widget.h" #include "card_group_display_widgets/flat_card_group_display_widget.h" #include "card_group_display_widgets/overlapped_card_group_display_widget.h" -#include "libcockatrice/card/card_info.h" #include "libcockatrice/card/database/card_database_manager.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" #include "libcockatrice/settings/cards_display_settings.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include #include -#include - -class CardSizeWidget; -class QMouseEvent; DeckCardZoneDisplayWidget::DeckCardZoneDisplayWidget(QWidget *parent, DeckListModel *_deckListModel, diff --git a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.h b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.h index b7dc3ed3e..f25108834 100644 --- a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.h +++ b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.h @@ -7,27 +7,16 @@ #ifndef DECK_CARD_ZONE_DISPLAY_WIDGET_H #define DECK_CARD_ZONE_DISPLAY_WIDGET_H +#include "../general/display/banner_widget.h" +#include "../general/layout_containers/overlap_widget.h" #include "../visual_deck_editor/visual_deck_editor_widget.h" +#include "card_group_display_widgets/card_group_display_widget.h" +#include "card_info_picture_with_text_overlay_widget.h" +#include "card_size_widget.h" -#include -#include -#include -#include -#include -#include +#include #include -#include - -class BannerWidget; -class CardGroupDisplayWidget; -class CardSizeWidget; -class DeckListModel; -class ExactCard; -class OverlapWidget; -class QItemSelection; -class QItemSelectionModel; -class QModelIndex; -class QVBoxLayout; +#include class DeckCardZoneDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.cpp b/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.cpp index 186c55755..147143e7f 100644 --- a/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.cpp @@ -1,15 +1,15 @@ #include "deck_preview_card_picture_widget.h" #include "../../../client/settings/cache_settings.h" -#include "card_info_picture_widget.h" #include +#include +#include #include -#include +#include +#include #include -class QWidget; - /** * @brief Constructs a CardPictureWithTextOverlay widget. * @param parent The parent widget. diff --git a/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.h b/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.h index 9643c7364..7571bc256 100644 --- a/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.h +++ b/cockatrice/src/interface/widgets/cards/deck_preview_card_picture_widget.h @@ -11,12 +11,9 @@ #include "card_info_picture_with_text_overlay_widget.h" #include -#include -#include -#include - -class QTimer; -class QWidget; +#include +#include +#include class DeckPreviewCardPictureWidget final : public CardInfoPictureWithTextOverlayWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.cpp index 730043d95..483fc71b0 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.cpp @@ -1,16 +1,9 @@ #include "abstract_analytics_panel_widget.h" #include "../../pixel_map_generator.h" -#include "../general/display/banner_widget.h" #include "deck_list_statistics_analyzer.h" -#include -#include #include -#include -#include -#include -#include AbstractAnalyticsPanelWidget::AbstractAnalyticsPanelWidget(QWidget *parent, DeckListStatisticsAnalyzer *analyzer) : QWidget(parent), analyzer(analyzer) diff --git a/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.h b/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.h index c1afb78d0..23374a9e1 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/abstract_analytics_panel_widget.h @@ -3,16 +3,12 @@ #include "../general/display/banner_widget.h" +#include #include -#include +#include #include -#include class DeckListStatisticsAnalyzer; -class QDialog; -class QHBoxLayout; -class QPushButton; -class QVBoxLayout; class AbstractAnalyticsPanelWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.cpp index f1ed5767c..c83e6d982 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.cpp @@ -3,11 +3,8 @@ #include "analytics_panel_widget_factory.h" #include -#include #include -class QWidget; - AddAnalyticsPanelDialog::AddAnalyticsPanelDialog(QWidget *parent) : QDialog(parent) { setWindowTitle(tr("Add Analytics Panel")); diff --git a/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.h index f70c1d8f5..aa44734c2 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/add_analytics_panel_dialog.h @@ -2,15 +2,12 @@ #ifndef COCKATRICE_ADD_ANALYTICS_PANEL_DIALOG_H #define COCKATRICE_ADD_ANALYTICS_PANEL_DIALOG_H +#include "analytics_panel_widget_factory.h" + #include #include -#include -#include -#include - -class QDialogButtonBox; -class QVBoxLayout; -class QWidget; +#include +#include class AddAnalyticsPanelDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.cpp b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.cpp index 79dda527d..e807e9d47 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.cpp @@ -2,8 +2,6 @@ #include "abstract_analytics_panel_widget.h" -#include - AnalyticsPanelWidgetFactory &AnalyticsPanelWidgetFactory::instance() { static AnalyticsPanelWidgetFactory f; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.h b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.h index 598498980..6c5856d70 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_factory.h @@ -1,9 +1,9 @@ #ifndef COCKATRICE_DECK_ANALYTICS_WIDGET_FACTORY_H #define COCKATRICE_DECK_ANALYTICS_WIDGET_FACTORY_H -#include #include #include +#include #include #include diff --git a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_registrar.h b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_registrar.h index 99a6daf5d..70d6df94f 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_registrar.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analytics_panel_widget_registrar.h @@ -3,8 +3,6 @@ #include "analytics_panel_widget_factory.h" -#include - class AnalyticsPanelWidgetRegistrar { public: diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config.cpp index 1c61116e3..51129a4b4 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config.cpp @@ -1,8 +1,5 @@ #include "draw_probability_config.h" -#include -#include - QJsonObject DrawProbabilityConfig::toJson() const { QJsonObject o; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.cpp index 28fd4c841..71f88c0fc 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.cpp @@ -5,10 +5,6 @@ #include #include #include -#include -#include - -class QWidget; DrawProbabilityConfigDialog::DrawProbabilityConfigDialog(QWidget *parent) : QDialog(parent) { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.h index 3553db75d..44b1f0eec 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_config_dialog.h @@ -3,13 +3,11 @@ #include "draw_probability_config.h" #include -#include +#include class QComboBox; class QSpinBox; class QLabel; -class QFormLayout; -class QWidget; class DrawProbabilityConfigDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp index 90d9f58ef..0107294c7 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp @@ -1,40 +1,21 @@ #include "draw_probability_widget.h" -#include "../../../general/display/banner_widget.h" -#include "../../../general/layout_containers/flow_widget.h" -#include "../../abstract_analytics_panel_widget.h" -#include "../../deck_list_statistics_analyzer.h" -#include "deck_list_model.h" #include "draw_probability_config_dialog.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include -#include #include #include +#include +#include +#include #include -#include #include -#include #include -#include -#include -#include #include -#include -#include -#include #include -#include -#include -#include +#include #include #include #include -#include - -class QWidget; DrawProbabilityWidget::DrawProbabilityWidget(QWidget *parent, DeckListStatisticsAnalyzer *analyzer) : AbstractAnalyticsPanelWidget(parent, analyzer) diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.h index 7c7bdb50a..9f7b971b1 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.h @@ -1,19 +1,16 @@ #ifndef COCKATRICE_DRAW_PROBABILITY_WIDGET_H #define COCKATRICE_DRAW_PROBABILITY_WIDGET_H +#include "../../../../layouts/flow_layout.h" +#include "../../../general/layout_containers/flow_widget.h" #include "../../abstract_analytics_panel_widget.h" +#include "../../deck_list_statistics_analyzer.h" #include "draw_probability_config.h" -#include - -class DeckListStatisticsAnalyzer; -class FlowWidget; -class QComboBox; -class QLabel; -class QLineEdit; -class QSpinBox; -class QTableWidget; -class QWidget; +#include +#include +#include +#include class DrawProbabilityWidget : public AbstractAnalyticsPanelWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.cpp index 41ebdec1e..2f9f60752 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.cpp @@ -1,9 +1,5 @@ #include "mana_base_config.h" -#include -#include -#include - QJsonObject ManaBaseConfig::toJson() const { QJsonObject jsonObject; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.h index 5fd45af62..d01f88b8b 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config.h @@ -2,9 +2,8 @@ #ifndef COCKATRICE_MANA_BASE_CONFIG_H #define COCKATRICE_MANA_BASE_CONFIG_H +#include #include -#include -#include #include struct ManaBaseConfig diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.cpp index 32b54c485..83e35d57d 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.cpp @@ -1,19 +1,6 @@ #include "mana_base_config_dialog.h" -#include "../../deck_list_statistics_analyzer.h" - -#include -#include -#include -#include -#include -#include -#include #include -#include -#include - -class QWidget; ManaBaseConfigDialog::ManaBaseConfigDialog(DeckListStatisticsAnalyzer *analyzer, ManaBaseConfig initial, diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.h index b0ae77076..a816f154f 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_config_dialog.h @@ -2,20 +2,18 @@ #ifndef COCKATRICE_MANA_BASE_ADD_DIALOG_H #define COCKATRICE_MANA_BASE_ADD_DIALOG_H +#include "../../deck_list_statistics_analyzer.h" #include "mana_base_config.h" +#include +#include #include -#include -#include -#include - -class DeckListStatisticsAnalyzer; -class QComboBox; -class QDialogButtonBox; -class QLabel; -class QListWidget; -class QVBoxLayout; -class QWidget; +#include +#include +#include +#include +#include +#include class ManaBaseConfigDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.cpp index fc7914b94..0093c360b 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.cpp @@ -3,27 +3,12 @@ #include "../../../general/display/charts/bars/bar_widget.h" #include "../../../general/display/charts/bars/color_bar.h" #include "../../../general/display/charts/pies/color_pie.h" -#include "../../abstract_analytics_panel_widget.h" #include "../../analytics_panel_widget_registrar.h" -#include "../../deck_list_statistics_analyzer.h" #include "mana_base_config_dialog.h" -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include namespace { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.h index 7ec5ecefe..85b2a13b3 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_base/mana_base_widget.h @@ -7,17 +7,16 @@ #ifndef MANA_BASE_WIDGET_H #define MANA_BASE_WIDGET_H +#include "../../../general/display/banner_widget.h" #include "../../abstract_analytics_panel_widget.h" +#include "../../deck_list_statistics_analyzer.h" #include "mana_base_config.h" -#include -#include -#include -#include - -class DeckListStatisticsAnalyzer; -class QHBoxLayout; -class QWidget; +#include +#include +#include +#include +#include class ManaBaseWidget : public AbstractAnalyticsPanelWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.cpp index 7e15058a4..a0ccedc74 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.cpp @@ -1,21 +1,9 @@ #include "mana_curve_category_widget.h" -#include "../../../general/display/charts/bars/bar_chart_widget.h" #include "libcockatrice/utility/color.h" #include "libcockatrice/utility/qt_utils.h" #include "mana_curve_config.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include "mana_curve_total_widget.h" constexpr int MIN_ROW_HEIGHT = 100; // Minimum readable height per row diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.h index 1794d5cab..c6aa6f1f0 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_category_widget.h @@ -1,14 +1,12 @@ #ifndef COCKATRICE_MANA_CURVE_CATEGORY_WIDGET_H #define COCKATRICE_MANA_CURVE_CATEGORY_WIDGET_H -#include -#include -#include +#include "../../../general/display/charts/bars/bar_chart_widget.h" +#include "mana_curve_config.h" -class QString; -class QVBoxLayout; -struct ManaCurveConfig; -template class QHash; +#include +#include +#include class ManaCurveCategoryWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.cpp index 190642ad9..0dfef1b66 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.cpp @@ -1,9 +1,5 @@ #include "mana_curve_config.h" -#include -#include -#include - QJsonObject ManaCurveConfig::toJson() const { QJsonObject jsonObject; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.h index 28224db03..55222dd98 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config.h @@ -2,9 +2,8 @@ #ifndef COCKATRICE_MANA_CURVE_CONFIG_H #define COCKATRICE_MANA_CURVE_CONFIG_H +#include #include -#include -#include #include struct ManaCurveConfig diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.cpp index c5498ff3e..9e9ae98a6 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.cpp @@ -1,22 +1,12 @@ #include "mana_curve_config_dialog.h" -#include "../../deck_list_statistics_analyzer.h" - -#include #include #include #include -#include #include -#include #include -#include -#include -#include #include -class QWidget; - ManaCurveConfigDialog::ManaCurveConfigDialog(DeckListStatisticsAnalyzer *analyzer, QWidget *parent) : QDialog(parent), analyzer(analyzer) { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.h index 47ce1b8c2..17e6776e5 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_config_dialog.h @@ -1,18 +1,16 @@ #ifndef COCKATRICE_MANA_CURVE_ADD_DIALOG_H #define COCKATRICE_MANA_CURVE_ADD_DIALOG_H +#include "../../deck_list_statistics_analyzer.h" #include "mana_curve_config.h" #include -#include +#include +#include class QListWidget; class QCheckBox; class QComboBox; -class DeckListStatisticsAnalyzer; -class QDialogButtonBox; -class QLabel; -class QWidget; class ManaCurveConfigDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.cpp index f1d9ea8c7..c04767015 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.cpp @@ -2,18 +2,10 @@ #include "../../../general/display/charts/bars/bar_chart_widget.h" #include "libcockatrice/utility/color.h" +#include "libcockatrice/utility/qt_utils.h" #include "mana_curve_config.h" #include -#include -#include -#include -#include -#include -#include -#include -#include -#include ManaCurveTotalWidget::ManaCurveTotalWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.h index 0eaecec96..203f75345 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_total_widget.h @@ -1,15 +1,11 @@ #ifndef COCKATRICE_MANA_CURVE_TOTAL_WIDGET_H #define COCKATRICE_MANA_CURVE_TOTAL_WIDGET_H -#include -#include -#include -#include +#include "../../../general/display/charts/bars/bar_chart_widget.h" +#include "mana_curve_config.h" -class BarChartWidget; -class QHBoxLayout; -class QLabel; -struct ManaCurveConfig; -template class QMap; +#include +#include +#include class ManaCurveTotalWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.cpp index 6d93bde54..b182bf954 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.cpp @@ -1,23 +1,19 @@ #include "mana_curve_widget.h" -#include "../../abstract_analytics_panel_widget.h" +#include "../../../general/display/charts/bars/bar_chart_background_widget.h" +#include "../../../general/display/charts/bars/bar_chart_widget.h" +#include "../../../general/display/charts/bars/segmented_bar_widget.h" #include "../../analytics_panel_widget_registrar.h" #include "../../deck_list_statistics_analyzer.h" -#include "mana_curve_category_widget.h" +#include "libcockatrice/utility/color.h" +#include "libcockatrice/utility/qt_utils.h" #include "mana_curve_config_dialog.h" -#include "mana_curve_total_widget.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QWidget; +#include +#include +#include +#include +#include namespace { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.h index 14c445717..d3e56d44c 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_curve/mana_curve_widget.h @@ -8,17 +8,14 @@ #define MANA_CURVE_WIDGET_H #include "../../abstract_analytics_panel_widget.h" +#include "mana_curve_category_widget.h" #include "mana_curve_config.h" +#include "mana_curve_total_widget.h" -#include -#include -#include -#include +#include +class SegmentedBarWidget; class DeckListStatisticsAnalyzer; -class ManaCurveCategoryWidget; -class ManaCurveTotalWidget; -class QWidget; class ManaCurveWidget : public AbstractAnalyticsPanelWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.cpp index 7a6f0b51a..ee57cb1e2 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.cpp @@ -1,9 +1,5 @@ #include "mana_devotion_config.h" -#include -#include -#include - QJsonObject ManaDevotionConfig::toJson() const { QJsonObject jsonObject; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.h index 480b2151c..08be146e5 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config.h @@ -1,9 +1,8 @@ #ifndef COCKATRICE_MANA_DEVOTION_CONFIG_H #define COCKATRICE_MANA_DEVOTION_CONFIG_H +#include #include -#include -#include #include struct ManaDevotionConfig diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.cpp index 0d70fc24d..b01c33ba5 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.cpp @@ -1,19 +1,5 @@ #include "mana_devotion_config_dialog.h" -#include "../../deck_list_statistics_analyzer.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QWidget; - ManaDevotionConfigDialog::ManaDevotionConfigDialog(DeckListStatisticsAnalyzer *analyzer, ManaDevotionConfig initial, QWidget *parent) diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.h index 9c37ec5ad..fd804e2af 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_config_dialog.h @@ -2,20 +2,16 @@ #ifndef COCKATRICE_MANA_DEVOTION_ADD_DIALOG_H #define COCKATRICE_MANA_DEVOTION_ADD_DIALOG_H +#include "../../deck_list_statistics_analyzer.h" #include "mana_devotion_config.h" +#include +#include #include -#include -#include -#include - -class DeckListStatisticsAnalyzer; -class QComboBox; -class QDialogButtonBox; -class QLabel; -class QListWidget; -class QVBoxLayout; -class QWidget; +#include +#include +#include +#include class ManaDevotionConfigDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.cpp index 7e1f0c211..709577ff2 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.cpp @@ -3,26 +3,12 @@ #include "../../../general/display/charts/bars/bar_widget.h" #include "../../../general/display/charts/bars/color_bar.h" #include "../../../general/display/charts/pies/color_pie.h" -#include "../../abstract_analytics_panel_widget.h" #include "../../analytics_panel_widget_registrar.h" #include "../../deck_list_statistics_analyzer.h" #include "mana_devotion_config_dialog.h" -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include namespace { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.h index 2b0182c1e..af0215305 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_devotion/mana_devotion_widget.h @@ -6,17 +6,11 @@ #ifndef MANA_DEVOTION_WIDGET_H #define MANA_DEVOTION_WIDGET_H +#include "../../../general/display/banner_widget.h" #include "../../abstract_analytics_panel_widget.h" #include "mana_devotion_config.h" -#include -#include -#include -#include - -class DeckListStatisticsAnalyzer; -class QHBoxLayout; -class QWidget; +#include class ManaDevotionWidget : public AbstractAnalyticsPanelWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.cpp index ab321661e..01af9329c 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.cpp @@ -1,9 +1,5 @@ #include "mana_distribution_config.h" -#include -#include -#include - QJsonObject ManaDistributionConfig::toJson() const { QJsonObject o; diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.h index 012b0f4a7..d1aa0f48e 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config.h @@ -1,8 +1,8 @@ #ifndef COCKATRICE_MANA_DISTRIBUTION_CONFIG_H #define COCKATRICE_MANA_DISTRIBUTION_CONFIG_H +#include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.cpp index 24b71bae0..325c70028 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.cpp @@ -1,19 +1,12 @@ #include "mana_distribution_config_dialog.h" -#include #include #include #include #include -#include #include -#include -#include -#include #include -class QWidget; - static const QStringList kColors = {"W", "U", "B", "R", "G", "C"}; ManaDistributionConfigDialog::ManaDistributionConfigDialog(DeckListStatisticsAnalyzer *analyzer, QWidget *parent) diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.h index 3d21b6bee..57c88e29d 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_config_dialog.h @@ -4,15 +4,14 @@ #include "mana_distribution_config.h" #include -#include +#include +#include +#include class QComboBox; class QListWidget; class QCheckBox; class DeckListStatisticsAnalyzer; -class QDialogButtonBox; -class QLabel; -class QWidget; class ManaDistributionConfigDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.cpp index 4faa105e6..8a5e14858 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.cpp @@ -2,10 +2,7 @@ #include "../../../cards/additional_info/mana_symbol_widget.h" -#include -#include #include -#include ManaDistributionSingleDisplayWidget::ManaDistributionSingleDisplayWidget(const QString &colorSymbol, QWidget *parent) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.h index 2fd3efb2d..e33d0cec1 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_single_display_widget.h @@ -1,12 +1,10 @@ #ifndef COCKATRICE_MANA_DISTRIBUTION_SINGLE_DISPLAY_WIDGET_H #define COCKATRICE_MANA_DISTRIBUTION_SINGLE_DISPLAY_WIDGET_H -#include +#include +#include +#include #include -#include - -class QLabel; -class QProgressBar; class ManaDistributionSingleDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.cpp index 5543c64df..8eaea1426 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.cpp @@ -1,21 +1,12 @@ #include "mana_distribution_widget.h" -#include "../../../general/display/charts/bars/color_bar.h" -#include "../../../general/display/charts/pies/color_pie.h" -#include "../../abstract_analytics_panel_widget.h" #include "../../analytics_panel_widget_registrar.h" -#include "../../deck_list_statistics_analyzer.h" #include "mana_distribution_config_dialog.h" -#include "mana_distribution_single_display_widget.h" -#include -#include -#include -#include -#include -#include +#include +#include +#include #include -#include namespace { diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.h b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.h index 6230e0201..2d834f3af 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/mana_distribution/mana_distribution_widget.h @@ -1,21 +1,17 @@ #ifndef COCKATRICE_MANA_DISTRIBUTION_WIDGET_H #define COCKATRICE_MANA_DISTRIBUTION_WIDGET_H +#include "../../../general/display/charts/bars/color_bar.h" +#include "../../../general/display/charts/pies/color_pie.h" #include "../../abstract_analytics_panel_widget.h" +#include "../../deck_list_statistics_analyzer.h" #include "mana_distribution_config.h" +#include "mana_distribution_single_display_widget.h" -#include +#include #include -#include -#include - -class ColorBar; -class ColorPie; -class DeckListStatisticsAnalyzer; -class ManaDistributionSingleDisplayWidget; -class QHBoxLayout; -class QVBoxLayout; -class QWidget; +#include +#include class ManaDistributionWidget : public AbstractAnalyticsPanelWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.cpp index 9f6257930..76552ea2f 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.cpp @@ -1,6 +1,5 @@ #include "deck_analytics_widget.h" -#include "../general/layout_containers/flow_widget.h" #include "abstract_analytics_panel_widget.h" #include "add_analytics_panel_dialog.h" #include "analytics_panel_widget_factory.h" @@ -10,19 +9,13 @@ #include "deck_list_statistics_analyzer.h" #include "resizable_panel.h" -#include -#include #include -#include #include #include -#include #include #include #include #include -#include -#include DeckAnalyticsWidget::DeckAnalyticsWidget(QWidget *parent, DeckListStatisticsAnalyzer *_statsAnalyzer) : QWidget(parent), statsAnalyzer(_statsAnalyzer) diff --git a/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.h b/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.h index f1e071ff6..3c73deca2 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.h +++ b/cockatrice/src/interface/widgets/deck_analytics/deck_analytics_widget.h @@ -7,22 +7,19 @@ #ifndef DECK_ANALYTICS_WIDGET_H #define DECK_ANALYTICS_WIDGET_H +#include "../general/layout_containers/flow_widget.h" +#include "abstract_analytics_panel_widget.h" +#include "deck_list_statistics_analyzer.h" +#include "resizable_panel.h" + +#include #include -#include -#include +#include +#include #include #include -#include class LayoutInspector; -class AbstractAnalyticsPanelWidget; -class DeckListStatisticsAnalyzer; -class FlowWidget; -class QCheckBox; -class QPushButton; -class QScrollArea; -class QVBoxLayout; -class ResizablePanel; class DeckAnalyticsWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp index c2f70759e..add13ff21 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp @@ -1,19 +1,11 @@ #include "deck_list_statistics_analyzer.h" #include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" +#include "deck_list_statistics_analyzer.h" -#include #include -#include -#include -#include -#include #include -#include +#include DeckListStatisticsAnalyzer::DeckListStatisticsAnalyzer(QObject *parent, DeckListModel *_model, diff --git a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.h b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.h index c3643d65f..52ae751bf 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.h +++ b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.h @@ -1,12 +1,10 @@ #ifndef COCKATRICE_DECK_LIST_STATISTICS_ANALYZER_H #define COCKATRICE_DECK_LIST_STATISTICS_ANALYZER_H +#include "deck_list_model.h" + #include -#include #include -#include -#include -#include #include class DeckListModel; diff --git a/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.cpp b/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.cpp index f46679406..250fe1ad3 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.cpp @@ -1,34 +1,11 @@ #include "resizable_panel.h" -#include "abstract_analytics_panel_widget.h" #include "libcockatrice/utility/qt_utils.h" -#include -#include #include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include ResizablePanel::ResizablePanel(const QString &_typeId, AbstractAnalyticsPanelWidget *analyticsPanel, QWidget *parent) : QWidget(parent), panel(analyticsPanel), typeId(_typeId) diff --git a/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.h b/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.h index 809703847..d958ec64d 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.h +++ b/cockatrice/src/interface/widgets/deck_analytics/resizable_panel.h @@ -1,15 +1,19 @@ #ifndef COCKATRICE_RESIZABLE_PANEL_H #define COCKATRICE_RESIZABLE_PANEL_H -#include -#include -#include -#include +#include "abstract_analytics_panel_widget.h" -class AbstractAnalyticsPanelWidget; -class QFrame; -class QPushButton; -class QTimer; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include class ResizablePanel : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp b/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp index e8f6398f7..00388a3cd 100644 --- a/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp @@ -1,35 +1,17 @@ #include "card_database_view.h" #include "../../../client/settings/cache_settings.h" -#include "../../key_signals.h" #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include -#include #include -#include #include -#include #include -#include -#include #include -#include -#include -#include -#include -#include #include #include #include #include -#include -#include - -class QWidget; static bool canBeCommander(const CardInfo &cardInfo) { diff --git a/cockatrice/src/interface/widgets/deck_editor/card_database_view.h b/cockatrice/src/interface/widgets/deck_editor/card_database_view.h index c095c544d..668444199 100644 --- a/cockatrice/src/interface/widgets/deck_editor/card_database_view.h +++ b/cockatrice/src/interface/widgets/deck_editor/card_database_view.h @@ -3,19 +3,12 @@ #include "../../key_signals.h" -#include -#include -#include #include #include #include -#include +class CardDatabaseModel; class CardDatabaseDisplayModel; -class QModelIndex; -class QPoint; -class QWidget; -template class QList; /** * @brief The card database table. diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.cpp index 57ae6eadd..6269f0323 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.cpp @@ -2,23 +2,10 @@ #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" #include "card_database_view.h" -#include "deck_editor_database_display_widget.h" -#include "deck_list_model.h" #include "deck_state_manager.h" #include "deck_zone_dialog.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include DeckEditorCardDatabaseDockWidget::DeckEditorCardDatabaseDockWidget(AbstractTabDeckEditor *parent) : QDockWidget(parent) { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.h index b73843bc7..6af2e4432 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_database_dock_widget.h @@ -1,10 +1,12 @@ #ifndef COCKATRICE_DECK_EDITOR_CARD_DATABASE_DOCK_WIDGET_H #define COCKATRICE_DECK_EDITOR_CARD_DATABASE_DOCK_WIDGET_H +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" + #include -#include class AbstractTabDeckEditor; +class CardDatabase; class DeckEditorDatabaseDisplayWidget; class FilterTree; diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.cpp index 1b920ea1d..a78a9c9c5 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.cpp @@ -1,14 +1,8 @@ #include "deck_editor_card_info_dock_widget.h" #include "../cards/card_info_frame_widget.h" -#include "../tabs/abstract_tab_deck_editor.h" -#include #include -#include -#include - -class ExactCard; DeckEditorCardInfoDockWidget::DeckEditorCardInfoDockWidget(AbstractTabDeckEditor *parent) : QDockWidget(parent), deckEditor(parent) diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.h index 2f204306d..086ca2ca4 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_card_info_dock_widget.h @@ -8,13 +8,12 @@ #ifndef DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H #define DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../cards/card_info_frame_widget.h" + #include -#include class AbstractTabDeckEditor; -class CardInfoFrameWidget; -class ExactCard; - class DeckEditorCardInfoDockWidget : public QDockWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp index 7ed398535..a83e25f5f 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp @@ -2,30 +2,19 @@ #include "../../../client/settings/cache_settings.h" #include "../../../filters/syntax_help.h" -#include "../../key_signals.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../../interface/widgets/tabs/tab_supervisor.h" #include "../../pixel_map_generator.h" -#include "../utility/custom_line_edit.h" -#include "card_database_display_model.h" -#include "card_database_model.h" #include "card_database_view.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include -#include -#include -#include +#include +#include #include -#include +#include #include #include +#include #include -#include -#include - -class FilterTree; DeckEditorDatabaseDisplayWidget::DeckEditorDatabaseDisplayWidget(QWidget *parent, CardDatabaseModel *databaseModel) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h index e9edec125..5de4d211d 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h @@ -8,21 +8,16 @@ #ifndef DECK_EDITOR_DATABASE_DISPLAY_WIDGET_H #define DECK_EDITOR_DATABASE_DISPLAY_WIDGET_H -#include "libcockatrice/card/card_info.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../utility/custom_line_edit.h" -#include +#include #include -#include +#include +#include class CardDatabaseView; -class CardDatabaseDisplayModel; -class CardDatabaseModel; -class ExactCard; -class FilterTree; -class QAction; -class QHBoxLayout; -class QVBoxLayout; -class SearchLineEdit; +class AbstractTabDeckEditor; class DeckEditorDatabaseDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp index 37dd57459..4b141e255 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp @@ -2,75 +2,28 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../key_signals.h" #include "../../pixel_map_generator.h" #include "../playmat/playmat_settings_dialog.h" -#include "../quick_settings/settings_button_widget.h" -#include "../tabs/abstract_tab_deck_editor.h" +#include "../settings_page/user_interface_settings_page.h" #include "../tabs/api/commander_spellbook/commander_bracket_widget.h" -#include "../utility/custom_line_edit.h" -#include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" -#include "deck_list_history_manager_widget.h" -#include "deck_list_model.h" #include "deck_list_style_proxy.h" #include "deck_state_manager.h" #include "deck_zone_dialog.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" -#include -#include -#include -#include #include -#include -#include #include -#include -#include #include -#include #include -#include -#include -#include #include -#include -#include -#include #include -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include +#include #include #include -#include -#include static int findRestoreIndex(const CardRef &wanted, const QComboBox *combo) { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h index 97ab8823e..1e5f4e677 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h @@ -8,36 +8,27 @@ #ifndef DECK_EDITOR_DECK_DOCK_WIDGET_H #define DECK_EDITOR_DECK_DOCK_WIDGET_H +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" #include "../../key_signals.h" -#include "libcockatrice/card/printing/exact_card.h" +#include "../utility/custom_line_edit.h" +#include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" +#include "deck_list_history_manager_widget.h" +#include "deck_list_style_proxy.h" +#include +#include #include -#include -#include +#include +#include +#include +#include #include -#include +#include +#include class CommanderBracketWidget; class DeckListModel; class AbstractTabDeckEditor; -class DeckListHistoryManagerWidget; -class DeckListStyleProxy; -class DeckPreviewDeckTagsDisplayWidget; -class DeckStateManager; -class LineEditUnfocusable; -class QAction; -class QCheckBox; -class QComboBox; -class QItemSelectionModel; -class QLabel; -class QMenu; -class QModelIndex; -class QPoint; -class QPushButton; -class QTextEdit; -class QTimer; -class SettingsButtonWidget; - class DeckEditorDeckDockWidget : public QDockWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.cpp index 0a47333fa..c6b6e4416 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.cpp @@ -4,31 +4,11 @@ #include "../../../client/settings/shortcuts_settings.h" #include "../../../filters/filter_builder.h" #include "../../../filters/filter_tree_model.h" -#include "../../key_signals.h" #include "../../pixel_map_generator.h" -#include "../tabs/abstract_tab_deck_editor.h" -#include "libcockatrice/filters/filter_card.h" -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include DeckEditorFilterDockWidget::DeckEditorFilterDockWidget(AbstractTabDeckEditor *parent) : QDockWidget(parent), deckEditor(parent) diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h index 7bb9c0045..b61fc72b5 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h @@ -8,18 +8,13 @@ #ifndef DECK_EDITOR_FILTER_DOCK_WIDGET_H #define DECK_EDITOR_FILTER_DOCK_WIDGET_H +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" #include "../../key_signals.h" #include -#include class FilterTreeModel; class AbstractTabDeckEditor; -class QAction; -class QPoint; -class QTreeView; -class QWidget; - class DeckEditorFilterDockWidget : public QDockWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.cpp index d45e951ba..06d8d1de7 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.cpp @@ -2,15 +2,10 @@ #include "../../../client/settings/cache_settings.h" #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" -#include "../printing_selector/printing_selector.h" -#include "deck_editor_deck_dock_widget.h" #include "printing_disabled_info_widget.h" -#include #include -#include #include -#include DeckEditorPrintingSelectorDockWidget::DeckEditorPrintingSelectorDockWidget(AbstractTabDeckEditor *parent) : QDockWidget(parent), deckEditor(parent) diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.h index e20ae932d..1037b55fb 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.h @@ -7,13 +7,13 @@ #ifndef DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H #define DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../printing_selector/printing_selector.h" + #include -#include class PrintingDisabledInfoWidget; -class AbstractTabDeckEditor; -class PrintingSelector; -class QWidget; +class TabDeckEditor; class DeckEditorPrintingSelectorDockWidget : public QDockWidget { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.cpp index 209dc7273..c93f12b34 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.cpp @@ -1,28 +1,7 @@ #include "deck_list_history_manager_widget.h" #include "../../pixel_map_generator.h" -#include "../quick_settings/settings_button_widget.h" #include "deck_state_manager.h" -#include "libcockatrice/deck_list/deck_list_history_manager.h" -#include "libcockatrice/deck_list/deck_list_memento.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class DeckListStyleProxy; DeckListHistoryManagerWidget::DeckListHistoryManagerWidget(DeckStateManager *_deckStateManager, DeckListStyleProxy *_styleProxy, diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.h index 5ed44b0fd..ab53912e2 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_list_history_manager_widget.h @@ -1,20 +1,18 @@ #ifndef COCKATRICE_DECK_EDITOR_DECK_LIST_HISTORY_MANAGER_WIDGET_H #define COCKATRICE_DECK_EDITOR_DECK_LIST_HISTORY_MANAGER_WIDGET_H -#include - -class DeckListStyleProxy; -class QAction; -class QHBoxLayout; -class QLabel; -class QListWidget; -class QListWidgetItem; -class QToolButton; -class SettingsButtonWidget; #ifndef COCKATRICE_DECK_UNDO_WIDGET_H #define COCKATRICE_DECK_UNDO_WIDGET_H +#include "../quick_settings/settings_button_widget.h" +#include "deck_list_style_proxy.h" + +#include +#include +#include #include +#include +#include class DeckStateManager; diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.cpp index 1e1aefe58..e41529b22 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.cpp @@ -3,10 +3,7 @@ #include #include #include -#include -#include #include -#include QVariant DeckListStyleProxy::data(const QModelIndex &index, int role) const { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.h b/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.h index e4d1de4f4..52b7eea10 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_list_style_proxy.h @@ -2,7 +2,6 @@ #define COCKATRICE_DECK_LIST_STYLE_PROXY_H #include -#include class DeckListStyleProxy : public QIdentityProxyModel { diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp index d4715c8d5..cfe989e9f 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp @@ -1,28 +1,11 @@ #include "deck_state_manager.h" #include "../../../client/settings/cache_settings.h" -#include "../../deck_loader/loaded_deck.h" -#include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/deck_list_memento.h" -#include "libcockatrice/deck_list/deck_list_node_tree.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" -#include -#include #include #include #include #include -#include - -class QModelIndex; DeckStateManager::DeckStateManager(QObject *parent) : QObject(parent), deckList(QSharedPointer(new DeckList)), diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.h b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.h index 98876947b..2c8b34a39 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.h @@ -2,22 +2,13 @@ #define COCKATRICE_DECK_STATE_MANAGER_H #include "../../deck_loader/loaded_deck.h" +#include "deck_list_model.h" -#include -#include #include -#include -#include #include #include -#include class DeckListHistoryManager; -class DeckListModel; -class DecklistNodeTree; -class ExactCard; -struct CardRef; -struct PlaymatInfo; /** * @brief This class centralizes the management of the state of the deck in the deck editor tab. diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.cpp index cb9667603..9a0be2570 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.cpp @@ -2,14 +2,10 @@ #include #include -#include -#include #include #include -#include #include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.h b/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.h index f4c9c0f9d..6f55617a8 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_zone_dialog.h @@ -8,9 +8,9 @@ #define DECK_ZONE_DIALOG_H #include +#include #include #include -#include class QComboBox; class QDialogButtonBox; diff --git a/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.cpp index b2c4dd303..23670b1b3 100644 --- a/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.cpp @@ -3,13 +3,10 @@ #include "../dialogs/override_printing_warning.h" #include -#include #include #include -#include #include -#include -#include +#include PrintingDisabledInfoWidget::PrintingDisabledInfoWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.h b/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.h index c14c758ff..0851ccfad 100644 --- a/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/printing_disabled_info_widget.h @@ -1,7 +1,6 @@ #ifndef COCKATRICE_PRINTING_DISABLED_INFO_WIDGET_H #define COCKATRICE_PRINTING_DISABLED_INFO_WIDGET_H #include -#include class QPushButton; class QLabel; diff --git a/cockatrice/src/interface/widgets/deck_share/deck_share_utils.cpp b/cockatrice/src/interface/widgets/deck_share/deck_share_utils.cpp index 0ebdc0647..4343f0aab 100644 --- a/cockatrice/src/interface/widgets/deck_share/deck_share_utils.cpp +++ b/cockatrice/src/interface/widgets/deck_share/deck_share_utils.cpp @@ -3,11 +3,9 @@ #include #include #include -#include #include #include #include -#include #include #include #include diff --git a/cockatrice/src/interface/widgets/deck_share/share_bar_widget.h b/cockatrice/src/interface/widgets/deck_share/share_bar_widget.h index f97cc6788..ede9fb41b 100644 --- a/cockatrice/src/interface/widgets/deck_share/share_bar_widget.h +++ b/cockatrice/src/interface/widgets/deck_share/share_bar_widget.h @@ -7,9 +7,7 @@ #ifndef SHARE_BAR_WIDGET_H #define SHARE_BAR_WIDGET_H -#include #include -#include class QLabel; class QLineEdit; diff --git a/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.cpp b/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.cpp index 3bb829089..21ec80e08 100644 --- a/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.cpp @@ -2,20 +2,14 @@ #include "../cards/additional_info/color_identity_widget.h" #include "../cards/deck_preview_card_picture_widget.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/card_ref.h" #include -#include #include #include #include #include -#include -#include #include #include -#include SharedDeckPreviewWidget::SharedDeckPreviewWidget(QWidget *parent, const CardDatabaseQuerier *querier, diff --git a/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.h b/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.h index bff7de743..bd4c4ee5f 100644 --- a/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.h +++ b/cockatrice/src/interface/widgets/deck_share/shared_deck_preview_widget.h @@ -7,15 +7,15 @@ #ifndef SHARED_DECK_PREVIEW_WIDGET_H #define SHARED_DECK_PREVIEW_WIDGET_H -#include #include -#include class ColorIdentityWidget; class DeckPreviewCardPictureWidget; class QCheckBox; class QFrame; +class QKeyEvent; class QLabel; +class QResizeEvent; class CardDatabaseQuerier; /** diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_connect.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_connect.cpp index 7a7e31a58..700012d45 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_connect.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_connect.cpp @@ -2,34 +2,19 @@ #include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" -#include "../server/handle_public_servers.h" -#include "../server/user/user_info_connection.h" -#include "libcockatrice/utility/macros.h" #include #include -#include #include #include #include -#include -#include +#include #include -#include #include #include #include -#include -#include -#include -#include -#include -#include #include #include -#include - -class QWidget; DlgConnect::DlgConnect(QWidget *parent) : QDialog(parent) { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_connect.h b/cockatrice/src/interface/widgets/dialogs/dlg_connect.h index 10cb5366a..083dad0ad 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_connect.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_connect.h @@ -7,13 +7,12 @@ #ifndef DLG_CONNECT_H #define DLG_CONNECT_H +#include "../interface/widgets/server/handle_public_servers.h" +#include "../interface/widgets/server/user/user_info_connection.h" + #include #include -#include -#include #include -#include -#include class QCheckBox; class QComboBox; @@ -24,9 +23,6 @@ class QLabel; class QPushButton; class QRadioButton; class QVBoxLayout; -class HandlePublicServers; -class QWidget; -class UserConnection_Information; class DlgConnect : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.cpp index f2dd8c1e4..a4a31d78d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.cpp @@ -1,7 +1,7 @@ #include "dlg_convert_deck_to_cod_format.h" #include "../../../client/settings/cache_settings.h" -#include "../../deck_loader/deck_file_format.h" +#include "../../deck_loader/deck_loader.h" #include #include @@ -10,7 +10,6 @@ #include #include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.h b/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.h index de2fb9a63..526582135 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_convert_deck_to_cod_format.h @@ -8,17 +8,14 @@ #ifndef DIALOG_CONVERT_DECK_TO_COD_FORMAT_H #define DIALOG_CONVERT_DECK_TO_COD_FORMAT_H +#include #include -#include -#include +#include +#include +#include #include -#include class QWidget; -class QCheckBox; -class QDialogButtonBox; -class QLabel; -class QVBoxLayout; class DialogConvertDeckToCodFormat : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_create_game.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_create_game.cpp index 104b695e6..59f3e033d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_create_game.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_create_game.cpp @@ -2,35 +2,23 @@ #include "../../../client/settings/cache_settings.h" #include "../interface/widgets/tabs/tab_room.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/utility/macros.h" +#include #include -#include #include #include #include #include #include -#include #include #include #include #include -#include -#include #include -#include #include #include #include #include -#include -#include - -class QWidget; void DlgCreateGame::sharedCtor() { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_create_game.h b/cockatrice/src/interface/widgets/dialogs/dlg_create_game.h index 71b09997c..61925286d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_create_game.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_create_game.h @@ -9,9 +9,7 @@ #include #include -#include #include -#include class QCheckBox; class QDialogButtonBox; @@ -24,7 +22,6 @@ class QSpinBox; class Response; class ServerInfo_Game; class TabRoom; -class QWidget; class DlgCreateGame : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.cpp index 9eb064beb..e9c73b025 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.cpp @@ -2,20 +2,9 @@ #include "../../../client/settings/cache_settings.h" -#include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include #include -#include #include DlgDefaultTagsEditor::DlgDefaultTagsEditor(QWidget *parent) : QDialog(parent) diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.h b/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.h index 081701485..e584d0731 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_default_tags_editor.h @@ -9,15 +9,9 @@ #define DLG_DEFAULT_TAGS_EDITOR_H #include -#include - -class QHBoxLayout; -class QLineEdit; -class QListWidget; -class QListWidgetItem; -class QPushButton; -class QVBoxLayout; -class QWidget; +#include +#include +#include class DlgDefaultTagsEditor : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.cpp index 520ece007..120e20f3e 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.cpp @@ -3,22 +3,12 @@ #include #include #include -#include #include -#include -#include #include #include -#include -#include #include -#include -#include #include #include -#include - -class QWidget; DlgEditAvatar::DlgEditAvatar(QWidget *parent) : QDialog(parent), image() { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.h b/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.h index 4df45711c..9ac774b24 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_avatar.h @@ -7,18 +7,16 @@ #ifndef DLG_EDITAVATAR_H #define DLG_EDITAVATAR_H -#include +#include #include -#include +#include #include -#include - -class QWidget; inline Q_LOGGING_CATEGORY(DlgEditAvatarLog, "dlg_edit_avatar"); class QLabel; class QPushButton; +class QCheckBox; class DlgEditAvatar : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.cpp index 59f80c79c..4310c03fc 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.cpp @@ -4,17 +4,12 @@ #include #include +#include #include #include -#include -#include -#include #include #include -class QVBoxLayout; -class QWidget; - DlgEditPassword::DlgEditPassword(QWidget *parent) : QDialog(parent) { oldPasswordLabel = new QLabel(tr("Old password:")); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.h b/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.h index e80ede3f3..85c72233d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_password.h @@ -9,11 +9,10 @@ #include #include -#include -#include class QLabel; -class QWidget; +class QPushButton; +class QCheckBox; class DlgEditPassword : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp index cbf61a394..a56aa8e35 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp @@ -2,41 +2,25 @@ #include "../../pixel_map_generator.h" #include "../interface/widgets/utility/get_text_with_max.h" -#include "card_database_display_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" #include -#include #include #include #include #include #include -#include #include -#include +#include #include #include #include -#include -#include -#include #include #include -#include -#include -#include #include #include #include #include #include -#include - -class QWidget; DlgEditTokens::DlgEditTokens(QWidget *parent) : QDialog(parent), currentCard(nullptr) { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.h b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.h index cde89d22b..202212e98 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.h @@ -8,11 +8,7 @@ #define DLG_EDIT_TOKENS_H #include -#include -#include -#include #include -#include class QModelIndex; class CardDatabaseModel; @@ -21,7 +17,6 @@ class QLabel; class QComboBox; class QLineEdit; class QTreeView; -class QWidget; class DlgEditTokens : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.cpp index ffe8391a0..85b95f335 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.cpp @@ -4,18 +4,10 @@ #include #include +#include #include -#include -#include -#include -#include -#include -#include #include -class QVBoxLayout; -class QWidget; - DlgEditUser::DlgEditUser(QWidget *parent, QString email, QString country, QString realName) : QDialog(parent) { emailLabel = new QLabel(tr("Email:")); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.h b/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.h index 0385c2bbe..35a8bfb46 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_user.h @@ -10,11 +10,10 @@ #include #include #include -#include -#include class QLabel; -class QWidget; +class QPushButton; +class QCheckBox; class DlgEditUser : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.cpp index cd3c3893e..7e174a228 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.cpp @@ -1,25 +1,15 @@ #include "dlg_filter_games.h" -#include "../server/games_model.h" - #include #include +#include #include #include #include -#include #include #include -#include -#include -#include -#include +#include #include -#include -#include -#include - -class QWidget; DlgFilterGames::DlgFilterGames(const QMap &_allGameTypes, const GamesProxyModel *_gamesProxyModel, diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.h b/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.h index d7c11d0f1..1cf822b89 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_filter_games.h @@ -7,23 +7,20 @@ #ifndef DLG_FILTER_GAMES_H #define DLG_FILTER_GAMES_H -#include "../server/game_filter_configs.h" +#include "../interface/widgets/server/games_model.h" +#include +#include #include #include #include -#include -#include #include -#include class QCheckBox; class QComboBox; class QGroupBox; class QLineEdit; class QSpinBox; -class GamesProxyModel; -class QWidget; class DlgFilterGames : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.cpp index 3ee74faab..c21955373 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.cpp @@ -4,16 +4,12 @@ #include #include -#include +#include #include #include -#include -#include #include #include -class QWidget; - DlgForgotPasswordChallenge::DlgForgotPasswordChallenge(QWidget *parent) : QDialog(parent) { QString lastfphost; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.h b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.h index f5678af17..d32e2fc3e 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_challenge.h @@ -7,13 +7,13 @@ #ifndef DLG_FORGOTPASSWORDCHALLENGE_H #define DLG_FORGOTPASSWORDCHALLENGE_H +#include #include #include -#include -#include class QLabel; -class QWidget; +class QPushButton; +class QCheckBox; class DlgForgotPasswordChallenge : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.cpp index 0cb1773b6..4ee0c9c88 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.cpp @@ -4,16 +4,12 @@ #include #include -#include +#include #include #include -#include -#include #include #include -class QWidget; - DlgForgotPasswordRequest::DlgForgotPasswordRequest(QWidget *parent) : QDialog(parent) { QString lastfphost; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.h b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.h index ff255c748..2cf352e0d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_request.h @@ -7,13 +7,13 @@ #ifndef DLG_FORGOTPASSWORDREQUEST_H #define DLG_FORGOTPASSWORDREQUEST_H +#include #include #include -#include -#include class QLabel; -class QWidget; +class QPushButton; +class QCheckBox; class DlgForgotPasswordRequest : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.cpp index 6c1b95b43..2800d5c0c 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.cpp @@ -4,18 +4,12 @@ #include #include -#include +#include #include #include -#include -#include -#include #include #include -class QVBoxLayout; -class QWidget; - DlgForgotPasswordReset::DlgForgotPasswordReset(QWidget *parent) : QDialog(parent) { QString lastfphost; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.h b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.h index 995d67359..8a443b906 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_forgot_password_reset.h @@ -7,13 +7,13 @@ #ifndef DLG_FORGOTPASSWORDRESET_H #define DLG_FORGOTPASSWORDRESET_H +#include #include #include -#include -#include class QLabel; -class QWidget; +class QPushButton; +class QCheckBox; class DlgForgotPasswordReset : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.cpp index cf503856f..b5451bb2c 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.cpp @@ -6,18 +6,13 @@ #include #include +#include #include #include -#include #include -#include #include #include #include -#include -#include - -class QWidget; DlgInviteToGame::DlgInviteToGame(TabSupervisor *_tabSupervisor, const QString &_inviteUrl, diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.h b/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.h index cfcc48733..bbb589bdb 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_invite_to_game.h @@ -8,16 +8,12 @@ #define DLG_INVITE_TO_GAME_H #include -#include -#include #include -#include class QLineEdit; class QPushButton; class TabSupervisor; class UserListWidget; -class QWidget; class DlgInviteToGame : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.cpp index cbf24db87..626ebed50 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.cpp @@ -3,13 +3,8 @@ #include "../../../client/settings/cache_settings.h" #include "../../deck_loader/deck_loader.h" -#include -#include #include #include - -class QWidget; - DlgLoadDeck::DlgLoadDeck(QWidget *parent) : QFileDialog(parent, tr("Load Deck")) { QString startingDir = SettingsCache::instance().recents().getLatestDeckDirPath(); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.h b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.h index 5ba07c01d..27d658902 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck.h @@ -9,9 +9,6 @@ #define DLG_LOAD_DECK_H #include -#include - -class QWidget; /** * The file dialog for "Load Deck" operations. diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.cpp index 2c0fd3f6f..a3242c797 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.cpp @@ -9,19 +9,12 @@ #include #include #include -#include -#include -#include #include #include #include #include #include -#include #include -#include - -class QWidget; /** * Creates the main layout and connects the signals that are common to all versions of this window diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.h b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.h index f3cbb7b62..dce9d712c 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_clipboard.h @@ -8,16 +8,13 @@ #ifndef DLG_LOAD_DECK_FROM_CLIPBOARD_H #define DLG_LOAD_DECK_FROM_CLIPBOARD_H -#include "libcockatrice/deck_list/deck_list.h" +#include "../../deck_loader/loaded_deck.h" +#include #include -#include -#include class QPlainTextEdit; class QPushButton; -class QCheckBox; -class QWidget; /** * Base class for dialog windows for actions that involve loading decks from text input. diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.cpp index 88b7e2bb3..ba00873d9 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.cpp @@ -1,37 +1,16 @@ #include "dlg_load_deck_from_website.h" -#include "../../deck_loader/card_node_function.h" -#include "parsers/deck_link_to_api_transformer.h" -#include "parsers/interface_json_deck_parser.h" - #include -#include #include -#include #include #include #include #include -#include -#include -#include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include #include -class QWidget; - DlgLoadDeckFromWebsite::DlgLoadDeckFromWebsite(QWidget *parent) : QDialog(parent) { nam = new QNetworkAccessManager(this); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.h b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.h index 3f6e759f2..2890148b9 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_deck_from_website.h @@ -8,21 +8,15 @@ #ifndef DLG_LOAD_DECK_FROM_WEBSITE_H #define DLG_LOAD_DECK_FROM_WEBSITE_H +#include "../client/network/parsers/deck_link_to_api_transformer.h" #include "../client/network/parsers/interface_json_deck_parser.h" -#include "libcockatrice/deck_list/deck_list.h" #include +#include +#include #include -#include -#include - -class QLabel; -class QLineEdit; -class QNetworkAccessManager; -class QVBoxLayout; -class QWidget; -enum class DeckProvider; -template class QSharedPointer; +#include +#include inline Q_LOGGING_CATEGORY(DlgLoadDeckFromWebsiteLog, "dlg_load_deck_from_website"); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.cpp index a56009fe4..ffe08bec9 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.cpp @@ -3,13 +3,9 @@ #include "../interface/widgets/server/remote/remote_decklist_tree_widget.h" #include -#include #include -#include #include -class QWidget; - DlgLoadRemoteDeck::DlgLoadRemoteDeck(AbstractClient *_client, QWidget *parent) : QDialog(parent), client(_client) { dirView = new RemoteDeckList_TreeWidget(client); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.h b/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.h index cfec16d90..9c81e9ae3 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_load_remote_deck.h @@ -9,13 +9,12 @@ #define DLG_STARTGAME_H #include -#include class RemoteDeckList_TreeWidget; class QModelIndex; class AbstractClient; +class QPushButton; class QDialogButtonBox; -class QWidget; class DlgLoadRemoteDeck : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.cpp index 858deb751..eca0ec658 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.cpp @@ -7,13 +7,10 @@ #include #include #include -#include #include #include #include -class QWidget; - DlgLocalGameOptions::DlgLocalGameOptions(QWidget *parent) : QDialog(parent) { numberPlayersLabel = new QLabel(tr("Players:"), this); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.h b/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.h index 0725a08db..4307581a4 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_local_game_options.h @@ -11,9 +11,6 @@ #define DLG_LOCAL_GAME_OPTIONS_H #include -#include - -class QWidget; struct LocalGameOptions { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.cpp index 0a18a759f..86647ef26 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.cpp @@ -7,8 +7,6 @@ #include #include -class QWidget; - DlgLoginPrompt::DlgLoginPrompt(const QString &serverText, QWidget *parent) : QDialog(parent) { setWindowTitle(tr("Sign in")); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.h b/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.h index 47bf3bcf4..e47924058 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_login_prompt.h @@ -8,12 +8,9 @@ #define DLG_LOGIN_PROMPT_H #include -#include -#include class QCheckBox; class QLineEdit; -class QWidget; /** * @brief Small sign-in dialog used when a cockatrice:// link needs credentials diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.cpp index dbfe38e26..556c270be 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.cpp @@ -4,42 +4,21 @@ #include "../../pixel_map_generator.h" #include "../interface/card_picture_loader/card_picture_loader.h" #include "../interface/widgets/utility/custom_line_edit.h" -#include "libcockatrice/card/database/card_database.h" -#include -#include -#include #include -#include #include -#include #include #include #include #include #include -#include #include -#include #include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include #include #include -#include #include -#include #include -#include -#include #include #include #include @@ -178,6 +157,12 @@ WndSets::WndSets(QWidget *parent) : QMainWindow(parent) sortWarning->setLayout(sortWarningLayout); sortWarning->setVisible(false); + includeRebalancedCards = SettingsCache::instance().cardsDisplay().getIncludeRebalancedCards(); + QCheckBox *includeRebalancedCardsCheckBox = + new QCheckBox(tr("Include cards rebalanced for Alchemy [requires restart]")); + includeRebalancedCardsCheckBox->setChecked(includeRebalancedCards); + connect(includeRebalancedCardsCheckBox, &QAbstractButton::toggled, this, &WndSets::includeRebalancedCardsChanged); + buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); connect(buttonBox, &QDialogButtonBox::accepted, this, &WndSets::actSave); connect(buttonBox, &QDialogButtonBox::rejected, this, &WndSets::actRestore); @@ -191,8 +176,9 @@ WndSets::WndSets(QWidget *parent) : QMainWindow(parent) mainLayout->addWidget(enableSomeButton, 2, 1); mainLayout->addWidget(disableSomeButton, 2, 2); mainLayout->addWidget(sortWarning, 3, 1, 1, 2); - mainLayout->addWidget(hintsGroupBox, 4, 1, 1, 2); - mainLayout->addWidget(buttonBox, 5, 1, 1, 2); + mainLayout->addWidget(includeRebalancedCardsCheckBox, 4, 1, 1, 2); + mainLayout->addWidget(hintsGroupBox, 5, 1, 1, 2); + mainLayout->addWidget(buttonBox, 6, 1, 1, 2); mainLayout->setColumnStretch(1, 1); mainLayout->setColumnStretch(2, 1); @@ -263,9 +249,15 @@ void WndSets::resetSort() sortWarning->setVisible(false); } +void WndSets::includeRebalancedCardsChanged(bool _includeRebalancedCards) +{ + includeRebalancedCards = _includeRebalancedCards; +} + void WndSets::actSave() { model->save(CardDatabaseManager::getInstance()); + SettingsCache::instance().cardsDisplay().setIncludeRebalancedCards(includeRebalancedCards); CardPictureLoader::clearPixmapCache(); const auto reloadOk1 = QtConcurrent::run([] { CardDatabaseManager::getInstance()->reloadCardDatabasesAndNotify(); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.h b/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.h index 67b4c90b1..2ed5eca0f 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_manage_sets.h @@ -7,11 +7,12 @@ #ifndef DLG_MANAGE_SETS_H #define DLG_MANAGE_SETS_H +#include +#include +#include #include -#include -#include -#include +class CardDatabase; class LineEditUnfocusable; class QGroupBox; class QItemSelection; @@ -19,14 +20,7 @@ class QPushButton; class QTreeView; class SetsDisplayModel; class SetsModel; -class QAction; -class QDialogButtonBox; -class QGridLayout; -class QHBoxLayout; -class QLabel; -class QToolBar; -class QWidget; -template class QSet; +class SetsProxyModel; class WndSets : public QMainWindow { @@ -52,6 +46,7 @@ private: int sortIndex; Qt::SortOrder sortOrder; bool setOrderIsSorted; + bool includeRebalancedCards; enum { NO_SETS_SELECTED, @@ -86,6 +81,7 @@ private slots: void actDisableResetButton(const QString &filterText); void actSort(int index); void actIgnoreWarning(); + void includeRebalancedCardsChanged(bool _includeRebalancedCardsChanged); }; #endif diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.cpp index 52c9eaef0..1af83bfb5 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.cpp @@ -2,11 +2,7 @@ #include "../utility/report_utils.h" #include "abstract_client.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_report.pb.h" -#include -#include #include #include #include @@ -14,22 +10,16 @@ #include #include #include -#include +#include #include -#include #include #include -#include #include #include #include #include #include #include -#include -#include - -class QWidget; namespace { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.h b/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.h index dc9f90d2d..09b1963dd 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_my_reports.h @@ -3,9 +3,8 @@ #include #include -#include +#include #include -#include class AbstractClient; class QTableWidget; @@ -13,8 +12,6 @@ class QTextEdit; class QLineEdit; class QPushButton; class QLabel; -class QWidget; -class Response; class DlgMyReports : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_register.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_register.cpp index 9e32e87d1..6d022861c 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_register.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_register.cpp @@ -10,23 +10,14 @@ #include #include #include -#include #include -#include #include -#include #include #include -#include -#include -#include #include -#include #include #include -class QWidget; - DlgRegister::DlgRegister(QWidget *parent) : QDialog(parent) { // ── Server picker ────────────────────────────────────────────────── diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_register.h b/cockatrice/src/interface/widgets/dialogs/dlg_register.h index 10ea98543..ce14eb427 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_register.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_register.h @@ -5,16 +5,12 @@ #include #include #include -#include -#include -#include class HandlePublicServers; class QLabel; class QPushButton; class QRadioButton; class UserConnection_Information; -class QWidget; class DlgRegister : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_report_user.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_report_user.cpp index b1ae479fe..7b855af96 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_report_user.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_report_user.cpp @@ -1,31 +1,21 @@ #include "dlg_report_user.h" #include "abstract_client.h" -#include "libcockatrice/protocol/pb/response.pb.h" #include #include -#include #include #include #include #include -#include #include -#include #include #include -#include #include #include -#include #include #include #include -#include -#include - -class QWidget; DlgReportUser::DlgReportUser(AbstractClient *_client, const QString &_reportedUser, diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_report_user.h b/cockatrice/src/interface/widgets/dialogs/dlg_report_user.h index c7fce055d..f8d5938ce 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_report_user.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_report_user.h @@ -2,8 +2,7 @@ #define COCKATRICE_DLG_REPORT_USER_H #include -#include -#include +#include class AbstractClient; class QComboBox; @@ -11,8 +10,6 @@ class QDialogButtonBox; class QLineEdit; class QTextEdit; class QLabel; -class QWidget; -class Response; class DlgReportUser : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp index 55c6569f7..8eed083e1 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp @@ -1,59 +1,26 @@ #include "dlg_select_set_for_cards.h" #include "../../deck_loader/card_node_function.h" +#include "../../deck_loader/deck_loader.h" #include "../deck_editor/deck_state_manager.h" #include "../interface/widgets/cards/card_info_picture_widget.h" #include "../interface/widgets/general/layout_containers/flow_widget.h" -#include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include #include -#include +#include #include -#include -#include -#include #include -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include #include #include #include -#include -#include #include -#include #include -#include -#include -#include -#include +#include +#include DlgSelectSetForCards::DlgSelectSetForCards(QWidget *parent, DeckStateManager *deckStateManger) : QDialog(parent), deckStateManager(deckStateManger) diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.h b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.h index 89cc43662..4528552d0 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.h @@ -7,23 +7,19 @@ #ifndef DLG_SELECT_SET_FOR_CARDS_H #define DLG_SELECT_SET_FOR_CARDS_H +#include "../interface/widgets/general/layout_containers/flow_widget.h" + +#include #include -#include +#include +#include #include -#include -#include -#include -#include +#include +#include +#include class DeckStateManager; class SetEntryWidget; // Forward declaration -class FlowWidget; -class QCheckBox; -class QLabel; -class QListWidget; -class QPushButton; -class QScrollArea; -class QVBoxLayout; class DlgSelectSetForCards : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_settings.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_settings.cpp index d41c948eb..581920dbc 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_settings.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_settings.cpp @@ -8,7 +8,6 @@ #include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" #include "../main.h" -#include "../settings_page/abstract_settings_page.h" #include "../settings_page/appearance_settings_page.h" #include "../settings_page/deck_editor_settings_page.h" #include "../settings_page/general_settings_page.h" @@ -19,59 +18,33 @@ #include "../settings_page/sound_settings_page.h" #include "../settings_page/storage_settings_page.h" #include "../settings_page/user_interface_settings_page.h" -#include "libcockatrice/card/database/card_database.h" #include "libcockatrice/card/database/card_database_loader.h" #include "libcockatrice/card/database/card_database_manager.h" -#include #include -#include -#include -#include #include -#include -#include #include -#include -#include -#include #include #include #include #include -#include #include -#include #include #include #include -#include -#include -#include -#include -#include #include #include -#include #include #include #include #include #include -#include -#include #include #include -#include #include #include -#include -#include #include #include -#include - -class QModelIndex; /** * @brief Wraps a widget in a scroll area for long settings pages diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_settings.h b/cockatrice/src/interface/widgets/dialogs/dlg_settings.h index 1f15e76d5..845c0b4d6 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_settings.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_settings.h @@ -7,15 +7,9 @@ #define DLG_SETTINGS_H #include -#include #include -#include -#include -#include class QPushButton; -class QModelIndex; -class QWidget; inline Q_LOGGING_CATEGORY(DlgSettingsLog, "dlg_settings"); @@ -23,6 +17,7 @@ class QStackedWidget; class QToolButton; class QListView; class QLineEdit; + class AbstractSettingsPage; class SettingsSearchModel; class SettingsSearchDelegate; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp index eec80a7e8..897d32062 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp @@ -9,21 +9,16 @@ #include #include #include -#include #include #include -#include #include #include #include #include #include +#include #include #include -#include - -class QWidget; -template class QSharedPointer; DlgShareDeck::DlgShareDeck(AbstractClient *_client, const QSharedPointer &_deck, QWidget *_parent) : QDialog(_parent), client(_client), deck(_deck), shareTimeoutTimer(new QTimer(this)) diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.h b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.h index 108a8c38b..162fa3677 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.h @@ -9,7 +9,6 @@ #include #include -#include class AbstractClient; class CommandContainer; @@ -18,8 +17,6 @@ class QDialogButtonBox; class QLineEdit; class QTimer; class Response; -class QWidget; -template class QSharedPointer; /** * @brief Slim dialog to create a temporary share for the deck open in the editor. diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.cpp index 8ad91dcaf..cd7ecdcdd 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.cpp @@ -3,19 +3,14 @@ #include "../deck_share/shared_deck_preview_widget.h" #include "../general/layout_containers/flow_widget.h" -#include +#include #include #include -#include #include #include -#include #include -#include +#include #include -#include - -class QWidget; DlgSharedDecksPreview::DlgSharedDecksPreview(QWidget *parent, const CardDatabaseQuerier *querier, diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.h b/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.h index fab7ba6bf..31820e3a0 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_shared_decks_preview.h @@ -3,17 +3,14 @@ #include #include -#include -#include -#include class FlowWidget; +class QCloseEvent; class QLabel; class QPushButton; class ServerInfo_DeckShareItem; class SharedDeckPreviewWidget; class CardDatabaseQuerier; -class QWidget; /** * @brief Non-modal preview of the decks contained in a shared-deck link. diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.cpp index 3d50480cc..4322beb8c 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.cpp @@ -2,17 +2,9 @@ #include "../../../client/settings/cache_settings.h" -#include #include -#include -#include -#include -#include -#include #include -class QWidget; - DlgStartupCardCheck::DlgStartupCardCheck(QWidget *parent) : QDialog(parent) { setWindowTitle(tr("Card Update Check")); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.h b/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.h index 0d0fb6670..d26610983 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_startup_card_check.h @@ -7,15 +7,12 @@ #ifndef DLG_STARTUP_CARD_CHECK_H #define DLG_STARTUP_CARD_CHECK_H +#include #include -#include - -class QButtonGroup; -class QDialogButtonBox; -class QLabel; -class QRadioButton; -class QVBoxLayout; -class QWidget; +#include +#include +#include +#include class DlgStartupCardCheck : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.cpp index 511ff1c7d..3d3619bf0 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.cpp @@ -7,19 +7,9 @@ #include #include #include -#include #include -#include -#include -#include #include -#include -#include -#include -#include -#include #include -#include #define MIN_TIP_IMAGE_HEIGHT 200 #define MIN_TIP_IMAGE_WIDTH 200 diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.h b/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.h index 689814115..e493481d0 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_tip_of_the_day.h @@ -7,15 +7,12 @@ #ifndef DLG_TIPOFDAY_H #define DLG_TIPOFDAY_H +#include #include +#include +#include #include -#include - -class QDialogButtonBox; -class QHBoxLayout; -class QPixmap; -class QVBoxLayout; -class QWidget; +#include inline Q_LOGGING_CATEGORY(DlgTipOfTheDayLog, "dlg_tip_of_the_day"); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_update.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_update.cpp index 76bb13248..bac270580 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_update.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_update.cpp @@ -4,33 +4,18 @@ #include "../client/network/update/client/client_update_checker.h" #include "../client/network/update/client/release_channel.h" #include "../interface/window_main.h" -#include "update/client/update_downloader.h" -#include -#include #include -#include -#include #include -#include #include #include #include -#include -#include #include -#include -#include -#include #include #include -#include -#include -#include #include #include -#include -#include +#include #include // Executable that, when it sits next to the downloaded update installer, is installed instead of diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_update.h b/cockatrice/src/interface/widgets/dialogs/dlg_update.h index 026a54a8c..2cef46e70 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_update.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_update.h @@ -7,24 +7,17 @@ #ifndef DLG_UPDATE_H #define DLG_UPDATE_H -#include "../../../client/network/update/client/release_channel.h" +#include "../client/network/update/client/update_downloader.h" -#include +#include #include -#include -#include -#include -#include - -class QDialogButtonBox; -class QLabel; -class QProgressBar; -class QPushButton; -class QWidget; -class UpdateDownloader; +#include +#include inline Q_LOGGING_CATEGORY(DlgUpdateLog, "dlg_update"); +class Release; + class DlgUpdate : public QDialog { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp index d55e800a1..957e039c0 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp @@ -4,18 +4,13 @@ #include "../../logger.h" #include -#include #include -#include -#include #include #include #include #include #include -class QWidget; - DlgViewLog::DlgViewLog(QWidget *parent) : QDialog(parent) { logArea = new QPlainTextEdit; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.h b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.h index d63ff5ffc..5c7315b50 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.h +++ b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.h @@ -7,14 +7,11 @@ #ifndef DLG_VIEWLOG_H #define DLG_VIEWLOG_H +#include #include -#include -#include class QPlainTextEdit; -class QCheckBox; -class QPushButton; -class QWidget; +class QCloseEvent; class DlgViewLog : public QDialog { diff --git a/cockatrice/src/interface/widgets/dialogs/override_printing_warning.cpp b/cockatrice/src/interface/widgets/dialogs/override_printing_warning.cpp index 57f7ff7f5..33d102f5e 100644 --- a/cockatrice/src/interface/widgets/dialogs/override_printing_warning.cpp +++ b/cockatrice/src/interface/widgets/dialogs/override_printing_warning.cpp @@ -3,13 +3,7 @@ #include "../../card_picture_loader/card_picture_loader.h" #include "../../client/settings/cache_settings.h" -#include -#include -#include #include - -class QWidget; - bool OverridePrintingWarning::execMessageBox(QWidget *parent, bool enable) { QString message; diff --git a/cockatrice/src/interface/widgets/dialogs/override_printing_warning.h b/cockatrice/src/interface/widgets/dialogs/override_printing_warning.h index 6c5891373..f2c926fc3 100644 --- a/cockatrice/src/interface/widgets/dialogs/override_printing_warning.h +++ b/cockatrice/src/interface/widgets/dialogs/override_printing_warning.h @@ -1,7 +1,6 @@ #ifndef COCKATRICE_OVERRIDE_PRINTING_WARN_H #define COCKATRICE_OVERRIDE_PRINTING_WARN_H - -class QWidget; +#include namespace OverridePrintingWarning { diff --git a/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.cpp b/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.cpp index 3463fe6df..66170792a 100644 --- a/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.cpp +++ b/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.cpp @@ -2,20 +2,11 @@ #include #include -#include -#include -#include -#include +#include #include -#include #include -#include -#include -#include #include -class QObject; - #define TIPDDBMODEL_COLUMNS 3 TipOfTheDay::TipOfTheDay(QString _title, QString _content, QString _imagePath, QDate _date) diff --git a/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.h b/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.h index 4e6e23567..9cda07e2b 100644 --- a/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.h +++ b/cockatrice/src/interface/widgets/dialogs/tip_of_the_day.h @@ -9,12 +9,6 @@ #include #include -#include -#include -#include - -class QObject; -template class QList; class TipOfTheDay { diff --git a/cockatrice/src/interface/widgets/general/background_sources.h b/cockatrice/src/interface/widgets/general/background_sources.h index 775d55895..423111bb6 100644 --- a/cockatrice/src/interface/widgets/general/background_sources.h +++ b/cockatrice/src/interface/widgets/general/background_sources.h @@ -9,10 +9,7 @@ #include #include -#include #include -#include -#include class BackgroundSources { diff --git a/cockatrice/src/interface/widgets/general/display/background_plate_widget.cpp b/cockatrice/src/interface/widgets/general/display/background_plate_widget.cpp index fd9ad67a8..aad259900 100644 --- a/cockatrice/src/interface/widgets/general/display/background_plate_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/background_plate_widget.cpp @@ -1,9 +1,9 @@ #include "background_plate_widget.h" +#include #include #include -#include -#include +#include BackgroundPlateWidget::BackgroundPlateWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/general/display/background_plate_widget.h b/cockatrice/src/interface/widgets/general/display/background_plate_widget.h index 6634069c4..1fc1bc3ba 100644 --- a/cockatrice/src/interface/widgets/general/display/background_plate_widget.h +++ b/cockatrice/src/interface/widgets/general/display/background_plate_widget.h @@ -2,7 +2,6 @@ #define COCKATRICE_BACKGROUND_PLATE_WIDGET_H #include -#include class BackgroundPlateWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/banner_widget.cpp b/cockatrice/src/interface/widgets/general/display/banner_widget.cpp index baf46bbba..31f384cac 100644 --- a/cockatrice/src/interface/widgets/general/display/banner_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/banner_widget.cpp @@ -2,15 +2,10 @@ #include "../../../pixel_map_generator.h" -#include -#include -#include #include +#include #include -#include -#include -#include -#include +#include BannerWidget::BannerWidget(QWidget *parent, const QString &text, Qt::Orientation orientation, int transparency_) : QWidget(parent), gradientOrientation(orientation), transparency(qBound(0, transparency_, 100)) diff --git a/cockatrice/src/interface/widgets/general/display/banner_widget.h b/cockatrice/src/interface/widgets/general/display/banner_widget.h index 06556089b..77a05abb6 100644 --- a/cockatrice/src/interface/widgets/general/display/banner_widget.h +++ b/cockatrice/src/interface/widgets/general/display/banner_widget.h @@ -10,10 +10,8 @@ #define BANNER_WIDGET_H #include -#include +#include #include -#include -#include class BannerWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.cpp index 3ea2df6bd..f7ca669f3 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.cpp @@ -1,17 +1,5 @@ #include "bar_chart_background_widget.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - BarChartBackgroundWidget::BarChartBackgroundWidget(QWidget *parent) : QWidget(parent) { setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.h b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.h index 1fc8a3bde..06a17c7c6 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_background_widget.h @@ -1,8 +1,8 @@ #ifndef COCKATRICE_BAR_CHART_BACKGROUND_WIDGET_H #define COCKATRICE_BAR_CHART_BACKGROUND_WIDGET_H +#include #include -#include class BarChartBackgroundWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.cpp index 484ac861d..04315d0ce 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.cpp @@ -1,20 +1,9 @@ #include "bar_chart_widget.h" -#include -#include -#include -#include #include #include #include -#include -#include -#include -#include -#include #include -#include -#include BarChartWidget::BarChartWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.h b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.h index a596c094a..e80a3f8e8 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_chart_widget.h @@ -2,12 +2,9 @@ #define COCKATRICE_BAR_CHART_WIDGET_H #include -#include #include -#include #include #include -#include struct BarSegment { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.cpp index 82d15d5be..2194b6b03 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.cpp @@ -2,10 +2,6 @@ #include #include -#include -#include -#include -#include BarWidget::BarWidget(QString label, int value, int total, QColor barColor, QWidget *parent) : QWidget(parent), label(std::move(label)), value(value), total(total), barColor(barColor) diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.h b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.h index 18da1f939..05814f15b 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/bar_widget.h @@ -8,11 +8,7 @@ #ifndef BAR_WIDGET_H #define BAR_WIDGET_H -#include -#include #include -#include -#include class BarWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.cpp index 28118cc9c..1087c621e 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.cpp @@ -2,21 +2,10 @@ #include "libcockatrice/utility/color.h" -#include #include -#include #include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include ColorBar::ColorBar(const QMap &_colors, QWidget *parent) : QWidget(parent), colors(GameSpecificColors::MTG::sortManaMapWUBRGCFirst(_colors)) diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.h b/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.h index 3acb7f97f..1d435cec1 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/color_bar.h @@ -2,13 +2,9 @@ #define COCKATRICE_COLOR_BAR_H #include -#include -#include +#include #include #include -#include - -template class QMap; /** * @class ColorBar diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.cpp index 33195a518..3726dd061 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.cpp @@ -1,13 +1,5 @@ #include "percent_bar_widget.h" -#include -#include -#include -#include -#include -#include -#include - PercentBarWidget::PercentBarWidget(QWidget *parent, double initialValue) : QWidget(parent), valueToDisplay(initialValue) { setMinimumSize(50, 10); diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.h b/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.h index f12cb8ae7..9cd6039c8 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/percent_bar_widget.h @@ -8,9 +8,8 @@ #ifndef PERCENT_BAR_WIDGET_H #define PERCENT_BAR_WIDGET_H +#include #include -#include -#include class PercentBarWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.cpp b/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.cpp index 5a3130964..03c69373a 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.cpp @@ -1,19 +1,9 @@ #include "segmented_bar_widget.h" -#include -#include -#include #include #include #include -#include -#include -#include -#include -#include #include -#include -#include SegmentedBarWidget::SegmentedBarWidget(QString label, QVector segments, int total, QWidget *parent) : QWidget(parent), label(std::move(label)), segments(std::move(segments)), total(total) diff --git a/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.h b/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.h index c8c7dc2b9..4df54e42e 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.h +++ b/cockatrice/src/interface/widgets/general/display/charts/bars/segmented_bar_widget.h @@ -2,12 +2,8 @@ #define COCKATRICE_SEGMENTED_BAR_WIDGET_H #include -#include -#include -#include #include #include -#include class SegmentedBarWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.cpp b/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.cpp index 82542a663..bd4641981 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.cpp +++ b/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.cpp @@ -2,22 +2,10 @@ #include "libcockatrice/utility/color.h" -#include -#include #include #include -#include -#include -#include -#include -#include -#include #include -#include #include -#include -#include -#include ColorPie::ColorPie(const QMap &_colors, QWidget *parent) : QWidget(parent), colors(GameSpecificColors::MTG::sortManaMapWUBRGCFirst(_colors)) diff --git a/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.h b/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.h index 0fe023f63..60d8e18f2 100644 --- a/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.h +++ b/cockatrice/src/interface/widgets/general/display/charts/pies/color_pie.h @@ -1,12 +1,6 @@ #ifndef COCKATRICE_COLOR_PIE_H #define COCKATRICE_COLOR_PIE_H -#include -#include -#include -#include - -class QPoint; #ifndef COLOR_PIE_H #define COLOR_PIE_H diff --git a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.cpp b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.cpp index 0609eb16a..f485e0040 100644 --- a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.cpp +++ b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.cpp @@ -1,17 +1,8 @@ #include "dynamic_font_size_label.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - #define FONT_PRECISION (0.5) +#include + DynamicFontSizeLabel::DynamicFontSizeLabel(QWidget *parent, Qt::WindowFlags f) : QLabel(parent, f) { setIndent(0); diff --git a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.h b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.h index cd029902a..c9b159b02 100644 --- a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.h +++ b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_label.h @@ -9,12 +9,6 @@ #include #include -#include -#include -#include -#include - -class QWidget; class DynamicFontSizeLabel : public QLabel { diff --git a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.cpp b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.cpp index 25e8ca48f..653b2cd5c 100644 --- a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.cpp +++ b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.cpp @@ -2,14 +2,7 @@ #include "dynamic_font_size_label.h" -#include -#include -#include #include -#include -#include -#include -#include DynamicFontSizePushButton::DynamicFontSizePushButton(QWidget *parent) : QPushButton(parent) { diff --git a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.h b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.h index dfbb03d20..540abfe6b 100644 --- a/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.h +++ b/cockatrice/src/interface/widgets/general/display/dynamic_font_size_push_button.h @@ -7,12 +7,9 @@ #ifndef DYNAMICFONTSIZEPUSHBUTTON_H #define DYNAMICFONTSIZEPUSHBUTTON_H -#include +#include #include -#include -#include - -class QWidget; +#include class DynamicFontSizePushButton : public QPushButton { diff --git a/cockatrice/src/interface/widgets/general/display/labeled_input.cpp b/cockatrice/src/interface/widgets/general/display/labeled_input.cpp index 40ee91bcc..ee26c78d9 100644 --- a/cockatrice/src/interface/widgets/general/display/labeled_input.cpp +++ b/cockatrice/src/interface/widgets/general/display/labeled_input.cpp @@ -1,12 +1,5 @@ #include "labeled_input.h" -#include -#include -#include -#include -#include -#include - LabeledInput::LabeledInput(QWidget *parent, const QString &labelText) : QWidget(parent) { label = new QLabel(labelText, this); diff --git a/cockatrice/src/interface/widgets/general/display/labeled_input.h b/cockatrice/src/interface/widgets/general/display/labeled_input.h index a07d50dbb..838dfb280 100644 --- a/cockatrice/src/interface/widgets/general/display/labeled_input.h +++ b/cockatrice/src/interface/widgets/general/display/labeled_input.h @@ -7,15 +7,11 @@ #ifndef LABELED_INPUT_H #define LABELED_INPUT_H -#include -#include +#include +#include +#include +#include #include -#include - -class QComboBox; -class QHBoxLayout; -class QLabel; -class QSpinBox; class LabeledInput final : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp b/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp index e1218a6fb..7db18c57d 100644 --- a/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp +++ b/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp @@ -1,13 +1,7 @@ #include "shadow_background_label.h" -#include -#include +#include #include -#include -#include -#include - -class QWidget; /** * @class ShadowBackgroundLabel diff --git a/cockatrice/src/interface/widgets/general/display/shadow_background_label.h b/cockatrice/src/interface/widgets/general/display/shadow_background_label.h index e64b9ca5b..69232691e 100644 --- a/cockatrice/src/interface/widgets/general/display/shadow_background_label.h +++ b/cockatrice/src/interface/widgets/general/display/shadow_background_label.h @@ -8,10 +8,6 @@ #define STYLEDLABEL_H #include -#include -#include - -class QWidget; class ShadowBackgroundLabel : public QLabel { diff --git a/cockatrice/src/interface/widgets/general/home_styled_button.cpp b/cockatrice/src/interface/widgets/general/home_styled_button.cpp index 7f23827bc..c7bdd1e5e 100644 --- a/cockatrice/src/interface/widgets/general/home_styled_button.cpp +++ b/cockatrice/src/interface/widgets/general/home_styled_button.cpp @@ -1,19 +1,9 @@ #include "home_styled_button.h" -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include - -class QWidget; +#include +#include HomeStyledButton::HomeStyledButton(const QString &text, QPair _gradientColors, QWidget *parent) : QPushButton(text, parent), gradientColors(_gradientColors) diff --git a/cockatrice/src/interface/widgets/general/home_styled_button.h b/cockatrice/src/interface/widgets/general/home_styled_button.h index 55ac5550f..f8d97e9aa 100644 --- a/cockatrice/src/interface/widgets/general/home_styled_button.h +++ b/cockatrice/src/interface/widgets/general/home_styled_button.h @@ -6,13 +6,7 @@ #ifndef HOME_STYLED_BUTTON_H #define HOME_STYLED_BUTTON_H -#include -#include #include -#include -#include - -class QWidget; class HomeStyledButton : public QPushButton { diff --git a/cockatrice/src/interface/widgets/general/home_widget.cpp b/cockatrice/src/interface/widgets/general/home_widget.cpp index c77fd76fd..648d315f9 100644 --- a/cockatrice/src/interface/widgets/general/home_widget.cpp +++ b/cockatrice/src/interface/widgets/general/home_widget.cpp @@ -2,68 +2,25 @@ #include "../../../client/settings/cache_settings.h" #include "../../../interface/widgets/tabs/tab_supervisor.h" -#include "../../deck_loader/deck_file_format.h" -#include "../../deck_loader/deck_loader.h" -#include "../../deck_loader/loaded_deck.h" #include "../../pixel_map_generator.h" -#include "../../theme_config.h" #include "../../theme_manager.h" #include "../../window_main.h" #include "../cards/art_crop_attribution.h" -#include "../cards/card_info_picture_art_crop_widget.h" -#include "abstract_client.h" #include "background_sources.h" #include "home_styled_button.h" #include "home_tab_button_color.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include -#include -#include -#include -#include #include -#include #include #include -#include -#include -#include #include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include #include #include #include #include -#include -#include -#include -#include HomeWidget::HomeWidget(QWidget *parent, TabSupervisor *_tabSupervisor) : QWidget(parent), tabSupervisor(_tabSupervisor), background(themePixmap(QStringLiteral("backgrounds/home"))) diff --git a/cockatrice/src/interface/widgets/general/home_widget.h b/cockatrice/src/interface/widgets/general/home_widget.h index fb9566cad..1cadc4a67 100644 --- a/cockatrice/src/interface/widgets/general/home_widget.h +++ b/cockatrice/src/interface/widgets/general/home_widget.h @@ -7,23 +7,16 @@ #ifndef HOME_WIDGET_H #define HOME_WIDGET_H -#include "libcockatrice/deck_list/deck_list.h" +#include "../../../interface/widgets/tabs/tab_supervisor.h" +#include "../cards/card_info_picture_art_crop_widget.h" +#include "home_styled_button.h" -#include -#include -#include +#include #include #include -#include class QGridLayout; class QLabel; -class CardInfoPictureArtCropWidget; -class ExactCard; -class HomeStyledButton; -class QGroupBox; -class QTimer; -class TabSupervisor; class HomeWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.cpp b/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.cpp index 6a6025ec2..01c9ac34e 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.cpp +++ b/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.cpp @@ -6,17 +6,10 @@ #include "flow_widget.h" -#include "../../../layouts/flow_layout.h" - -#include #include #include -#include -#include -#include #include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.h b/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.h index dbf33d07f..4d52db3f1 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.h +++ b/cockatrice/src/interface/widgets/general/layout_containers/flow_widget.h @@ -8,17 +8,13 @@ #ifndef FLOW_WIDGET_H #define FLOW_WIDGET_H -#include -#include -#include -#include -#include +#include "../../../layouts/flow_layout.h" -class FlowLayout; -class QHBoxLayout; -class QKeyEvent; -class QLayoutItem; -class QScrollArea; +#include +#include +#include +#include +#include inline Q_LOGGING_CATEGORY(FlowWidgetLog, "flow_widget", QtInfoMsg); inline Q_LOGGING_CATEGORY(FlowWidgetSizeLog, "flow_widget.size", QtInfoMsg); diff --git a/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.cpp b/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.cpp index 8cfe190e2..97068978d 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.cpp +++ b/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.cpp @@ -1,11 +1,7 @@ #include "overlap_control_widget.h" -#include "../display/labeled_input.h" #include "overlap_widget.h" -#include -#include - OverlapControlWidget::OverlapControlWidget(int overlapPercentage, int maxColumns, int maxRows, diff --git a/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.h b/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.h index c5639110f..104a97da9 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.h +++ b/cockatrice/src/interface/widgets/general/layout_containers/overlap_control_widget.h @@ -6,14 +6,12 @@ #ifndef OVERLAP_CONTROL_WIDGET_H #define OVERLAP_CONTROL_WIDGET_H -#include -#include -#include +#include "../display/labeled_input.h" +#include "overlap_widget.h" -class LabeledInput; -class OverlapWidget; -class QHBoxLayout; -class QSlider; +#include +#include +#include class OverlapControlWidget final : public QWidget { diff --git a/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.cpp b/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.cpp index 03240211c..1c4ee30ab 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.cpp +++ b/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.cpp @@ -1,9 +1,9 @@ #include "overlap_widget.h" -#include "../../../layouts/overlap_layout.h" +#include "../../../layouts/flow_layout.h" -#include #include +#include /** * @class OverlapWidget diff --git a/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.h b/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.h index c103c5f80..62c620201 100644 --- a/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.h +++ b/cockatrice/src/interface/widgets/general/layout_containers/overlap_widget.h @@ -7,12 +7,9 @@ #ifndef OVERLAP_WIDGET_H #define OVERLAP_WIDGET_H -#include -#include -#include -#include +#include "../../../layouts/overlap_layout.h" -class OverlapLayout; +#include class OverlapWidget final : public QWidget { diff --git a/cockatrice/src/interface/widgets/menus/deck_editor_menu.cpp b/cockatrice/src/interface/widgets/menus/deck_editor_menu.cpp index b0503ec22..6e27b4e42 100644 --- a/cockatrice/src/interface/widgets/menus/deck_editor_menu.cpp +++ b/cockatrice/src/interface/widgets/menus/deck_editor_menu.cpp @@ -2,14 +2,9 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../deck_editor/deck_editor_filter_dock_widget.h" #include "../tabs/abstract_tab_deck_editor.h" -#include -#include -#include #include - DeckEditorMenu::DeckEditorMenu(AbstractTabDeckEditor *parent) : QMenu(parent), deckEditor(parent) { aNewDeck = new QAction(QString(), this); diff --git a/cockatrice/src/interface/widgets/menus/deck_editor_menu.h b/cockatrice/src/interface/widgets/menus/deck_editor_menu.h index 904fbb6f4..08ce7bba1 100644 --- a/cockatrice/src/interface/widgets/menus/deck_editor_menu.h +++ b/cockatrice/src/interface/widgets/menus/deck_editor_menu.h @@ -8,11 +8,8 @@ #define DECK_EDITOR_MENU_H #include -#include class AbstractTabDeckEditor; -class QAction; - class DeckEditorMenu : public QMenu { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/onboarding/first_run_wizard.cpp b/cockatrice/src/interface/widgets/onboarding/first_run_wizard.cpp index 426811ec2..4af02fe4f 100644 --- a/cockatrice/src/interface/widgets/onboarding/first_run_wizard.cpp +++ b/cockatrice/src/interface/widgets/onboarding/first_run_wizard.cpp @@ -10,6 +10,7 @@ #include "shader_banner_widget.h" #include "step_indicator_widget.h" +#include #include #include #include @@ -17,10 +18,6 @@ #include #include #include -#include -#include - -class QWidget; FirstRunWizard::FirstRunWizard(QWidget *parent) : QDialog(parent) { @@ -185,10 +182,10 @@ void FirstRunWizard::onCardDatabaseUpdateFinished(bool success) } } -void FirstRunWizard::onCardDatabaseUpdateProgress(const CardUpdateProgress &progress) +void FirstRunWizard::onCardDatabaseUpdateProgress(const QString &stage, qint64 done, qint64 total) { if (cardDatabasePage) { - cardDatabasePage->onUpdateProgress(progress); + cardDatabasePage->onUpdateProgress(stage, done, total); } } diff --git a/cockatrice/src/interface/widgets/onboarding/first_run_wizard.h b/cockatrice/src/interface/widgets/onboarding/first_run_wizard.h index 812985a9f..21d7b6e06 100644 --- a/cockatrice/src/interface/widgets/onboarding/first_run_wizard.h +++ b/cockatrice/src/interface/widgets/onboarding/first_run_wizard.h @@ -1,13 +1,8 @@ #ifndef FIRST_RUN_WIZARD_H #define FIRST_RUN_WIZARD_H -#include "../../card_database_update/card_update_progress.h" - #include #include -#include -#include -#include class BannerHost; class FirstRunWizardPage; @@ -16,7 +11,6 @@ class CardDatabaseSetupPage; class QLabel; class QPushButton; class QStackedWidget; -class QWidget; /** @brief Polished first-run onboarding flow: card database setup, theme * selection, server account setup, and a handful of key preferences. @@ -44,7 +38,7 @@ public slots: void onCardDatabaseUpdateFinished(bool success); /** @brief Forwarded from MainWindow while the background card database update process runs. */ - void onCardDatabaseUpdateProgress(const CardUpdateProgress &progress); + void onCardDatabaseUpdateProgress(const QString &stage, qint64 done, qint64 total); protected: void closeEvent(QCloseEvent *event) override; diff --git a/cockatrice/src/interface/widgets/onboarding/first_run_wizard_page.h b/cockatrice/src/interface/widgets/onboarding/first_run_wizard_page.h index e7b818810..bdcd123bd 100644 --- a/cockatrice/src/interface/widgets/onboarding/first_run_wizard_page.h +++ b/cockatrice/src/interface/widgets/onboarding/first_run_wizard_page.h @@ -1,9 +1,7 @@ #ifndef FIRST_RUN_WIZARD_PAGE_H #define FIRST_RUN_WIZARD_PAGE_H -#include #include -#include /** @brief Base class for a single step of FirstRunWizard. * diff --git a/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.cpp index 16a1d2254..2107ea8bf 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.cpp @@ -1,14 +1,8 @@ #include "account_setup_page.h" -#include "../first_run_wizard_page.h" - #include #include -#include #include -#include - -class QWidget; AccountSetupPage::AccountSetupPage(QWidget *parent) : FirstRunWizardPage(parent) { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.h b/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.h index 344b4e41a..0d9b76699 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/account_setup_page.h @@ -3,11 +3,8 @@ #include "../first_run_wizard_page.h" -#include - class QLabel; class QPushButton; -class QWidget; /** @brief First-run account step. Does NOT embed DlgRegister's fields: they exist * to be handed to ConnectionController's network registration flow, which diff --git a/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.cpp index cb53a25f3..50e8ff63d 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.cpp @@ -1,31 +1,23 @@ #include "card_database_setup_page.h" #include "../../client/settings/cache_settings.h" -#include "../first_run_wizard_page.h" -#include "libcockatrice/card/database/card_database.h" #include #include #include #include -#include #include #include #include #include #include -#include #include #include #include #include -#include -#include -#include #include #include #include -#include CardDatabaseSetupPage::CardDatabaseSetupPage(QWidget *parent) : FirstRunWizardPage(parent) { @@ -188,29 +180,21 @@ void CardDatabaseSetupPage::onUpdateFinished(bool success) } } -void CardDatabaseSetupPage::onUpdateProgress(const CardUpdateProgress &progress) +void CardDatabaseSetupPage::onUpdateProgress(const QString &stage, qint64 done, qint64 total) { if (state != State::Running) { return; } - const qint64 total = progress.total; - const qint64 done = progress.done; progressBar->setRange(0, total > 0 ? static_cast(qMin(total, INT_MAX)) : 0); progressBar->setValue(static_cast(qMin(done, INT_MAX))); if (total > 0) { const int percent = static_cast((100.0 * done) / total); - switch (progress.stage) { - case CardUpdateStage::Download: - statusLabel->setText(tr("Downloading the card database (%1%)…").arg(percent)); - break; - case CardUpdateStage::Scan: - statusLabel->setText(tr("Parsing the card database (%1%)…").arg(percent)); - break; - case CardUpdateStage::Import: - statusLabel->setText(tr("Importing cards (%1%)…").arg(percent)); - break; - case CardUpdateStage::Unknown: - break; + if (stage == QLatin1String("download")) { + statusLabel->setText(tr("Downloading the card database (%1%)…").arg(percent)); + } else if (stage == QLatin1String("scan")) { + statusLabel->setText(tr("Parsing the card database (%1%)…").arg(percent)); + } else if (stage == QLatin1String("import")) { + statusLabel->setText(tr("Importing cards (%1%)…").arg(percent)); } } } diff --git a/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.h b/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.h index a84223497..870e759ea 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/card_database_setup_page.h @@ -1,13 +1,9 @@ #ifndef CARD_DATABASE_SETUP_PAGE_H #define CARD_DATABASE_SETUP_PAGE_H -#include "../../../card_database_update/card_update_progress.h" #include "../first_run_wizard_page.h" #include -#include -#include -#include class QComboBox; class QLabel; @@ -34,7 +30,7 @@ public: void retranslateUi() override; void onUpdateFinished(bool success); - void onUpdateProgress(const CardUpdateProgress &progress); + void onUpdateProgress(const QString &stage, qint64 done, qint64 total); signals: void updateRequested(); diff --git a/cockatrice/src/interface/widgets/onboarding/pages/finish_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/finish_page.cpp index 1adf35282..4205fa532 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/finish_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/finish_page.cpp @@ -1,13 +1,7 @@ #include "finish_page.h" -#include "../first_run_wizard_page.h" - #include -#include #include -#include - -class QWidget; FinishPage::FinishPage(QWidget *parent) : FirstRunWizardPage(parent) { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/finish_page.h b/cockatrice/src/interface/widgets/onboarding/pages/finish_page.h index b78e40ec5..40ebc6ed0 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/finish_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/finish_page.h @@ -3,10 +3,7 @@ #include "../first_run_wizard_page.h" -#include - class QLabel; -class QWidget; class FinishPage : public FirstRunWizardPage { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.cpp index da08e3a12..fceb34deb 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.cpp @@ -2,7 +2,6 @@ #include "../../client/settings/cache_settings.h" #include "../../client/sound_engine.h" -#include "../first_run_wizard_page.h" #include "libcockatrice/settings/interface_settings.h" #include "libcockatrice/settings/sound_settings.h" #include "libcockatrice/settings/tabs_settings.h" @@ -10,16 +9,10 @@ #include #include #include -#include #include #include -#include #include -#include #include -#include -#include -#include namespace { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.h b/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.h index 18d6c0e8f..eed1b3aed 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/preferences_setup_page.h @@ -3,13 +3,10 @@ #include "../first_run_wizard_page.h" -#include - class QCheckBox; class QComboBox; class QGroupBox; class QLabel; -class QWidget; /** @brief A curated subset of settings for the user to adjust. **/ diff --git a/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.cpp index 66554d85c..797fe4425 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.cpp @@ -1,12 +1,10 @@ #include "theme_setup_page.h" -#include "../../../theme_config.h" #include "../../client/settings/cache_settings.h" #include "../../interface/palette_editor/palette_generator.h" #include "../../interface/palette_editor/quick_setup_panel.h" #include "../../interface/theme_manager.h" #include "../../interface/widgets/general/background_sources.h" -#include "../first_run_wizard_page.h" #include "libcockatrice/settings/appearance_settings.h" #include @@ -14,21 +12,12 @@ #include #include #include -#include -#include -#include +#include #include -#include #include -#include -#include #include -#include -#include -#include #include - -class QWidget; +#include namespace { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.h b/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.h index b0d717043..16a3c9a5d 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/theme_setup_page.h @@ -3,14 +3,9 @@ #include "../first_run_wizard_page.h" -#include -#include -#include - class QComboBox; class QGroupBox; class QuickSetupPanel; -class QWidget; /** @brief First-run theme step. Reuses the same building blocks as Appearance * settings and the Palette Editor (ThemeManager, PaletteConfig, diff --git a/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.cpp b/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.cpp index 71d2fa409..16e0719d2 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.cpp +++ b/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.cpp @@ -3,23 +3,15 @@ #include "../../../../main.h" #include "../../client/settings/cache_settings.h" #include "../../settings_page/general_settings_page.h" -#include "../first_run_wizard_page.h" #include "libcockatrice/settings/personal_settings.h" #include -#include #include #include #include -#include #include -#include +#include #include -#include -#include -#include - -class QWidget; WelcomePage::WelcomePage(QWidget *parent) : FirstRunWizardPage(parent) { diff --git a/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.h b/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.h index 289034ab1..93b24d83d 100644 --- a/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.h +++ b/cockatrice/src/interface/widgets/onboarding/pages/welcome_page.h @@ -3,11 +3,8 @@ #include "../first_run_wizard_page.h" -#include - class QComboBox; class QLabel; -class QWidget; class WelcomePage : public FirstRunWizardPage { diff --git a/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.cpp b/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.cpp index c17399957..0b9f65783 100644 --- a/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.cpp +++ b/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.cpp @@ -1,27 +1,16 @@ #include "shader_banner_widget.h" -#include "../../theme_config.h" #include "../../theme_manager.h" #include "banner_shader_config.h" #include "brand_colors.h" #include -#include -#include -#include #include -#include #include #include #include -#include +#include #include -#include -#include -#include -#include -#include -#include namespace { diff --git a/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.h b/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.h index 6fa0c703f..ac47b1141 100644 --- a/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.h +++ b/cockatrice/src/interface/widgets/onboarding/shader_banner_widget.h @@ -5,8 +5,6 @@ #include #include #include -#include -#include class BannerShaderConfig; class QQuickWidget; diff --git a/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.cpp b/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.cpp index 004bdcc11..d25e8544b 100644 --- a/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.cpp +++ b/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.cpp @@ -1,13 +1,7 @@ #include "step_indicator_widget.h" -#include -#include #include #include -#include -#include -#include -#include StepIndicatorWidget::StepIndicatorWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.h b/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.h index d2b5dfcb5..1b85be04f 100644 --- a/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.h +++ b/cockatrice/src/interface/widgets/onboarding/step_indicator_widget.h @@ -2,7 +2,6 @@ #define STEP_INDICATOR_WIDGET_H #include -#include /** @brief Row of dots showing progress through a fixed-length sequence of steps, * in the style of a mobile/OS setup flow. Purely presentational. */ diff --git a/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.cpp b/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.cpp index f77aefb33..e970f8413 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.cpp +++ b/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.cpp @@ -1,9 +1,6 @@ #include "playmat_collection_dialog.h" #include "../../../client/settings/cache_settings.h" -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" #include "playmat_settings_dialog.h" #include @@ -11,15 +8,10 @@ #include #include #include -#include #include -#include #include -#include #include -class QWidget; - PlaymatCollectionDialog::PlaymatCollectionDialog(QWidget *parent) : QDialog(parent) { setMinimumWidth(420); diff --git a/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.h b/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.h index a04cfdf54..167893f8e 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.h +++ b/cockatrice/src/interface/widgets/playmat/playmat_collection_dialog.h @@ -2,15 +2,13 @@ #define COCKATRICE_PLAYMAT_COLLECTION_DIALOG_H #include -#include #include -#include class QComboBox; class QLabel; class QListWidget; +class QListWidgetItem; class QPushButton; -class QWidget; /** * @brief Dialog for editing the user-level playmat collection. diff --git a/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.cpp b/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.cpp index 881866292..130daadf4 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.cpp @@ -3,22 +3,13 @@ #include "../cards/art_crop_attribution.h" #include "playmat_utils.h" -#include -#include -#include #include #include #include #include -#include -#include -#include -#include -#include +#include #include -#include #include -#include namespace { diff --git a/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.h b/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.h index 5e54e96eb..88b9ec41d 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.h +++ b/cockatrice/src/interface/widgets/playmat/playmat_preview_widget.h @@ -1,15 +1,10 @@ #ifndef COCKATRICE_PLAYMAT_PREVIEW_WIDGET_H #define COCKATRICE_PLAYMAT_PREVIEW_WIDGET_H -#include "libcockatrice/utility/playmat_params.h" - +#include #include -#include -#include -#include #include -#include -#include +#include /** * @brief Interactive crop surface showing how a playmat card art will appear diff --git a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp index 5a4457d34..9459c5ea9 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp +++ b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp @@ -6,11 +6,6 @@ #include "../utility/completer_utils.h" #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" #include "playmat_preview_widget.h" #include @@ -20,18 +15,14 @@ #include #include #include +#include #include #include -#include +#include +#include #include -#include -#include -#include #include -#include #include -#include -#include PlaymatSettingsDialog::PlaymatSettingsDialog(const CardRef &initialCard, const PlaymatParams &initialParams, diff --git a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.h b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.h index 07833af25..9ef306a5f 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.h +++ b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.h @@ -1,14 +1,9 @@ #ifndef COCKATRICE_PLAYMAT_SETTINGS_DIALOG_H #define COCKATRICE_PLAYMAT_SETTINGS_DIALOG_H -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" - #include -#include #include -#include -#include +#include class QCheckBox; class QComboBox; diff --git a/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.cpp index bad88ddbb..579106540 100644 --- a/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.cpp @@ -1,21 +1,8 @@ #include "all_zones_card_amount_widget.h" #include "../general/display/shadow_background_label.h" -#include "card_amount_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include -#include -#include #include -#include -#include -#include - -class DeckStateManager; /** * @brief Constructor for the AllZonesCardAmountWidget class. diff --git a/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.h b/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.h index cefabe293..325dd1c1b 100644 --- a/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/all_zones_card_amount_widget.h @@ -7,15 +7,11 @@ #ifndef ALL_ZONES_CARD_AMOUNT_WIDGET_H #define ALL_ZONES_CARD_AMOUNT_WIDGET_H -#include -#include +#include "../../deck_loader/deck_loader.h" +#include "card_amount_widget.h" -class CardAmountWidget; -class DeckStateManager; -class ExactCard; -class QLabel; -class QSlider; -class QVBoxLayout; +#include +#include class AllZonesCardAmountWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.cpp index 4b5040741..ff47e7b9c 100644 --- a/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.cpp @@ -1,30 +1,9 @@ #include "card_amount_widget.h" #include "../deck_editor/deck_state_manager.h" -#include "../general/display/dynamic_font_size_push_button.h" -#include "deck_list_model.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QModelIndex; +#include /** * @brief Constructs a widget for displaying and controlling the card count in a specific zone. diff --git a/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.h b/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.h index 6f5889fc7..2780e3ad2 100644 --- a/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/card_amount_widget.h @@ -8,17 +8,15 @@ #ifndef CARD_AMOUNT_WIDGET_H #define CARD_AMOUNT_WIDGET_H -#include "libcockatrice/card/printing/exact_card.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../general/display/dynamic_font_size_push_button.h" -#include +#include +#include +#include #include -#include - -class DeckStateManager; -class DynamicFontSizePushButton; -class QHBoxLayout; -class QLabel; -class QSlider; +#include +#include class CardAmountWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector.cpp index 27ae61b94..f16b4885c 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector.cpp @@ -1,38 +1,19 @@ #include "printing_selector.h" #include "../../../client/settings/cache_settings.h" -#include "../cards/card_size_widget.h" +#include "../../../interface/card_picture_loader/card_picture_loader.h" +#include "../../../interface/widgets/dialogs/dlg_select_set_for_cards.h" #include "../deck_editor/deck_state_manager.h" -#include "../general/layout_containers/flow_widget.h" -#include "../quick_settings/settings_button_widget.h" -#include "../tabs/abstract_tab_deck_editor.h" -#include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" #include "printing_selector_card_display_widget.h" #include "printing_selector_card_search_widget.h" #include "printing_selector_card_selection_widget.h" #include "printing_selector_card_sorting_widget.h" #include "printing_selector_placeholder_widget.h" -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include -#include #include #include -#include /** * @brief Constructs a PrintingSelector widget to display and manage card printings. diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector.h index b9cb27ecd..14d73f836 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector.h @@ -7,20 +7,18 @@ #ifndef PRINTING_SELECTOR_H #define PRINTING_SELECTOR_H +#include "../cards/card_size_widget.h" +#include "../general/layout_containers/flow_widget.h" +#include "../quick_settings/settings_button_widget.h" +#include "printing_selector_placeholder_widget.h" + +#include +#include +#include +#include #include #include -#include - -class CardSizeWidget; -class FlowWidget; -class PrintingSelectorPlaceholderWidget; -class QCheckBox; -class QHBoxLayout; -class QString; -class QTimer; -class QVBoxLayout; -class SettingsButtonWidget; -template class QMap; +#include #define BATCH_SIZE 10 @@ -35,8 +33,8 @@ class DeckStateManager; class PrintingSelectorCardSearchWidget; class PrintingSelectorCardSelectionWidget; class PrintingSelectorCardSortingWidget; +class PrintingSelectorViewOptionsWidget; class AbstractTabDeckEditor; - class PrintingSelector : public QWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.cpp index 1c3cb635d..edeba86d1 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.cpp @@ -1,22 +1,11 @@ #include "printing_selector_card_display_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "printing_selector.h" #include "printing_selector_card_overlay_widget.h" #include "set_name_and_collectors_number_display_widget.h" -#include -#include -#include -#include +#include #include -#include - -class AbstractTabDeckEditor; -class DeckStateManager; -class QSlider; +#include /** * @brief Constructs a PrintingSelectorCardDisplayWidget to display card information. diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.h index f0a378fd3..4de561f4f 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_display_widget.h @@ -7,25 +7,12 @@ #ifndef PRINTING_SELECTOR_CARD_DISPLAY_WIDGET_H #define PRINTING_SELECTOR_CARD_DISPLAY_WIDGET_H -#include "libcockatrice/card/printing/exact_card.h" - -// IWYU pragma: keep -// ZoneCounts appears inside a QMap in a slot signature, so the moc-generated -// code needs the complete type. -#include "printing_selector.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "printing_selector_card_overlay_widget.h" +#include "set_name_and_collectors_number_display_widget.h" #include -#include - -class AbstractTabDeckEditor; -class DeckStateManager; -class PrintingSelectorCardOverlayWidget; -class QSlider; -class QString; -class QVBoxLayout; -class SetNameAndCollectorsNumberDisplayWidget; -struct ZoneCounts; -template class QMap; +#include class PrintingSelectorCardDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp index bec9100a6..e8816847e 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp @@ -3,46 +3,23 @@ #include "../../../client/settings/cache_settings.h" #include "../../card_picture_loader/card_picture_loader.h" #include "../cards/card_info_picture_widget.h" -#include "../tabs/abstract_tab_deck_editor.h" -#include "all_zones_card_amount_widget.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" +#include "printing_selector_card_display_widget.h" -#include #include -#include #include -#include -#include #include #include -#include #include #include #include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include #include #include #include #include -#include - -class DeckStateManager; +#include namespace { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.h index 20d8f7b4b..fbcfa9230 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.h @@ -7,20 +7,14 @@ #ifndef PRINTING_SELECTOR_CARD_OVERLAY_WIDGET_H #define PRINTING_SELECTOR_CARD_OVERLAY_WIDGET_H -#include "libcockatrice/card/printing/exact_card.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "all_zones_card_amount_widget.h" +#include "set_name_and_collectors_number_display_widget.h" -#include -#include +#include class QAction; class QMenu; -class AbstractTabDeckEditor; -class AllZonesCardAmountWidget; -class CardInfoPictureWidget; -class DeckStateManager; -class QLabel; -class QPoint; -class QSlider; class PrintingSelectorCardOverlayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.cpp index 718e24ea0..3c42f06dc 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.cpp @@ -1,11 +1,5 @@ #include "printing_selector_card_search_widget.h" -#include "printing_selector.h" - -#include -#include -#include - /** * @brief Constructs a PrintingSelectorCardSearchWidget for searching cards by set name or set code. * diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.h index d54cf5fbc..3efabe13c 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_search_widget.h @@ -7,14 +7,11 @@ #ifndef PRINTING_SELECTOR_CARD_SEARCH_WIDGET_H #define PRINTING_SELECTOR_CARD_SEARCH_WIDGET_H -#include -#include -#include +#include "printing_selector.h" -class PrintingSelector; -class QHBoxLayout; -class QLineEdit; -class QTimer; +#include +#include +#include class PrintingSelectorCardSearchWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.cpp index da66591b3..2eb2ef245 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.cpp @@ -1,12 +1,7 @@ #include "printing_selector_card_selection_widget.h" #include "../../../interface/widgets/dialogs/dlg_select_set_for_cards.h" -#include "printing_selector.h" - -#include -#include - -class DeckStateManager; +#include "../tabs/abstract_tab_deck_editor.h" /** * @brief Constructs a PrintingSelectorCardSelectionWidget for navigating through cards in the deck. diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.h index c619c5327..0aa56c9d8 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_selection_widget.h @@ -7,13 +7,11 @@ #ifndef PRINTING_SELECTOR_CARD_SELECTION_WIDGET_H #define PRINTING_SELECTOR_CARD_SELECTION_WIDGET_H -#include -#include +#include "printing_selector.h" -class DeckStateManager; -class PrintingSelector; -class QHBoxLayout; -class QPushButton; +#include +#include +#include class PrintingSelectorCardSelectionWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.cpp index f47ba0746..f4a05cfc7 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.cpp @@ -1,26 +1,11 @@ #include "printing_selector_card_sorting_widget.h" #include "../../../client/settings/cache_settings.h" -#include "deck_list_model.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "printing_selector.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include #include -#include -#include const QString PrintingSelectorCardSortingWidget::SORT_OPTIONS_ALPHABETICAL = tr("Alphabetical"); const QString PrintingSelectorCardSortingWidget::SORT_OPTIONS_PREFERENCE = tr("Preference"); diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.h index 1cd99457b..bb5b60cdc 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_sorting_widget.h @@ -7,20 +7,11 @@ #ifndef PRINTING_SELECTOR_CARD_SORTING_WIDGET_H #define PRINTING_SELECTOR_CARD_SORTING_WIDGET_H -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/printing_info.h" +#include "printing_selector.h" -#include -#include -#include +#include +#include #include -#include - -class DeckListModel; -class PrintingSelector; -class QComboBox; -class QHBoxLayout; -class QPushButton; class PrintingSelectorCardSortingWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.cpp index 7f9ad66c8..aee34bccd 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.cpp @@ -1,10 +1,5 @@ #include "printing_selector_placeholder_widget.h" -#include -#include -#include -#include - PrintingSelectorPlaceholderWidget::PrintingSelectorPlaceholderWidget(QWidget *parent) : QWidget(parent) { setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.h b/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.h index 6702d325a..abf030c69 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_placeholder_widget.h @@ -1,11 +1,9 @@ #ifndef COCKATRICE_PRINTING_SELECTOR_PLACEHOLDER_WIDGET_H #define COCKATRICE_PRINTING_SELECTOR_PLACEHOLDER_WIDGET_H +#include +#include #include -#include - -class QLabel; -class QVBoxLayout; class PrintingSelectorPlaceholderWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.cpp index 9bc92ad90..e12775a04 100644 --- a/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.cpp @@ -1,11 +1,6 @@ #include "set_name_and_collectors_number_display_widget.h" -#include -#include -#include -#include -#include -#include +#include /** * @class SetNameAndCollectorsNumberDisplayWidget diff --git a/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.h b/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.h index 54e580b67..140f190df 100644 --- a/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.h +++ b/cockatrice/src/interface/widgets/printing_selector/set_name_and_collectors_number_display_widget.h @@ -8,12 +8,10 @@ #ifndef SET_NAME_AND_COLLECTORS_NUMBER_DISPLAY_WIDGET_H #define SET_NAME_AND_COLLECTORS_NUMBER_DISPLAY_WIDGET_H -#include +#include +#include +#include #include -#include - -class QLabel; -class QVBoxLayout; class SetNameAndCollectorsNumberDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.cpp b/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.cpp index 981ed843c..881c3e3ac 100644 --- a/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.cpp +++ b/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.cpp @@ -1,21 +1,11 @@ #include "settings_button_widget.h" #include "../../pixel_map_generator.h" -#include "settings_popup_widget.h" #include #include #include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include SettingsButtonWidget::SettingsButtonWidget(QWidget *parent) : QWidget(parent), button(new QToolButton(this)), popup(new SettingsPopupWidget(nullptr)) diff --git a/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.h b/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.h index 015300bf8..1dc52ac72 100644 --- a/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.h +++ b/cockatrice/src/interface/widgets/quick_settings/settings_button_widget.h @@ -8,14 +8,10 @@ #ifndef SETTINGS_BUTTON_WIDGET_H #define SETTINGS_BUTTON_WIDGET_H -#include -#include -#include +#include "settings_popup_widget.h" -class QHBoxLayout; -class QPixmap; -class QToolButton; -class SettingsPopupWidget; +#include +#include class SettingsButtonWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.cpp b/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.cpp index 7ace155a7..8389caea9 100644 --- a/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.cpp +++ b/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.cpp @@ -1,14 +1,10 @@ #include "settings_popup_widget.h" #include -#include +#include #include -#include #include #include -#include -#include -#include SettingsPopupWidget::SettingsPopupWidget(QWidget *parent) : QWidget(parent, Qt::Popup | Qt::FramelessWindowHint) { diff --git a/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.h b/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.h index 61b2cb013..01e86abfe 100644 --- a/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.h +++ b/cockatrice/src/interface/widgets/quick_settings/settings_popup_widget.h @@ -8,11 +8,10 @@ #ifndef SETTINGS_POPUP_WIDGET_H #define SETTINGS_POPUP_WIDGET_H +#include +#include +#include #include -#include - -class QScrollArea; -class QVBoxLayout; class SettingsPopupWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/replay/replay_manager.cpp b/cockatrice/src/interface/widgets/replay/replay_manager.cpp index f3f1da2c4..c51b96b6c 100644 --- a/cockatrice/src/interface/widgets/replay/replay_manager.cpp +++ b/cockatrice/src/interface/widgets/replay/replay_manager.cpp @@ -1,16 +1,10 @@ #include "replay_manager.h" #include "../../../client/settings/cache_settings.h" -#include "../../../game/player/event_processing_options.h" -#include "libcockatrice/protocol/pb/game_event.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/game_replay.pb.h" #include -#include #include #include -#include static constexpr int TIMER_INTERVAL_MS = 200; static constexpr int EMPTY_SECTION_MARGIN_MS = 500; diff --git a/cockatrice/src/interface/widgets/replay/replay_manager.h b/cockatrice/src/interface/widgets/replay/replay_manager.h index 3b33deada..81e66824d 100644 --- a/cockatrice/src/interface/widgets/replay/replay_manager.h +++ b/cockatrice/src/interface/widgets/replay/replay_manager.h @@ -3,14 +3,11 @@ #include "../../../game/player/event_processing_options.h" -#include #include -#include -#include +#include class GameReplay; class QTimer; -class GameEventContainer; /** * @brief This class handles all logic to do with playing back replays diff --git a/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.cpp b/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.cpp index 5b3829af2..5d58705d2 100644 --- a/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.cpp +++ b/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.cpp @@ -1,14 +1,10 @@ #include "replay_quick_settings_widget.h" #include "../../../client/settings/cache_settings.h" -#include "../quick_settings/settings_button_widget.h" -#include "libcockatrice/utility/macros.h" -#include #include #include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.h b/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.h index d0be7d58d..a337ea0a6 100644 --- a/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.h +++ b/cockatrice/src/interface/widgets/replay/replay_quick_settings_widget.h @@ -5,12 +5,7 @@ #include #include -#include -#include #include -#include - -class QWidget; class ReplayQuickSettingsWidget : public SettingsButtonWidget { diff --git a/cockatrice/src/interface/widgets/replay/replay_timeline_widget.cpp b/cockatrice/src/interface/widgets/replay/replay_timeline_widget.cpp index 48a43dba8..fe4ac330b 100644 --- a/cockatrice/src/interface/widgets/replay/replay_timeline_widget.cpp +++ b/cockatrice/src/interface/widgets/replay/replay_timeline_widget.cpp @@ -1,15 +1,9 @@ #include "replay_timeline_widget.h" -#include -#include -#include +#include "../../../client/settings/cache_settings.h" + #include #include -#include -#include -#include -#include -#include static constexpr int BIN_LENGTH = 5000; static constexpr int MIN_RESOLUTION_MS = 1000; diff --git a/cockatrice/src/interface/widgets/replay/replay_timeline_widget.h b/cockatrice/src/interface/widgets/replay/replay_timeline_widget.h index 2c277228f..47d19a741 100644 --- a/cockatrice/src/interface/widgets/replay/replay_timeline_widget.h +++ b/cockatrice/src/interface/widgets/replay/replay_timeline_widget.h @@ -7,9 +7,13 @@ #ifndef REPLAY_TIMELINE_WIDGET #define REPLAY_TIMELINE_WIDGET -#include +#include "../../../game/player/event_processing_options.h" + +#include #include -#include + +class QPaintEvent; +class QTimer; class ReplayTimelineWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/replay/replay_widget.cpp b/cockatrice/src/interface/widgets/replay/replay_widget.cpp index 07b4e72ce..c92771f8c 100644 --- a/cockatrice/src/interface/widgets/replay/replay_widget.cpp +++ b/cockatrice/src/interface/widgets/replay/replay_widget.cpp @@ -3,21 +3,12 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" #include "../../pixel_map_generator.h" -#include "libcockatrice/settings/interface_settings.h" +#include "../interface/widgets/tabs/tab_game.h" #include "replay_manager.h" #include "replay_quick_settings_widget.h" -#include "replay_timeline_widget.h" -#include #include -#include -#include -#include -#include #include -#include - -class GameReplay; ReplayWidget::ReplayWidget(QWidget *parent, GameReplay *replay) : QWidget(parent), replayPlayButton(nullptr), replayFastForwardButton(nullptr), aReplaySkipForward(nullptr), diff --git a/cockatrice/src/interface/widgets/replay/replay_widget.h b/cockatrice/src/interface/widgets/replay/replay_widget.h index 74aace570..6d2b7a043 100644 --- a/cockatrice/src/interface/widgets/replay/replay_widget.h +++ b/cockatrice/src/interface/widgets/replay/replay_widget.h @@ -8,18 +8,15 @@ #ifndef REPLAY_WIDGET_H #define REPLAY_WIDGET_H -#include "../../../game/player/event_processing_options.h" +#include "replay_timeline_widget.h" +#include #include -#include +#include class ReplayManager; class ReplayQuickSettingsWidget; -class GameEventContainer; -class GameReplay; -class QAction; -class QToolButton; -class ReplayTimelineWidget; +class TabGame; /** * @brief The top-level widget that is put in the replay dock widget. diff --git a/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp b/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp index 037a4a1e5..91a7cb965 100644 --- a/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp +++ b/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp @@ -4,47 +4,22 @@ #include "../../client/sound_engine.h" #include "../../interface/card_localization.h" #include "../../interface/pixel_map_generator.h" -#include "../../tabs/tab_supervisor.h" +#include "../../interface/widgets/tabs/tab_account.h" #include "../user/user_context_menu.h" #include "../user/user_list_manager.h" #include "../user/user_list_proxy.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/protocol/pb/event_room_say.pb.h" -#include "room_message_type.h" #include -#include -#include #include #include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include -#include -#include -#include #include #include #include -#include -#include #include #include #include -#include -#include -#include - -class QPoint; const QColor DEFAULT_MENTION_COLOR = QColor(194, 31, 47); diff --git a/cockatrice/src/interface/widgets/server/chat_view/chat_view.h b/cockatrice/src/interface/widgets/server/chat_view/chat_view.h index 3fa7224e5..06e3a0ed8 100644 --- a/cockatrice/src/interface/widgets/server/chat_view/chat_view.h +++ b/cockatrice/src/interface/widgets/server/chat_view/chat_view.h @@ -8,34 +8,22 @@ #ifndef CHATVIEW_H #define CHATVIEW_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" +#include "../../interface/widgets/tabs/tab_supervisor.h" +#include "../user/user_list_widget.h" +#include #include -#include -#include -#include -#include -#include -#include #include -#include #include #include -#include #include #include -#include class AbstractGame; +class QTextTable; +class QMouseEvent; class UserContextMenu; class UserListProxy; -class QAction; -class QPoint; -class QUrl; -class QWidget; -class TabSupervisor; -struct CardRef; -template class QFlags; class UserMessagePosition { diff --git a/cockatrice/src/interface/widgets/server/game_filter_configs.h b/cockatrice/src/interface/widgets/server/game_filter_configs.h index 1b7322c55..5cb048669 100644 --- a/cockatrice/src/interface/widgets/server/game_filter_configs.h +++ b/cockatrice/src/interface/widgets/server/game_filter_configs.h @@ -1,11 +1,6 @@ #ifndef COCKATRICE_GAME_FILTER_CONFIGS_H #define COCKATRICE_GAME_FILTER_CONFIGS_H -#include -#include -#include -#include -#include #include /** diff --git a/cockatrice/src/interface/widgets/server/game_selector.cpp b/cockatrice/src/interface/widgets/server/game_selector.cpp index 27464e14e..659325987 100644 --- a/cockatrice/src/interface/widgets/server/game_selector.cpp +++ b/cockatrice/src/interface/widgets/server/game_selector.cpp @@ -1,54 +1,32 @@ #include "game_selector.h" -#include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" #include "../interface/widgets/dialogs/dlg_create_game.h" #include "../interface/widgets/dialogs/dlg_filter_games.h" +#include "../interface/widgets/tabs/tab_account.h" +#include "../interface/widgets/tabs/tab_game.h" #include "../interface/widgets/tabs/tab_room.h" #include "../interface/widgets/tabs/tab_supervisor.h" #include "../interface/widgets/utility/get_text_with_max.h" #include "game_link.h" -#include "game_selector_quick_filter_toolbar.h" #include "games_model.h" -#include "libcockatrice/protocol/pb/event_add_to_list.pb.h" -#include "libcockatrice/protocol/pb/event_remove_from_list.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include "user/user_list_manager.h" -#include #include #include #include #include #include -#include -#include -#include -#include #include -#include #include -#include -#include -#include #include -#include -#include -#include #include #include #include #include #include +#include #include -#include -#include -#include - -class QModelIndex; -class QPoint; -class QWidget; -template class QList; GameSelector::GameSelector(AbstractClient *_client, TabSupervisor *_tabSupervisor, diff --git a/cockatrice/src/interface/widgets/server/game_selector.h b/cockatrice/src/interface/widgets/server/game_selector.h index 01e093b06..9af39cf50 100644 --- a/cockatrice/src/interface/widgets/server/game_selector.h +++ b/cockatrice/src/interface/widgets/server/game_selector.h @@ -1,34 +1,25 @@ #ifndef GAMESELECTOR_H #define GAMESELECTOR_H +#include "game_selector_quick_filter_toolbar.h" #include "game_type_map.h" #include -#include -// IWYU pragma: keep -// ServerInfo_User appears by value and inside QList in slot signatures, so the -// moc-generated code needs the complete type. -#include +#include +#include +#include class QTreeView; class GamesModel; class GamesProxyModel; class QPushButton; +class QCheckBox; +class QLabel; class AbstractClient; class TabSupervisor; class TabRoom; class ServerInfo_Game; class Response; -class Event_AddToList; -class Event_RemoveFromList; -class GameSelectorQuickFilterToolBar; -class QModelIndex; -class QPoint; -class QString; -class QWidget; -class ServerInfo_User; -template class QMap; -template class QList; /** * @class GameSelector diff --git a/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.cpp b/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.cpp index 0fc3d879c..d668b1c33 100644 --- a/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.cpp +++ b/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.cpp @@ -1,22 +1,12 @@ #include "game_selector_quick_filter_toolbar.h" -#include "game_filter_configs.h" #include "games_model.h" +#include "user/user_list_manager.h" #include #include #include #include -#include -#include -#include -#include -#include -#include -#include - -class TabSupervisor; -template class QMap; GameSelectorQuickFilterToolBar::GameSelectorQuickFilterToolBar(QWidget *parent, TabSupervisor *_tabSupervisor, diff --git a/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.h b/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.h index 99ed179b5..9b7b6e61f 100644 --- a/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.h +++ b/cockatrice/src/interface/widgets/server/game_selector_quick_filter_toolbar.h @@ -1,19 +1,12 @@ #ifndef COCKATRICE_GAME_SELECTOR_QUICK_FILTER_TOOLBAR_H #define COCKATRICE_GAME_SELECTOR_QUICK_FILTER_TOOLBAR_H -#include -#include -#include +#include "../tabs/tab_supervisor.h" +#include "games_model.h" -class GamesProxyModel; -class QCheckBox; -class QComboBox; -class QHBoxLayout; -class QLineEdit; -class QString; -class TabSupervisor; -struct GameFilterConfigs; -template class QMap; +#include +#include +#include class GameSelectorQuickFilterToolBar : public QWidget { diff --git a/cockatrice/src/interface/widgets/server/games_model.cpp b/cockatrice/src/interface/widgets/server/games_model.cpp index 289dbee44..127badbb2 100644 --- a/cockatrice/src/interface/widgets/server/games_model.cpp +++ b/cockatrice/src/interface/widgets/server/games_model.cpp @@ -2,26 +2,13 @@ #include "../../../client/settings/cache_settings.h" #include "../interface/pixel_map_generator.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "user/user_list_proxy.h" -#include "user_level.h" +#include "../interface/widgets/tabs/tab_account.h" +#include "user/user_list_manager.h" +#include "user/user_list_widget.h" -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include #include #include diff --git a/cockatrice/src/interface/widgets/server/games_model.h b/cockatrice/src/interface/widgets/server/games_model.h index 9bf54b83a..b5f86c291 100644 --- a/cockatrice/src/interface/widgets/server/games_model.h +++ b/cockatrice/src/interface/widgets/server/games_model.h @@ -4,18 +4,13 @@ #include "game_filter_configs.h" #include "game_type_map.h" -#include #include -#include -#include +#include #include -#include +#include #include -#include -#include class UserListProxy; -class QObject; /** * @class GamesModel diff --git a/cockatrice/src/interface/widgets/server/handle_public_servers.cpp b/cockatrice/src/interface/widgets/server/handle_public_servers.cpp index 08b7837dd..f5d682c36 100644 --- a/cockatrice/src/interface/widgets/server/handle_public_servers.cpp +++ b/cockatrice/src/interface/widgets/server/handle_public_servers.cpp @@ -2,19 +2,10 @@ #include "../../../client/settings/cache_settings.h" -#include -#include #include -#include -#include #include -#include -#include #include -#include -#include #include -#include #define PUBLIC_SERVERS_JSON "https://cockatrice.github.io/public-servers.json" diff --git a/cockatrice/src/interface/widgets/server/handle_public_servers.h b/cockatrice/src/interface/widgets/server/handle_public_servers.h index bacc7d3bf..fa924b183 100644 --- a/cockatrice/src/interface/widgets/server/handle_public_servers.h +++ b/cockatrice/src/interface/widgets/server/handle_public_servers.h @@ -9,17 +9,8 @@ #include "user/user_info_connection.h" -#include -#include -#include -#include -#include -#include -#include - class QNetworkReply; class QNetworkAccessManager; -class QVariant; /** * This class is used to update the servers.ini file and ensure diff --git a/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.cpp b/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.cpp index 74e403ea8..df9dfbf53 100644 --- a/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.cpp +++ b/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.cpp @@ -1,23 +1,14 @@ #include "remote_decklist_tree_widget.h" -#include "libcockatrice/protocol/pb/response.pb.h" - -#include #include #include -#include -#include #include -#include #include #include #include #include #include -class QObject; -class QWidget; - RemoteDeckList_TreeModel::DirectoryNode::DirectoryNode(const QString &_name, RemoteDeckList_TreeModel::DirectoryNode *_parent) : RemoteDeckList_TreeModel::Node(_name, _parent) diff --git a/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.h b/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.h index d553ffe9e..2cf09aff7 100644 --- a/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.h +++ b/cockatrice/src/interface/widgets/server/remote/remote_decklist_tree_widget.h @@ -8,23 +8,13 @@ #ifndef REMOTEDECKLIST_TREEWIDGET_H #define REMOTEDECKLIST_TREEWIDGET_H -#include #include -#include -#include -#include -#include -#include #include -#include -#include class Response; class AbstractClient; class QSortFilterProxyModel; class ServerInfo_DeckStorage_TreeItem; -class QObject; -class QWidget; class RemoteDeckList_TreeModel : public QAbstractItemModel { @@ -32,7 +22,6 @@ class RemoteDeckList_TreeModel : public QAbstractItemModel public: class DirectoryNode; class FileNode; - class Node { protected: diff --git a/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.cpp b/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.cpp index c131c3cbf..d62bf81aa 100644 --- a/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.cpp +++ b/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.cpp @@ -1,27 +1,16 @@ #include "remote_replay_list_tree_widget.h" #include "../../../pixel_map_generator.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay_match.pb.h" -#include -#include #include #include -#include #include -#include -#include -#include #include #include #include #include #include -class QObject; -class QWidget; - const int RemoteReplayList_TreeModel::numberOfColumns = 6; RemoteReplayList_TreeModel::MatchNode::MatchNode(const ServerInfo_ReplayMatch &_matchInfo) diff --git a/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.h b/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.h index e99702e60..10e698aee 100644 --- a/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.h +++ b/cockatrice/src/interface/widgets/server/remote/remote_replay_list_tree_widget.h @@ -9,30 +9,21 @@ #ifndef REMOTEREPLAYLIST_TREEWIDGET_H #define REMOTEREPLAYLIST_TREEWIDGET_H -#include -#include -#include -#include -#include -#include +#include #include #include #include -#include -#include class Response; class AbstractClient; class QSortFilterProxyModel; -class QObject; -class QWidget; class RemoteReplayList_TreeModel : public QAbstractItemModel { Q_OBJECT private: + class MatchNode; class ReplayNode; - class Node { protected: diff --git a/cockatrice/src/interface/widgets/server/user/user_avatar_provider.cpp b/cockatrice/src/interface/widgets/server/user/user_avatar_provider.cpp index cb5f84eef..c115caa47 100644 --- a/cockatrice/src/interface/widgets/server/user/user_avatar_provider.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_avatar_provider.cpp @@ -1,15 +1,8 @@ #include "user_avatar_provider.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" - -#include #include #include #include -#include -#include UserAvatarProvider::UserAvatarProvider(AbstractClient *client, QObject *parent) : QObject(parent), client(client) { diff --git a/cockatrice/src/interface/widgets/server/user/user_avatar_provider.h b/cockatrice/src/interface/widgets/server/user/user_avatar_provider.h index c1e75bc1c..44491e544 100644 --- a/cockatrice/src/interface/widgets/server/user/user_avatar_provider.h +++ b/cockatrice/src/interface/widgets/server/user/user_avatar_provider.h @@ -5,8 +5,6 @@ #include #include #include -#include -#include class AbstractClient; diff --git a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp index d84bd5804..2ba745715 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp @@ -2,22 +2,9 @@ #include "../../../card_picture_loader/card_picture_loader.h" #include "../../cards/card_art_utils.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include -#include #include -#include -#include -#include #include -#include -#include static QString makeKey(const QString &user, const QString &card, const QString &providerId) { diff --git a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.h b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.h index ce9225b00..e8283a891 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.h +++ b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.h @@ -1,16 +1,12 @@ #ifndef COCKATRICE_USER_CARD_ART_PROVIDER_H #define COCKATRICE_USER_CARD_ART_PROVIDER_H -#include #include #include #include #include #include -#include -#include - -class ExactCard; +#include class UserCardArtProvider : public QObject { diff --git a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp index f8b57cfc2..d49e3d540 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp @@ -3,50 +3,30 @@ #include "../../../card_picture_loader/card_picture_loader.h" #include "../../cards/art_crop_attribution.h" #include "../../utility/completer_utils.h" +#include "card/card_search_model.h" #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" #include "user_card_art_provider.h" #include "user_list_painter.h" -#include -#include -#include #include #include #include -#include #include #include +#include #include #include #include -#include -#include #include #include #include -#include -#include #include -#include -#include -#include -#include -#include +#include #include -#include #include -#include #include #include -#include -#include -#include namespace { diff --git a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.h b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.h index bfba8b007..24e14dce5 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.h +++ b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.h @@ -3,26 +3,24 @@ #include "user_list_painter.h" +#include #include -#include #include -#include -#include -#include -#include -#include class QCompleter; +class QFocusEvent; class QGroupBox; +class QKeyEvent; +class QMouseEvent; class QLineEdit; class QDoubleSpinBox; class QLabel; class QPushButton; +class QWheelEvent; class CardDatabaseModel; class CardDatabaseDisplayModel; class CardSearchModel; class CardCompleterProxyModel; -class QComboBox; /** * @brief Interactive preview of the user list banner art. diff --git a/cockatrice/src/interface/widgets/server/user/user_context_menu.cpp b/cockatrice/src/interface/widgets/server/user/user_context_menu.cpp index c8fe97cda..f95ad88e4 100644 --- a/cockatrice/src/interface/widgets/server/user/user_context_menu.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_context_menu.cpp @@ -1,42 +1,20 @@ #include "user_context_menu.h" -#include "../../../../game/abstract_game.h" -#include "../../../../game/game_event_handler.h" -#include "../../../../game/game_meta_info.h" #include "../../dialogs/dlg_report_user.h" +#include "../../interface/widgets/tabs/tab_account.h" +#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_supervisor.h" #include "../chat_view/chat_view.h" -#include "../game_link.h" #include "../game_selector.h" -#include "../game_type_map.h" -#include "libcockatrice/protocol/pb/admin_commands.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_ban.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_gametype.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_room.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_warning.pb.h" #include "user_info_box.h" -#include "user_level.h" #include "user_list_dialog.h" #include "user_list_manager.h" #include "user_list_proxy.h" #include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include +#include +#include #include #include #include @@ -49,10 +27,6 @@ #include #include #include -#include -#include - -class QVariant; UserContextMenu::UserContextMenu(TabSupervisor *_tabSupervisor, QWidget *parent, AbstractGame *_game) : QObject(parent), client(_tabSupervisor->getClient()), tabSupervisor(_tabSupervisor), diff --git a/cockatrice/src/interface/widgets/server/user/user_context_menu.h b/cockatrice/src/interface/widgets/server/user/user_context_menu.h index 2536819a4..0922eae94 100644 --- a/cockatrice/src/interface/widgets/server/user/user_context_menu.h +++ b/cockatrice/src/interface/widgets/server/user/user_context_menu.h @@ -11,22 +11,19 @@ #include #include -#include #include #include -#include -#include - class AbstractGame; class UserListProxy; class AbstractClient; class ChatView; class CommandContainer; class QAction; +class QMenu; class QPoint; class Response; +class ServerInfo_User; class TabSupervisor; -class QWidget; class UserContextMenu : public QObject { diff --git a/cockatrice/src/interface/widgets/server/user/user_info_box.cpp b/cockatrice/src/interface/widgets/server/user/user_info_box.cpp index ff3d9a224..3d89cecf5 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_box.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_info_box.cpp @@ -5,36 +5,20 @@ #include "../../interface/widgets/dialogs/dlg_edit_password.h" #include "../../interface/widgets/dialogs/dlg_edit_user.h" #include "../../interface/widgets/utility/get_text_with_max.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/utility/days_years_between.h" #include "user_card_settings_dialog.h" -#include "user_level.h" -#include "user_list_painter.h" -#include -#include #include -#include -#include -#include #include #include +#include #include -#include -#include #include -#include -#include -#include -#include #include #include #include #include #include #include -#include -#include UserInfoBox::UserInfoBox(AbstractClient *_client, bool _editable, QWidget *parent, Qt::WindowFlags flags) : QWidget(parent, flags), client(_client), editable(_editable) diff --git a/cockatrice/src/interface/widgets/server/user/user_info_box.h b/cockatrice/src/interface/widgets/server/user/user_info_box.h index 6bc571a37..955cb9d3d 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_box.h +++ b/cockatrice/src/interface/widgets/server/user/user_info_box.h @@ -7,15 +7,13 @@ #ifndef USERINFOBOX_H #define USERINFOBOX_H +#include #include -#include #include -#include #include #include #include -#include -#include +#include class AbstractClient; class Response; diff --git a/cockatrice/src/interface/widgets/server/user/user_info_connection.cpp b/cockatrice/src/interface/widgets/server/user/user_info_connection.cpp index d23ac63ba..f934960f8 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_connection.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_info_connection.cpp @@ -2,10 +2,7 @@ #include "../../../../client/settings/cache_settings.h" -#include -#include -#include -#include +#include #include #include diff --git a/cockatrice/src/interface/widgets/server/user/user_info_connection.h b/cockatrice/src/interface/widgets/server/user/user_info_connection.h index b44d97d42..6278815a9 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_connection.h +++ b/cockatrice/src/interface/widgets/server/user/user_info_connection.h @@ -7,11 +7,12 @@ #ifndef USERCONNECTION_INFORMATION_H #define USERCONNECTION_INFORMATION_H +#include +#include +#include #include -#include -#include -#include -#include +#include +#include inline Q_LOGGING_CATEGORY(UserInfoConnectionLog, "user_info_connection"); diff --git a/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp b/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp index c3e880084..967de2f2c 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp @@ -4,61 +4,26 @@ #include "../../interface/pixel_map_generator.h" #include "../../interface/theme_manager.h" #include "../../interface/widgets/tabs/tab_supervisor.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include "user_level.h" #include "user_list_painter.h" #include -#include -#include -#include -#include -#include -#include #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include +#include #include -#include -#include -#include -#include -#include +#include +#include #include -#include -#include -#include -#include #include #include -#include -#include #include #include +#include #include #include -#include -#include -#include - -class QAction; /// Qt stylesheets accept #aarrggbb, which is QColor::name(QColor::HexArgb). static QString colorStr(const QColor &color) diff --git a/cockatrice/src/interface/widgets/server/user/user_info_popup.h b/cockatrice/src/interface/widgets/server/user/user_info_popup.h index f2a91d025..ed7320fba 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_popup.h +++ b/cockatrice/src/interface/widgets/server/user/user_info_popup.h @@ -1,29 +1,24 @@ #ifndef COCKATRICE_USER_INFO_POPUP_H #define COCKATRICE_USER_INFO_POPUP_H +#include "../../interface/widgets/server/game_type_map.h" #include "user_list_painter.h" -#include #include -#include +#include +#include #include -#include -#include +#include #include +#include +#include +#include #include -#include -#include -#include class AbstractClient; class QLabel; class QPushButton; class TabSupervisor; -class QListView; -class QPoint; -class QStandardItemModel; -class Response; -template class QMap; // ── Roles ───────────────────────────────────────────────────────────────────── diff --git a/cockatrice/src/interface/widgets/server/user/user_list_dialog.cpp b/cockatrice/src/interface/widgets/server/user/user_list_dialog.cpp index 605c89734..fc5b520ad 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_dialog.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_list_dialog.cpp @@ -1,26 +1,17 @@ #include "user_list_dialog.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" - #include #include -#include #include -#include #include #include #include #include #include #include -#include #include #include -#include #include -#include - -class QWidget; BanDialog::BanDialog(const ServerInfo_User &info, QWidget *parent) : QDialog(parent) { diff --git a/cockatrice/src/interface/widgets/server/user/user_list_dialog.h b/cockatrice/src/interface/widgets/server/user/user_list_dialog.h index e10fca5bb..fa7d5de92 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_dialog.h +++ b/cockatrice/src/interface/widgets/server/user/user_list_dialog.h @@ -2,8 +2,7 @@ #define COCKATRICE_USER_LIST_DIALOG_H #include -#include -#include +#include class QComboBox; class QLabel; @@ -12,8 +11,6 @@ class QRadioButton; class QSpinBox; class QLineEdit; class QCheckBox; -class QWidget; -class ServerInfo_User; class BanDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/server/user/user_list_manager.cpp b/cockatrice/src/interface/widgets/server/user/user_list_manager.cpp index 385a969fd..216420006 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_manager.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_list_manager.cpp @@ -1,11 +1,8 @@ #include "user_list_manager.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" +#include "../../client/sound_engine.h" +#include "user_info_box.h" -#include -#include -#include #include #include #include diff --git a/cockatrice/src/interface/widgets/server/user/user_list_manager.h b/cockatrice/src/interface/widgets/server/user/user_list_manager.h index b2ff69286..6238f0799 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_manager.h +++ b/cockatrice/src/interface/widgets/server/user/user_list_manager.h @@ -10,22 +10,18 @@ #include "user_list_proxy.h" #include -#include -#include -#include -// IWYU pragma: keep -// ServerInfo_User appears by value and inside QList in slot signatures, so the -// moc-generated code needs the complete type. +#include #include class AbstractClient; class Event_AddToList; +class Event_ListRooms; class Event_RemoveFromList; class Event_UserJoined; class Event_UserLeft; class Response; class ServerInfo_User; -template class QList; +class TabSupervisor; class UserListManager : public QObject, public UserListProxy { diff --git a/cockatrice/src/interface/widgets/server/user/user_list_painter.cpp b/cockatrice/src/interface/widgets/server/user/user_list_painter.cpp index 08eaaaff7..34a3d6ae1 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_painter.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_list_painter.cpp @@ -1,35 +1,14 @@ #include "user_list_painter.h" #include "../../interface/pixel_map_generator.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include -#include #include -#include #include #include -#include -#include -#include -#include -#include static constexpr int RowHeight = 72; static constexpr int AvatarSize = 36; diff --git a/cockatrice/src/interface/widgets/server/user/user_list_painter.h b/cockatrice/src/interface/widgets/server/user/user_list_painter.h index e7293a097..352a01f6b 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_painter.h +++ b/cockatrice/src/interface/widgets/server/user/user_list_painter.h @@ -5,19 +5,16 @@ #include #include +#include #include +#include #include -#include #include -#include -#include class QPainter; class QModelIndex; class QStyleOptionViewItem; class ServerInfo_User; -class QPixmap; -template class QMap; struct CardArtParams { diff --git a/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.cpp b/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.cpp index 78d45d120..937058024 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.cpp @@ -1,13 +1,12 @@ #include "user_list_panel_widget.h" #include "../../../../client/settings/cache_settings.h" +#include "user_list_manager.h" #include "user_list_widget.h" #include -#include -#include -#include #include +#include #include namespace diff --git a/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.h b/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.h index 088365bbc..7ae14dfcf 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.h +++ b/cockatrice/src/interface/widgets/server/user/user_list_panel_widget.h @@ -8,9 +8,7 @@ #include "user_list_widget.h" -#include #include -#include class AbstractClient; class QLineEdit; diff --git a/cockatrice/src/interface/widgets/server/user/user_list_widget.cpp b/cockatrice/src/interface/widgets/server/user/user_list_widget.cpp index b3fd1d1a9..3b8fc08b7 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_widget.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_list_widget.cpp @@ -4,64 +4,18 @@ #include "../../interface/pixel_map_generator.h" #include "../../interface/theme_manager.h" #include "../../interface/widgets/tabs/tab_supervisor.h" -#include "user_avatar_provider.h" -#include "user_card_art_provider.h" #include "user_context_menu.h" -#include "user_info_popup.h" -#include "user_level.h" -#include "user_list_manager.h" #include "user_list_painter.h" -#include "user_list_proxy.h" -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include -#include #include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include #include -#include -#include -#include #include -#include - -class QPixmap; -struct GameInviteOption; namespace UserListRoles { diff --git a/cockatrice/src/interface/widgets/server/user/user_list_widget.h b/cockatrice/src/interface/widgets/server/user/user_list_widget.h index 8093222ea..9802387b2 100644 --- a/cockatrice/src/interface/widgets/server/user/user_list_widget.h +++ b/cockatrice/src/interface/widgets/server/user/user_list_widget.h @@ -7,34 +7,33 @@ #ifndef USERLIST_H #define USERLIST_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" +#include "../../cards/card_info_picture_art_crop_widget.h" +#include "../../interface/widgets/server/game_link.h" +#include "user_avatar_provider.h" +#include "user_card_art_provider.h" +#include "user_info_popup.h" +#include "user_list_manager.h" +#include "user_list_painter.h" +#include #include -#include -#include #include -#include #include +#include #include #include -#include -#include +#include +#include +class QTreeWidget; +class ServerInfo_User; class AbstractClient; class TabSupervisor; +class Response; +class CommandContainer; class UserContextMenu; class UserListWidget; -class QModelIndex; -class QPixmap; -class QPoint; -class QTimer; -class QWidget; -class UserAvatarProvider; -class UserCardArtProvider; -class UserInfoPopup; -class UserListManager; -struct CardArtParams; -struct GameInviteOption; +class QShowEvent; class UserListItemDelegate : public QStyledItemDelegate { diff --git a/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.cpp index 9c43d1f7b..9a70e94c5 100644 --- a/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.cpp @@ -2,22 +2,14 @@ #include "settings_search_model.h" -#include #include #include #include #include -#include #include -#include #include -#include #include #include -#include -#include -#include -#include /** * @brief Recursively collects all widgets within a layout diff --git a/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.h b/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.h index 722a91e62..3140f94f3 100644 --- a/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/abstract_settings_page.h @@ -3,7 +3,6 @@ #include #include -#include #define WIKI_CUSTOM_PIC_URL "https://github.com/Cockatrice/Cockatrice/wiki/Custom-Picture-Download-URLs" #define WIKI_CUSTOM_SHORTCUTS "https://github.com/Cockatrice/Cockatrice/wiki/Custom-Keyboard-Shortcuts" diff --git a/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.cpp index 4c38459c6..415eef6b9 100644 --- a/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.cpp @@ -1,44 +1,29 @@ #include "appearance_settings_page.h" #include "../../../client/settings/cache_settings.h" +#include "../../../client/settings/card_counter_settings.h" #include "../../client/settings/card_counter_settings.h" #include "../../palette_editor/palette_editor_dialog.h" -#include "../../theme_config.h" #include "../dialogs/override_printing_warning.h" #include "../general/home_tab_button_color.h" #include "../interface/theme_manager.h" #include "../interface/widgets/general/background_sources.h" #include "../playmat/playmat_collection_dialog.h" -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/utility/macros.h" +#include "../playmat/playmat_settings_dialog.h" -#include #include -#include #include -#include #include -#include #include -#include +#include #include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include #include #include #include #include #include -#include AppearanceSettingsPage::AppearanceSettingsPage() { @@ -74,10 +59,15 @@ AppearanceSettingsPage::AppearanceSettingsPage() connect(&schemeCombo, &QComboBox::currentIndexChanged, this, [this] { themeManager->setColorScheme(schemeCombo.currentData().toString()); }); - // Qt widget style; "System" lets the application decide. The broken Windows - // native styles are still offered, but selecting one raises a warning. + // Qt widget style; "System" lets the application decide styleCombo.addItem(tr("System"), QStringLiteral("System")); for (const QString &key : QStyleFactory::keys()) { + // The Windows 11 native style is broken (board rendering glitches when + // moving cards), so never offer it; it is already sanitized at apply + // time in ThemeManager. + if (key.compare("windows11", Qt::CaseInsensitive) == 0) { + continue; + } styleCombo.addItem(key, key); } @@ -87,7 +77,6 @@ AppearanceSettingsPage::AppearanceSettingsPage() connect(&styleCombo, &QComboBox::currentIndexChanged, this, [this] { themeManager->setStyleName(styleCombo.currentData().toString()); }); - connect(&styleCombo, &QComboBox::currentIndexChanged, this, &AppearanceSettingsPage::updateStyleWarning); connect(themeManager, &ThemeManager::themeChanged, this, [this, dirPath] { const QString newDir = themeManager->getAvailableThemes().value(SettingsCache::instance().getThemeName()); @@ -104,8 +93,6 @@ AppearanceSettingsPage::AppearanceSettingsPage() const int styleIdx = currentStyle.isEmpty() ? 0 : styleCombo.findData(currentStyle); styleCombo.setCurrentIndex(styleIdx >= 0 ? styleIdx : 0); styleCombo.blockSignals(false); - - updateStyleWarning(); }); connect(&editPaletteButton, &QPushButton::clicked, this, &AppearanceSettingsPage::editPalette); @@ -118,11 +105,7 @@ AppearanceSettingsPage::AppearanceSettingsPage() themeGrid->addWidget(&schemeCombo, 2, 1); themeGrid->addWidget(&styleComboLabel, 3, 0); themeGrid->addWidget(&styleCombo, 3, 1); - themeGrid->addWidget(&styleWarningLabel, 4, 0, 1, 2); - themeGrid->addWidget(&editPaletteButton, 5, 1); - - styleWarningLabel.setWordWrap(true); - styleWarningLabel.setAlignment(Qt::AlignLeft | Qt::AlignVCenter); + themeGrid->addWidget(&editPaletteButton, 4, 1); themeGroupBox = new QGroupBox; themeGroupBox->setLayout(themeGrid); @@ -467,14 +450,6 @@ void AppearanceSettingsPage::updateHomeTabSettingsVisibility() homeTabDisplayCardNameCheckBox.setVisible(visible); } -void AppearanceSettingsPage::updateStyleWarning() -{ - const QString style = styleCombo.currentData().toString(); - const bool broken = - style.compare("windows11", Qt::CaseInsensitive) == 0 || style.compare("windowsvista", Qt::CaseInsensitive) == 0; - styleWarningLabel.setVisible(broken); -} - void AppearanceSettingsPage::showShortcutsChanged(QT_STATE_CHANGED_T value) { SettingsCache::instance().userInterface().setShowShortcuts(value); @@ -537,11 +512,6 @@ void AppearanceSettingsPage::retranslateUi() schemeComboLabel.setText(tr("Active theme palette:")); styleComboLabel.setText(tr("Active theme style:")); styleCombo.setToolTip(tr("Qt widget style saved to this theme (\"System\" lets the application decide)")); - styleWarningLabel.setText( - tr("Warning: the Windows 11 and Windows Vista styles are buggy and can render controls such as combo boxes " - "unreadable, especially in dark mode. Fusion is the recommended style on every platform: it is Qt's " - "cross-platform style and the one Cockatrice is developed against.")); - updateStyleWarning(); editPaletteButton.setText(tr("Edit theme palette")); homeTabGroupBox->setTitle(tr("Home tab settings")); diff --git a/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.h b/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.h index 8afd326a3..bec4cd72f 100644 --- a/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/appearance_settings_page.h @@ -5,14 +5,11 @@ #include #include +#include #include -#include #include #include #include -#include - -class QGroupBox; class AppearanceSettingsPage : public AbstractSettingsPage { @@ -22,7 +19,6 @@ private slots: void openThemeLocation(); void editPalette(); void updateHomeTabSettingsVisibility(); - void updateStyleWarning(); void showShortcutsChanged(QT_STATE_CHANGED_T enabled); void overrideAllCardArtWithPersonalPreferenceToggled(QT_STATE_CHANGED_T enabled); @@ -38,7 +34,6 @@ private: QComboBox schemeCombo; QLabel styleComboLabel; QComboBox styleCombo; - QLabel styleWarningLabel; QPushButton editPaletteButton; QLabel homeTabBackgroundSourceLabel; diff --git a/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.cpp index 2020b2031..bdbb38c95 100644 --- a/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.cpp @@ -4,39 +4,19 @@ #include "../../pixel_map_generator.h" #include "update/card_spoiler/spoiler_background_updater.h" -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include #include -#include #include #include -#include -#include -#include #include #include -#include -#include -#include #include #include -#include -#include #include #include #include #include -#include -#include DeckEditorSettingsPage::DeckEditorSettingsPage() { diff --git a/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.h b/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.h index 47f840191..23e33fa20 100644 --- a/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/deck_editor_settings_page.h @@ -4,17 +4,10 @@ #include "abstract_settings_page.h" #include +#include #include +#include #include -#include -#include - -class QAction; -class QGroupBox; -class QLineEdit; -class QListWidget; -class QListWidgetItem; -class QModelIndex; class DeckEditorSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/settings_page/general_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/general_settings_page.cpp index 73a0f7be2..57099fb4a 100644 --- a/cockatrice/src/interface/widgets/settings_page/general_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/general_settings_page.cpp @@ -6,26 +6,13 @@ #include "../server/user/user_info_connection.h" #include "update/client/release_channel.h" -#include #include -#include -#include #include #include #include -#include #include -#include -#include #include -#include -#include -#include #include -#include -#include -#include -#include #include #include #include @@ -35,9 +22,6 @@ #include #include #include -#include -#include -#include enum startupCardUpdateCheckBehaviorIndex { @@ -161,18 +145,12 @@ GeneralSettingsPage::GeneralSettingsPage() newVersionOracleCheckBox.setChecked(settings.updates().getNotifyAboutNewVersion()); - cardDatabaseUpdateTrayNotificationCheckBox.setChecked(settings.updates().getCardDatabaseUpdateTrayNotification()); - - connect(&cardDatabaseUpdateTrayNotificationCheckBox, &QCheckBox::QT_STATE_CHANGED, &settings.updates(), - &UpdatesSettings::setCardDatabaseUpdateTrayNotification); - auto *cardDatabaseGrid = new QGridLayout; cardDatabaseGrid->addWidget(&startupCardUpdateCheckBehaviorLabel, 0, 0); cardDatabaseGrid->addWidget(&startupCardUpdateCheckBehaviorSelector, 0, 1); cardDatabaseGrid->addWidget(&cardUpdateCheckIntervalLabel, 1, 0); cardDatabaseGrid->addWidget(&cardUpdateCheckIntervalSpinBox, 1, 1); cardDatabaseGrid->addWidget(&lastCardUpdateCheckDateLabel, 2, 1); - cardDatabaseGrid->addWidget(&cardDatabaseUpdateTrayNotificationCheckBox, 3, 0, 1, 2); cardDatabaseGroupBox = new QGroupBox; cardDatabaseGroupBox->setLayout(cardDatabaseGrid); @@ -571,7 +549,6 @@ void GeneralSettingsPage::retranslateUi() tr("Always update in the background")); cardUpdateCheckIntervalLabel.setText(tr("Check for card database updates every")); cardUpdateCheckIntervalSpinBox.setSuffix(tr(" days")); - cardDatabaseUpdateTrayNotificationCheckBox.setText(tr("Notify in the system tray while the card database updates")); QDate lastCheckDate = settings.updates().getLastCardUpdateCheck(); int daysAgo = lastCheckDate.daysTo(QDate::currentDate()); diff --git a/cockatrice/src/interface/widgets/settings_page/general_settings_page.h b/cockatrice/src/interface/widgets/settings_page/general_settings_page.h index fcf1c78d0..07e0ba3a9 100644 --- a/cockatrice/src/interface/widgets/settings_page/general_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/general_settings_page.h @@ -5,16 +5,11 @@ #include #include +#include #include #include +#include #include -#include -#include -#include - -class QGroupBox; -class QLineEdit; -class QPushButton; inline Q_LOGGING_CATEGORY(GeneralSettingsPageLog, "general_settings_page"); @@ -75,7 +70,6 @@ private: QLabel cardUpdateCheckIntervalLabel; QSpinBox cardUpdateCheckIntervalSpinBox; QLabel lastCardUpdateCheckDateLabel; - QCheckBox cardDatabaseUpdateTrayNotificationCheckBox; QCheckBox showTipsOnStartup; QLabel startupTabLabel; diff --git a/cockatrice/src/interface/widgets/settings_page/messages_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/messages_settings_page.cpp index 9494155af..68e3f2ac7 100644 --- a/cockatrice/src/interface/widgets/settings_page/messages_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/messages_settings_page.cpp @@ -3,27 +3,14 @@ #include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" #include "../interface/widgets/utility/get_text_with_max.h" -#include "libcockatrice/utility/macros.h" -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include #include -#include -#include #include #include #include #include -#include MessagesSettingsPage::MessagesSettingsPage() { diff --git a/cockatrice/src/interface/widgets/settings_page/messages_settings_page.h b/cockatrice/src/interface/widgets/settings_page/messages_settings_page.h index e85e6cca7..4d491136f 100644 --- a/cockatrice/src/interface/widgets/settings_page/messages_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/messages_settings_page.h @@ -4,15 +4,10 @@ #include "abstract_settings_page.h" #include +#include #include -#include +#include #include -#include - -class QAction; -class QGroupBox; -class QLineEdit; -class QListWidget; class MessagesSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.cpp b/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.cpp index bf35b7557..2fdff3bce 100644 --- a/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.cpp +++ b/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.cpp @@ -7,24 +7,7 @@ #include "settings_search_model.h" -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QObject; SettingsSearchDelegate::SettingsSearchDelegate(QObject *parent) : QStyledItemDelegate(parent) { diff --git a/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.h b/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.h index 2e48a3de9..aa296049a 100644 --- a/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.h +++ b/cockatrice/src/interface/widgets/settings_page/settings_search_delegate.h @@ -6,14 +6,8 @@ #ifndef COCKATRICE_SETTINGS_SEARCH_DELEGATE_H #define COCKATRICE_SETTINGS_SEARCH_DELEGATE_H -#include #include -#include -#include #include -#include - -class QObject; /** * @brief Custom paint delegate for settings search result items diff --git a/cockatrice/src/interface/widgets/settings_page/settings_search_model.cpp b/cockatrice/src/interface/widgets/settings_page/settings_search_model.cpp index 015a7d45d..71f859d4b 100644 --- a/cockatrice/src/interface/widgets/settings_page/settings_search_model.cpp +++ b/cockatrice/src/interface/widgets/settings_page/settings_search_model.cpp @@ -6,14 +6,7 @@ #include "settings_search_model.h" #include -#include -#include -#include -#include #include -#include - -class QObject; SettingsSearchModel::SettingsSearchModel(QObject *parent) : QAbstractListModel(parent) { diff --git a/cockatrice/src/interface/widgets/settings_page/settings_search_model.h b/cockatrice/src/interface/widgets/settings_page/settings_search_model.h index 902a29312..0b590f180 100644 --- a/cockatrice/src/interface/widgets/settings_page/settings_search_model.h +++ b/cockatrice/src/interface/widgets/settings_page/settings_search_model.h @@ -7,17 +7,9 @@ #define COCKATRICE_SETTINGS_SEARCH_MODEL_H #include -#include #include -#include -#include #include -#include -#include -#include - -class QObject; -class QWidget; +#include /** * @brief Represents a single searchable setting entry diff --git a/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.cpp index ea7ed745c..1277d0e49 100644 --- a/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.cpp @@ -8,17 +8,8 @@ #include "../interface/widgets/utility/sequence_edit.h" #include -#include -#include -#include -#include #include -#include -#include -#include -#include #include -#include ShortcutSettingsPage::ShortcutSettingsPage() { diff --git a/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.h b/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.h index 6ae7fbfa7..05391df77 100644 --- a/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/shortcut_settings_page.h @@ -3,18 +3,14 @@ #include "abstract_settings_page.h" -#include -#include +#include +#include +#include +#include class SequenceEdit; class ShortcutTreeView; class SearchLineEdit; -class QGridLayout; -class QGroupBox; -class QHBoxLayout; -class QLabel; -class QPushButton; -class QVBoxLayout; class ShortcutSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/settings_page/sound_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/sound_settings_page.cpp index 05725bb42..2bd776671 100644 --- a/cockatrice/src/interface/widgets/settings_page/sound_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/sound_settings_page.cpp @@ -3,21 +3,10 @@ #include "../../../client/settings/cache_settings.h" #include "../client/sound_engine.h" -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include -#include SoundSettingsPage::SoundSettingsPage() { diff --git a/cockatrice/src/interface/widgets/settings_page/sound_settings_page.h b/cockatrice/src/interface/widgets/settings_page/sound_settings_page.h index acaa4f7c4..f90bcbc5a 100644 --- a/cockatrice/src/interface/widgets/settings_page/sound_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/sound_settings_page.h @@ -5,13 +5,10 @@ #include #include +#include #include #include -#include - -class QGroupBox; -class QSlider; -class QSpinBox; +#include class SoundSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/settings_page/storage_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/storage_settings_page.cpp index a71296820..4aad91115 100644 --- a/cockatrice/src/interface/widgets/settings_page/storage_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/storage_settings_page.cpp @@ -5,21 +5,12 @@ #include "../../card_picture_loader/card_picture_loader_local_schemes.h" #include "../interface/card_picture_loader/card_picture_loader.h" -#include #include #include -#include -#include -#include #include -#include -#include -#include -#include #include #include #include -#include StorageSettingsPage::StorageSettingsPage() { diff --git a/cockatrice/src/interface/widgets/settings_page/storage_settings_page.h b/cockatrice/src/interface/widgets/settings_page/storage_settings_page.h index 1c9a35323..5c8a00981 100644 --- a/cockatrice/src/interface/widgets/settings_page/storage_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/storage_settings_page.h @@ -3,13 +3,11 @@ #include "abstract_settings_page.h" +#include +#include #include #include #include -#include - -class QComboBox; -class QGroupBox; class StorageSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.cpp b/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.cpp index 0a5f57e1f..03b9455fa 100644 --- a/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.cpp +++ b/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.cpp @@ -3,22 +3,13 @@ #include "../../../client/settings/cache_settings.h" #include "../interface/widgets/tabs/tab_supervisor.h" #include "../tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.h" -#include "libcockatrice/utility/macros.h" -#include #include -#include -#include -#include -#include -#include -#include #include #include #include #include #include -#include enum visualDeckStoragePromptForConversionIndex { diff --git a/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.h b/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.h index 297d80c35..277c5461e 100644 --- a/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.h +++ b/cockatrice/src/interface/widgets/settings_page/user_interface_settings_page.h @@ -5,14 +5,13 @@ #include #include +#include #include #include #include #include +#include #include -#include - -class QGroupBox; class UserInterfaceSettingsPage : public AbstractSettingsPage { diff --git a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp index 4044f03db..6423c581b 100644 --- a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp +++ b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp @@ -11,49 +11,35 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../deck_loader/deck_file_format.h" -#include "../../deck_loader/deck_loader.h" -#include "../../deck_loader/loaded_deck.h" #include "../cards/additional_info/deck_color_identity.h" -#include "../cards/card_info_frame_widget.h" #include "../client/network/interfaces/deck_stats_interface.h" #include "../client/network/interfaces/tapped_out_interface.h" -#include "../deck_editor/deck_editor_card_database_dock_widget.h" -#include "../deck_editor/deck_editor_card_info_dock_widget.h" -#include "../deck_editor/deck_editor_deck_dock_widget.h" -#include "../deck_editor/deck_editor_filter_dock_widget.h" -#include "../deck_editor/deck_editor_printing_selector_dock_widget.h" #include "../deck_editor/deck_state_manager.h" #include "../interface/card_picture_loader/card_picture_loader.h" +#include "../interface/pixel_map_generator.h" #include "../interface/widgets/dialogs/dlg_load_deck.h" #include "../interface/widgets/dialogs/dlg_load_deck_from_clipboard.h" #include "../interface/widgets/dialogs/dlg_load_deck_from_website.h" #include "../interface/widgets/dialogs/dlg_share_deck.h" -#include "../menus/deck_editor_menu.h" -#include "../printing_selector/printing_selector.h" #include "../utility/visibility_change_listener.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/utility/card_ref.h" #include "tab_supervisor.h" #include +#include #include #include -#include #include -#include -#include -#include -#include +#include +#include #include #include #include +#include #include -#include +#include +#include +#include #include -#include #include #include #include @@ -64,8 +50,6 @@ #include #include #include -#include -#include /** * @brief Constructs the AbstractTabDeckEditor. diff --git a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.h b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.h index 1782e7afd..dae8f5b0a 100644 --- a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.h +++ b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.h @@ -9,31 +9,48 @@ #define TAB_GENERIC_DECK_EDITOR_H #include "../../deck_loader/deck_loader.h" -#include "libcockatrice/card/card_info.h" +#include "../interface/widgets/deck_editor/deck_editor_card_database_dock_widget.h" +#include "../interface/widgets/deck_editor/deck_editor_card_info_dock_widget.h" +#include "../interface/widgets/deck_editor/deck_editor_database_display_widget.h" +#include "../interface/widgets/deck_editor/deck_editor_deck_dock_widget.h" +#include "../interface/widgets/deck_editor/deck_editor_filter_dock_widget.h" +#include "../interface/widgets/deck_editor/deck_editor_printing_selector_dock_widget.h" +#include "../interface/widgets/menus/deck_editor_menu.h" +#include "../interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" #include "tab.h" -#include -#include -#include -#include +#include class DeckStateManager; class CardDatabaseModel; +class CardDatabaseDisplayModel; + +class CardInfoFrameWidget; +class DeckLoader; class DeckEditorMenu; class DeckEditorCardInfoDockWidget; class DeckEditorCardDatabaseDockWidget; class DeckEditorDeckDockWidget; class DeckEditorFilterDockWidget; class DeckEditorPrintingSelectorDockWidget; +class DeckPreviewDeckTagsDisplayWidget; class Response; class FilterTree; +class FilterTreeModel; +class FilterBuilder; + +class QTreeView; +class QTextEdit; +class QLabel; +class QComboBox; +class QGroupBox; class QMessageBox; +class QHBoxLayout; +class QVBoxLayout; +class QPushButton; class QDockWidget; class QMenu; class QAction; -class ExactCard; -class TabSupervisor; -struct LoadedDeck; /** * @class AbstractTabDeckEditor diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.cpp index 8d023cd61..40882db04 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.cpp @@ -2,9 +2,6 @@ #include #include -#include -#include -#include void ArchidektDeckListingApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.h index c42bc1315..723c65ce2 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/archidekt_deck_listing_api_response.h @@ -4,9 +4,8 @@ #include "deck_listings/archidekt_api_response_deck_listing_container.h" #include -#include +#include #include -#include class ArchidektDeckListingApiResponse { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.cpp index d118301bb..46c229156 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.cpp @@ -1,9 +1,5 @@ #include "archidekt_api_response_card.h" -#include -#include -#include - void ArchidektApiResponseCard::fromJson(const QJsonObject &json) { id = json.value("id").toInt(); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h index 8e9e0b12a..559580da2 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h @@ -3,10 +3,11 @@ #include "archidekt_api_response_edition.h" +#include +#include #include -#include #include -#include +#include class ArchidektApiResponseCard { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp index 14b13a4ed..f51d0f3e7 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp @@ -1,11 +1,5 @@ #include "archidekt_api_response_card_entry.h" -#include -#include -#include -#include -#include - void ArchidektApiResponseCardEntry::fromJson(const QJsonObject &json) { id = json.value("id").toInt(); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h index eb7c4190c..118cf5b13 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h @@ -3,10 +3,11 @@ #include "archidekt_api_response_card.h" +#include +#include #include -#include #include -#include +#include struct Category { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.cpp index 73836b9c8..122617a22 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.cpp @@ -1,9 +1,5 @@ #include "archidekt_api_response_edition.h" -#include -#include -#include - void ArchidektApiResponseEdition::fromJson(const QJsonObject &json) { editionCode = json.value("editioncode").toString(); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h index 63d29652f..b898cd816 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h @@ -1,8 +1,11 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_EDITION_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_EDITION_H +#include +#include #include #include +#include class ArchidektApiResponseEdition { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.cpp index 362ac0f63..a27d8d961 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.cpp @@ -1,13 +1,6 @@ #include "archidekt_api_response_deck.h" #include "../card/archidekt_api_response_card_entry.h" -#include "../deck_listings/archidekt_api_response_deck_owner.h" - -#include -#include -#include -#include -#include void ArchidektApiResponseDeck::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h index 6af0a01c5..b539d9dd1 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h @@ -1,14 +1,15 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_H +#include "../card/archidekt_api_response_card.h" #include "../card/archidekt_api_response_card_entry.h" #include "../deck_listings/archidekt_api_response_deck_owner.h" #include "archidekt_api_response_deck_category.h" +#include +#include #include -#include #include -#include #include class ArchidektApiResponseDeck diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.cpp index 0df8b9f68..990293bc6 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.cpp @@ -1,9 +1,5 @@ #include "archidekt_api_response_deck_category.h" -#include -#include -#include - void ArchidektApiResponseDeckCategory::fromJson(const QJsonObject &json) { id = json.value("id").toInt(); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.h index b31743643..5e218b6a4 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck_category.h @@ -1,8 +1,15 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_CATEGORY_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_CATEGORY_H +#include "../card/archidekt_api_response_card.h" +#include "../card/archidekt_api_response_card_entry.h" +#include "../deck_listings/archidekt_api_response_deck_owner.h" + +#include +#include #include #include +#include class ArchidektApiResponseDeckCategory { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp index 0f5290f02..416621b41 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp @@ -3,10 +3,8 @@ #include "archidekt_api_response_deck_owner.h" #include +#include #include -#include -#include -#include void ArchidektApiResponseDeckListingContainer::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.h index 904d6b624..8924bb3f5 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.h @@ -3,11 +3,11 @@ #include "archidekt_api_response_deck_owner.h" +#include +#include #include -#include -#include #include -#include +#include class ArchidektApiResponseDeckListingContainer { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.cpp index 67b80d67a..3d6eac03d 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.cpp @@ -1,9 +1,5 @@ #include "archidekt_api_response_deck_owner.h" -#include -#include -#include - void ArchidektApiResponseDeckOwner::fromJson(const QJsonObject &json) { id = json.value("id").toInt(); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.h index f63d6af0e..df3f48fd2 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_owner.h @@ -1,11 +1,11 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_OWNER_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_OWNER_H +#include +#include #include -#include #include -#include -#include +#include class ArchidektApiResponseDeckOwner { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp index 555ec7ec5..657ef3dbe 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp @@ -2,39 +2,16 @@ #include "../../../../../../client/settings/cache_settings.h" #include "../../../../../deck_loader/card_node_function.h" -#include "../../../../../deck_loader/loaded_deck.h" +#include "../../../../../deck_loader/deck_loader.h" +#include "../../../../cards/card_size_widget.h" #include "../../../../cards/deck_card_zone_display_widget.h" #include "../../../../visual_deck_editor/visual_deck_display_options_widget.h" -#include "../../../../visual_deck_editor/visual_deck_editor_widget.h" #include "../api_response/archidekt_formats.h" -#include "../api_response/card/archidekt_api_response_card.h" -#include "../api_response/card/archidekt_api_response_card_entry.h" -#include "../api_response/card/archidekt_api_response_edition.h" #include "../api_response/deck/archidekt_api_response_deck.h" -#include "deck_list_model.h" -#include "libcockatrice/deck_list/deck_list.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include #include #include -#include -#include - -class CardSizeWidget; ArchidektApiResponseDeckDisplayWidget::ArchidektApiResponseDeckDisplayWidget(QWidget *parent, ArchidektApiResponseDeck _response, diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.h index cdacc70b3..aaf272718 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.h @@ -1,22 +1,18 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_DISPLAY_WIDGET_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_DISPLAY_WIDGET_H +#include "../../../../../deck_loader/deck_loader.h" +#include "../../../../cards/card_size_widget.h" +#include "../../../../general/layout_containers/flow_widget.h" +#include "../../../../visual_deck_editor/visual_deck_display_options_widget.h" #include "../api_response/deck/archidekt_api_response_deck.h" +#include "deck_list_model.h" -#include -#include -#include +#include +#include +#include +#include #include -#include - -class CardSizeWidget; -class DeckListModel; -class QHBoxLayout; -class QPushButton; -class QScrollArea; -class QVBoxLayout; -class VisualDeckDisplayOptionsWidget; -struct LoadedDeck; /** * @class ArchidektApiResponseDeckDisplayWidget diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp index b5e28fcf5..c35c2d0b8 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp @@ -1,30 +1,17 @@ #include "archidekt_api_response_deck_entry_display_widget.h" #include "../../../../../card_picture_loader/card_picture_loader.h" +#include "../../../../cards/card_info_picture_with_text_overlay_widget.h" #include "../../../../general/display/background_plate_widget.h" #include "../../../../general/display/charts/bars/color_bar.h" -#include "../../../../general/display/shadow_background_label.h" -#include "../api_response/deck_listings/archidekt_api_response_deck_listing_container.h" -#include "../api_response/deck_listings/archidekt_api_response_deck_owner.h" #include "archidekt_deck_preview_image_display_widget.h" -#include -#include -#include +#include #include #include #include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include #include #define ARCHIDEKT_DEFAULT_IMAGE "https://storage.googleapis.com/topdekt-user/images/archidekt_deck_card_shadow.jpg" diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.h index e8ed8561d..575a81b5f 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.h @@ -1,20 +1,17 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_ENTRY_DISPLAY_WIDGET_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_ENTRY_DISPLAY_WIDGET_H +#include "../../../../cards/card_info_picture_with_text_overlay_widget.h" #include "../api_response/deck_listings/archidekt_api_response_deck_listing_container.h" +#include "archidekt_deck_preview_image_display_widget.h" -#include -#include -#include +#include +#include +#include +#include #include -#include class BackgroundPlateWidget; -class ArchidektDeckPreviewImageDisplayWidget; -class QLabel; -class QNetworkAccessManager; -class QNetworkReply; -class QVBoxLayout; /** * @class ArchidektApiResponseDeckEntryDisplayWidget diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.cpp index 9c4ea59ab..21e8e3f9a 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.cpp @@ -1,18 +1,8 @@ #include "archidekt_api_response_deck_listings_display_widget.h" -#include "../../../../cards/card_size_widget.h" -#include "../../../../general/layout_containers/flow_widget.h" -#include "../api_response/archidekt_deck_listing_api_response.h" -#include "../api_response/deck_listings/archidekt_api_response_deck_listing_container.h" +#include "../../../../cards/card_info_picture_with_text_overlay_widget.h" #include "archidekt_api_response_deck_entry_display_widget.h" -#include -#include -#include -#include -#include -#include - ArchidektApiResponseDeckListingsDisplayWidget::ArchidektApiResponseDeckListingsDisplayWidget( QWidget *parent, ArchidektDeckListingApiResponse response, diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.h index a9a7da7a1..f9a887aa4 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_listings_display_widget.h @@ -1,15 +1,15 @@ #ifndef COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_LISTINGS_DISPLAY_WIDGET_H #define COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_LISTINGS_DISPLAY_WIDGET_H -#include -#include -#include +#include "../../../../cards/card_size_widget.h" +#include "../../../../general/layout_containers/flow_widget.h" +#include "../api_response/archidekt_deck_listing_api_response.h" -class ArchidektDeckListingApiResponse; -class CardSizeWidget; -class FlowWidget; -class QHBoxLayout; -class QNetworkAccessManager; +#include +#include +#include +#include +#include /** * @class ArchidektApiResponseDeckListingsDisplayWidget diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp index 97383534f..ced08491e 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp @@ -1,11 +1,7 @@ #include "archidekt_deck_preview_image_display_widget.h" -#include "../../../../general/display/shadow_background_label.h" - -#include -#include -#include -#include +#include +#include ArchidektDeckPreviewImageDisplayWidget::ArchidektDeckPreviewImageDisplayWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h index 991f27b6a..053823c45 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h @@ -1,11 +1,10 @@ #ifndef COCKATRICE_ARCHIDEKT_DECK_PREVIEW_IMAGE_DISPLAY_WIDGET_H #define COCKATRICE_ARCHIDEKT_DECK_PREVIEW_IMAGE_DISPLAY_WIDGET_H -#include -#include +#include "../../../../general/display/shadow_background_label.h" -class QLabel; -class ShadowBackgroundLabel; +#include +#include /** * @class ArchidektDeckPreviewImageDisplayWidget diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp index 02badf1aa..888197f53 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp @@ -3,54 +3,31 @@ #include "../../../../../client/settings/cache_settings.h" #include "../../../../pixel_map_generator.h" #include "../../../cards/additional_info/mana_symbol_widget.h" -#include "../../../cards/card_size_widget.h" -#include "../../../quick_settings/settings_button_widget.h" #include "../../../utility/completer_utils.h" -#include "../../tab.h" #include "../../tab_supervisor.h" #include "api_response/archidekt_deck_listing_api_response.h" -#include "api_response/deck/archidekt_api_response_deck.h" -#include "card_database_display_model.h" -#include "card_database_model.h" #include "display/archidekt_api_response_deck_display_widget.h" #include "display/archidekt_api_response_deck_listings_display_widget.h" -#include -#include -#include #include -#include +#include #include +#include #include #include #include #include -#include -#include -#include -#include #include #include -#include -#include #include +#include #include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include #include +#include +#include #include -#include -#include #include TabArchidekt::TabArchidekt(TabSupervisor *_tabSupervisor) diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h index 015b8590b..e837e672b 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h @@ -1,35 +1,26 @@ #ifndef COCKATRICE_TAB_ARCHIDEKT_H #define COCKATRICE_TAB_ARCHIDEKT_H +#include "../../interface/widgets/cards/card_size_widget.h" +#include "../../interface/widgets/quick_settings/settings_button_widget.h" #include "../../tab.h" -#include "libcockatrice/card/card_info.h" +#include "display/archidekt_api_response_deck_listings_display_widget.h" -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include -#include -#include - -class ArchidektApiResponseDeckListingsDisplayWidget; -class CardSizeWidget; -class QCheckBox; -class QComboBox; -class QHBoxLayout; -class QLabel; -class QLineEdit; -class QNetworkAccessManager; -class QNetworkReply; -class QPushButton; -class QScrollArea; -class QSpinBox; -class QTimer; -class QVBoxLayout; -class QWidget; -class SettingsButtonWidget; -class TabSupervisor; +#include +#include +#include +#include /** Base API link for Archidekt deck search */ inline QString archidektApiLink = "https://archidekt.com/api/decks/v3/?name="; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.cpp index aa892d0d4..3c95a4553 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.cpp @@ -1,7 +1,5 @@ #include "card_in_deck_request.h" -#include - CardInDeckRequest CardInDeckRequest::fromJson(const QJsonObject &json) { CardInDeckRequest request; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.h index 6bcaca42f..b7eb96211 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/card_in_deck_request.h @@ -1,7 +1,6 @@ #ifndef COCKATRICE_CARD_IN_DECK_REQUEST_H #define COCKATRICE_CARD_IN_DECK_REQUEST_H #include -#include struct CardInDeckRequest { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_card_result.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_card_result.cpp index 0ae5dd360..14558d234 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_card_result.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_card_result.cpp @@ -1,7 +1,5 @@ #include "commander_spellbook_card_result.h" -#include - CommanderSpellbookCardResult CommanderSpellbookCardResult::fromJson(const QJsonObject &json) { CommanderSpellbookCardResult result; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.cpp index ac259f3aa..166469353 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.cpp @@ -1,14 +1,6 @@ #include "commander_spellbook_deck_request.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "libcockatrice/utility/card_ref.h" - #include -#include -#include -#include -#include #include CommanderSpellbookDeckRequest CommanderSpellbookDeckRequest::fromJson(const QJsonObject &json) diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.h index 002f7666f..46d8e053b 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_deck_request.h @@ -1,12 +1,11 @@ #ifndef COCKATRICE_COMMANDER_SPELLBOOK_DECK_REQUEST_H #define COCKATRICE_COMMANDER_SPELLBOOK_DECK_REQUEST_H #include "card_in_deck_request.h" +#include "libcockatrice/deck_list/deck_list.h" #include #include -class DeckList; - struct CommanderSpellbookDeckRequest { static CommanderSpellbookDeckRequest fromJson(const QJsonObject &json); diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.cpp index 35ba954a1..c3640ce79 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.cpp @@ -1,9 +1,5 @@ #include "commander_spellbook_estimate_bracket_result.h" -#include -#include -#include - EstimateBracketResult EstimateBracketResult::fromJson(const QJsonObject &json) { EstimateBracketResult result; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.h index c9c152d35..bb589a901 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_estimate_bracket_result.h @@ -6,7 +6,6 @@ #include #include -#include struct EstimateBracketResult { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.cpp index 53630a69e..bbc23e15e 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.cpp @@ -1,7 +1,5 @@ #include "commander_spellbook_variant_result.h" -#include - CommanderSpellbookVariantResult CommanderSpellbookVariantResult::fromJson(const QJsonObject &json) { CommanderSpellbookVariantResult result; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.h index 49f45f92c..d908f1299 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/api_response/commander_spellbook_variant_result.h @@ -3,7 +3,6 @@ #include #include -#include struct CommanderSpellbookVariantResult { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.cpp index 8e0448faa..b85129a3f 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.cpp @@ -4,8 +4,6 @@ #include -class DeckList; - CommanderBracketService &CommanderBracketService::instance() { static CommanderBracketService service; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.h index 22962cc95..e0c2a9d55 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_service.h @@ -1,15 +1,10 @@ #ifndef COCKATRICE_COMMANDER_BRACKET_SERVICE_H #define COCKATRICE_COMMANDER_BRACKET_SERVICE_H -#include "api_response/commander_spellbook_estimate_bracket_result.h" #include "commander_spellbook_api_accessor.h" +#include "libcockatrice/deck_list/deck_list.h" #include -#include -#include -#include - -class DeckList; struct CommanderBracketEstimate { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.cpp index 06a76dd19..2cbbedfa4 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.cpp @@ -3,9 +3,7 @@ #include "../../../../../client/settings/cache_settings.h" #include "../../../../pixel_map_generator.h" #include "commander_bracket_service.h" -#include "libcockatrice/deck_list/deck_list.h" -#include #include #include #include @@ -13,17 +11,11 @@ #include #include #include -#include -#include #include -#include #include #include #include #include -#include - -template class QSharedPointer; CommanderBracketWidget::CommanderBracketWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.h index f5b2b7958..a45610fcf 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_bracket_widget.h @@ -4,17 +4,12 @@ #include "commander_spellbook_bracket_explainer.h" #include -#include #include -#include -#include +#include class QLabel; class QToolButton; struct CommanderBracketEstimate; -class DeckList; -class QObject; -template class QSharedPointer; class CommanderBracketWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.cpp index bd8d9379d..590692d98 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.cpp @@ -1,21 +1,13 @@ #include "commander_spellbook_api_accessor.h" #include "api_response/commander_spellbook_deck_request.h" -#include "api_response/commander_spellbook_estimate_bracket_result.h" -#include #include #include -#include -#include #include -#include #include -#include #include -class DeckList; - static const QUrl ESTIMATE_BRACKET_URL(QStringLiteral("https://backend.commanderspellbook.com/estimate-bracket")); CommanderSpellbookApiAccessor &CommanderSpellbookApiAccessor::instance() diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.h index 98e7e3710..682a48524 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_api_accessor.h @@ -1,15 +1,12 @@ #ifndef COCKATRICE_COMMANDER_SPELLBOOK_API_ACCESSOR_H #define COCKATRICE_COMMANDER_SPELLBOOK_API_ACCESSOR_H -#include -#include -#include -#include -#include +#include "api_response/commander_spellbook_estimate_bracket_result.h" -class DeckList; -class QNetworkReply; -struct EstimateBracketResult; +#include +#include +#include +#include class CommanderSpellbookApiAccessor final : public QObject { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.cpp index 06250f1ea..fc308ed60 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.cpp @@ -1,9 +1,5 @@ #include "commander_spellbook_bracket_explainer.h" -#include "api_response/commander_spellbook_card_result.h" -#include "api_response/commander_spellbook_estimate_bracket_result.h" -#include "api_response/commander_spellbook_variant_result.h" - static QString cardList(const QList &cards, int max = 5) { QStringList names; diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.h index 3ab317df9..9ed499742 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/commander_spellbook_bracket_explainer.h @@ -1,12 +1,6 @@ #ifndef COCKATRICE_COMMANDER_SPELLBOOK_BRACKET_EXPLAINER_H #define COCKATRICE_COMMANDER_SPELLBOOK_BRACKET_EXPLAINER_H - -#include -#include -#include -#include - -struct EstimateBracketResult; +#include "api_response/commander_spellbook_estimate_bracket_result.h" namespace CommanderBracketNames { diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.cpp b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.cpp index 22200ffa2..90b490efe 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.cpp @@ -2,16 +2,9 @@ #include "../../../../../client/settings/cache_settings.h" -#include #include -#include -#include -#include -#include -#include -#include +#include #include -#include #include static const QUrl COMMANDER_BRACKET_JSON_URL(QStringLiteral("https://cockatrice.github.io/commander-brackets.json")); diff --git a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.h b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.h index 39bddba05..b8348b13c 100644 --- a/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.h +++ b/cockatrice/src/interface/widgets/tabs/api/commander_spellbook/handle_commander_brackets.h @@ -1,12 +1,9 @@ #ifndef COCKATRICE_HANDLE_COMMANDER_BRACKETS_H #define COCKATRICE_HANDLE_COMMANDER_BRACKETS_H +#include #include #include -#include -#include - -class QNetworkAccessManager; class HandleCommanderBrackets : public QObject { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.cpp index 411fdd5ed..145a3fca0 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.cpp @@ -3,9 +3,6 @@ #include #include #include -#include -#include -#include void EdhrecApiResponseArchidektLink::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.h index 0786550fe..d265c164d 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/archidekt_links/edhrec_api_response_archidekt_links.h @@ -1,9 +1,7 @@ #ifndef ARCHIDEKTENTRY_H #define ARCHIDEKTENTRY_H -#include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_average_deck_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_average_deck_api_response.cpp index b6ecac0af..1297fc157 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_average_deck_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_average_deck_api_response.cpp @@ -1,13 +1,7 @@ #include "edhrec_average_deck_api_response.h" -#include "../archidekt_links/edhrec_api_response_archidekt_links.h" -#include "../cards/edhrec_api_response_card_container.h" -#include "../commander/edhrec_commander_api_response_average_deck_statistics.h" - #include #include -#include -#include void EdhrecAverageDeckApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.cpp index 324dce52a..1cb070c30 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.cpp @@ -1,14 +1,10 @@ #include "edhrec_deck_api_response.h" +#include #include #include -#include -#include -#include -#include -#include +#include #include -#include void EdhrecDeckApiResponse::fromJson(const QJsonArray &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.h index a47fcc10b..7bc97c431 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/average_deck/edhrec_deck_api_response.h @@ -7,9 +7,7 @@ #ifndef EDHREC_DECK_API_RESPONSE_H #define EDHREC_DECK_API_RESPONSE_H -#include "libcockatrice/deck_list/deck_list.h" - -#include +#include "../../../../../../deck_loader/deck_loader.h" class EdhrecDeckApiResponse { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/card_prices/edhrec_api_response_card_prices.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/card_prices/edhrec_api_response_card_prices.cpp index 26502f1de..1231d147a 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/card_prices/edhrec_api_response_card_prices.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/card_prices/edhrec_api_response_card_prices.cpp @@ -1,8 +1,6 @@ #include "edhrec_api_response_card_prices.h" #include -#include -#include void CardPrices::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.cpp index 8660cac50..3fef8be34 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.cpp @@ -3,9 +3,6 @@ #include #include #include -#include -#include -#include void EdhrecApiResponseCardContainer::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.h index 70d39474d..d76dda490 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_container.h @@ -11,7 +11,6 @@ #include "edhrec_commander_api_response_commander_details.h" #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_details.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_details.cpp index ebf09d2a9..a4a746c61 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_details.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_details.cpp @@ -1,8 +1,6 @@ #include "edhrec_api_response_card_details.h" #include -#include -#include EdhrecApiResponseCardDetails::EdhrecApiResponseCardDetails() : synergy(0.0), inclusion(0), numDecks(0), potentialDecks(0) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.cpp index 0cf585ee9..72d6fe2cc 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.cpp @@ -1,10 +1,6 @@ #include "edhrec_api_response_card_list.h" #include -#include -#include -#include -#include EdhrecApiResponseCardList::EdhrecApiResponseCardList() { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.h index d6e0d7f75..2df29de0c 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_api_response_card_list.h @@ -9,7 +9,7 @@ #include "edhrec_api_response_card_details.h" -#include +#include #include #include diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.cpp index 7383677c8..7b220603e 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.cpp @@ -1,11 +1,6 @@ #include "edhrec_commander_api_response_commander_details.h" -#include "../card_prices/edhrec_api_response_card_prices.h" - #include -#include -#include -#include void EdhrecCommanderApiResponseCommanderDetails::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.h index a0858e9d2..293e9a150 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/cards/edhrec_commander_api_response_commander_details.h @@ -10,8 +10,6 @@ #include "../card_prices/edhrec_api_response_card_prices.h" #include -#include -#include #include #include diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response.cpp index 1e0304e8a..da2a9c052 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response.cpp @@ -1,12 +1,7 @@ #include "edhrec_commander_api_response.h" -#include "../archidekt_links/edhrec_api_response_archidekt_links.h" -#include "../cards/edhrec_api_response_card_container.h" - #include #include -#include -#include void EdhrecCommanderApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response_average_deck_statistics.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response_average_deck_statistics.cpp index 996ec3c0c..74cce5322 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response_average_deck_statistics.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/commander/edhrec_commander_api_response_average_deck_statistics.cpp @@ -1,7 +1,5 @@ #include "edhrec_commander_api_response_average_deck_statistics.h" -#include - void EdhrecCommanderApiResponseAverageDeckStatistics::fromJson(const QJsonObject &json) { creature = json.value("creature").toInt(0); diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.cpp index 4df2f3523..26122ce89 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.cpp @@ -1,10 +1,7 @@ #include "edhrec_top_cards_api_response.h" -#include "../cards/edhrec_api_response_card_container.h" - #include -#include -#include +#include void EdhrecTopCardsApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.h index cdf0d4a71..695498e2b 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_cards/edhrec_top_cards_api_response.h @@ -9,7 +9,6 @@ #include "../cards/edhrec_api_response_card_container.h" -#include #include class EdhrecTopCardsApiResponse diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.cpp index c1bf71cb2..83b10c9e5 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.cpp @@ -1,10 +1,7 @@ #include "edhrec_top_commanders_api_response.h" -#include "../cards/edhrec_api_response_card_container.h" - #include -#include -#include +#include void EdhrecTopCommandersApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.h index 4579632c6..10aa51ff4 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_commanders/edhrec_top_commanders_api_response.h @@ -9,7 +9,6 @@ #include "../cards/edhrec_api_response_card_container.h" -#include #include class EdhrecTopCommandersApiResponse diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.cpp index cf6ea5df8..56eb4fa4f 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.cpp @@ -1,10 +1,7 @@ #include "edhrec_top_tags_api_response.h" -#include "../cards/edhrec_api_response_card_container.h" - #include -#include -#include +#include void EdhrecTopTagsApiResponse::fromJson(const QJsonObject &json) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.h index e6e25d97b..0337d94f8 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/api_response/top_tags/edhrec_top_tags_api_response.h @@ -9,7 +9,6 @@ #include "../cards/edhrec_api_response_card_container.h" -#include #include class EdhrecTopTagsApiResponse diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.cpp index 0ba74fd60..75902daad 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.cpp @@ -1,13 +1,5 @@ #include "edhrec_api_response_card_prices_display_widget.h" -#include "../../api_response/card_prices/edhrec_api_response_card_prices.h" - -#include -#include -#include -#include -#include - EdhrecApiResponseCardPricesDisplayWidget::EdhrecApiResponseCardPricesDisplayWidget(QWidget *parent, const CardPrices &_cardPrices) : QWidget(parent), cardPrices(_cardPrices) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.h index 75fe033dc..8943ae9f3 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/card_prices/edhrec_api_response_card_prices_display_widget.h @@ -9,11 +9,9 @@ #include "../../api_response/card_prices/edhrec_api_response_card_prices.h" +#include +#include #include -#include - -class QGridLayout; -class QLabel; class EdhrecApiResponseCardPricesDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp index 0728b3154..00c1741df 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp @@ -1,21 +1,10 @@ #include "edhrec_api_response_card_details_display_widget.h" -#include "../../../../../cards/card_info_picture_widget.h" -#include "../../../../../cards/card_size_widget.h" #include "../../../../../general/display/background_plate_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_details.h" #include "../../tab_edhrec_main.h" -#include "edhrec_api_response_card_inclusion_display_widget.h" -#include "edhrec_api_response_card_synergy_display_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include #include -#include -#include -#include #include -#include EdhrecApiResponseCardDetailsDisplayWidget::EdhrecApiResponseCardDetailsDisplayWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.h index d738f4685..b09cc4e04 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.h @@ -7,18 +7,15 @@ #ifndef EDHREC_COMMANDER_API_RESPONSE_CARD_DETAILS_DISPLAY_WIDGET_H #define EDHREC_COMMANDER_API_RESPONSE_CARD_DETAILS_DISPLAY_WIDGET_H +#include "../../../../../cards/card_info_picture_widget.h" +#include "../../../../../general/display/background_plate_widget.h" #include "../../api_response/cards/edhrec_api_response_card_details.h" +#include "edhrec_api_response_card_inclusion_display_widget.h" +#include "edhrec_api_response_card_synergy_display_widget.h" -#include +#include +#include #include -#include - -class BackgroundPlateWidget; -class CardInfoPictureWidget; -class EdhrecApiResponseCardInclusionDisplayWidget; -class EdhrecApiResponseCardSynergyDisplayWidget; -class QLabel; -class QVBoxLayout; class EdhrecApiResponseCardDetailsDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.cpp index 6786b006e..8292b00ea 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.cpp @@ -1,13 +1,5 @@ #include "edhrec_api_response_card_inclusion_display_widget.h" -#include "../../../../../general/display/charts/bars/percent_bar_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_details.h" - -#include -#include -#include -#include - EdhrecApiResponseCardInclusionDisplayWidget::EdhrecApiResponseCardInclusionDisplayWidget( QWidget *parent, const EdhrecApiResponseCardDetails &_toDisplay) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.h index 61a1bd645..516d820eb 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_inclusion_display_widget.h @@ -7,14 +7,12 @@ #ifndef EDHREC_API_RESPONSE_CARD_INCLUSION_DISPLAY_WIDGET_H #define EDHREC_API_RESPONSE_CARD_INCLUSION_DISPLAY_WIDGET_H +#include "../../../../../general/display/charts/bars/percent_bar_widget.h" #include "../../api_response/cards/edhrec_api_response_card_details.h" +#include +#include #include -#include - -class PercentBarWidget; -class QLabel; -class QVBoxLayout; class EdhrecApiResponseCardInclusionDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.cpp index 5295b92d5..841ef315b 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.cpp @@ -1,19 +1,9 @@ #include "edhrec_api_response_card_list_display_widget.h" #include "../../../../../general/display/banner_widget.h" -#include "../../../../../general/layout_containers/flow_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_details.h" -#include "../../api_response/cards/edhrec_api_response_card_list.h" #include "edhrec_api_response_card_details_display_widget.h" -#include -#include -#include -#include -#include -#include -#include -#include +#include EdhrecApiResponseCardListDisplayWidget::EdhrecApiResponseCardListDisplayWidget(QWidget *parent, EdhrecApiResponseCardList toDisplay) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.h index 20bdad8ea..555da6ecf 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_list_display_widget.h @@ -8,14 +8,12 @@ #define EDHREC_COMMANDER_API_RESPONSE_CARD_LIST_DISPLAY_WIDGET_H #include "../../../../../general/display/banner_widget.h" +#include "../../../../../general/layout_containers/flow_widget.h" +#include "../../api_response/cards/edhrec_api_response_card_list.h" -#include +#include +#include #include -#include - -class EdhrecApiResponseCardList; -class FlowWidget; -class QVBoxLayout; class EdhrecApiResponseCardListDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.cpp index 5f4b02327..9d5571a8f 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.cpp @@ -1,13 +1,5 @@ #include "edhrec_api_response_card_synergy_display_widget.h" -#include "../../../../../general/display/charts/bars/percent_bar_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_details.h" - -#include -#include -#include -#include - EdhrecApiResponseCardSynergyDisplayWidget::EdhrecApiResponseCardSynergyDisplayWidget( QWidget *parent, const EdhrecApiResponseCardDetails &_toDisplay) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.h index 71cca6ca4..5800b5497 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_synergy_display_widget.h @@ -7,14 +7,12 @@ #ifndef EDHREC_API_RESPONSE_CARD_SYNERGY_DISPLAY_WIDGET_H #define EDHREC_API_RESPONSE_CARD_SYNERGY_DISPLAY_WIDGET_H +#include "../../../../../general/display/charts/bars/percent_bar_widget.h" #include "../../api_response/cards/edhrec_api_response_card_details.h" +#include +#include #include -#include - -class PercentBarWidget; -class QLabel; -class QVBoxLayout; class EdhrecApiResponseCardSynergyDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp index 3da050edd..40a803e77 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp @@ -1,20 +1,11 @@ #include "edhrec_api_response_commander_details_display_widget.h" #include "../../../../../cards/card_info_picture_widget.h" -#include "../../../../../cards/card_size_widget.h" -#include "../../api_response/cards/edhrec_commander_api_response_commander_details.h" #include "../../tab_edhrec_main.h" #include "../card_prices/edhrec_api_response_card_prices_display_widget.h" -#include "edhrec_commander_api_response_navigation_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" +#include "edhrec_commander_api_response_bracket_navigation_widget.h" -#include -#include -#include -#include -#include #include -#include EdhrecCommanderResponseCommanderDetailsDisplayWidget::EdhrecCommanderResponseCommanderDetailsDisplayWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.h index 197263512..4201ce3b3 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.h @@ -7,19 +7,16 @@ #ifndef EDHREC_COMMANDER_API_RESPONSE_COMMANDER_DETAILS_DISPLAY_WIDGET_H #define EDHREC_COMMANDER_API_RESPONSE_COMMANDER_DETAILS_DISPLAY_WIDGET_H +#include "../../../../../cards/card_info_picture_widget.h" #include "../../api_response/cards/edhrec_commander_api_response_commander_details.h" +#include "../card_prices/edhrec_api_response_card_prices_display_widget.h" +#include "edhrec_commander_api_response_navigation_widget.h" -#include +#include +#include #include -#include class EdhrecCommanderApiResponseNavigationWidget; -class CardInfoPictureWidget; -class EdhrecApiResponseCardPricesDisplayWidget; -class QHBoxLayout; -class QLabel; -class QVBoxLayout; - class EdhrecCommanderResponseCommanderDetailsDisplayWidget : public QWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.cpp index b26a7e574..c3ab23e41 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.cpp @@ -1,12 +1,6 @@ #include "edhrec_commander_api_response_bracket_navigation_widget.h" -#include -#include -#include -#include #include -#include -#include EdhrecCommanderApiResponseBracketNavigationWidget::EdhrecCommanderApiResponseBracketNavigationWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.h index a741b6696..713ef2791 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_bracket_navigation_widget.h @@ -1,16 +1,11 @@ #ifndef COCKATRICE_EDHREC_COMMANDER_API_RESPONSE_BRACKET_NAVIGATION_WIDGET_H #define COCKATRICE_EDHREC_COMMANDER_API_RESPONSE_BRACKET_NAVIGATION_WIDGET_H -#include +#include +#include #include -#include -#include +#include #include -#include - -class QGridLayout; -class QLabel; -class QPushButton; class EdhrecCommanderApiResponseBracketNavigationWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.cpp index 48704d010..1845c020d 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.cpp @@ -1,12 +1,6 @@ #include "edhrec_commander_api_response_budget_navigation_widget.h" -#include -#include -#include -#include #include -#include -#include EdhrecCommanderApiResponseBudgetNavigationWidget::EdhrecCommanderApiResponseBudgetNavigationWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.h index 8013d1d6b..666edba16 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_budget_navigation_widget.h @@ -1,16 +1,11 @@ #ifndef COCKATRICE_EDHREC_COMMANDER_API_RESPONSE_BUDGET_NAVIGATION_WIDGET_H #define COCKATRICE_EDHREC_COMMANDER_API_RESPONSE_BUDGET_NAVIGATION_WIDGET_H -#include +#include +#include #include -#include -#include +#include #include -#include - -class QGridLayout; -class QLabel; -class QPushButton; class EdhrecCommanderApiResponseBudgetNavigationWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.cpp index 111d91b91..230858d6c 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.cpp @@ -1,30 +1,15 @@ #include "edhrec_commander_api_response_display_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_container.h" -#include "../../api_response/cards/edhrec_api_response_card_list.h" +#include "../../../../../cards/card_info_picture_widget.h" #include "../../api_response/commander/edhrec_commander_api_response.h" #include "../cards/edhrec_api_response_card_list_display_widget.h" #include "edhrec_api_response_commander_details_display_widget.h" -#include -#include -#include -#include -#include #include -#include -#include #include #include -#include #include -#include #include -#include -#include -#include - -class QModelIndex; EdhrecCommanderApiResponseDisplayWidget::EdhrecCommanderApiResponseDisplayWidget(QWidget *parent, EdhrecCommanderApiResponse response, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.h index 5ada40df3..80da8a7f8 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_display_widget.h @@ -7,14 +7,11 @@ #ifndef EDHREC_COMMANDER_API_RESPONSE_DISPLAY_WIDGET_H #define EDHREC_COMMANDER_API_RESPONSE_DISPLAY_WIDGET_H -#include -#include -#include +#include "../../api_response/commander/edhrec_commander_api_response.h" -class EdhrecCommanderApiResponse; -class QHBoxLayout; -class QScrollArea; -class QVBoxLayout; +#include +#include +#include class EdhrecCommanderApiResponseDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.cpp index fd02c4261..c42d2ed90 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.cpp @@ -1,12 +1,6 @@ #include "edhrec_commander_api_response_navigation_widget.h" #include "../../tab_edhrec_main.h" -#include "edhrec_commander_api_response_bracket_navigation_widget.h" -#include "edhrec_commander_api_response_budget_navigation_widget.h" - -#include -#include -#include EdhrecCommanderApiResponseNavigationWidget::EdhrecCommanderApiResponseNavigationWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.h index 737558625..9b46b54ba 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_commander_api_response_navigation_widget.h @@ -7,16 +7,14 @@ #ifndef EDHREC_COMMANDER_API_RESPONSE_NAVIGATION_WIDGET_H #define EDHREC_COMMANDER_API_RESPONSE_NAVIGATION_WIDGET_H -#include "../../api_response/cards/edhrec_commander_api_response_commander_details.h" +#include "edhrec_api_response_commander_details_display_widget.h" +#include "edhrec_commander_api_response_bracket_navigation_widget.h" +#include "edhrec_commander_api_response_budget_navigation_widget.h" -#include +#include +#include +#include #include -#include - -class EdhrecCommanderApiResponseBracketNavigationWidget; -class EdhrecCommanderApiResponseBudgetNavigationWidget; -class QGridLayout; -class QPushButton; class EdhrecCommanderApiResponseNavigationWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.cpp index 6f32db102..ae07c9dc8 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.cpp @@ -1,17 +1,8 @@ #include "edhrec_top_cards_api_response_display_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_container.h" -#include "../../api_response/cards/edhrec_api_response_card_list.h" #include "../../api_response/top_cards/edhrec_top_cards_api_response.h" #include "../cards/edhrec_api_response_card_list_display_widget.h" -#include -#include -#include -#include -#include -#include - EdhrecTopCardsApiResponseDisplayWidget::EdhrecTopCardsApiResponseDisplayWidget(QWidget *parent, EdhrecTopCardsApiResponse response) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.h index 8b5ddfad0..30998391c 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_cards/edhrec_top_cards_api_response_display_widget.h @@ -7,13 +7,12 @@ #ifndef EDHREC_TOP_CARDS_API_RESPONSE_DISPLAY_WIDGET_H #define EDHREC_TOP_CARDS_API_RESPONSE_DISPLAY_WIDGET_H -#include -#include +#include "../../api_response/top_cards/edhrec_top_cards_api_response.h" -class EdhrecTopCardsApiResponse; -class QHBoxLayout; -class QScrollArea; -class QVBoxLayout; +#include +#include +#include +#include class EdhrecTopCardsApiResponseDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.cpp index 4ab333fd4..13f54a979 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.cpp @@ -1,20 +1,8 @@ #include "edhrec_top_commanders_api_response_display_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_container.h" -#include "../../api_response/cards/edhrec_api_response_card_list.h" #include "../../api_response/top_commanders/edhrec_top_commanders_api_response.h" #include "../cards/edhrec_api_response_card_list_display_widget.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include - EdhrecTopCommandersApiResponseDisplayWidget::EdhrecTopCommandersApiResponseDisplayWidget( QWidget *parent, EdhrecTopCommandersApiResponse response) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.h index 8471a8dda..2b9563ea5 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_commander/edhrec_top_commanders_api_response_display_widget.h @@ -7,13 +7,12 @@ #ifndef EDHREC_TOP_COMMANDERS_API_RESPONSE_DISPLAY_WIDGET_H #define EDHREC_TOP_COMMANDERS_API_RESPONSE_DISPLAY_WIDGET_H -#include -#include +#include "../../api_response/top_commanders/edhrec_top_commanders_api_response.h" -class EdhrecTopCommandersApiResponse; -class QHBoxLayout; -class QScrollArea; -class QVBoxLayout; +#include +#include +#include +#include class EdhrecTopCommandersApiResponseDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.cpp index 9c7ce8d06..91a1ce3fa 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.cpp @@ -1,17 +1,8 @@ #include "edhrec_top_tags_api_response_display_widget.h" -#include "../../api_response/cards/edhrec_api_response_card_container.h" -#include "../../api_response/cards/edhrec_api_response_card_list.h" #include "../../api_response/top_tags/edhrec_top_tags_api_response.h" #include "../cards/edhrec_api_response_card_list_display_widget.h" -#include -#include -#include -#include -#include -#include - EdhrecTopTagsApiResponseDisplayWidget::EdhrecTopTagsApiResponseDisplayWidget(QWidget *parent, EdhrecTopTagsApiResponse response) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.h index 2c13d069f..4a4fc8991 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/top_tags/edhrec_top_tags_api_response_display_widget.h @@ -7,13 +7,11 @@ #ifndef EDHREC_TOP_TAGS_API_RESPONSE_DISPLAY_WIDGET_H #define EDHREC_TOP_TAGS_API_RESPONSE_DISPLAY_WIDGET_H -#include -#include +#include "../../api_response/top_tags/edhrec_top_tags_api_response.h" -class EdhrecTopTagsApiResponse; -class QHBoxLayout; -class QScrollArea; -class QVBoxLayout; +#include +#include +#include class EdhrecTopTagsApiResponseDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.cpp index 3aa395126..10389f4eb 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.cpp @@ -1,26 +1,16 @@ #include "tab_edhrec.h" -#include "../../tab.h" #include "api_response/commander/edhrec_commander_api_response.h" #include "display/commander/edhrec_commander_api_response_display_widget.h" -#include "libcockatrice/card/card_info.h" -#include -#include #include #include #include #include -#include #include #include -#include #include -#include -#include -#include - -class TabSupervisor; +#include TabEdhRec::TabEdhRec(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor) { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.h index 4e3c9c8ba..5ce36c9cf 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec.h @@ -8,16 +8,10 @@ #define TAB_EDHREC_H #include "../../tab.h" +#include "display/commander/edhrec_commander_api_response_display_widget.h" -#include -#include +#include #include -#include - -class EdhrecCommanderApiResponseDisplayWidget; -class QNetworkAccessManager; -class QNetworkReply; -class TabSupervisor; class TabEdhRec : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp index ca575dc02..500eab13a 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp @@ -1,9 +1,6 @@ #include "tab_edhrec_main.h" #include "../../../../../client/settings/cache_settings.h" -#include "../../../../deck_loader/loaded_deck.h" -#include "../../../cards/card_size_widget.h" -#include "../../../quick_settings/settings_button_widget.h" #include "../../../utility/completer_utils.h" #include "../../tab_supervisor.h" #include "api_response/average_deck/edhrec_average_deck_api_response.h" @@ -21,17 +18,13 @@ #include #include #include -#include #include #include #include #include #include -#include #include #include -#include -#include #include #include @@ -141,8 +134,6 @@ void TabEdhRecMain::setCard(CardInfoPtr _cardToQuery, bool isCommander) return; } - emit tabTextChanged(this, getTabText()); - QString cardName = cardToQuery->getName(); QString formattedName = cardName.toLower().replace(" ", "-").remove(QRegularExpression("[^a-z0-9\\-]")); diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.h b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.h index 5d0245ed4..a7ed83efd 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.h +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.h @@ -7,25 +7,16 @@ #ifndef TAB_EDHREC_MAIN_H #define TAB_EDHREC_MAIN_H +#include "../../interface/widgets/cards/card_size_widget.h" +#include "../../interface/widgets/quick_settings/settings_button_widget.h" #include "../../tab.h" -#include "libcockatrice/card/card_info.h" +#include "display/commander/edhrec_commander_api_response_display_widget.h" -#include -#include -#include -#include - -class CardSizeWidget; -class EdhrecCommanderApiResponseDisplayWidget; -class QHBoxLayout; -class QLineEdit; -class QNetworkAccessManager; -class QNetworkReply; -class QPushButton; -class QVBoxLayout; -class QWidget; -class SettingsButtonWidget; -class TabSupervisor; +#include +#include +#include +#include +#include class TabEdhRecMain : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab.cpp b/cockatrice/src/interface/widgets/tabs/tab.cpp index 5ef4d18b8..3dcb3b523 100644 --- a/cockatrice/src/interface/widgets/tabs/tab.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab.cpp @@ -1,17 +1,12 @@ #include "tab.h" #include "../interface/widgets/cards/card_info_display_widget.h" -#include "libcockatrice/utility/card_ref.h" #include "tab_supervisor.h" #include -#include -#include -#include +#include +#include #include -#include -#include -#include Tab::Tab(TabSupervisor *_tabSupervisor) : QMainWindow(_tabSupervisor), tabSupervisor(_tabSupervisor), contentsChanged(false), infoPopup(0) diff --git a/cockatrice/src/interface/widgets/tabs/tab.h b/cockatrice/src/interface/widgets/tabs/tab.h index e114f9bd9..bddf325e2 100644 --- a/cockatrice/src/interface/widgets/tabs/tab.h +++ b/cockatrice/src/interface/widgets/tabs/tab.h @@ -7,16 +7,12 @@ #ifndef TAB_H #define TAB_H -#include #include -#include #include -#include class QMenu; class TabSupervisor; class CardInfoDisplayWidget; -class QPoint; class Tab : public QMainWindow { diff --git a/cockatrice/src/interface/widgets/tabs/tab_account.cpp b/cockatrice/src/interface/widgets/tabs/tab_account.cpp index e55dc55d0..dbcf50966 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_account.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_account.cpp @@ -6,17 +6,10 @@ #include "../interface/widgets/server/user/user_list_manager.h" #include "../interface/widgets/server/user/user_list_widget.h" #include "../interface/widgets/utility/custom_line_edit.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include "tab_supervisor.h" -#include -#include -#include #include -#include #include -#include #include #include #include @@ -26,7 +19,6 @@ #include #include #include -#include TabAccount::TabAccount(TabSupervisor *_tabSupervisor, AbstractClient *_client, const ServerInfo_User &userInfo) : Tab(_tabSupervisor), client(_client) diff --git a/cockatrice/src/interface/widgets/tabs/tab_account.h b/cockatrice/src/interface/widgets/tabs/tab_account.h index ab2c4b38d..68054c7a1 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_account.h +++ b/cockatrice/src/interface/widgets/tabs/tab_account.h @@ -9,16 +9,11 @@ #include "tab.h" -#include -#include -#include -// IWYU pragma: keep -// ServerInfo_User appears by value and inside QList in slot signatures, so the -// moc-generated code needs the complete type. #include class AbstractClient; class Event_AddToList; +class Event_ListRooms; class Event_RemoveFromList; class Event_UserJoined; class Event_UserLeft; @@ -28,8 +23,6 @@ class Response; class ServerInfo_User; class UserInfoBox; class UserListWidget; -class TabSupervisor; -template class QList; class TabAccount : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_admin.cpp b/cockatrice/src/interface/widgets/tabs/tab_admin.cpp index cfbd00538..16f17e03e 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_admin.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_admin.cpp @@ -1,31 +1,19 @@ #include "tab_admin.h" -#include "libcockatrice/protocol/pb/response.pb.h" - #include #include #include -#include #include #include #include #include #include -#include -#include -#include #include #include #include #include #include #include -#include -#include - -class CommandContainer; -class QVariant; -class TabSupervisor; ShutdownDialog::ShutdownDialog(QWidget *parent) : QDialog(parent) { diff --git a/cockatrice/src/interface/widgets/tabs/tab_admin.h b/cockatrice/src/interface/widgets/tabs/tab_admin.h index 8eb139a8e..0da098ba5 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_admin.h +++ b/cockatrice/src/interface/widgets/tabs/tab_admin.h @@ -10,17 +10,15 @@ #include "tab.h" #include -#include -#include +#include +#include class AbstractClient; + class QGroupBox; class QPushButton; class QSpinBox; class QLineEdit; -class QWidget; -class Response; -class TabSupervisor; class ShutdownDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp index 1fc2854ce..999bc3db0 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp @@ -1,39 +1,16 @@ #include "tab_card_art_rules.h" #include "../utility/completer_utils.h" -#include "card_database_display_model.h" -#include "card_database_model.h" -#include "libcockatrice/card/card_info.h" #include "libcockatrice/card/database/card_database_manager.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include -#include #include #include #include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include #include #include #include #include -#include - -class QObject; -class TabSupervisor; CardArtRulesModel::CardArtRulesModel(AbstractClient *client, QObject *parent) : QAbstractTableModel(parent), client(client) diff --git a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.h b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.h index f34300179..b9ea2ca83 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.h +++ b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.h @@ -1,28 +1,16 @@ #ifndef COCKATRICE_DLG_CARD_ART_RULES_H #define COCKATRICE_DLG_CARD_ART_RULES_H -#include "tab.h" +#include "card/card_search_model.h" +#include "tab_supervisor.h" #include -#include -#include -#include -#include -#include +#include +#include +#include +#include class AbstractClient; -class CardCompleterProxyModel; -class CardDatabaseDisplayModel; -class CardDatabaseModel; -class CardSearchModel; -class QComboBox; -class QCompleter; -class QLineEdit; -class QObject; -class QPushButton; -class QTableView; -class Response; -class TabSupervisor; class CardArtRulesModel : public QAbstractTableModel { diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.cpp b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.cpp index 7ca179cea..8439aef70 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.cpp @@ -2,28 +2,28 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../deck_editor/deck_editor_card_database_dock_widget.h" -#include "../deck_editor/deck_editor_card_info_dock_widget.h" -#include "../deck_editor/deck_editor_deck_dock_widget.h" -#include "../deck_editor/deck_editor_printing_selector_dock_widget.h" #include "../deck_editor/deck_state_manager.h" +#include "../filters/filter_builder.h" +#include "../interface/pixel_map_generator.h" +#include "../interface/widgets/cards/card_info_frame_widget.h" #include "../interface/widgets/deck_editor/deck_editor_filter_dock_widget.h" #include "../interface/widgets/menus/deck_editor_menu.h" +#include "tab_supervisor.h" #include -#include +#include +#include +#include #include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include #include #include -#include - -class TabSupervisor; /** * @brief Constructs a new TabDeckEditor object. diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h index afe62e962..14be59cd7 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h @@ -1,11 +1,17 @@ #ifndef WINDOW_DECKEDITOR_H #define WINDOW_DECKEDITOR_H +#include "../../key_signals.h" +#include "../interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" #include "abstract_tab_deck_editor.h" -#include +#include -class TabSupervisor; +class CardDatabaseModel; +class CardDatabaseDisplayModel; +class DeckListModel; + +class QLabel; /** * @class TabDeckEditor diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp index 44d04bd24..41ebb17a2 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp @@ -1,55 +1,32 @@ #include "tab_deck_storage.h" #include "../../../client/settings/cache_settings.h" -#include "../../deck_loader/deck_file_format.h" #include "../../deck_loader/deck_loader.h" -#include "../../deck_loader/loaded_deck.h" #include "../../pixel_map_generator.h" #include "../cards/additional_info/deck_color_identity.h" #include "../deck_share/deck_share_utils.h" #include "../deck_share/share_bar_widget.h" #include "../interface/widgets/server/remote/remote_decklist_tree_widget.h" #include "../interface/widgets/utility/get_text_with_max.h" -#include "abstract_client.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include -#include #include #include +#include #include #include #include -#include -#include #include -#include #include #include #include #include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include #include #include -#include -#include -#include #include #include #include @@ -61,17 +38,12 @@ #include #include #include +#include #include #include #include #include #include -#include -#include -#include -#include - -class TabSupervisor; namespace { diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.h b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.h index 35a4649c7..f8d585880 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.h +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.h @@ -11,26 +11,22 @@ #include "../interface/widgets/server/remote/remote_decklist_tree_widget.h" #include "tab.h" -#include -#include #include -#include #include -#include struct LoadedDeck; class ServerInfo_User; +class AbstractClient; class QTreeView; class QFileSystemModel; class QToolBar; +class QTreeWidget; +class QTreeWidgetItem; class QGroupBox; class QTimer; class CommandContainer; class Response; class ShareBarWidget; -class QAction; -class QModelIndex; -class TabSupervisor; class TabDeckStorage : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_developer.cpp b/cockatrice/src/interface/widgets/tabs/tab_developer.cpp index d641a1ea5..39652ef7d 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_developer.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_developer.cpp @@ -6,35 +6,21 @@ #include "tab_developer.h" -#include "libcockatrice/protocol/pb/response.pb.h" - -#include #include #include -#include #include #include #include -#include #include -#include -#include #include #include -#include #include #include -#include -#include #include -#include #include #include #include #include -#include - -class TabSupervisor; static constexpr int DEFAULT_AUTO_REFRESH_INTERVAL_SECS = 30; diff --git a/cockatrice/src/interface/widgets/tabs/tab_developer.h b/cockatrice/src/interface/widgets/tabs/tab_developer.h index 1a4e5904f..727a56bcb 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_developer.h +++ b/cockatrice/src/interface/widgets/tabs/tab_developer.h @@ -9,10 +9,6 @@ #include "tab.h" -#include -#include -#include - class AbstractClient; class QCheckBox; class QLabel; @@ -21,7 +17,6 @@ class QSpinBox; class QTableWidget; class QTimer; class Response; -class TabSupervisor; class TabDeveloper : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_game.cpp b/cockatrice/src/interface/widgets/tabs/tab_game.cpp index 9a6862b2c..23976340b 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_game.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_game.cpp @@ -2,16 +2,11 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/abstract_game.h" -#include "../../../game/game_event_handler.h" -#include "../../../game/game_meta_info.h" -#include "../../../game/game_state.h" -#include "../../../game/player/player_info.h" -#include "../../../game/player/player_manager.h" -#include "../../../game_graphics/board/abstract_card_item.h" #include "../game/game.h" #include "../game/player/player_logic.h" #include "../game/replay.h" +#include "../game_graphics/board/arrow_item.h" +#include "../game_graphics/board/card_item.h" #include "../game_graphics/deckview/deck_view_container.h" #include "../game_graphics/deckview/tabbed_deck_view_container.h" #include "../game_graphics/game_scene.h" @@ -30,48 +25,37 @@ #include "../interface/widgets/server/user/user_list_manager.h" #include "../interface/widgets/utility/completer_utils.h" #include "../interface/widgets/utility/line_edit_completer.h" +#include "../interface/window_main.h" #include "../main.h" -#include "../menus/tearoff_menu.h" -#include "../replay/replay_widget.h" #include "../utility/visibility_change_listener.h" #include "card/card_completer_proxy_model.h" #include "card/card_search_model.h" #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/utility/card_ref.h" #include "tab_supervisor.h" #include #include #include -#include #include #include #include -#include #include #include -#include #include #include -#include #include #include -#include #include #include -#include #include #include #include -#include +#include #include #include +#include +#include #include #include #include @@ -79,18 +63,6 @@ #include #include #include -#include -#include -#include - -class Event_GameJoined; -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google TabGame::TabGame(TabSupervisor *_tabSupervisor, GameReplay *_replay) : Tab(_tabSupervisor), sayLabel(nullptr), sayEdit(nullptr) diff --git a/cockatrice/src/interface/widgets/tabs/tab_game.h b/cockatrice/src/interface/widgets/tabs/tab_game.h index 7bc52202f..29a2f40a3 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_game.h +++ b/cockatrice/src/interface/widgets/tabs/tab_game.h @@ -9,55 +9,47 @@ #ifndef TAB_GAME_H #define TAB_GAME_H +#include "../game/abstract_game.h" +#include "../game/player/player_logic.h" +#include "../game_graphics/log/message_log_widget.h" +#include "../interface/widgets/menus/tearoff_menu.h" +#include "../interface/widgets/replay/replay_widget.h" #include "tab.h" -#include +#include #include #include -#include -#include -#include -#include -#include -#include -// IWYU pragma: keep -// ServerInfo_User appears by value and inside QList in slot signatures, so the -// moc-generated code needs the complete type. -#include +#include class CardMenu; +class ServerInfo_PlayerProperties; class TabbedDeckViewContainer; -class AbstractGame; -class Event_GameJoined; -class GameEventContext; -class MessageLogWidget; -class PlayerLogic; -class QAction; -class QCompleter; -class QStringListModel; -class QWidget; -class ServerInfo_Player; -class ServerInfo_User; -class TabSupervisor; -class TearOffMenu; -struct CardRef; -struct LoadedDeck; - inline Q_LOGGING_CATEGORY(TabGameLog, "tab_game"); class UserListProxy; +class DeckViewContainer; class AbstractClient; +class CardDatabase; class GameView; class GameScene; class ReplayWidget; class CardInfoFrameWidget; +class QTimer; +class QSplitter; class QLabel; class QPushButton; +class QToolButton; class QMenu; +class ZoneViewLayout; +class ZoneViewWidget; class PhasesToolbar; class PlayerListWidget; +class ReplayTimelineWidget; +class CardZone; class AbstractCardItem; +class CardItem; class QVBoxLayout; +class QHBoxLayout; class GameReplay; class LineEditCompleter; class QDockWidget; diff --git a/cockatrice/src/interface/widgets/tabs/tab_home.cpp b/cockatrice/src/interface/widgets/tabs/tab_home.cpp index 1358645d0..7a79b1785 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_home.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_home.cpp @@ -1,9 +1,5 @@ #include "tab_home.h" -#include "../general/home_widget.h" - -class TabSupervisor; - TabHome::TabHome(TabSupervisor *_tabSupervisor, AbstractClient *_client) : Tab(_tabSupervisor), client(_client) { homeWidget = new HomeWidget(this, tabSupervisor); diff --git a/cockatrice/src/interface/widgets/tabs/tab_home.h b/cockatrice/src/interface/widgets/tabs/tab_home.h index bc86348cb..3aae19c2b 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_home.h +++ b/cockatrice/src/interface/widgets/tabs/tab_home.h @@ -7,14 +7,12 @@ #ifndef TAB_HOME_H #define TAB_HOME_H +#include "../interface/widgets/general/home_widget.h" #include "tab.h" -#include -#include +#include class AbstractClient; -class HomeWidget; -class TabSupervisor; class TabHome : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_logs.cpp b/cockatrice/src/interface/widgets/tabs/tab_logs.cpp index 9f17afea2..f73d06b57 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_logs.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_logs.cpp @@ -1,35 +1,23 @@ #include "tab_logs.h" #include "../interface/widgets/utility/custom_line_edit.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_chat_message.pb.h" #include #include #include #include #include -#include #include #include #include -#include -#include #include #include #include -#include -#include -#include #include #include #include #include #include -#include -#include - -class TabSupervisor; TabLog::TabLog(TabSupervisor *_tabSupervisor, AbstractClient *_client, bool _canUseDeveloperCommands) : Tab(_tabSupervisor), client(_client), canUseDeveloperCommands(_canUseDeveloperCommands) diff --git a/cockatrice/src/interface/widgets/tabs/tab_logs.h b/cockatrice/src/interface/widgets/tabs/tab_logs.h index fc8ef1ea0..8e914ea64 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_logs.h +++ b/cockatrice/src/interface/widgets/tabs/tab_logs.h @@ -9,8 +9,7 @@ #include "tab.h" -#include -#include +#include class AbstractClient; class LineEditUnfocusable; @@ -25,8 +24,9 @@ class QWidget; class QGridLayout; class QVBoxLayout; class QTableWidget; +class CommandContainer; class Response; -class TabSupervisor; +class AbstractClient; class TabLog : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_message.cpp b/cockatrice/src/interface/widgets/tabs/tab_message.cpp index 65186e396..418843178 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_message.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_message.cpp @@ -6,18 +6,12 @@ #include "../interface/widgets/server/user/user_list_manager.h" #include "../interface/widgets/utility/custom_line_edit.h" #include "../main.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "tab_supervisor.h" -#include #include -#include +#include #include -#include -#include #include #include -#include #include #include #include @@ -25,7 +19,6 @@ #include #include #include -#include TabMessage::TabMessage(TabSupervisor *_tabSupervisor, AbstractClient *_client, diff --git a/cockatrice/src/interface/widgets/tabs/tab_message.h b/cockatrice/src/interface/widgets/tabs/tab_message.h index bea58ecb3..0e6d66d4c 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_message.h +++ b/cockatrice/src/interface/widgets/tabs/tab_message.h @@ -10,13 +10,6 @@ #include "tab.h" #include -#include -#include -#include - -class QAction; -class QMenu; -class TabSupervisor; inline Q_LOGGING_CATEGORY(TabMessageLog, "tab_message"); diff --git a/cockatrice/src/interface/widgets/tabs/tab_moderation.cpp b/cockatrice/src/interface/widgets/tabs/tab_moderation.cpp index 09a640540..b9c37f1af 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_moderation.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_moderation.cpp @@ -1,13 +1,8 @@ #include "tab_moderation.h" #include "abstract_client.h" -#include "libcockatrice/protocol/pb/admin_commands.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_moderator_login.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user_alt.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user_session.pb.h" +#include "tab_supervisor.h" -#include #include #include #include @@ -15,17 +10,12 @@ #include #include #include -#include #include #include -#include #include -#include #include -#include #include #include -#include #include #include #include @@ -36,10 +26,6 @@ #include #include #include -#include -#include - -class TabSupervisor; namespace { diff --git a/cockatrice/src/interface/widgets/tabs/tab_moderation.h b/cockatrice/src/interface/widgets/tabs/tab_moderation.h index e352e90bb..0a534992b 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_moderation.h +++ b/cockatrice/src/interface/widgets/tabs/tab_moderation.h @@ -3,9 +3,7 @@ #include "tab.h" -#include -#include -#include +#include class AbstractClient; class QGroupBox; @@ -14,8 +12,6 @@ class QLineEdit; class QPushButton; class QTableWidget; class QTextEdit; -class Response; -class TabSupervisor; /** * Staff investigation tool. Lets moderators look up a user's account data, diff --git a/cockatrice/src/interface/widgets/tabs/tab_public_decks.cpp b/cockatrice/src/interface/widgets/tabs/tab_public_decks.cpp index 6bf3f6be7..d13f9d1e3 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_public_decks.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_public_decks.cpp @@ -2,7 +2,6 @@ #include "../../../client/settings/cache_settings.h" #include "../../deck_loader/deck_loader.h" -#include "../../deck_loader/loaded_deck.h" #include "../cards/card_size_widget.h" #include "../general/layout_containers/flow_widget.h" #include "../visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.h" @@ -13,21 +12,14 @@ #include "../visual_deck_storage/visual_deck_storage_tag_filter_widget.h" #include "tab_supervisor.h" -#include -#include -#include -#include +#include #include #include -#include #include #include -#include #include #include #include -#include -#include #include #include #include @@ -35,7 +27,6 @@ #include #include #include -#include TabPublicDecks::TabPublicDecks(TabSupervisor *_tabSupervisor, AbstractClient *_client, const QString &_userName) : Tab(_tabSupervisor), client(_client), userName(_userName) diff --git a/cockatrice/src/interface/widgets/tabs/tab_public_decks.h b/cockatrice/src/interface/widgets/tabs/tab_public_decks.h index 847479e78..492fdeafa 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_public_decks.h +++ b/cockatrice/src/interface/widgets/tabs/tab_public_decks.h @@ -8,13 +8,11 @@ #include "tab.h" -#include -#include - class AbstractClient; class CommandContainer; class DeckPreviewColorIdentityFilterWidget; class FlowWidget; +class PublicDeckPreviewWidget; class QLabel; class QToolButton; class RemotePublicDecksModel; @@ -22,7 +20,6 @@ class Response; class VisualDeckStorageQuickSettingsWidget; class VisualDeckStorageSearchWidget; class VisualDeckStorageTagFilterWidget; -class TabSupervisor; /** * @brief A visual grid of the public decks published by another user. diff --git a/cockatrice/src/interface/widgets/tabs/tab_replays.cpp b/cockatrice/src/interface/widgets/tabs/tab_replays.cpp index 52bc4cd8f..e26bea2a3 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_replays.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_replays.cpp @@ -3,51 +3,22 @@ #include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" #include "../interface/widgets/server/remote/remote_replay_list_tree_widget.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay_match.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" +#include "tab_game.h" -#include -#include #include #include -#include #include -#include #include #include -#include -#include #include -#include #include #include #include -#include #include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include #include #include -#include -#include #include #include #include @@ -61,11 +32,6 @@ #include #include #include -#include -#include -#include - -class TabSupervisor; inline Q_LOGGING_CATEGORY(TabReplaysLog, "replays_tab"); diff --git a/cockatrice/src/interface/widgets/tabs/tab_replays.h b/cockatrice/src/interface/widgets/tabs/tab_replays.h index e29e29bd7..aa4ec039c 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_replays.h +++ b/cockatrice/src/interface/widgets/tabs/tab_replays.h @@ -10,26 +10,19 @@ #include "tab.h" -#include -#include #include -// IWYU pragma: keep -// GameReplay is a protobuf message passed through the openReplay signal, -// so the moc-generated code needs the complete type. -#include -#include class ServerInfo_User; class Response; +class AbstractClient; class QTreeView; class QFileSystemModel; +class QToolBar; class QGroupBox; class RemoteReplayList_TreeWidget; +class GameReplay; class Event_ReplayAdded; class CommandContainer; -class QAction; -class QModelIndex; -class TabSupervisor; class TabReplays : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_report.cpp b/cockatrice/src/interface/widgets/tabs/tab_report.cpp index 5f158e9b1..0b9108f9b 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_report.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_report.cpp @@ -2,16 +2,11 @@ #include "../utility/report_utils.h" #include "abstract_client.h" -#include "libcockatrice/protocol/pb/response.pb.h" #include "tab_supervisor.h" -#include -#include #include #include #include -#include -#include #include #include #include @@ -20,19 +15,16 @@ #include #include #include +#include #include -#include #include #include #include -#include #include #include #include #include -#include #include -#include #include #include #include @@ -49,8 +41,6 @@ #include #include #include -#include -#include namespace { diff --git a/cockatrice/src/interface/widgets/tabs/tab_report.h b/cockatrice/src/interface/widgets/tabs/tab_report.h index 645f949de..b62a99ce2 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_report.h +++ b/cockatrice/src/interface/widgets/tabs/tab_report.h @@ -4,9 +4,8 @@ #include "tab.h" #include -#include +#include #include -#include class AbstractClient; class QCheckBox; @@ -20,8 +19,6 @@ class QTableWidget; class QTextEdit; class QTimer; class GameReplay; -class Response; -class TabSupervisor; class TabReport : public Tab { diff --git a/cockatrice/src/interface/widgets/tabs/tab_room.cpp b/cockatrice/src/interface/widgets/tabs/tab_room.cpp index 67106ba34..866324367 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_room.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_room.cpp @@ -11,39 +11,27 @@ #include "../interface/widgets/server/user/user_list_panel_widget.h" #include "../interface/widgets/server/user/user_list_widget.h" #include "../main.h" -#include "../server/game_type_map.h" -#include "../server/user/user_list_proxy.h" #include "../utility/completer_utils.h" -#include "../utility/line_edit_completer.h" #include "card/card_completer_proxy_model.h" #include "card/card_search_model.h" #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_gametype.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" +#include "tab_account.h" #include "tab_supervisor.h" -#include "user_level.h" -#include #include -#include #include -#include -#include -#include -#include #include #include +#include +#include #include #include #include -#include #include #include #include -#include +#include #include #include #include @@ -58,8 +46,6 @@ #include #include #include -#include -#include TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, diff --git a/cockatrice/src/interface/widgets/tabs/tab_room.h b/cockatrice/src/interface/widgets/tabs/tab_room.h index 031056145..7d01d5cf6 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_room.h +++ b/cockatrice/src/interface/widgets/tabs/tab_room.h @@ -8,21 +8,16 @@ #ifndef TAB_ROOM_H #define TAB_ROOM_H +#include "../interface/widgets/utility/line_edit_completer.h" #include "tab.h" -#include +#include +#include #include -#include -#include -#include +#include class UserListProxy; -class QAction; -class QGroupBox; -class QMenu; -class QStringListModel; -class TabSupervisor; - +class UserListManager; namespace google { namespace protobuf @@ -35,9 +30,12 @@ class UserListWidget; class UserListPanelWidget; class QLabel; class ChatView; +class QPushButton; +class QTextTable; class QCompleter; class RoomEvent; class ServerInfo_Room; +class ServerInfo_Game; class Event_ListGames; class Event_JoinRoom; class Event_LeaveRoom; diff --git a/cockatrice/src/interface/widgets/tabs/tab_server.cpp b/cockatrice/src/interface/widgets/tabs/tab_server.cpp index 0f3e76c76..fca32094c 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_server.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_server.cpp @@ -1,20 +1,14 @@ #include "tab_server.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_room.pb.h" +#include "../interface/widgets/server/user/user_list_widget.h" #include "tab_supervisor.h" #include #include -#include +#include #include #include -#include -#include -#include -#include -#include -#include +#include #include #include #include @@ -22,9 +16,6 @@ #include #include #include -#include - -class TabRoom; RoomSelector::RoomSelector(AbstractClient *_client, QWidget *parent) : QGroupBox(parent), client(_client) { diff --git a/cockatrice/src/interface/widgets/tabs/tab_server.h b/cockatrice/src/interface/widgets/tabs/tab_server.h index eb2f572fe..121ff814d 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_server.h +++ b/cockatrice/src/interface/widgets/tabs/tab_server.h @@ -12,21 +12,20 @@ #include #include #include -#include -#include -#include +#include +#include class AbstractClient; +class QTextEdit; +class QLabel; +class UserListWidget; class QPushButton; + class Event_ListRooms; class Event_ServerMessage; class Response; class ServerInfo_Room; class CommandContainer; -class QTextBrowser; -class QTreeWidget; -class QWidget; -class TabSupervisor; class RoomSelector : public QGroupBox { diff --git a/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp b/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp index 70014ec47..0dc246eaa 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_supervisor.cpp @@ -2,27 +2,14 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include "../../../game/abstract_game.h" -#include "../../../game/game_event_handler.h" -#include "../../../game/game_meta_info.h" -#include "../../deck_loader/loaded_deck.h" -#include "../../intents/contexts/context_connect_to_server.h" -#include "../../intents/contexts/context_join_game.h" -#include "../../intents/contexts/context_join_room.h" -#include "../../intents/intent.h" #include "../../intents/intent_join_server_game.h" #include "../interface/pixel_map_generator.h" #include "../interface/widgets/server/game_link.h" #include "../interface/widgets/server/user/user_list_manager.h" +#include "../interface/widgets/server/user/user_list_widget.h" #include "../main.h" -#include "abstract_tab_deck_editor.h" #include "api/archidekt/tab_archidekt.h" -#include "api/edhrec/tab_edhrec.h" #include "api/edhrec/tab_edhrec_main.h" -#include "latency_tracker.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_gametype.pb.h" -#include "tab.h" #include "tab_account.h" #include "tab_admin.h" #include "tab_card_art_rules.h" @@ -40,31 +27,14 @@ #include "tab_room.h" #include "tab_server.h" #include "tab_visual_database_display.h" -#include "user_level.h" #include "visual_deck_editor/tab_deck_editor_visual.h" +#include "visual_deck_editor/tab_deck_editor_visual_tab_widget.h" #include "visual_deck_storage/tab_deck_storage_visual.h" -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include #include -#include #include #include #include @@ -75,16 +45,11 @@ #include #include #include +#include #include #include #include #include -#include -#include -#include -#include - -class QWidget; QRect MacOSTabFixStyle::subElementRect(SubElement element, const QStyleOption *option, const QWidget *widget) const { diff --git a/cockatrice/src/interface/widgets/tabs/tab_supervisor.h b/cockatrice/src/interface/widgets/tabs/tab_supervisor.h index 9c7dc48d1..1a4f7f749 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_supervisor.h +++ b/cockatrice/src/interface/widgets/tabs/tab_supervisor.h @@ -8,36 +8,29 @@ #ifndef TAB_SUPERVISOR_H #define TAB_SUPERVISOR_H +#include "../../deck_loader/deck_loader.h" #include "../interface/widgets/server/game_link.h" -#include "libcockatrice/card/card_info.h" +#include "../interface/widgets/server/user/user_list_proxy.h" +#include "abstract_tab_deck_editor.h" +#include "api/archidekt/tab_archidekt.h" +#include "api/edhrec/tab_edhrec.h" +#include "api/edhrec/tab_edhrec_main.h" +#include "tab_visual_database_display.h" +#include "visual_deck_editor/tab_deck_editor_visual.h" +#include "visual_deck_storage/tab_deck_storage_visual.h" #include -#include #include #include -#include #include -#include -#include #include #include -#include class TabCardArtRules; -class AbstractTabDeckEditor; -class QAction; -class QWidget; -class TabArchidekt; -class TabDeckEditorVisual; -class TabDeckStorageVisual; -class TabEdhRec; -class TabEdhRecMain; -class TabVisualDatabaseDisplay; -struct LoadedDeck; - inline Q_LOGGING_CATEGORY(TabSupervisorLog, "tab_supervisor"); class UserListManager; +class QMenu; class AbstractClient; class Tab; class TabServer; @@ -63,6 +56,7 @@ class Event_NotifyUser; class ServerInfo_Room; class ServerInfo_User; class GameReplay; +class DeckList; class MacOSTabFixStyle : public QProxyStyle { diff --git a/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.cpp b/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.cpp index f4b007072..3112e7ada 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.cpp @@ -1,7 +1,6 @@ #include "tab_visual_database_display.h" -#include "../visual_database_display/visual_database_display_widget.h" -#include "card_database_model.h" +#include "tab_deck_editor.h" #include "tab_supervisor.h" #include diff --git a/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.h b/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.h index 31633f10c..3a4bcd6ea 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.h +++ b/cockatrice/src/interface/widgets/tabs/tab_visual_database_display.h @@ -8,14 +8,8 @@ #define TAB_VISUAL_DATABASE_DISPLAY_H #include "../interface/widgets/visual_database_display/visual_database_display_widget.h" -#include "libcockatrice/card/card_info.h" #include "tab.h" -#include -#include - -class TabSupervisor; - class TabVisualDatabaseDisplay : public Tab { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp index be7255dc3..0f43893d3 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp @@ -2,53 +2,37 @@ #include "../../../../client/settings/cache_settings.h" #include "../../../../client/settings/shortcuts_settings.h" -#include "../../../deck_loader/loaded_deck.h" -#include "../../deck_editor/deck_editor_card_database_dock_widget.h" -#include "../../deck_editor/deck_editor_card_info_dock_widget.h" -#include "../../deck_editor/deck_editor_deck_dock_widget.h" -#include "../../deck_editor/deck_editor_filter_dock_widget.h" -#include "../../deck_editor/deck_editor_printing_selector_dock_widget.h" +#include "../../cards/card_info_display_widget.h" #include "../../deck_editor/deck_state_manager.h" #include "../../deck_editor/deck_zone_dialog.h" +#include "../../filters/filter_builder.h" +#include "../../interface/pixel_map_generator.h" +#include "../../interface/widgets/cards/card_info_frame_widget.h" #include "../../interface/widgets/deck_analytics/deck_analytics_widget.h" #include "../../interface/widgets/visual_deck_editor/visual_deck_editor_widget.h" -#include "../../menus/deck_editor_menu.h" -#include "../../visual_database_display/visual_database_display_widget.h" -#include "../../visual_deck_editor/visual_deck_editor_sample_hand_widget.h" +#include "../tab_deck_editor.h" #include "../tab_supervisor.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" #include "tab_deck_editor_visual_tab_widget.h" #include -#include -#include -#include +#include +#include +#include #include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include #include -#include -#include -#include -#include +#include +#include +#include #include #include #include -#include -#include #include +#include +#include #include #include -#include -#include /** * @brief Constructs the TabDeckEditorVisual instance. diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.h b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.h index f5eb9981a..fb09578c4 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.h +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.h @@ -1,19 +1,8 @@ #ifndef WINDOW_DECKEDITORVISUAL_H #define WINDOW_DECKEDITORVISUAL_H -#include "../abstract_tab_deck_editor.h" - -#include -#include -#include - -class ExactCard; -class QDockWidget; -class QHBoxLayout; -class QVBoxLayout; -class QWidget; -class TabDeckEditorVisualTabWidget; -class TabSupervisor; +#include "../tab.h" +#include "tab_deck_editor_visual_tab_widget.h" /** * @class TabDeckEditorVisual diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp index 8e01ff983..5ccfcc28f 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp @@ -1,24 +1,7 @@ #include "tab_deck_editor_visual_tab_widget.h" -#include "../../deck_analytics/deck_analytics_widget.h" -#include "../../deck_analytics/deck_list_statistics_analyzer.h" -#include "../../deck_editor/deck_editor_deck_dock_widget.h" #include "../../interface/widgets/visual_database_display/visual_database_display_widget.h" -#include "../../visual_deck_editor/visual_deck_editor_sample_hand_widget.h" -#include "../../visual_deck_editor/visual_deck_editor_widget.h" #include "../abstract_tab_deck_editor.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" - -#include -#include -#include -#include -#include - -class CardDatabaseModel; -class DeckListModel; -class QMouseEvent; /** * @brief Constructs the TabDeckEditorVisualTabWidget. diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.h b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.h index fff978f42..4f04b51f6 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.h +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.h @@ -1,25 +1,16 @@ #ifndef TAB_DECK_EDITOR_VISUAL_TAB_WIDGET_H #define TAB_DECK_EDITOR_VISUAL_TAB_WIDGET_H -#include "libcockatrice/card/card_info.h" +#include "../../interface/widgets/deck_analytics/deck_analytics_widget.h" +#include "../../interface/widgets/printing_selector/printing_selector.h" +#include "../../interface/widgets/visual_database_display/visual_database_display_widget.h" +#include "../../interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.h" +#include "../../interface/widgets/visual_deck_editor/visual_deck_editor_widget.h" +#include "../abstract_tab_deck_editor.h" -#include -#include #include -#include - -class AbstractTabDeckEditor; -class CardDatabaseModel; -class DeckAnalyticsWidget; -class DeckListModel; -class DeckListStatisticsAnalyzer; -class ExactCard; -class PrintingSelector; -class QVBoxLayout; -class QWidget; -class VisualDatabaseDisplayWidget; -class VisualDeckEditorSampleHandWidget; -class VisualDeckEditorWidget; +#include +#include /** * @class TabDeckEditorVisualTabWidget diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp index cb6dfab9c..03df76b03 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp @@ -1,30 +1,23 @@ #include "tab_deck_storage_visual.h" #include "../../../../client/settings/cache_settings.h" -#include "../../../deck_loader/deck_file_format.h" #include "../../../deck_loader/deck_loader.h" -#include "../../../deck_loader/loaded_deck.h" #include "../../cards/additional_info/deck_color_identity.h" #include "../../deck_share/deck_share_utils.h" -#include "../../deck_share/share_bar_widget.h" #include "../../interface/widgets/visual_deck_storage/visual_deck_storage_widget.h" -#include "../tab.h" #include "../tab_supervisor.h" #include #include #include -#include -#include #include #include #include #include #include +#include #include #include -#include -#include TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor, AbstractClient *_client) : Tab(_tabSupervisor), visualDeckStorageWidget(new VisualDeckStorageWidget(this)), client(_client), diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h index 13a078fce..7cd4e7d17 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.h @@ -10,18 +10,22 @@ #include "../../deck_share/share_bar_widget.h" #include "../tab.h" -#include -#include #include #include -#include struct LoadedDeck; +class AbstractClient; class CommandContainer; +class DeckPreviewWidget; +class QFileSystemModel; +class QGroupBox; class QTimer; +class QToolBar; +class QTreeView; +class QTreeWidget; +class QTreeWidgetItem; class Response; class VisualDeckStorageWidget; -class TabSupervisor; class TabDeckStorageVisual final : public Tab { diff --git a/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp b/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp index 8042fb9fc..29bf2263e 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp +++ b/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp @@ -2,42 +2,18 @@ #include "../../pixel_map_generator.h" #include "../cards/additional_info/mana_cost_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/set/card_set.h" -#include -#include -#include -#include #include #include -#include -#include #include #include -#include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include #include -#include -#include #include #include #include #include -#include - -class QObject; -template class QSharedPointer; // --------------------------------------------------------------------------- // Internal colour helpers diff --git a/cockatrice/src/interface/widgets/utility/card_completer_delegate.h b/cockatrice/src/interface/widgets/utility/card_completer_delegate.h index ad81d86e4..78667f56b 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_delegate.h +++ b/cockatrice/src/interface/widgets/utility/card_completer_delegate.h @@ -9,16 +9,10 @@ #include #include -#include +#include #include -#include class CardInfo; -class QObject; -class QPainter; -class QPoint; -class QRect; -template class QSharedPointer; /** * @brief Paints styled card completer popup rows. diff --git a/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp b/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp index 1ddcc4200..6794ccbb4 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp +++ b/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp @@ -2,37 +2,20 @@ #include "../cards/card_info_picture_enlarged_widget.h" #include "card_completer_delegate.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" #include "reversed_completer_model.h" -#include #include #include -#include #include #include -#include #include -#include #include -#include #include -#include #include -#include #include -#include -#include -#include -#include #include #include #include -#include -#include - -template class QSharedPointer; namespace { @@ -149,9 +132,7 @@ bool CardCompleterStyler::handlePopupKeyPress(QKeyEvent *event) const int newRow = qBound(0, currentRow + step, rowCount - 1); if (newRow != currentRow) { - const QModelIndex newIndex = completer->completionModel()->index(newRow, completer->completionColumn()); - popup->selectionModel()->setCurrentIndex(newIndex, - QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows); + popup->setCurrentIndex(completer->completionModel()->index(newRow, completer->completionColumn())); } return true; @@ -180,8 +161,7 @@ void CardCompleterStyler::ensureClosestSelected() const int closestRow = rowCount - 1; if (currentRow != closestRow) { - popup->selectionModel()->setCurrentIndex(completionModel->index(closestRow, completer->completionColumn()), - QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows); + popup->setCurrentIndex(completionModel->index(closestRow, completer->completionColumn())); } } diff --git a/cockatrice/src/interface/widgets/utility/card_completer_styler.h b/cockatrice/src/interface/widgets/utility/card_completer_styler.h index 9245c9095..616e3fe61 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_styler.h +++ b/cockatrice/src/interface/widgets/utility/card_completer_styler.h @@ -9,7 +9,6 @@ #include #include -#include class CardInfoPictureEnlargedWidget; class QCompleter; diff --git a/cockatrice/src/interface/widgets/utility/compact_push_button.cpp b/cockatrice/src/interface/widgets/utility/compact_push_button.cpp index 7df105d15..cf98bfede 100644 --- a/cockatrice/src/interface/widgets/utility/compact_push_button.cpp +++ b/cockatrice/src/interface/widgets/utility/compact_push_button.cpp @@ -1,9 +1,5 @@ #include "compact_push_button.h" -#include -#include -#include - CompactPushButton::CompactPushButton(QWidget *parent) : QPushButton(parent) { setCheckable(true); diff --git a/cockatrice/src/interface/widgets/utility/compact_push_button.h b/cockatrice/src/interface/widgets/utility/compact_push_button.h index fa8c8080a..b0017beee 100644 --- a/cockatrice/src/interface/widgets/utility/compact_push_button.h +++ b/cockatrice/src/interface/widgets/utility/compact_push_button.h @@ -1,12 +1,7 @@ #ifndef COCKATRICE_COMPACT_PUSH_BUTTON_H #define COCKATRICE_COMPACT_PUSH_BUTTON_H -#include #include -#include -#include - -class QWidget; class CompactPushButton : public QPushButton { diff --git a/cockatrice/src/interface/widgets/utility/completer_utils.cpp b/cockatrice/src/interface/widgets/utility/completer_utils.cpp index f1cd9c6a7..23ddb30b0 100644 --- a/cockatrice/src/interface/widgets/utility/completer_utils.cpp +++ b/cockatrice/src/interface/widgets/utility/completer_utils.cpp @@ -3,66 +3,19 @@ #include "../../../client/settings/cache_settings.h" #include "card_completer_styler.h" -#include #include #include -#include #include -#include -#include #include -#include #include -#include -#include -#include #include #include #include +#include #include -#include namespace { -/** - * @brief Paints the mention popup's current row with a visible highlight. - * - * A completer popup is a transient window that is usually not the application's - * active window, so the style paints a selected row using the palette's - * Inactive highlight group. Most themes set that colour close to the popup - * background, which hides the current completion entirely. Mirror the active - * highlight into the inactive group so the selection stays visible. - */ -class MentionCompleterDelegate : public QStyledItemDelegate -{ -public: - explicit MentionCompleterDelegate(QAbstractItemView *view) : QStyledItemDelegate(view), view(view) - { - } - - void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override - { - QStyleOptionViewItem opt = option; - opt.showDecorationSelected = true; - - if (view->currentIndex() == index) { - opt.state |= QStyle::State_HasFocus; - } - - if (opt.state & QStyle::State_Selected) { - opt.palette.setColor(QPalette::Inactive, QPalette::Highlight, - opt.palette.color(QPalette::Active, QPalette::Highlight)); - opt.palette.setColor(QPalette::Inactive, QPalette::HighlightedText, - opt.palette.color(QPalette::Active, QPalette::HighlightedText)); - } - - QStyledItemDelegate::paint(painter, opt, index); - } - -private: - QAbstractItemView *view; -}; - void applyCardSearchLanguage(CardSearchModel *searchModel) { const CardsDisplaySettings &cardsDisplay = SettingsCache::instance().cardsDisplay(); @@ -115,11 +68,5 @@ QCompleter *createMentionCompleter(QStringListModel *model, QObject *parent) completer->setCaseSensitivity(Qt::CaseInsensitive); completer->setMaxVisibleItems(5); completer->setFilterMode(Qt::MatchStartsWith); - - // Force the popup to be created so the highlight delegate can be installed; - // otherwise QCompleter's own delegate hides the selection on most themes. - QAbstractItemView *popup = completer->popup(); - popup->setItemDelegate(new MentionCompleterDelegate(popup)); - return completer; } diff --git a/cockatrice/src/interface/widgets/utility/custom_line_edit.cpp b/cockatrice/src/interface/widgets/utility/custom_line_edit.cpp index d524041c3..05f56c275 100644 --- a/cockatrice/src/interface/widgets/utility/custom_line_edit.cpp +++ b/cockatrice/src/interface/widgets/utility/custom_line_edit.cpp @@ -3,17 +3,11 @@ #include "../../../client/settings/cache_settings.h" #include "../../../client/settings/shortcuts_settings.h" -#include -#include -#include #include -#include #include -#include -#include +#include #include -#include -#include +#include LineEditUnfocusable::LineEditUnfocusable(QWidget *parent) : QLineEdit(parent) { diff --git a/cockatrice/src/interface/widgets/utility/custom_line_edit.h b/cockatrice/src/interface/widgets/utility/custom_line_edit.h index 4d256d3dc..8c389b797 100644 --- a/cockatrice/src/interface/widgets/utility/custom_line_edit.h +++ b/cockatrice/src/interface/widgets/utility/custom_line_edit.h @@ -8,7 +8,6 @@ #define CUSTOMLINEEDIT_H #include -#include class QTreeView; class QKeyEvent; diff --git a/cockatrice/src/interface/widgets/utility/get_text_with_max.cpp b/cockatrice/src/interface/widgets/utility/get_text_with_max.cpp index 1a1bc924d..134352eb3 100644 --- a/cockatrice/src/interface/widgets/utility/get_text_with_max.cpp +++ b/cockatrice/src/interface/widgets/utility/get_text_with_max.cpp @@ -2,8 +2,6 @@ #include -class QWidget; - QString getTextWithMax(QWidget *parent, const QString &title, const QString &label, diff --git a/cockatrice/src/interface/widgets/utility/get_text_with_max.h b/cockatrice/src/interface/widgets/utility/get_text_with_max.h index f1c89c703..424bb0c6a 100644 --- a/cockatrice/src/interface/widgets/utility/get_text_with_max.h +++ b/cockatrice/src/interface/widgets/utility/get_text_with_max.h @@ -8,11 +8,8 @@ #define GETTEXTWITHMAX_H #include -#include +#include #include -#include - -class QWidget; QString getTextWithMax(QWidget *parent, const QString &title, diff --git a/cockatrice/src/interface/widgets/utility/line_edit_completer.cpp b/cockatrice/src/interface/widgets/utility/line_edit_completer.cpp index 056887f1a..3a678029d 100644 --- a/cockatrice/src/interface/widgets/utility/line_edit_completer.cpp +++ b/cockatrice/src/interface/widgets/utility/line_edit_completer.cpp @@ -1,18 +1,8 @@ #include "line_edit_completer.h" -#include #include -#include -#include #include -#include #include -#include -#include -#include -#include - -class QWidget; LineEditCompleter::LineEditCompleter(QWidget *parent) : LineEditUnfocusable(parent) { @@ -50,80 +40,37 @@ void LineEditCompleter::focusOutEvent(QFocusEvent *e) { LineEditUnfocusable::focusOutEvent(e); - // Commit completion when focus moves away via Tab if popup is visible. + // Only commit the highlighted completion when focus moves away via Tab. // Other focus losses (e.g. the unfocus shortcut / Escape) must simply close // the popup without inserting anything. - bool popupWasVisible = false; + if (e->reason() != Qt::TabFocusReason) { + hideCompleterPopups(); + return; + } + for (auto &info : completers) { - if (info.completer->popup()->isVisible()) { - popupWasVisible = true; - const QModelIndex currentIndex = info.completer->popup()->currentIndex(); - QString completionText; - if (currentIndex.isValid()) { - completionText = currentIndex.data().toString(); - } else { - completionText = info.completer->currentCompletion(); - } - if (!completionText.isEmpty()) { - insertCompletion(info.completer, completionText); - } + if (!info.completer->popup()->isVisible()) { + continue; + } + + const QModelIndex currentIndex = info.completer->popup()->currentIndex(); + if (currentIndex.isValid()) { + insertCompletion(info.completer, currentIndex.data().toString()); } } + hideCompleterPopups(); - - if (popupWasVisible && e->reason() == Qt::TabFocusReason) { - // Refocus the edit so Tab doesn't move focus away - // Use a queued connection to ensure focus is restored after the focus change completes - QMetaObject::invokeMethod(this, "setFocus", Qt::QueuedConnection); - e->accept(); - return; - } - - if (popupWasVisible) { - return; - } } void LineEditCompleter::keyPressEvent(QKeyEvent *event) { - if (event->key() == Qt::Key_Escape) { - if (hasVisibleCompleterPopup()) { - event->ignore(); - hideCompleterPopups(); - return; - } - LineEditUnfocusable::keyPressEvent(event); - return; - } - - if (event->key() == Qt::Key_Return || event->key() == Qt::Key_Enter || event->key() == Qt::Key_Space) { - for (auto &info : completers) { - if (info.completer->popup()->isVisible()) { - event->ignore(); - const QModelIndex currentIndex = info.completer->popup()->currentIndex(); - QString completionText; - if (currentIndex.isValid()) { - completionText = currentIndex.data().toString(); - } else { - completionText = info.completer->currentCompletion(); - } - if (!completionText.isEmpty()) { - insertCompletion(info.completer, completionText); - } - hideCompleterPopups(); - return; - } - } - } - - if (event->key() == Qt::Key_Tab) { - // Let Tab proceed normally; focusOutEvent will handle completion if popup is visible - LineEditUnfocusable::keyPressEvent(event); - return; - } - LineEditUnfocusable::keyPressEvent(event); + if (event->key() == Qt::Key_Escape) { + hideCompleterPopups(); + return; + } + QString textValue = text(); int cursorPos = cursorPosition(); @@ -177,17 +124,6 @@ void LineEditCompleter::keyPressEvent(QKeyEvent *event) } active->completer->complete(); - - // The popup opens without a current row, so nothing is highlighted and there - // is no visual indication of what Enter will insert. Select the row that - // currentCompletion() would use so the current mention stays visible. - auto *completionModel = active->completer->completionModel(); - const int currentRow = active->completer->currentRow(); - if (currentRow >= 0 && currentRow < completionModel->rowCount()) { - active->completer->popup()->selectionModel()->setCurrentIndex( - completionModel->index(currentRow, active->completer->completionColumn()), - QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows); - } } void LineEditCompleter::insertCompletion(const QString &completion) diff --git a/cockatrice/src/interface/widgets/utility/line_edit_completer.h b/cockatrice/src/interface/widgets/utility/line_edit_completer.h index c141682bf..369b7b553 100644 --- a/cockatrice/src/interface/widgets/utility/line_edit_completer.h +++ b/cockatrice/src/interface/widgets/utility/line_edit_completer.h @@ -10,12 +10,12 @@ #include "custom_line_edit.h" +#include +#include +#include #include #include -#include - -class QCompleter; -class QWidget; +#include enum class CompleterTrigger { diff --git a/cockatrice/src/interface/widgets/utility/report_utils.cpp b/cockatrice/src/interface/widgets/utility/report_utils.cpp index a581c9837..aa4558e5c 100644 --- a/cockatrice/src/interface/widgets/utility/report_utils.cpp +++ b/cockatrice/src/interface/widgets/utility/report_utils.cpp @@ -1,20 +1,12 @@ #include "report_utils.h" -#include "libcockatrice/protocol/pb/serverinfo_report.pb.h" - #include #include -#include -#include #include #include -#include #include -#include #include #include -#include -#include namespace report_utils { diff --git a/cockatrice/src/interface/widgets/utility/report_utils.h b/cockatrice/src/interface/widgets/utility/report_utils.h index 679989486..c6cc96c18 100644 --- a/cockatrice/src/interface/widgets/utility/report_utils.h +++ b/cockatrice/src/interface/widgets/utility/report_utils.h @@ -2,11 +2,10 @@ #define REPORT_UTILS_H #include -#include +#include class QTableWidget; class QTextEdit; -class ServerInfo_Report; namespace report_utils { diff --git a/cockatrice/src/interface/widgets/utility/reversed_completer_model.cpp b/cockatrice/src/interface/widgets/utility/reversed_completer_model.cpp index 3702798fd..1bc9ba14b 100644 --- a/cockatrice/src/interface/widgets/utility/reversed_completer_model.cpp +++ b/cockatrice/src/interface/widgets/utility/reversed_completer_model.cpp @@ -1,10 +1,7 @@ #include "reversed_completer_model.h" #include -#include -#include #include -#include #include void ReversedCompleterModel::setSourceModel(QAbstractItemModel *sourceModel) diff --git a/cockatrice/src/interface/widgets/utility/reversed_completer_model.h b/cockatrice/src/interface/widgets/utility/reversed_completer_model.h index cf4b44974..64233a1b0 100644 --- a/cockatrice/src/interface/widgets/utility/reversed_completer_model.h +++ b/cockatrice/src/interface/widgets/utility/reversed_completer_model.h @@ -8,8 +8,8 @@ #define REVERSED_COMPLETER_MODEL_H #include -#include -#include + +class QAbstractItemModel; /** * @brief A completer model that can present its rows bottom-to-top. diff --git a/cockatrice/src/interface/widgets/utility/sequence_edit.cpp b/cockatrice/src/interface/widgets/utility/sequence_edit.cpp index e92287c9a..06561a41d 100644 --- a/cockatrice/src/interface/widgets/utility/sequence_edit.cpp +++ b/cockatrice/src/interface/widgets/utility/sequence_edit.cpp @@ -4,16 +4,8 @@ #include "../../../client/settings/shortcuts_settings.h" #include "../../pixel_map_generator.h" -#include -#include -#include #include #include -#include -#include -#include -#include -#include #include SequenceEdit::SequenceEdit(const QString &_shortcutName, QWidget *parent) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/utility/sequence_edit.h b/cockatrice/src/interface/widgets/utility/sequence_edit.h index 0cdd48ceb..28e18d42f 100644 --- a/cockatrice/src/interface/widgets/utility/sequence_edit.h +++ b/cockatrice/src/interface/widgets/utility/sequence_edit.h @@ -7,15 +7,10 @@ #ifndef SEQUENCEEDIT_H #define SEQUENCEEDIT_H -#include -#include +#include +#include +#include #include -#include -#include - -class QKeyEvent; -class QLineEdit; -class QPushButton; class SequenceEdit : public QWidget { diff --git a/cockatrice/src/interface/widgets/utility/visibility_change_listener.h b/cockatrice/src/interface/widgets/utility/visibility_change_listener.h index f154918d6..10928caf6 100644 --- a/cockatrice/src/interface/widgets/utility/visibility_change_listener.h +++ b/cockatrice/src/interface/widgets/utility/visibility_change_listener.h @@ -2,9 +2,6 @@ #define COCKATRICE_VISIBILITY_LISTENER_H #include -#include - -class QWidget; /** * @brief This filter listens to the visibility changes of a target widget, emitting signals whenever the visibility of diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp index cf815ace0..57c6da762 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp @@ -1,19 +1,8 @@ #include "visual_database_display_color_filter_widget.h" #include "../cards/additional_info/mana_symbol_widget.h" -#include "filter_tree_model.h" -#include "libcockatrice/filters/filter_card.h" -#include -#include -#include -#include -#include -#include -#include #include -#include -#include #include /** diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.h index 38812b02a..497d25fce 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.h @@ -7,16 +7,11 @@ #ifndef VISUAL_DATABASE_DISPLAY_COLOR_FILTER_WIDGET_H #define VISUAL_DATABASE_DISPLAY_COLOR_FILTER_WIDGET_H -#include -#include -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" -class FilterTreeModel; -class QComboBox; -class QHBoxLayout; +#include +#include +#include class VisualDatabaseDisplayColorFilterCircleWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp index fd005b315..76a611d52 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp @@ -1,28 +1,13 @@ #include "visual_database_display_filter_save_load_widget.h" #include "../../../client/settings/cache_settings.h" -#include "../general/layout_containers/flow_widget.h" -#include "filter_tree_model.h" -#include "libcockatrice/filters/filter_card.h" #include "visual_database_filter_display_widget.h" -#include -#include -#include -#include -#include +#include #include #include -#include -#include -#include -#include -#include -#include -#include #include #include -#include VisualDatabaseDisplayFilterSaveLoadWidget::VisualDatabaseDisplayFilterSaveLoadWidget(QWidget *parent, FilterTreeModel *_filterModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h index ea8a0ed6b..459633e42 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h @@ -7,19 +7,17 @@ #ifndef VISUAL_DATABASE_DISPLAY_FILTER_SAVE_LOAD_WIDGET_H #define VISUAL_DATABASE_DISPLAY_FILTER_SAVE_LOAD_WIDGET_H -#include -#include -#include -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../general/layout_containers/flow_widget.h" -class FilterTreeModel; -class FlowWidget; -class QLineEdit; -class QPushButton; -class QVBoxLayout; +#include +#include +#include +#include +#include +#include +#include +#include class VisualDatabaseDisplayFilterSaveLoadWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.cpp index 3e9d9e525..a59a068dd 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.cpp @@ -2,36 +2,9 @@ #include "../../pixel_map_generator.h" #include "../deck_editor/card_database_view.h" -#include "../quick_settings/settings_button_widget.h" -#include "card_database_display_model.h" -#include "visual_database_display_filter_save_load_widget.h" -#include "visual_database_display_format_legality_filter_widget.h" -#include "visual_database_display_main_type_filter_widget.h" -#include "visual_database_display_name_filter_widget.h" -#include "visual_database_display_set_filter_widget.h" -#include "visual_database_display_sub_type_filter_widget.h" #include "visual_database_display_widget.h" -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class DeckListModel; VisualDatabaseDisplayFilterToolbarWidget::VisualDatabaseDisplayFilterToolbarWidget(VisualDatabaseDisplayWidget *_parent, DeckListModel *deckListModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.h index f97310c1b..8a3555455 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_filter_toolbar_widget.h @@ -1,22 +1,14 @@ #ifndef COCKATRICE_VISUAL_DATABASE_DISPLAY_FILTER_TOOLBAR_WIDGET_H #define COCKATRICE_VISUAL_DATABASE_DISPLAY_FILTER_TOOLBAR_WIDGET_H -#include "../general/layout_containers/flow_widget.h" - -#include +#include "visual_database_display_filter_save_load_widget.h" +#include "visual_database_display_format_legality_filter_widget.h" +#include "visual_database_display_main_type_filter_widget.h" +#include "visual_database_display_name_filter_widget.h" +#include "visual_database_display_set_filter_widget.h" +#include "visual_database_display_sub_type_filter_widget.h" class VisualDatabaseDisplayWidget; -class DeckListModel; -class QComboBox; -class QGroupBox; -class QLabel; -class SettingsButtonWidget; -class VisualDatabaseDisplayFilterSaveLoadWidget; -class VisualDatabaseDisplayFormatLegalityFilterWidget; -class VisualDatabaseDisplayMainTypeFilterWidget; -class VisualDatabaseDisplayNameFilterWidget; -class VisualDatabaseDisplaySetFilterWidget; -class VisualDatabaseDisplaySubTypeFilterWidget; class VisualDatabaseDisplayFilterToolbarWidget : public FlowWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp index a5725ff3f..633f07af7 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp @@ -1,29 +1,14 @@ #include "visual_database_display_format_legality_filter_widget.h" #include "../../../filters/filter_tree_model.h" -#include "../general/layout_containers/flow_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/filters/filter_card.h" #include "visual_database_display_filter_button.h" -#include -#include -#include #include -#include -#include #include -#include -#include #include #include -#include -#include -#include #include #include -#include -#include VisualDatabaseDisplayFormatLegalityFilterWidget::VisualDatabaseDisplayFormatLegalityFilterWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h index e94593e67..1b1a1382e 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.h @@ -1,17 +1,16 @@ #ifndef COCKATRICE_VISUAL_DATABASE_DISPLAY_FORMAT_LEGALITY_FILTER_WIDGET_H #define COCKATRICE_VISUAL_DATABASE_DISPLAY_FORMAT_LEGALITY_FILTER_WIDGET_H -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../general/layout_containers/flow_widget.h" -class FilterTreeModel; -class FlowWidget; -class QLabel; -class QPushButton; -class QSpinBox; -class QVBoxLayout; +#include +#include +#include +#include +#include +#include +#include class VisualDatabaseDisplayFormatLegalityFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp index eff0fe10b..c44489c1b 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp @@ -1,27 +1,14 @@ #include "visual_database_display_main_type_filter_widget.h" #include "../../../filters/filter_tree_model.h" -#include "../general/layout_containers/flow_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/filters/filter_card.h" #include "visual_database_display_filter_button.h" -#include -#include -#include #include -#include -#include #include -#include -#include #include #include -#include -#include #include #include -#include VisualDatabaseDisplayMainTypeFilterWidget::VisualDatabaseDisplayMainTypeFilterWidget(QWidget *parent, FilterTreeModel *_filterModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h index b5a6f332c..6dec58319 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.h @@ -7,17 +7,15 @@ #ifndef VISUAL_DATABASE_DISPLAY_MAIN_TYPE_FILTER_WIDGET_H #define VISUAL_DATABASE_DISPLAY_MAIN_TYPE_FILTER_WIDGET_H -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../general/layout_containers/flow_widget.h" -class FilterTreeModel; -class FlowWidget; -class QLabel; -class QPushButton; -class QSpinBox; -class QVBoxLayout; +#include +#include +#include +#include +#include +#include class VisualDatabaseDisplayMainTypeFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp index d3e497b21..3fa1a782a 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp @@ -1,26 +1,11 @@ #include "visual_database_display_name_filter_widget.h" #include "../../../interface/widgets/dialogs/dlg_load_deck_from_clipboard.h" -#include "../general/layout_containers/flow_widget.h" -#include "deck_list_model.h" -#include "filter_tree_model.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/filters/filter_card.h" -#include "libcockatrice/filters/filter_tree.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../deck_editor/deck_state_manager.h" #include "visual_database_display_filter_button.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include VisualDatabaseDisplayNameFilterWidget::VisualDatabaseDisplayNameFilterWidget(QWidget *parent, FilterTreeModel *_filterModel, diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.h index 1629cb93b..0c10408ae 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_name_filter_widget.h @@ -7,17 +7,14 @@ #ifndef VISUAL_DATABASE_DISPLAY_NAME_FILTER_WIDGET_H #define VISUAL_DATABASE_DISPLAY_NAME_FILTER_WIDGET_H -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../general/layout_containers/flow_widget.h" -class DeckListModel; -class FilterTreeModel; -class FlowWidget; -class QLineEdit; -class QPushButton; -class QVBoxLayout; +#include +#include +#include +#include class VisualDatabaseDisplayNameFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp index 3d76fb78a..358c3ed88 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp @@ -2,35 +2,15 @@ #include "../../../client/settings/cache_settings.h" #include "../../../filters/filter_tree_model.h" -#include "../general/layout_containers/flow_widget.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/card/set/card_set_list.h" -#include "libcockatrice/filters/filter_card.h" -#include "libcockatrice/utility/macros.h" #include "visual_database_display_filter_button.h" -#include -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include #include -#include -#include #include -#include #include #include #include -#include VisualDatabaseDisplayRecentSetFilterSettingsWidget::VisualDatabaseDisplayRecentSetFilterSettingsWidget(QWidget *parent) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h index 468e97e0d..bcc5e93c2 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_set_filter_widget.h @@ -7,19 +7,16 @@ #ifndef VISUAL_DATABASE_DISPLAY_SET_FILTER_WIDGET_H #define VISUAL_DATABASE_DISPLAY_SET_FILTER_WIDGET_H -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../general/layout_containers/flow_widget.h" -class FilterTreeModel; -class FlowWidget; -class QCheckBox; -class QHBoxLayout; -class QLineEdit; -class QPushButton; -class QSpinBox; -class QVBoxLayout; +#include +#include +#include +#include +#include +#include +#include class VisualDatabaseDisplayRecentSetFilterSettingsWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp index 705bb8efa..6d4bcb58e 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp @@ -1,28 +1,15 @@ #include "visual_database_display_sub_type_filter_widget.h" #include "../../../filters/filter_tree_model.h" -#include "../general/layout_containers/flow_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/filters/filter_card.h" #include "visual_database_display_filter_button.h" -#include -#include -#include #include #include -#include -#include #include -#include -#include #include #include -#include -#include #include #include -#include VisualDatabaseDisplaySubTypeFilterWidget::VisualDatabaseDisplaySubTypeFilterWidget(QWidget *parent, FilterTreeModel *_filterModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h index 7929063fd..d713c7f99 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.h @@ -7,18 +7,14 @@ #ifndef VISUAL_DATABASE_DISPLAY_SUB_TYPE_FILTER_WIDGET_H #define VISUAL_DATABASE_DISPLAY_SUB_TYPE_FILTER_WIDGET_H -#include -#include -#include -#include +#include "../../../filters/filter_tree_model.h" +#include "../general/layout_containers/flow_widget.h" -class FilterTreeModel; -class FlowWidget; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; -class QVBoxLayout; +#include +#include +#include +#include +#include class VisualDatabaseDisplaySubTypeFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp index 599ac97b4..6e0fee53f 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp @@ -3,52 +3,21 @@ #include "../../../client/settings/cache_settings.h" #include "../../../filters/filter_tree_model.h" #include "../../../filters/syntax_help.h" -#include "../../key_signals.h" #include "../../pixel_map_generator.h" -#include "../cards/card_info_picture_widget.h" #include "../cards/card_info_picture_with_text_overlay_widget.h" -#include "../cards/card_size_widget.h" #include "../deck_editor/card_database_view.h" -#include "../general/layout_containers/flow_widget.h" #include "../utility/custom_line_edit.h" -#include "card_database_display_model.h" -#include "card_database_model.h" -#include "deck_list_model.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/filters/filter_card.h" -#include "libcockatrice/filters/filter_tree.h" #include "visual_database_display_color_filter_widget.h" -#include "visual_database_display_filter_toolbar_widget.h" +#include "visual_database_display_filter_save_load_widget.h" +#include "visual_database_display_main_type_filter_widget.h" +#include "visual_database_display_name_filter_widget.h" +#include "visual_database_display_set_filter_widget.h" +#include "visual_database_display_sub_type_filter_widget.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include -#include -#include #include #include #include @@ -56,8 +25,6 @@ #include #include -class QMouseEvent; - VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, CardDatabaseModel *database_model, DeckListModel *deckListModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h index 9771e55c1..d161ce362 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h @@ -7,38 +7,25 @@ #ifndef VISUAL_DATABASE_DISPLAY_WIDGET_H #define VISUAL_DATABASE_DISPLAY_WIDGET_H -#include "libcockatrice/card/card_info.h" +#include "../../../filters/filter_tree_model.h" +#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../key_signals.h" +#include "../cards/card_info_picture_with_text_overlay_widget.h" +#include "../cards/card_size_widget.h" +#include "../general/layout_containers/flow_widget.h" +#include "../general/layout_containers/overlap_control_widget.h" +#include "../utility/custom_line_edit.h" +#include "visual_database_display_color_filter_widget.h" +#include "visual_database_display_filter_toolbar_widget.h" #include -#include -#include -#include +#include +#include #include #include -#include -#include - -class CardDatabaseDisplayModel; -class CardDatabaseModel; -class CardDatabaseView; -class CardSizeWidget; -class DeckList; -class DeckListModel; -class ExactCard; -class FilterTreeModel; -class FlowWidget; -class OverlapControlWidget; -class QLabel; -class QModelIndex; -class QPushButton; -class QScrollArea; -class QTimer; -class QToolButton; -class QVBoxLayout; -class SearchLineEdit; -class VisualDatabaseDisplayColorFilterWidget; -class VisualDatabaseDisplayFilterToolbarWidget; -template class QList; +#include +#include +#include inline Q_LOGGING_CATEGORY(VisualDatabaseDisplayLog, "visual_database_display"); diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.cpp index 0f6ac51ec..bb5b333d9 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.cpp @@ -2,18 +2,13 @@ #include "../../../client/settings/cache_settings.h" -#include #include #include #include #include #include -#include #include -#include -#include #include -#include FilterDisplayWidget::FilterDisplayWidget(QWidget *parent, const QString &filename, FilterTreeModel *_filterModel) : QWidget(parent), filterFilename(filename), filterModel(_filterModel) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.h index 6d051bcf7..5fe29fa2d 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_filter_display_widget.h @@ -7,12 +7,12 @@ #ifndef VISUAL_DATABASE_FILTER_DISPLAY_WIDGET_H #define VISUAL_DATABASE_FILTER_DISPLAY_WIDGET_H +#include +#include #include #include -#include class FilterTreeModel; -class QPushButton; class FilterDisplayWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.cpp index 25ba41aa9..28abe480e 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.cpp @@ -1,27 +1,9 @@ #include "visual_deck_display_options_widget.h" #include "../../pixel_map_generator.h" -#include "../deck_editor/deck_editor_deck_dock_widget.h" -#include "../quick_settings/settings_button_widget.h" #include "../tabs/visual_deck_editor/tab_deck_editor_visual.h" -#include "../utility/compact_push_button.h" -#include "deck_list_model.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include VisualDeckDisplayOptionsWidget::VisualDeckDisplayOptionsWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.h b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.h index 96600c587..bc11884df 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_display_options_widget.h @@ -3,18 +3,12 @@ #include "visual_deck_editor_widget.h" -#include -#include -#include +#include +#include +#include +#include +#include #include -#include - -class CompactPushButton; -class QComboBox; -class QHBoxLayout; -class QLabel; -class QListWidget; -class SettingsButtonWidget; /** * @class VisualDeckDisplayOptionsWidget diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.cpp index 76c3d0908..da4fe09e5 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.cpp @@ -1,9 +1,5 @@ #include "visual_deck_editor_placeholder_widget.h" -#include -#include -#include - VisualDeckEditorPlaceholderWidget::VisualDeckEditorPlaceholderWidget(QWidget *parent) : QWidget(parent) { mainLayout = new QVBoxLayout(this); diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.h b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.h index 84a3142d8..de2362a81 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_placeholder_widget.h @@ -1,11 +1,9 @@ #ifndef COCKATRICE_VISUAL_DECK_EDITOR_PLACEHOLDER_WIDGET_H #define COCKATRICE_VISUAL_DECK_EDITOR_PLACEHOLDER_WIDGET_H +#include +#include #include -#include - -class QLabel; -class QVBoxLayout; class VisualDeckEditorPlaceholderWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp index 1554dceb8..cee268228 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp @@ -1,37 +1,16 @@ #include "visual_deck_editor_sample_hand_widget.h" #include "../../../client/settings/cache_settings.h" +#include "../../deck_loader/deck_loader.h" #include "../cards/card_info_picture_widget.h" -#include "../cards/card_size_widget.h" #include "../deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.h" -#include "../general/layout_containers/flow_widget.h" -#include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" +#include "../deck_analytics/deck_list_statistics_analyzer.h" -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include #include -#include -#include -#include #include -class DeckListStatisticsAnalyzer; - VisualDeckEditorSampleHandWidget::VisualDeckEditorSampleHandWidget(QWidget *parent, DeckListModel *_deckListModel, DeckListStatisticsAnalyzer *_statsAnalyzer) diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.h b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.h index 16f343b75..c6c07dd55 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.h @@ -7,22 +7,16 @@ #ifndef VISUAL_DECK_EDITOR_SAMPLE_HAND_WIDGET_H #define VISUAL_DECK_EDITOR_SAMPLE_HAND_WIDGET_H -#include "libcockatrice/card/printing/exact_card.h" +#include "../cards/card_size_widget.h" +#include "../deck_analytics/deck_list_statistics_analyzer.h" +#include "../general/layout_containers/flow_widget.h" -#include +#include +#include #include -#include +#include class DrawProbabilityWidget; -class CardSizeWidget; -class DeckListModel; -class DeckListStatisticsAnalyzer; -class FlowWidget; -class QHBoxLayout; -class QPushButton; -class QSpinBox; -class QVBoxLayout; - class VisualDeckEditorSampleHandWidget : public QWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp index 74b940586..60e354d6e 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp @@ -1,48 +1,33 @@ #include "visual_deck_editor_widget.h" #include "../../../client/settings/cache_settings.h" +#include "../../../main.h" +#include "../../deck_loader/deck_loader.h" +#include "../../layouts/overlap_layout.h" #include "../../pixel_map_generator.h" -#include "../cards/card_size_widget.h" +#include "../cards/card_info_picture_with_text_overlay_widget.h" #include "../cards/deck_card_zone_display_widget.h" #include "../general/layout_containers/flow_widget.h" +#include "../tabs/visual_deck_editor/tab_deck_editor_visual.h" +#include "../tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.h" #include "../utility/compact_push_button.h" #include "../utility/completer_utils.h" -#include "card/card_completer_proxy_model.h" -#include "card_database_display_model.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" #include "visual_deck_display_options_widget.h" -#include "visual_deck_editor_placeholder_widget.h" -#include -#include +#include #include -#include #include -#include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include +#include +#include #include #include #include #include -#include +#include VisualDeckEditorWidget::VisualDeckEditorWidget(QWidget *parent, DeckListModel *_deckListModel, diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.h b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.h index 0b8ff19fb..cc045fca2 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.h @@ -7,35 +7,26 @@ #ifndef VISUAL_DECK_EDITOR_H #define VISUAL_DECK_EDITOR_H -#include -#include -#include -#include -#include +#include "../cards/card_info_picture_with_text_overlay_widget.h" +#include "../cards/card_size_widget.h" +#include "../general/layout_containers/overlap_control_widget.h" +#include "../quick_settings/settings_button_widget.h" +#include "../utility/compact_push_button.h" +#include "visual_deck_editor_placeholder_widget.h" + +#include +#include +#include #include -#include +#include +#include +#include +#include +#include +#include class VisualDeckDisplayOptionsWidget; class DeckCardZoneDisplayWidget; -class CardCompleterProxyModel; -class CardDatabaseDisplayModel; -class CardDatabaseModel; -class CardSizeWidget; -class CompactPushButton; -class DeckList; -class DeckListModel; -class ExactCard; -class FlowWidget; -class QCompleter; -class QHBoxLayout; -class QItemSelection; -class QItemSelectionModel; -class QLineEdit; -class QModelIndex; -class QScrollArea; -class QVBoxLayout; -class VisualDeckEditorPlaceholderWidget; - enum class DisplayType { Flat, diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.cpp index 1ac4c856c..d1a780c38 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.cpp @@ -1,13 +1,8 @@ #include "deck_preview_color_identity_filter_widget.h" #include "../../cards/additional_info/mana_symbol_widget.h" -#include "../visual_deck_storage_sort_filter_proxy_model.h" -#include -#include #include -#include -#include DeckPreviewColorIdentityFilterWidget::DeckPreviewColorIdentityFilterWidget(QWidget *parent) : QWidget(parent), layout(new QHBoxLayout(this)) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.h index e0c90034c..d54984bcf 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_color_identity_filter_widget.h @@ -8,14 +8,11 @@ #include "../visual_deck_storage_sort_filter_proxy_model.h" -#include +#include #include +#include #include #include -#include - -class QHBoxLayout; -class QPushButton; class DeckPreviewColorIdentityFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.cpp index dc619e9fa..41d87ccb1 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.cpp @@ -1,23 +1,15 @@ #include "deck_preview_deck_tags_display_widget.h" #include "../../../../client/settings/cache_settings.h" -#include "../../../deck_loader/deck_file_format.h" #include "../../../deck_loader/deck_loader.h" -#include "../../../deck_loader/loaded_deck.h" #include "../../general/layout_containers/flow_widget.h" #include "deck_preview_tag_addition_widget.h" #include "deck_preview_tag_dialog.h" #include "deck_preview_tag_display_widget.h" -#include "libcockatrice/deck_list/deck_list.h" -#include -#include #include #include -#include #include -#include -#include DeckPreviewDeckTagsDisplayWidget::DeckPreviewDeckTagsDisplayWidget(QWidget *_parent, const QStringList &_tags) : QWidget(_parent), currentTags(_tags) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h index a12f6ec3c..64bd5aa1a 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h @@ -6,12 +6,9 @@ #ifndef DECK_PREVIEW_DECK_TAGS_DISPLAY_WIDGET_H #define DECK_PREVIEW_DECK_TAGS_DISPLAY_WIDGET_H -#include -#include #include #include #include -#include class FlowWidget; diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.cpp index 82ed6191c..fdf4b2a28 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.cpp @@ -1,19 +1,12 @@ #include "deck_preview_tag_addition_widget.h" -#include -#include -#include -#include +#include "../../../../client/settings/cache_settings.h" +#include "../../../../interface/widgets/tabs/abstract_tab_deck_editor.h" + #include #include #include #include -#include -#include -#include -#include -#include -#include #include DeckPreviewTagAdditionWidget::DeckPreviewTagAdditionWidget(QWidget *_parent, QString _tagName) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.h index 30ce46249..7a3a735a2 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_addition_widget.h @@ -7,9 +7,7 @@ #ifndef DECK_PREVIEW_TAG_ADDITION_WIDGET_H #define DECK_PREVIEW_TAG_ADDITION_WIDGET_H -#include -#include -#include +#include "deck_preview_deck_tags_display_widget.h" class DeckPreviewTagAdditionWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.cpp index 2a6a42e9d..f27d11d36 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.cpp @@ -8,17 +8,10 @@ #include #include #include -#include -#include #include -#include #include -#include #include -#include -#include #include -#include DeckPreviewTagDialog::DeckPreviewTagDialog(const QStringList &knownTags, const QStringList &_activeTags, diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.h index 80d5560a0..4d9040af4 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_dialog.h @@ -9,18 +9,10 @@ #define DECK_PREVIEW_TAG_DIALOG_H #include -#include -#include -#include -#include - -class QHBoxLayout; -class QLabel; -class QLineEdit; -class QListWidget; -class QPushButton; -class QVBoxLayout; -class QWidget; +#include +#include +#include +#include class DeckPreviewTagDialog : public QDialog { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.cpp index e62570241..a7fef5031 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.cpp @@ -1,19 +1,9 @@ #include "deck_preview_tag_display_widget.h" -#include -#include -#include -#include #include #include #include #include -#include -#include -#include -#include -#include -#include DeckPreviewTagDisplayWidget::DeckPreviewTagDisplayWidget(QWidget *parent, const QString &_tagName) : QWidget(parent), tagName(_tagName), state(TagState::NotSelected) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.h index d3f5e7326..df2a6b404 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_display_widget.h @@ -7,12 +7,10 @@ #ifndef DECK_PREVIEW_TAG_DISPLAY_WIDGET_H #define DECK_PREVIEW_TAG_DISPLAY_WIDGET_H +#include +#include #include #include -#include - -class QLabel; -class QPushButton; enum class TagState { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.cpp index 7796f893b..d9ea9fc30 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.cpp @@ -1,8 +1,5 @@ #include "deck_preview_tag_item_widget.h" -#include -#include - DeckPreviewTagItemWidget::DeckPreviewTagItemWidget(const QString &tagName, bool isChecked, QWidget *parent) : QWidget(parent), checkBox_(new QCheckBox(this)) { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.h index a09eb7501..a3301799a 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_tag_item_widget.h @@ -7,11 +7,9 @@ #ifndef DECK_PREVIEW_TAG_ITEM_WIDGET_H #define DECK_PREVIEW_TAG_ITEM_WIDGET_H -#include +#include +#include #include -#include - -class QCheckBox; class DeckPreviewTagItemWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp index 220c55788..53fe32314 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp @@ -3,51 +3,26 @@ #include "../../../../client/settings/cache_settings.h" #include "../../../../interface/widgets/dialogs/dlg_convert_deck_to_cod_format.h" #include "../../../deck_loader/deck_loader.h" -#include "../../../deck_loader/loaded_deck.h" #include "../../cards/additional_info/color_identity_widget.h" #include "../../cards/deck_preview_card_picture_widget.h" -#include "../visual_deck_storage_model.h" #include "../visual_deck_storage_quick_settings_widget.h" #include "../visual_deck_storage_tag_filter_widget.h" #include "../visual_deck_storage_widget.h" #include "deck_preview_deck_tags_display_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include -#include -#include #include #include #include #include -#include #include #include -#include #include -#include -#include #include -#include -#include -#include #include -#include #include -#include -#include #include -#include -#include #include #include -#include -#include DeckPreviewWidget::DeckPreviewWidget(QWidget *_parent, VisualDeckStorageWidget *_visualDeckStorageWidget, diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h index cdeed87c7..f4909eda8 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h @@ -6,18 +6,17 @@ #ifndef DECK_PREVIEW_WIDGET_H #define DECK_PREVIEW_WIDGET_H +#include "../../cards/deck_preview_card_picture_widget.h" +#include "../visual_deck_storage_model.h" + #include -#include #include #include #include -#include -#include -#include -#include +#include #include -#include +class QEnterEvent; class QFrame; class QLabel; class QMenu; @@ -27,8 +26,6 @@ class DeckPreviewCardPictureWidget; class DeckPreviewDeckTagsDisplayWidget; class VisualDeckStorageModel; class VisualDeckStorageWidget; -class QVBoxLayout; -struct LoadedDeck; class DeckPreviewWidget final : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp index 361747423..b49d6f9f4 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp @@ -4,19 +4,15 @@ #include "../../cards/additional_info/color_identity_widget.h" #include "../../cards/deck_preview_card_picture_widget.h" #include "../../general/layout_containers/flow_widget.h" -#include "../remote_public_decks_model.h" #include "deck_preview_tag_display_widget.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/utility/card_ref.h" -#include #include #include +#include +#include #include #include #include -#include PublicDeckPreviewWidget::PublicDeckPreviewWidget(QWidget *parent, const RemotePublicDecksModel::DeckEntry &entry) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.h index 103120c7f..a0e5dd43a 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.h @@ -9,15 +9,16 @@ #include "../remote_public_decks_model.h" #include -#include #include #include -#include class ColorIdentityWidget; class DeckPreviewCardPictureWidget; class FlowWidget; +class QKeyEvent; class QLabel; +class QMouseEvent; +class QResizeEvent; /** * @brief A preview tile for a public deck published by another user. diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.cpp index 9b8daf87c..a1cabd729 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.cpp @@ -3,10 +3,7 @@ #include "../../../client/settings/cache_settings.h" #include -#include -#include #include -#include #include #include #include @@ -14,9 +11,6 @@ #include #include #include -#include - -class QObject; RemotePublicDecksModel::RemotePublicDecksModel(AbstractClient *_client, QObject *parent) : QAbstractListModel(parent), client(_client) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.h b/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.h index cb1f786e4..eeb606442 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/remote_public_decks_model.h @@ -9,15 +9,10 @@ #include "visual_deck_storage_sort_filter_proxy_model.h" #include -#include #include #include -#include #include -#include #include -#include -#include class AbstractClient; class CommandContainer; @@ -25,7 +20,6 @@ class QTimer; class Response; class ServerInfo_DeckStorage_Folder; class ServerInfo_DeckStorage_TreeItem; -class QObject; /** * @brief Flat, read-only list of the public decks published by another user. diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp index 44b7a1a06..53f21d1a1 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp @@ -2,7 +2,6 @@ #include "../cards/card_info_picture_widget.h" #include "../cards/card_size_widget.h" -#include "../cards/deck_preview_card_picture_widget.h" #include "../general/display/banner_widget.h" #include "../general/layout_containers/flow_widget.h" #include "deck_preview/deck_preview_widget.h" @@ -11,20 +10,10 @@ #include "visual_deck_storage_sort_filter_proxy_model.h" #include "visual_deck_storage_widget.h" -#include -#include -#include #include -#include -#include -#include -#include #include -#include #include #include -#include -#include VisualDeckStorageFolderDisplayWidget::VisualDeckStorageFolderDisplayWidget( QWidget *parent, diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.h index 998619c0b..5a81457b0 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.h @@ -17,12 +17,9 @@ #define VISUAL_DECK_STORAGE_FOLDER_DISPLAY_WIDGET_H #include -#include #include #include -#include #include -#include class BannerWidget; class DeckPreviewWidget; diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.cpp index e84631e52..daca55fc8 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.cpp @@ -1,32 +1,19 @@ #include "visual_deck_storage_model.h" -#include "../../deck_loader/deck_file_format.h" #include "../../deck_loader/deck_loader.h" -#include "../../deck_loader/loaded_deck.h" #include "../cards/additional_info/deck_color_identity.h" -#include "libcockatrice/deck_list/deck_list.h" -#include #include #include #include #include #include #include -#include -#include #include -#include -#include #include -#include #include -#include -#include #include -class QObject; - namespace { /** diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.h index 57eaebacf..330205356 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_model.h @@ -14,20 +14,14 @@ #define VISUAL_DECK_STORAGE_MODEL_H #include "../../deck_loader/loaded_deck.h" -#include "libcockatrice/utility/card_ref.h" #include #include #include #include -#include -#include #include -#include -#include -#include - -class QObject; +#include +#include namespace VisualDeckStorageRoles { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.cpp index 9bb6e0fae..c19ac0fec 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.cpp @@ -2,23 +2,14 @@ #include "../../../client/settings/cache_settings.h" #include "../cards/card_size_widget.h" -#include "../quick_settings/settings_button_widget.h" -#include "libcockatrice/utility/macros.h" +#include "visual_deck_storage_widget.h" #include #include -#include -#include -#include -#include #include -#include -#include -#include #include #include #include -#include VisualDeckStorageQuickSettingsWidget::VisualDeckStorageQuickSettingsWidget(QWidget *parent) : SettingsButtonWidget(parent) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.h index 7bce34d8c..a85e9e654 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_quick_settings_widget.h @@ -11,14 +11,11 @@ #include "../quick_settings/settings_button_widget.h" -#include - class CardSizeWidget; class QLabel; class QSpinBox; class QCheckBox; class QComboBox; -class QWidget; class VisualDeckStorageQuickSettingsWidget : public SettingsButtonWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.cpp index 2c03666c1..406527893 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.cpp @@ -4,10 +4,6 @@ #include "../../pixel_map_generator.h" #include -#include -#include -#include -#include #include /** diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.h index 87a8dc9f8..7769ea911 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_search_widget.h @@ -6,13 +6,11 @@ #ifndef VISUAL_DECK_STORAGE_SEARCH_WIDGET_H #define VISUAL_DECK_STORAGE_SEARCH_WIDGET_H -#include +#include +#include #include -#include class QTimer; -class QHBoxLayout; -class QLineEdit; class VisualDeckStorageSearchWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.cpp index abe3327af..0ad6ebcb2 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.cpp @@ -1,20 +1,10 @@ #include "visual_deck_storage_sort_filter_proxy_model.h" #include "../../../client/settings/cache_settings.h" -#include "../../deck_loader/loaded_deck.h" #include "../../filters/deck_filter_string.h" -#include "visual_deck_storage_model.h" -#include -#include #include -#include -#include -#include -#include -#include #include -#include #include #include diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.h index 51732adc8..a6c40a2d7 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_filter_proxy_model.h @@ -15,15 +15,11 @@ #ifndef VISUAL_DECK_STORAGE_SORT_FILTER_PROXY_MODEL_H #define VISUAL_DECK_STORAGE_SORT_FILTER_PROXY_MODEL_H -#include -#include +#include "visual_deck_storage_model.h" + #include #include #include -#include - -class QObject; -class VisualDeckStorageModel; class VisualDeckStorageSortFilterProxyModel : public QSortFilterProxyModel { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.cpp index f798a72a9..6289a4941 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.cpp @@ -3,9 +3,6 @@ #include "../../../client/settings/cache_settings.h" #include "visual_deck_storage_widget.h" -#include -#include -#include #include VisualDeckStorageSortWidget::VisualDeckStorageSortWidget(VisualDeckStorageWidget *parent) : QWidget(parent) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.h index df3f39eb5..633924d84 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_sort_widget.h @@ -8,13 +8,11 @@ #include "visual_deck_storage_sort_filter_proxy_model.h" +#include +#include #include -#include class VisualDeckStorageWidget; -class QComboBox; -class QHBoxLayout; - class VisualDeckStorageSortWidget : public QWidget { Q_OBJECT diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.cpp index d6b7aedbb..6f954b01b 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.cpp @@ -4,13 +4,6 @@ #include "deck_preview/deck_preview_tag_display_widget.h" #include -#include -#include -#include -#include -#include -#include -#include VisualDeckStorageTagFilterWidget::VisualDeckStorageTagFilterWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.h index 13a27c10a..5e3cb398c 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_tag_filter_widget.h @@ -6,16 +6,13 @@ #ifndef VISUAL_DECK_STORAGE_TAG_FILTER_WIDGET_H #define VISUAL_DECK_STORAGE_TAG_FILTER_WIDGET_H -#include +#include #include #include #include -#include class DeckPreviewTagDisplayWidget; class FlowWidget; -class QString; -template class QSet; class VisualDeckStorageTagFilterWidget : public QWidget { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.cpp index 51e9c70e7..c7218f195 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.cpp @@ -2,38 +2,22 @@ #include "../../../client/settings/cache_settings.h" #include "../../pixel_map_generator.h" +#include "../quick_settings/settings_button_widget.h" #include "deck_preview/deck_preview_color_identity_filter_widget.h" #include "deck_preview/deck_preview_widget.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" #include "visual_deck_storage_folder_display_widget.h" -#include "visual_deck_storage_model.h" #include "visual_deck_storage_quick_settings_widget.h" #include "visual_deck_storage_search_widget.h" -#include "visual_deck_storage_sort_filter_proxy_model.h" #include "visual_deck_storage_sort_widget.h" #include "visual_deck_storage_tag_filter_widget.h" -#include -#include -#include -#include #include -#include -#include -#include -#include -#include #include -#include #include -#include -#include #include #include #include #include -#include VisualDeckStorageWidget::VisualDeckStorageWidget(QWidget *parent) : QWidget(parent) { diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.h b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.h index b512dd87c..dfb715bea 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.h +++ b/cockatrice/src/interface/widgets/visual_deck_storage/visual_deck_storage_widget.h @@ -6,13 +6,18 @@ #ifndef VISUAL_DECK_STORAGE_WIDGET_H #define VISUAL_DECK_STORAGE_WIDGET_H -#include -#include -#include +#include "visual_deck_storage_model.h" +#include "visual_deck_storage_sort_filter_proxy_model.h" + +#include +#include +#include +#include #include -#include class QLabel; +class QResizeEvent; +class QShowEvent; class QTimer; class DeckPreviewColorIdentityFilterWidget; class VisualDeckStorageFolderDisplayWidget; @@ -20,13 +25,6 @@ class VisualDeckStorageQuickSettingsWidget; class VisualDeckStorageSearchWidget; class VisualDeckStorageSortWidget; class VisualDeckStorageTagFilterWidget; -class QHBoxLayout; -class QScrollArea; -class QToolButton; -class QVBoxLayout; -class VisualDeckStorageModel; -class VisualDeckStorageSortFilterProxyModel; -struct LoadedDeck; class VisualDeckStorageWidget final : public QWidget { diff --git a/cockatrice/src/interface/window_main.cpp b/cockatrice/src/interface/window_main.cpp index 189585d84..77cc85130 100644 --- a/cockatrice/src/interface/window_main.cpp +++ b/cockatrice/src/interface/window_main.cpp @@ -21,6 +21,7 @@ #include "../client/latency_status_widget.h" #include "../client/network/update/client/client_update_checker.h" +#include "../client/network/update/client/release_channel.h" #include "../client/settings/cache_settings.h" #include "../client/settings/shortcuts_settings.h" #include "../interface/widgets/dialogs/dlg_edit_tokens.h" @@ -33,66 +34,50 @@ #include "../interface/widgets/dialogs/dlg_view_log.h" #include "../interface/widgets/onboarding/first_run_wizard.h" #include "../interface/widgets/settings_page/general_settings_page.h" +#include "../interface/widgets/tabs/tab_game.h" #include "../interface/widgets/tabs/tab_server.h" #include "../interface/widgets/tabs/tab_supervisor.h" #include "../main.h" -#include "abstract_client.h" -#include "card_database_update/card_database_update_status_bar.h" -#include "card_database_update/card_update_progress.h" #include "intents/contexts/context_connect_to_server.h" #include "intents/contexts/context_join_room.h" -#include "intents/intent.h" #include "intents/intent_connect_to_server.h" #include "intents/intent_login.h" #include "intents/intent_open_server_room_by_name.h" #include "intents/url_parser.h" -#include "latency_tracker.h" #include "logger.h" #include "pixel_map_generator.h" #include "version_string.h" #include "widgets/dialogs/dlg_connect.h" #include "widgets/server/handle_public_servers.h" -#include "widgets/settings_page/abstract_settings_page.h" #include "widgets/tabs/api/commander_spellbook/handle_commander_brackets.h" +#include "widgets/utility/get_text_with_max.h" #include #include #include #include #include -#include #include -#include -#include #include #include -#include -#include -#include -#include +#include #include #include #include -#include -#include -#include #include -#include -#include #include -#include #include +#include #include -#include -#include -#include -#include -#include +#include +#include +#include #include #include #include #include #include +#include #include #include #include @@ -106,14 +91,6 @@ #include #include #include -#include -#include -#include -#include -#include -#include - -class LocalServerInterface; #define GITHUB_PAGES_URL "https://cockatrice.github.io" #define GITHUB_CONTRIBUTORS_URL "https://github.com/Cockatrice/Cockatrice/graphs/contributors" @@ -578,13 +555,6 @@ MainWindow::MainWindow(QWidget *parent) connect(connectionController, &ConnectionController::pingStatsUpdated, latencyStatus, &LatencyStatusWidget::updateData); - cardUpdateStatusBar = new CardDatabaseUpdateStatusBar(this); - statusBar()->addPermanentWidget(cardUpdateStatusBar); - connect(this, &MainWindow::cardDatabaseUpdateProgress, cardUpdateStatusBar, - &CardDatabaseUpdateStatusBar::updateProgress); - connect(this, &MainWindow::cardDatabaseUpdateFinished, cardUpdateStatusBar, - &CardDatabaseUpdateStatusBar::updateFinished); - connect(&SettingsCache::instance().shortcuts(), &ShortcutsSettings::shortCutChanged, this, &MainWindow::refreshShortcuts); refreshShortcuts(); @@ -907,15 +877,10 @@ void MainWindow::closeEvent(QCloseEvent *event) bClosingDown = true; if (cardUpdateProcess && cardUpdateProcess->state() != QProcess::NotRunning) { - const QString runningFor = cardUpdateStatusBar ? cardUpdateStatusBar->statusText() : QString(); - const QString message = runningFor.isEmpty() - ? tr("A card database update is still running. Quitting now will cancel it.\n" - "Are you sure you want to quit?") - : tr("A card database update is still running: %1.\nQuitting now will cancel it.\n" - "Are you sure you want to quit?") - .arg(runningFor); - if (QMessageBox::question(this, tr("Are you sure?"), message, QMessageBox::Yes | QMessageBox::No, - QMessageBox::No) == QMessageBox::No) { + if (QMessageBox::question(this, tr("Are you sure?"), + tr("A card database update is still running. Quitting now will cancel it.\n" + "Are you sure you want to quit?"), + QMessageBox::Yes | QMessageBox::No, QMessageBox::No) == QMessageBox::No) { event->ignore(); bClosingDown = false; return; @@ -1132,28 +1097,16 @@ void MainWindow::actCheckCardUpdatesBackground() void MainWindow::createCardUpdateProcess(bool background) { if (cardUpdateProcess) { - qCDebug(CardDatabaseUpdateLog) << "A card database update is already running; asking it to come to the front"; - if (requestCardUpdateRaise()) { - return; - } - if (background) { - // A hidden run has nothing to raise: keep the user informed without blocking. - announceCardUpdateRunning(); - return; - } - QMessageBox::information(this, tr("Information"), - tr("The card database updater is already open.\n" - "Look for the Oracle window - it may be behind this one.")); + QMessageBox::information(this, tr("Information"), tr("A card database update is already running.")); return; } cardUpdateProcess = new QProcess(this); connect(cardUpdateProcess, &QProcess::errorOccurred, this, &MainWindow::cardUpdateError); + connect(cardUpdateProcess, qOverload(&QProcess::finished), this, &MainWindow::cardUpdateFinished); - connect(cardUpdateProcess, &QProcess::readyReadStandardOutput, this, &MainWindow::cardUpdateProgressOutput); - connect(cardUpdateProcess, &QProcess::readyReadStandardError, this, &MainWindow::cardUpdateStandardError); // full "run the update" command; leave empty if not present QString updaterCmd; @@ -1198,8 +1151,6 @@ void MainWindow::createCardUpdateProcess(bool background) } if (updaterCmd.isEmpty()) { - qCWarning(CardDatabaseUpdateLog) << "Unable to locate the card database updater; looked for" - << dir.absoluteFilePath(binaryName); QMessageBox::warning(this, tr("Error"), tr("Unable to run the card database updater: ") + dir.absoluteFilePath(binaryName)); exitCardDatabaseUpdate(); @@ -1207,24 +1158,13 @@ void MainWindow::createCardUpdateProcess(bool background) return; } - cardUpdateOutputBuffer.clear(); - cardUpdateErrorOutput.clear(); - cardUpdateErrorPartial.clear(); - cardUpdateLoggedStage = CardUpdateStage::Unknown; - cardUpdateProgressLogTimer.start(); - - qCInfo(CardDatabaseUpdateLog) << "Starting the card database updater" << updaterCmd << "background:" << background; - cardUpdateStatusBar->updateStarted(); - if (!background) { cardUpdateProcess->start(updaterCmd, QStringList()); } else { + cardUpdateOutputBuffer.clear(); + connect(cardUpdateProcess, &QProcess::readyReadStandardOutput, this, &MainWindow::cardUpdateProgressOutput); cardUpdateProcess->start(updaterCmd, QStringList("-b")); statusBar()->showMessage(tr("Card database update running.")); - if (trayIcon && SettingsCache::instance().updates().getCardDatabaseUpdateTrayNotification()) { - trayIcon->showMessage(tr("Card database update started"), - tr("Cockatrice is updating the card database in the background.")); - } } } @@ -1239,43 +1179,24 @@ void MainWindow::cardUpdateProgressOutput() if (newline < 0) { break; } - const QByteArray line = cardUpdateOutputBuffer.left(newline); + const QByteArray line = cardUpdateOutputBuffer.left(newline).trimmed(); cardUpdateOutputBuffer.remove(0, newline + 1); - // Protocol emitted by `oracle`: "PROGRESS " - const std::optional progress = CardUpdateProgress::fromProtocolLine(line); - if (!progress.has_value()) { + // Protocol emitted by `oracle -b`: "PROGRESS " + if (!line.startsWith("PROGRESS ")) { continue; } - // Log stage changes and, while a stage runs, one line per second at most, so the - // debug log shows liveness without flooding it. - if (progress->stage != cardUpdateLoggedStage || cardUpdateProgressLogTimer.elapsed() >= 1000) { - qCDebug(CardDatabaseUpdateLog) - << "Card database update" << progress->stageToken() << progress->done << "/" << progress->total; - cardUpdateLoggedStage = progress->stage; - cardUpdateProgressLogTimer.restart(); + const QList parts = line.split(' '); + if (parts.size() != 4) { + continue; } - emit cardDatabaseUpdateProgress(progress.value()); - } -} - -void MainWindow::cardUpdateStandardError() -{ - if (!cardUpdateProcess) { - return; - } - const QByteArray chunk = cardUpdateProcess->readAllStandardError(); - if (chunk.isEmpty()) { - return; - } - cardUpdateErrorOutput.append(chunk); - cardUpdateErrorPartial.append(chunk); - int newline; - while ((newline = cardUpdateErrorPartial.indexOf('\n')) >= 0) { - const QByteArray line = cardUpdateErrorPartial.left(newline).trimmed(); - cardUpdateErrorPartial.remove(0, newline + 1); - if (!line.isEmpty()) { - qCWarning(CardDatabaseUpdateLog) << "Card database updater:" << line; + bool doneOk = false; + bool totalOk = false; + const qint64 done = parts.at(2).toLongLong(&doneOk); + const qint64 total = parts.at(3).toLongLong(&totalOk); + if (!doneOk || !totalOk || done < 0 || total < 0) { + continue; } + emit cardDatabaseUpdateProgress(QString::fromLatin1(parts.at(1)), done, total); } } @@ -1300,6 +1221,7 @@ void MainWindow::cardUpdateError(QProcess::ProcessError err) break; case QProcess::Crashed: error = tr("The process crashed some time after starting successfully."); + error += "\n\nError output:\n" + cardUpdateProcess->readAllStandardError(); break; case QProcess::Timedout: error = tr("Timed out. The process took too long to respond. The last waitFor...() function timed out."); @@ -1318,12 +1240,6 @@ void MainWindow::cardUpdateError(QProcess::ProcessError err) break; } - if (!cardUpdateErrorOutput.isEmpty()) { - error += "\n\n" + tr("Error output:") + "\n" + QString::fromUtf8(cardUpdateErrorOutput); - cardUpdateErrorOutput.clear(); - } - - qCWarning(CardDatabaseUpdateLog) << "The card database updater exited with an error:" << error; exitCardDatabaseUpdate(); QMessageBox::warning(this, tr("Error"), tr("The card database updater exited with an error:\n%1").arg(error)); emit cardDatabaseUpdateFinished(false); @@ -1331,56 +1247,16 @@ void MainWindow::cardUpdateError(QProcess::ProcessError err) void MainWindow::cardUpdateFinished(int exitCode, QProcess::ExitStatus exitStatus) { - if (!cardUpdateProcess) { - return; - } cardUpdateProgressOutput(); // drain any progress lines not yet parsed const bool success = (exitStatus == QProcess::NormalExit) && (exitCode == 0); if (exitStatus == QProcess::NormalExit) { SettingsCache::instance().updates().setLastCardUpdateCheck(QDateTime::currentDateTime().date()); } - qCInfo(CardDatabaseUpdateLog) << "The card database updater finished with exit code" << exitCode << "exit status" - << static_cast(exitStatus) << "success:" << success; exitCardDatabaseUpdate(); - notifyCardUpdateFinishedFromTray(success); emit cardDatabaseUpdateFinished(success); } -bool MainWindow::requestCardUpdateRaise() -{ - const QString serverName = scopedLocalServerName(QStringLiteral("CockatriceOracleRaise")); - QLocalSocket socket; - socket.connectToServer(serverName); - if (!socket.waitForConnected(250)) { - return false; - } - socket.write("RAISE\n"); - const bool acked = socket.waitForBytesWritten(250); - socket.disconnectFromServer(); - return acked; -} - -void MainWindow::announceCardUpdateRunning() -{ - if (SettingsCache::instance().userInterface().getShowStatusBar()) { - statusBar()->showMessage(tr("Card database update running.")); - } else if (trayIcon && SettingsCache::instance().updates().getCardDatabaseUpdateTrayNotification()) { - trayIcon->showMessage(tr("Card database update running"), - tr("Cockatrice is updating the card database in the background.")); - } -} - -void MainWindow::notifyCardUpdateFinishedFromTray(bool success) -{ - if (SettingsCache::instance().userInterface().getShowStatusBar() || !trayIcon || - !SettingsCache::instance().updates().getCardDatabaseUpdateTrayNotification()) { - return; - } - trayIcon->showMessage(tr("Card database update finished"), - success ? tr("The card database is up to date.") : tr("The card database update failed.")); -} - void MainWindow::actCheckServerUpdates() { auto hps = new HandlePublicServers(this); diff --git a/cockatrice/src/interface/window_main.h b/cockatrice/src/interface/window_main.h index bf68ed72a..1c4dde300 100644 --- a/cockatrice/src/interface/window_main.h +++ b/cockatrice/src/interface/window_main.h @@ -26,42 +26,35 @@ #define WINDOW_H #include "../client/lag_monitor.h" -#include "../client/network/update/client/release_channel.h" -#include "card_database_update/card_update_progress.h" #include "connection_controller/remote_connection_controller.h" +#include "widgets/dialogs/dlg_local_game_options.h" -#include -#include -#include #include -#include #include -#include -#include -#include -#include -#include -#include +#include +#include +#include #include -#include - -class QAction; -class QWidget; -struct LocalGameOptions; +#include inline Q_LOGGING_CATEGORY(WindowMainLog, "window_main"); inline Q_LOGGING_CATEGORY(WindowMainStartupLog, "window_main.startup"); inline Q_LOGGING_CATEGORY(WindowMainStartupVersionLog, "window_main.startup.version"); inline Q_LOGGING_CATEGORY(WindowMainStartupShortcutsLog, "window_main.startup.shortcuts"); inline Q_LOGGING_CATEGORY(WindowMainStartupAutoconnectLog, "window_main.startup.autoconnect"); -inline Q_LOGGING_CATEGORY(CardDatabaseUpdateLog, "card_database.update"); +class Release; +class DlgConnect; class DlgViewLog; class GameReplay; +class HandlePublicServers; +class LocalClient; class LocalServer; +class QLabel; class LatencyStatusWidget; -class CardDatabaseUpdateStatusBar; +class QThread; class RemoteClient; +class ServerInfo_User; class TabSupervisor; class WndSets; class DlgTipOfTheDay; @@ -72,13 +65,13 @@ class MainWindow : public QMainWindow { Q_OBJECT signals: - /** @brief Emitted after the card-database update subprocess exits. */ + /** @brief Emitted after the background card-database update subprocess exits. */ void cardDatabaseUpdateFinished(bool success); - /** @brief Emitted while the card-database update subprocess runs. - * @p progress.done/@p progress.total are byte counts for the first two stages - * and set indices for "import". */ - void cardDatabaseUpdateProgress(const CardUpdateProgress &progress); + /** @brief Emitted while the background card-database update subprocess runs. + * @p stage is one of "download", "scan" or "import"; @p done/@p total + * are byte counts for the first two stages and set indices for "import". */ + void cardDatabaseUpdateProgress(const QString &stage, qint64 done, qint64 total); public slots: void actCheckCardUpdates(); @@ -110,7 +103,6 @@ private slots: void cardUpdateError(QProcess::ProcessError err); void cardUpdateFinished(int exitCode, QProcess::ExitStatus exitStatus); void cardUpdateProgressOutput(); - void cardUpdateStandardError(); void refreshShortcuts(); void cardDatabaseLoadingFailed(); void cardDatabaseNewSetsFound(int numUnknownSets, QStringList unknownSetsNames); @@ -155,15 +147,6 @@ private: } void createCardUpdateProcess(bool background = false); void exitCardDatabaseUpdate(); - /** - * @brief Tries to bring the open card database updater window to the front. - * @return true when the updater acknowledged the request - */ - bool requestCardUpdateRaise(); - /** @brief Tells the user an update is running without blocking, honoring a hidden status bar. */ - void announceCardUpdateRunning(); - /** @brief Posts a tray notification when the status bar cannot show progress. */ - void notifyCardUpdateFinishedFromTray(bool success); void startLocalGame(const LocalGameOptions &options); @@ -190,11 +173,6 @@ private: bool firstRunWizardActive = false; QProcess *cardUpdateProcess; QByteArray cardUpdateOutputBuffer; - QByteArray cardUpdateErrorOutput; ///< diagnostic output collected from the updater's stderr - QByteArray cardUpdateErrorPartial; ///< incomplete trailing stderr line, kept for line-based logging - CardUpdateStage cardUpdateLoggedStage = CardUpdateStage::Unknown; ///< stage of the last logged progress update - QElapsedTimer cardUpdateProgressLogTimer; ///< throttles progress logging to the running stage - CardDatabaseUpdateStatusBar *cardUpdateStatusBar = nullptr; ///< status bar widget tracking the card database update DlgViewLog *logviewDialog; GameReplay *replay; DlgTipOfTheDay *tip; diff --git a/cockatrice/src/main.cpp b/cockatrice/src/main.cpp index b9cc8dabc..af519f436 100644 --- a/cockatrice/src/main.cpp +++ b/cockatrice/src/main.cpp @@ -25,55 +25,36 @@ #include "client/sound_engine.h" #include "client/url_scheme_event_filter.h" #include "database/interface/settings_card_preference_provider.h" -#include "interface/intents/intent.h" #include "interface/intents/intent_open_local_deck.h" #include "interface/logger.h" #include "interface/pixel_map_generator.h" #include "interface/theme_manager.h" +#include "interface/widgets/dialogs/dlg_settings.h" +#include "interface/widgets/tabs/tab_supervisor.h" #include "interface/window_main.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/rng/rng_abstract.h" #include "single_instance_manager.h" #include "version_string.h" #include -#include -#include -#include -#include -#include #include +#include #include -#include -#include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include #include -#include #include #include #include +#include #include +#include #include #include #include #include #include -#include -#include -#include QTranslator *translator, *qtTranslator; RNG_Abstract *rng; @@ -110,7 +91,6 @@ static void CockatriceLogger(QtMsgType type, const QMessageLogContext &ctx, cons #include #include #include - #pragma comment(lib, "DbgHelp.lib") // Link the DbgHelp library // clang-format on diff --git a/cockatrice/src/main.h b/cockatrice/src/main.h index 3d772915b..eee262d2c 100644 --- a/cockatrice/src/main.h +++ b/cockatrice/src/main.h @@ -15,6 +15,7 @@ class CardDatabase; class QString; class QSystemTrayIcon; class QTranslator; +class SoundEngine; extern CardDatabase *db; diff --git a/cockatrice/src/single_instance_manager.cpp b/cockatrice/src/single_instance_manager.cpp index 08294d72c..8d363ff34 100644 --- a/cockatrice/src/single_instance_manager.cpp +++ b/cockatrice/src/single_instance_manager.cpp @@ -1,15 +1,7 @@ #include "single_instance_manager.h" -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include namespace { @@ -25,9 +17,17 @@ SingleInstanceManager::SingleInstanceManager(QObject *parent) : QObject(parent) bool SingleInstanceManager::tryRun(const QStringList &filesToSend) { - // Scope the socket name to the current user so one user's instance cannot + // Scope the socket name to the current user. On Linux the default abstract + // namespace is system-wide, so a plain name would let one user's instance // hijack another user's session. - serverName = scopedLocalServerName(QStringLiteral("CockatriceSingleInstance")); + QString userName = qEnvironmentVariable("USER"); + if (userName.isEmpty()) { + userName = qEnvironmentVariable("USERNAME"); + } + if (userName.isEmpty()) { + userName = QDir::home().dirName(); + } + serverName = QStringLiteral("CockatriceSingleInstance-%1").arg(userName); // Hand off to an already-running primary instance if one exists. Never steal // the socket of a busy primary: it is alive and will act on the payload. diff --git a/cockatrice/src/single_instance_manager.h b/cockatrice/src/single_instance_manager.h index 727994208..d3884a60f 100644 --- a/cockatrice/src/single_instance_manager.h +++ b/cockatrice/src/single_instance_manager.h @@ -1,12 +1,10 @@ #ifndef COCKATRICE_SINGLE_INSTANCE_MANAGER_H #define COCKATRICE_SINGLE_INSTANCE_MANAGER_H -#include -#include -#include -#include - -class QLocalServer; +#include +#include +#include +#include class SingleInstanceManager : public QObject { diff --git a/doc/carddatabase_v4/cards.xsd b/doc/carddatabase_v4/cards.xsd index df52d6327..82aed32ab 100644 --- a/doc/carddatabase_v4/cards.xsd +++ b/doc/carddatabase_v4/cards.xsd @@ -29,6 +29,8 @@ + + diff --git a/doc/doxygen/extra-pages/developer_documentation/network/client/game_event_handler.md b/doc/doxygen/extra-pages/developer_documentation/network/client/game_event_handler.md index 051823c6c..fbb298d3a 100644 --- a/doc/doxygen/extra-pages/developer_documentation/network/client/game_event_handler.md +++ b/doc/doxygen/extra-pages/developer_documentation/network/client/game_event_handler.md @@ -90,13 +90,13 @@ This keeps the handler independent of concrete UI implementations. `GameEventHandler` and `PlayerEventHandler` work together but have distinct roles: -| GameEventHandler | PlayerEventHandler | -| ----------------- | ---------------------- | -| Global game state | Per-player state | -| Turn / phase flow | Zones and cards | -| Player join/leave | Player actions | -| Spectator events | Player-specific events | -| Chat dispatch | Card and zone updates | +| GameEventHandler | PlayerEventHandler | +|------------------|--------------------| +| Global game state | Per-player state | +| Turn / phase flow | Zones and cards | +| Player join/leave | Player actions | +| Spectator events | Player-specific events | +| Chat dispatch | Card and zone updates | When a server event is associated with a specific player, `GameEventHandler` routes it to the corresponding `PlayerEventHandler`. Events without a player diff --git a/doc/doxygen/extra-pages/developer_documentation/network/game_event_handler.md b/doc/doxygen/extra-pages/developer_documentation/network/game_event_handler.md new file mode 100644 index 000000000..fbb298d3a --- /dev/null +++ b/doc/doxygen/extra-pages/developer_documentation/network/game_event_handler.md @@ -0,0 +1,170 @@ +@page game_event_handler GameEventHandler + +## Overview + +`GameEventHandler` is the central coordinator for **game-wide commands and events**. +It acts as the bridge between the networking layer (protobuf messages received from +the server) and the local game model and UI. + +Unlike `PlayerEventHandler`, which is responsible for player-scoped state and zones, +`GameEventHandler` handles: + +- Global game flow (turns, phases, host changes) +- Player and spectator lifecycle events +- Chat and logging events +- Dispatching incoming events to the appropriate subsystem +- Sending locally initiated commands to the server + +In short, it is the **top-level event dispatcher** for an active game. + +--- + +## Responsibilities + +`GameEventHandler` has four primary responsibilities: + +### 1. Sending game-wide commands + +UI actions that affect the game as a whole (e.g. advancing the turn, changing phases, +sending chat messages) are translated into protobuf commands and sent to the server +via this class. + +Examples include: + +- Advancing or reversing the turn order +- Conceding or unconceding +- Changing the active phase +- Leaving the game +- Sending chat messages + +These commands are wrapped in `PendingCommand` instances so their lifecycle and +responses can be tracked. + +--- + +### 2. Processing incoming game events + +Incoming server messages arrive as a `GameEventContainer`. +`GameEventHandler` is responsible for: + +- Emitting lifecycle signals before and after processing +- Dispatching each event to the correct handler +- Forwarding player-scoped events to `PlayerEventHandler` instances +- Handling spectator-only and game-global events directly + +This design keeps networking concerns isolated from game logic and UI code. + +--- + +### 3. Managing global game state transitions + +Certain events affect the entire game state and require coordinated updates across +multiple subsystems. Examples include: + +- Full game state synchronization +- Active player or phase changes +- Game host changes +- Game closure +- Turn reversal + +`GameEventHandler` ensures these events are processed in a consistent order and +that all interested systems are notified via Qt signals. + +--- + +### 4. Emitting UI and logging signals + +Rather than directly manipulating UI widgets, `GameEventHandler` emits +high-level signals that are consumed by: + +- Game widgets +- Player and spectator lists +- Message and event logs +- Status indicators (ready state, deck selection, connection state) + +This keeps the handler independent of concrete UI implementations. + +--- + +## Relationship to PlayerEventHandler + +`GameEventHandler` and `PlayerEventHandler` work together but have distinct roles: + +| GameEventHandler | PlayerEventHandler | +|------------------|--------------------| +| Global game state | Per-player state | +| Turn / phase flow | Zones and cards | +| Player join/leave | Player actions | +| Spectator events | Player-specific events | +| Chat dispatch | Card and zone updates | + +When a server event is associated with a specific player, `GameEventHandler` +routes it to the corresponding `PlayerEventHandler`. Events without a player +context are handled directly. + +--- + +## Event Processing Flow + +A typical incoming event flow looks like this: + +1. `AbstractClient` receives a `GameEventContainer` +2. `GameEventHandler::processGameEventContainer()` is called +3. `containerProcessingStarted()` is emitted +4. Each event is: + - Handled directly **or** + - Forwarded to a `PlayerEventHandler` +5. Logging and UI signals are emitted as needed +6. `containerProcessingDone()` is emitted + +This structured flow makes it easy to: + +- Suppress UI updates during replays +- Handle reconnections cleanly +- Detect flood protection or error states + +--- + +## Command Lifecycle + +Outgoing commands follow a similar structured path: + +1. UI action triggers a `handle*()` method +2. A protobuf command is constructed +3. The command is wrapped in a `PendingCommand` +4. `sendGameCommand()` sends it to the server +5. `commandFinished()` receives the response +6. Errors or flood conditions are handled centrally + +This approach avoids duplicated error handling across UI code. + +--- + +## Design Goals + +`GameEventHandler` is designed to be: + +- **Centralized** – one entry point for all game-wide events +- **UI-agnostic** – communicates via signals, not widgets +- **Predictable** – well-defined event ordering and lifecycle +- **Composable** – works in concert with `PlayerEventHandler` +- **Testable** – logic is separated from rendering + +--- + +## Related Classes + +- @ref GameEventHandler +- @ref PlayerEventHandler +- `GameEventContainer` +- `PendingCommand` +- `AbstractClient` +- `AbstractGame` + +--- + +## See Also + +- @ref GameLogic +- @ref PlayerEventHandler +- @ref GameState diff --git a/doc/doxygen/extra-pages/developer_documentation/network/player_event_handler.md b/doc/doxygen/extra-pages/developer_documentation/network/player_event_handler.md new file mode 100644 index 000000000..6878758da --- /dev/null +++ b/doc/doxygen/extra-pages/developer_documentation/network/player_event_handler.md @@ -0,0 +1,199 @@ +@page player_event_handler PlayerEventHandler + +## Overview + +`PlayerEventHandler` is responsible for applying **player-scoped game events** +to a single `Player` instance. These events modify the player’s board state, +zones, cards, counters, arrows, and associated UI and logging output. + +Each `PlayerEventHandler` instance is bound **1:1 to a Player** and is invoked +exclusively by @ref GameEventHandler after basic routing and validation of +incoming server events. + +This class represents the lowest-level authoritative application of game state +changes on the client. + +--- + +## Scope and Authority + +`PlayerEventHandler` operates under the following guarantees: + +- All incoming events are **authoritative** and already validated by the server +- Events refer to valid players, zones, and card identifiers +- Ordering is guaranteed by the server and preserved by `GameEventHandler` + +As a result, the handler does **not** perform rule validation or permission +checks. Its responsibility is to *apply* state, not *decide* legality. + +--- + +## Responsibilities + +### 1. Applying player-specific state changes + +The primary responsibility of `PlayerEventHandler` is to mutate player-owned +state, including: + +- Cards (`CardItem`) +- Zones (`CardZoneLogic`) +- Counters (card-level and player-level) +- Attachments and arrows +- Zone configuration flags (reveal / peek behavior) + +Many handlers update both **logical state** and **visual/UI state** in tandem. + +--- + +### 2. Coordinating complex card movement + +Some events—most notably card movement—require coordinated updates across +multiple systems. For example, `eventMoveCard()`: + +- Removes the card from the source zone +- Updates ownership, visibility, and identity +- Handles attachments and arrow cleanup +- Emits undo-draw or move logs +- Inserts the card into the destination zone +- Updates menus, hover state, and graphics + +This makes `PlayerEventHandler` intentionally stateful and tightly coupled to +the board implementation. + +--- + +### 3. Emitting logging signals + +Rather than writing directly to logs or widgets, `PlayerEventHandler` emits +structured Qt signals describing *what happened*, including: + +- Chat messages +- Card movement +- Shuffles and randomization +- Reveals and peeks +- Counter and attribute changes + +These signals are consumed by logging systems and UI components, keeping +presentation concerns out of the handler. + +Logging signals may be emitted **before or after mutation**, depending on +whether later changes would invalidate log data (e.g. card identity). + +--- + +### 4. Handling cross-player interactions + +Although bound to a single player, some events necessarily affect other +players’ state, including: + +- Moving cards between players +- Attaching cards to another player’s permanents +- Creating arrows targeting other players or cards + +In these cases, `PlayerEventHandler` performs the minimal required mutation +while respecting ownership boundaries enforced elsewhere. + +--- + +## Event Dispatch Model + +`PlayerEventHandler` exposes a single public entry point: + +- `processGameEvent()` + +This method: + +1. Receives a generic `GameEvent` +2. Switches on `GameEventType` +3. Extracts the appropriate protobuf extension +4. Forwards the event to a typed handler + +This keeps the event routing centralized and makes it easy to audit coverage +when new game events are introduced. + +Unhandled events are logged as warnings. + +--- + +## Event Categories + +For clarity, event handlers are grouped conceptually into: + +- **Chat and randomization** + - Chat messages + - Shuffles + - Dice rolls + +- **Arrows and targeting** + - Create / delete arrows + +- **Card and token creation** + - Token generation + - Counter creation + +- **Card attributes and counters** + - Tapped state + - Power/toughness + - Annotations + - Card- and player-level counters + +- **Zone-level operations** + - Card movement + - Zone dumps + - Card destruction + - Attachments + +- **Draw and reveal** + - Drawing cards + - Reveals, peeks, and reveal windows + +- **Zone configuration** + - Always-reveal and always-look-at-top-card flags + +This grouping mirrors the structure of the header file and reflects the +conceptual responsibilities of the class. + +--- + +## Relationship to GameEventHandler + +`PlayerEventHandler` is never instantiated or invoked directly by UI code. +Instead: + +1. `GameEventHandler` receives a `GameEventContainer` +2. Player-scoped events are routed to the appropriate `PlayerEventHandler` +3. Global or spectator events are handled elsewhere + +This separation keeps game-wide logic decoupled from player board state and +makes reconnection and replay handling simpler. + +--- + +## Design Intent + +`PlayerEventHandler` is designed to be: + +- **Authoritative** – applies server state exactly as received +- **Stateful** – maintains consistency across cards, zones, and UI +- **Explicit** – one handler per event type +- **UI-aware** – updates views and menus as part of state mutation +- **Auditable** – easy to trace what code handles which event + +--- + +## Related Classes + +- @ref PlayerEventHandler +- @ref GameEventHandler +- `Player` +- `CardItem` +- `CardZoneLogic` +- `GameEvent` +- `GameEventContext` + +--- + +## See Also + +- @ref GameLogicPlayers +- @ref GameLogic diff --git a/doc/doxygen/extra-pages/user_documentation/card_pictures/custom_card_pictures.md b/doc/doxygen/extra-pages/user_documentation/card_pictures/custom_card_pictures.md index bcea6db8b..3f1079661 100644 --- a/doc/doxygen/extra-pages/user_documentation/card_pictures/custom_card_pictures.md +++ b/doc/doxygen/extra-pages/user_documentation/card_pictures/custom_card_pictures.md @@ -69,17 +69,17 @@ the 'Deck Editor' tab, in the 'URL Download Priority' section. The following reference points are available: -| Reference point | Description | Example | -| ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- | -| `!name!` | Card name | `Example Card` | -| `!name_lower!` | Card name, lower case | `example card` | -| `!corrected_name!` | Corrected card name | `ExampleCard` (instead of "Example // Card") | -| `!corrected_name_lower!` | Corrected card name, lower case | `examplecard` | -| `!sflang!` | Scryfall language code for the current client language; defaults to English when the language has no localized images | `en`, `zhs` | -| `!setcode!` / `!setcode_lower!` | Set code | `EXM` / `exm` | -| `!setname!` / `!setname_lower!` | Full set name | `Exemplary Set` / `exemplary set` | -| `!set:!` | A property of this printing, e.g. `muid` (Gatherer multiverse ID), `uuid` (Scryfall UUID), `num` (collector number), `rarity` | `373549` | -| `!prop:!` | A property of the card, e.g. `side` (front/back), `colors`, `cmc`, `coloridentity`, `type`, `pt`, and the format legality statuses | `front` | +| Reference point | Description | Example | +| ------------------------------- | ------------------------------- | -------------- | +| `!name!` | Card name | `Example Card` | +| `!name_lower!` | Card name, lower case | `example card` | +| `!corrected_name!` | Corrected card name | `ExampleCard` (instead of "Example // Card") | +| `!corrected_name_lower!` | Corrected card name, lower case | `examplecard` | +| `!sflang!` | Scryfall language code for the current client language; defaults to English when the language has no localized images | `en`, `zhs` | +| `!setcode!` / `!setcode_lower!` | Set code | `EXM` / `exm` | +| `!setname!` / `!setname_lower!` | Full set name | `Exemplary Set` / `exemplary set` | +| `!set:!` | A property of this printing, e.g. `muid` (Gatherer multiverse ID), `uuid` (Scryfall UUID), `num` (collector number), `rarity` | `373549` | +| `!prop:!` | A property of the card, e.g. `side` (front/back), `colors`, `cmc`, `coloridentity`, `type`, `pt`, and the format legality statuses | `front` | The `!set:...!` and `!prop:...!` reference points support two modifiers: diff --git a/doc/doxygen/extra-pages/user_documentation/troubleshooting/enabling_debug_logs.md b/doc/doxygen/extra-pages/user_documentation/troubleshooting/enabling_debug_logs.md index 27c4272f5..7e4196a50 100644 --- a/doc/doxygen/extra-pages/user_documentation/troubleshooting/enabling_debug_logs.md +++ b/doc/doxygen/extra-pages/user_documentation/troubleshooting/enabling_debug_logs.md @@ -110,7 +110,6 @@ suffix, e.g. `card_picture_loader.*`, to include all sub categories). | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | | Card picture loading (URLs, local file hits/misses, downloads, redirects) | `card_picture_loader.*` | | Card database loading and parsing | `card_database`, `card_database.loading`, `card_database.loading.success_or_failure`, `cockatrice_xml.*` | -| Card database update (running Oracle, progress, exit status, errors) | `card_database.update` | | Card, set, and deck information | `card_info`, `card_list`, `deck_loader` | | Startup sequence and update checks | `window_main.startup.*`, `release_channel`, `spoiler_background_updater` | | User interface and themes | `theme_manager`, `sound_engine`, `flow_layout`, `flow_widget.*`, `pixel_map_generator`, `card_info_picture_widget` | @@ -129,7 +128,6 @@ For example, to investigate why a card database update seems to fail, enable the card_database = true card_database.loading = true card_database.loading.success_or_failure = true -card_database.update = true cockatrice_xml.* = true ``` diff --git a/iwyu.sh b/iwyu.sh deleted file mode 100755 index 279200adf..000000000 --- a/iwyu.sh +++ /dev/null @@ -1,226 +0,0 @@ -#!/bin/bash - -# This script runs include-what-you-use on the given source files or -# directories, applies its suggestions (forward declarations, minimal and -# canonical #includes), then reformats the touched files with clang-format. -# -# Uses include-what-you-use, iwyu_tool.py, fix_includes.py, clang-format and -# python3. Requires a build directory configured with -# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON to provide compile_commands.json. -# -# The Qt 6 mapping (qt6.imp) makes IWYU prefer capital includes like -# #include over #include and keeps forward declarations -# where possible. Regenerate it with tools/generate_qt_mappings.py whenever the -# installed Qt version changes. -# -# Usage: -# ./iwyu.sh [-b ] [-m ] [-j ] [-n] -# -# Options: -# -b, --build-dir DIR build dir with compile_commands.json (default: build) -# -m, --mapping FILE IWYU mapping file (default: qt6.imp) -# -j, --jobs N IWYU parallel jobs (default: 2) -# -n, --dry-run only print IWYU output, do not modify any file - -set -o pipefail - -# go to the project root directory, this file should be located in the project root directory -cd "${BASH_SOURCE%/*}/" || exit 2 # could not find path, this could happen with special links etc. - -# defaults -build_dir="build" -mapping="qt6.imp" -jobs=2 -dry_run=0 - -# 3rd party code that must not be touched by IWYU or clang-format -excludes=("libcockatrice_rng/libcockatrice/rng/sfmt/" \ -"libcockatrice_utility/libcockatrice/utility/peglib.h" \ -"oracle/src/lzma/" \ -"oracle/src/qt-json/" \ -"oracle/src/zip/" \ -"servatrice/src/smtp/") - -usage() { - cat <] [-m ] [-j ] [-n] - -Runs include-what-you-use on the given files/directories, applies the -suggested include changes in place, and reformats touched files. - -Options: - -b, --build-dir DIR build dir with compile_commands.json (default: build) - -m, --mapping FILE IWYU mapping file (default: qt6.imp) - -j, --jobs N IWYU parallel jobs (default: 2) - -n, --dry-run only print IWYU output, do not modify any file - -h, --help show this help -EOM -} - -# parse options -while [[ $* ]]; do - case "$1" in - '-b'|'--build-dir') - build_dir=$2 - shift 2 - ;; - '-m'|'--mapping') - mapping=$2 - shift 2 - ;; - '-j'|'--jobs') - jobs=$2 - shift 2 - ;; - '-n'|'--dry-run') - dry_run=1 - shift - ;; - '-h'|'--help') - usage - exit 0 - ;; - *) - targets+=("$1") - shift - ;; - esac -done - -# find the IWYU tools, preferring PATH and falling back to the LLVM dir -find_tool() { - local tool=$1 - local path - if path=$(command -v "$tool" 2>/dev/null); then - echo "$path" - elif [ -x "/usr/lib/llvm/22/bin/$tool" ]; then - echo "/usr/lib/llvm/22/bin/$tool" - else - return 1 - fi -} - -find_tool include-what-you-use > /dev/null || { echo "error: include-what-you-use not found"; exit 1; } -IWYU_TOOL=$(find_tool iwyu_tool.py) || { echo "error: iwyu_tool.py not found"; exit 1; } -FIX_INCLUDES=$(find_tool fix_includes.py) || { echo "error: fix_includes.py not found"; exit 1; } -command -v clang-format >/dev/null 2>&1 || { echo "error: clang-format not found"; exit 1; } - -if [ "${#targets[@]}" -eq 0 ]; then - echo "error: specify at least one source file or directory" >&2 - usage - exit 1 -fi - -if [ ! -f "$mapping" ]; then - echo "error: mapping file '$mapping' not found" >&2 - exit 1 -fi - -if [ ! -f "$build_dir/compile_commands.json" ]; then - echo "error: '$build_dir/compile_commands.json' not found" >&2 - echo "configure the build with -DCMAKE_EXPORT_COMPILE_COMMANDS=ON first" >&2 - exit 1 -fi - -tmpdir=$(mktemp -d /tmp/iwyu.XXXXXX) -trap 'rm -rf "$tmpdir"' EXIT - -# filter the compilation database: drop excluded 3rd party code and strip the -# GCC-only flags that clang/include-what-you-use rejects -root="$PWD" -python3 - "$build_dir/compile_commands.json" "$root" "${excludes[@]}" <<'PYEOF' > "$tmpdir/compile_commands.json" -import json -import os -import re -import sys - -cc_path, root = sys.argv[1], sys.argv[2] -excludes = sys.argv[3:] -root = os.path.normpath(root) -excl_norm = [os.path.normpath(os.path.join(root, e)) for e in excludes] - -out = [] -for entry in json.load(open(cc_path)): - path = os.path.normpath(entry['file']) - if not path.startswith(root + os.sep): - continue - # skip generated code: protobuf output and moc autogen files - if re.search(r'\.pb\.(h|cc)$', path) or '_autogen/' in path: - continue - if any(path.startswith(e + os.sep) or path == e for e in excl_norm): - continue - command = entry.get('command', '') - command = re.sub(r'-mno-direct-extern-access', '', command) - command = re.sub(r'--coverage', '', command) - out.append(dict(entry, command=command)) - -json.dump(out, sys.stdout) -PYEOF - -mapping_abs="$PWD/$mapping" -if [ "$dry_run" = 1 ]; then - python3 "$IWYU_TOOL" -p "$tmpdir" -o iwyu -j "$jobs" "${targets[@]}" \ - -- -Xiwyu "--mapping_file=$mapping_abs" -else - before=$(git diff --name-only 2>/dev/null | sort -u) - - python3 "$IWYU_TOOL" -p "$tmpdir" -o iwyu -j "$jobs" "${targets[@]}" \ - -- -Xiwyu "--mapping_file=$mapping_abs" | - python3 "$FIX_INCLUDES" --nosafe_headers --nocomments --noreorder --basedir="$root" - - # fix_includes can emit absolute paths for headers that the compiler resolved - # through an absolute -I entry. Those are machine-specific and break every - # other checkout and CI, so rewrite them into the project-relative quoted - # form the codebase uses. Must run before clang-format so the regroup/sort - # pass sees the final paths. - python3 - "$root" <<'PYEOF' -import os -import re -import subprocess -import sys - -root = os.path.normpath(sys.argv[1]) -pattern = re.compile(r'^(\s*#\s*include\s*)"(/)') - -# Collect from git so untracked scratch files are left alone. -changed = subprocess.run( - ['git', 'diff', '--name-only', '--diff-filter=ACMR'], - capture_output=True, text=True, check=True).stdout.split() - -for rel in changed: - if not rel.endswith(('.h', '.cpp', '.cc', '.cxx')): - continue - path = os.path.join(root, rel) - if not os.path.isfile(path): - continue - src = open(path, encoding='utf-8').read() - if '"' + os.sep not in src: - continue - out = [] - for line in src.split('\n'): - m = pattern.match(line) - if not m: - out.append(line) - continue - target = os.path.normpath(line[m.end(1) + 1:].rstrip('"')) - if not target.startswith(root + os.sep): - out.append(line) - continue - spelled = os.path.relpath(target, os.path.dirname(path)) - out.append(f'{m.group(1)}"{spelled}"') - new = '\n'.join(out) - if new != src: - open(path, 'w', encoding='utf-8').write(new) -PYEOF - - # reformat every file this IWYU pass modified (fix_includes also touches - # headers pulled in by the requested files) - touched=$(comm -13 <(printf '%s\n' "$before") <(git diff --name-only 2>/dev/null | sort -u)) - for file in $touched; do - case "$file" in - *.h|*.cpp) - clang-format -i "$file" - ;; - esac - done -fi diff --git a/libcockatrice_card/libcockatrice/card/card_info.cpp b/libcockatrice_card/libcockatrice/card/card_info.cpp index bd33f18e7..56c737793 100644 --- a/libcockatrice_card/libcockatrice/card/card_info.cpp +++ b/libcockatrice_card/libcockatrice/card/card_info.cpp @@ -1,17 +1,21 @@ #include "card_info.h" #include "game_specific_terms.h" -#include "libcockatrice/card/lazy_properties_hash.h" #include "printing/printing_info.h" #include "relation/card_relation.h" #include "set/card_set.h" -#include +#include #include #include #include +#include #include +class CardRelation; +class CardSet; +class CardInfo; + using CardInfoPtr = QSharedPointer; const QHash &CardInfo::getPropertiesHash() const diff --git a/libcockatrice_card/libcockatrice/card/card_info.h b/libcockatrice_card/libcockatrice/card/card_info.h index 356da0546..17894cec5 100644 --- a/libcockatrice_card/libcockatrice/card/card_info.h +++ b/libcockatrice_card/libcockatrice/card/card_info.h @@ -5,19 +5,15 @@ #include "lazy_properties_hash.h" #include "printing/printing_info.h" -#include -#include +#include #include #include #include #include #include -#include -#include +#include #include -#include -#include -#include +#include #include inline Q_LOGGING_CATEGORY(CardInfoLog, "card_info"); @@ -25,6 +21,7 @@ inline Q_LOGGING_CATEGORY(CardInfoLog, "card_info"); class CardInfo; class CardSet; class CardRelation; +class ICardDatabaseParser; typedef QSharedPointer CardInfoPtr; typedef QSharedPointer CardSetPtr; diff --git a/libcockatrice_card/libcockatrice/card/card_info_comparator.cpp b/libcockatrice_card/libcockatrice/card/card_info_comparator.cpp index d0800e596..cc0314e21 100644 --- a/libcockatrice_card/libcockatrice/card/card_info_comparator.cpp +++ b/libcockatrice_card/libcockatrice/card/card_info_comparator.cpp @@ -1,11 +1,5 @@ #include "card_info_comparator.h" -#include "libcockatrice/card/card_info.h" - -#include -#include -#include - CardInfoComparator::CardInfoComparator(const QStringList &properties, Qt::SortOrder order) : m_properties(properties), m_order(order) { diff --git a/libcockatrice_card/libcockatrice/card/card_info_comparator.h b/libcockatrice_card/libcockatrice/card/card_info_comparator.h index b184f5d55..b6df8c7a3 100644 --- a/libcockatrice_card/libcockatrice/card/card_info_comparator.h +++ b/libcockatrice_card/libcockatrice/card/card_info_comparator.h @@ -9,9 +9,6 @@ #include "card_info.h" -#include -#include -#include #include #include diff --git a/libcockatrice_card/libcockatrice/card/card_localization.cpp b/libcockatrice_card/libcockatrice/card/card_localization.cpp index 4f91bac78..03c6c659b 100644 --- a/libcockatrice_card/libcockatrice/card/card_localization.cpp +++ b/libcockatrice_card/libcockatrice/card/card_localization.cpp @@ -1,10 +1,8 @@ #include "card_localization.h" #include -#include #include #include -#include namespace CardLocalization { diff --git a/libcockatrice_card/libcockatrice/card/card_localization.h b/libcockatrice_card/libcockatrice/card/card_localization.h index ee2aaa9b7..1bde506cb 100644 --- a/libcockatrice_card/libcockatrice/card/card_localization.h +++ b/libcockatrice_card/libcockatrice/card/card_localization.h @@ -1,8 +1,6 @@ #ifndef CARD_LOCALIZATION_H #define CARD_LOCALIZATION_H -#include -#include #include #include diff --git a/libcockatrice_card/libcockatrice/card/database/card_database.cpp b/libcockatrice_card/libcockatrice/card/database/card_database.cpp index 469c8d02c..209b9d2c2 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database.cpp @@ -1,27 +1,17 @@ #include "card_database.h" #include "../relation/card_relation.h" -#include "libcockatrice/card/database/card_database_data.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/database/parser/card_database_parser.h" -#include "libcockatrice/card/format/format_legality_rules.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/card/set/card_set_list.h" +#include "card_database_manager.h" +#include "parser/cockatrice_xml_4.h" +#include #include -#include -#include -#include -#include -#include +#include +#include +#include +#include #include -class ICardDatabasePathProvider; -class ICardPreferenceProvider; -class ICardSetPriorityController; - CardDatabase::CardDatabase(QObject *parent, ICardPreferenceProvider *prefs, ICardDatabasePathProvider *pathProvider, @@ -33,7 +23,7 @@ CardDatabase::CardDatabase(QObject *parent, qRegisterMetaType("CardDatabaseData"); // create loader and wire it up - loader = new CardDatabaseLoader(this, this, pathProvider, setPriorityController); + loader = new CardDatabaseLoader(this, this, pathProvider, prefs, setPriorityController); // re-emit loader signals (so other code doesn't need to know about internals) connect(loader, &CardDatabaseLoader::loadingFinished, this, &CardDatabase::cardDatabaseLoadingFinished); connect(loader, &CardDatabaseLoader::loadingFailed, this, &CardDatabase::cardDatabaseLoadingFailed); @@ -78,9 +68,7 @@ void CardDatabase::loadCardDatabases() void CardDatabase::reloadCardDatabasesAndNotify() { - // An explicit reload bypasses the binary cache so the files on disk are - // always re-read, even when their size/mtime hash still matches the cache. - loadStatus = loader->loadCardDatabases(/* ignoreCache */ true); + loadCardDatabases(); if (loadStatus == Ok) { checkUnknownSets(); diff --git a/libcockatrice_card/libcockatrice/card/database/card_database.h b/libcockatrice_card/libcockatrice/card/database/card_database.h index 9f0d67b67..b10e3c726 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database.h @@ -2,26 +2,18 @@ #define CARDDATABASE_H #include "../set/card_set_list.h" -#include "card_database_loader.h" - -// IWYU pragma: keep -// CardDatabaseData is passed by value to the swapInDatabaseData() slot, and -// CardInfoPtr is passed by value to the cardAdded()/cardRemoved() signals, so -// the moc-generated code needs the complete types. #include "card_database_data.h" -#include "libcockatrice/card/card_info.h" +#include "card_database_loader.h" +#include "card_database_querier.h" #include +#include +#include +#include #include -#include -#include -#include -#include - -class CardDatabaseQuerier; -class ICardDatabasePathProvider; -class ICardPreferenceProvider; -class ICardSetPriorityController; +#include +#include +#include inline Q_LOGGING_CATEGORY(CardDatabaseLog, "card_database"); @@ -177,12 +169,8 @@ public slots: void addFormat(const FormatRulesPtr &format); - /** @brief Loads card databases from configured paths, using the binary cache when valid. */ + /** @brief Loads card databases from configured paths. */ void loadCardDatabases(); - /** - * @brief Reloads card databases from disk, bypassing the binary cache, - * and notifies observers of the fresh state. - */ void reloadCardDatabasesAndNotify(); /** @brief Saves custom tokens to file. diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_cache.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_cache.cpp index 4ab4d1fca..3165ff871 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_cache.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_cache.cpp @@ -4,32 +4,15 @@ #include "../format/format_legality_rules.h" #include "../printing/printing_info.h" #include "../relation/card_relation.h" +#include "../relation/card_relation_type.h" #include "../set/card_set.h" #include "card_database_loader.h" -#include "libcockatrice/card/database/card_database_data.h" -#include "libcockatrice/card/lazy_properties_hash.h" #include -#include #include -#include -#include #include #include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include - -class ICardSetPriorityController; -enum class CardRelationType; -template class QHash; namespace { diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_cache.h b/libcockatrice_card/libcockatrice/card/database/card_database_cache.h index 178b3ac6e..40ff96541 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_cache.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_cache.h @@ -1,11 +1,10 @@ #ifndef CARDDATABASE_CACHE_H #define CARDDATABASE_CACHE_H -#include +#include "card_database_data.h" -class ICardSetPriorityController; -class QByteArray; -struct CardDatabaseData; +#include +#include namespace CardDatabaseCache { diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp index 194083615..47f7eee6d 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_loader.cpp @@ -2,11 +2,6 @@ #include "card_database.h" #include "card_database_cache.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_data.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/interfaces/interface_card_database_path_provider.h" -#include "libcockatrice/interfaces/interface_card_set_priority_controller.h" #include "parser/card_database_parser.h" #include "parser/cockatrice_xml_3.h" #include "parser/cockatrice_xml_4.h" @@ -14,37 +9,29 @@ #include #include #include -#include #include -#include #include #include #include -#include -#include -#include -#include #include -#include -#include - -class ICardPreferenceProvider; CardDatabaseLoader::CardDatabaseLoader(QObject *parent, CardDatabase *db, ICardDatabasePathProvider *_pathProvider, + ICardPreferenceProvider *_preferenceProvider, ICardSetPriorityController *_priorityController) : QObject(parent), database(db), pathProvider(_pathProvider), priorityController(_priorityController) { // instantiate available parsers here - availableParsers << new CockatriceXml4Parser(_priorityController); + availableParsers << new CockatriceXml4Parser(_preferenceProvider, _priorityController); availableParsers << new CockatriceXml3Parser(_priorityController); // The load path parses into a snapshot and never emits per-card signals; // the finished snapshot is swapped into the live database on the GUI thread. // when SettingsCache's path changes, trigger reloads - connect(pathProvider, &ICardDatabasePathProvider::cardDatabasePathChanged, this, [this] { loadCardDatabases(); }); + connect(pathProvider, &ICardDatabasePathProvider::cardDatabasePathChanged, this, + &CardDatabaseLoader::loadCardDatabases); } CardDatabaseLoader::~CardDatabaseLoader() @@ -89,12 +76,12 @@ LoadStatus CardDatabaseLoader::loadCardDatabase(const QString &path, CardDatabas return tempLoadStatus; } -LoadStatus CardDatabaseLoader::loadCardDatabases(bool ignoreCache) +LoadStatus CardDatabaseLoader::loadCardDatabases() { - return doLoadCardDatabases(ignoreCache); + return doLoadCardDatabases(); } -LoadStatus CardDatabaseLoader::doLoadCardDatabases(bool ignoreCache) +LoadStatus CardDatabaseLoader::doLoadCardDatabases() { QMutexLocker locker(reloadDatabaseMutex); @@ -112,14 +99,9 @@ LoadStatus CardDatabaseLoader::doLoadCardDatabases(bool ignoreCache) LoadStatus loadStatus = NotLoaded; // Try the binary cache first: a cache hit avoids re-parsing the (large) XML. - // An explicit reload skips the lookup so the files on disk are always - // re-read, even when their size/mtime hash still matches the cache. const QStringList customPaths = collectCustomDatabasePaths(); const QByteArray sourceHash = computeSourceHash(customPaths); - if (ignoreCache) { - qCInfo(CardDatabaseLoadingLog) << "Ignoring binary cache, re-parsing source files"; - } - if (!ignoreCache && loadFromCache(data, sourceHash)) { + if (loadFromCache(data, sourceHash)) { qCInfo(CardDatabaseLoadingLog) << "Loaded card database from binary cache"; loadStatus = Ok; } else { @@ -184,12 +166,6 @@ QByteArray CardDatabaseLoader::computeSourceHash(const QStringList &customPaths) hash.addData(QCoreApplication::applicationVersion().toUtf8()); hash.addData(QByteArray(1, '\0')); - // Include parser schema version to invalidate caches when parser behavior changes. - // Increment this if the parser logic changes in a way that affects cached data. - static const char SCHEMA_VERSION[] = "carddb-parse-schema-v1"; - hash.addData(QByteArray(SCHEMA_VERSION, sizeof(SCHEMA_VERSION) - 1)); - hash.addData(QByteArray(1, '\0')); - const QStringList inputs = QStringList() << pathProvider->getCardDatabasePath() << pathProvider->getTokenDatabasePath() << pathProvider->getSpoilerCardDatabasePath() << customPaths; @@ -204,17 +180,6 @@ QByteArray CardDatabaseLoader::computeSourceHash(const QStringList &customPaths) hash.addData(QByteArray(1, '\0')); } } - - // The parsers drop printings of disabled sets at parse time, so the cached - // snapshot depends on enablement: fold the enabled set names in so that - // toggling a set invalidates the cache and forces a re-parse. - if (priorityController) { - const QStringList enabledSets = priorityController->getEnabledSetNames(); - for (const QString &setName : enabledSets) { - hash.addData(setName.toUtf8()); - hash.addData(QByteArray(1, '\0')); - } - } return hash.result(); } diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_loader.h b/libcockatrice_card/libcockatrice/card/database/card_database_loader.h index fffd31d2f..6dcb06bf2 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_loader.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_loader.h @@ -2,21 +2,12 @@ #define COCKATRICE_CARD_DATABASE_LOADER_H #include -#include #include #include -#include -#include -#include -#include - -class ICardDatabasePathProvider; -class ICardSetPriorityController; - -// IWYU pragma: keep -// CardDatabaseData is passed by value to the databaseDataReady() signal, so the -// moc-generated code needs the complete type. -#include "card_database_data.h" +#include +#include +#include +#include inline Q_LOGGING_CATEGORY(CardDatabaseLoadingLog, "card_database.loading"); inline Q_LOGGING_CATEGORY(CardDatabaseLoadingSuccessOrFailureLog, "card_database.loading.success_or_failure"); @@ -58,10 +49,12 @@ public: * @param parent QObject parent. * @param db Pointer to the CardDatabase to populate (non-owning). * @param pathProvider Provider for card database file paths. + * @param preferenceProvider Optional card preference provider for pinned printings. */ explicit CardDatabaseLoader(QObject *parent, CardDatabase *db, ICardDatabasePathProvider *pathProvider, + ICardPreferenceProvider *preferenceProvider, ICardSetPriorityController *_priorityController); /** @brief Destructor cleans up allocated parsers. */ @@ -73,13 +66,9 @@ public slots: * * Runs synchronously on the calling thread. The caller should ensure * that any signal receivers are already connected before invoking this. - * @param ignoreCache Skip the binary cache lookup and re-parse the source - * files from disk, refreshing the cache afterwards. Used for - * explicit reloads so that edits the source hash cannot see are - * still picked up. * @return Status of the main database load. */ - LoadStatus loadCardDatabases(bool ignoreCache = false); + LoadStatus loadCardDatabases(); /** * @brief Loads a single card database file into the given snapshot. @@ -132,10 +121,9 @@ private: /** * @brief Performs the actual load work synchronously on the calling thread. - * @param ignoreCache Skip the binary cache lookup and re-parse from disk. * @return Status of the main database load. */ - LoadStatus doLoadCardDatabases(bool ignoreCache); + LoadStatus doLoadCardDatabases(); /** * @brief Collects custom card database paths recursively. diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp index b06c258fa..614b4a7f8 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp @@ -1,16 +1,9 @@ #include "card_database_manager.h" -#include "libcockatrice/card/database/card_database.h" - #include #include #include -class CardDatabaseQuerier; -class ICardDatabasePathProvider; -class ICardPreferenceProvider; -class ICardSetPriorityController; - ICardPreferenceProvider *CardDatabaseManager::cardPreferenceProvider = new NoopCardPreferenceProvider(); ICardDatabasePathProvider *CardDatabaseManager::pathProvider = new NoopCardDatabasePathProvider(); ICardSetPriorityController *CardDatabaseManager::setPriorityController = new NoopCardSetPriorityController(); diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_manager.h b/libcockatrice_card/libcockatrice/card/database/card_database_manager.h index 074154a41..c7de66a25 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_manager.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_manager.h @@ -2,12 +2,7 @@ #define CARD_DATABASE_ACCESSOR_H #pragma once - -class CardDatabase; -class CardDatabaseQuerier; -class ICardDatabasePathProvider; -class ICardPreferenceProvider; -class ICardSetPriorityController; +#include "card_database.h" /** * @class CardDatabaseManager diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp index 2fad5212d..5b9c5a4b5 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp @@ -4,15 +4,8 @@ #include "../printing/exact_card.h" #include "../set/card_set_comparator.h" #include "card_database.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/interfaces/interface_card_preference_provider.h" -#include "libcockatrice/utility/card_ref.h" -#include -#include -#include -#include -#include +#include CardDatabaseQuerier::CardDatabaseQuerier(QObject *_parent, const CardDatabase *_db, diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_querier.h b/libcockatrice_card/libcockatrice/card/database/card_database_querier.h index a1409b3cc..f195a8170 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_querier.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_querier.h @@ -3,18 +3,12 @@ #include "../card_info.h" #include "../printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include -#include #include -#include -#include -#include +#include +#include class CardDatabase; -class ICardPreferenceProvider; -struct CardRef; /** * @class CardDatabaseQuerier diff --git a/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.cpp b/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.cpp index 1374533ca..00ed9377d 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.cpp +++ b/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.cpp @@ -1,11 +1,6 @@ #include "card_database_parser.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_data.h" - -#include - -class ICardSetPriorityController; +#include SetNameMap ICardDatabaseParser::sets; diff --git a/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.h b/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.h index b82d9aed7..6d9c91260 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.h +++ b/libcockatrice_card/libcockatrice/card/database/parser/card_database_parser.h @@ -2,17 +2,10 @@ #define CARDDATABASE_PARSER_H #include "../../card_info.h" -#include "libcockatrice/card/database/parser/card_database_parser.h" -#include "libcockatrice/card/set/card_set.h" +#include "../card_database_data.h" -#include -#include +#include #include -#include - -class ICardSetPriorityController; -class QIODevice; -struct CardDatabaseData; #define COCKATRICE_XML_XSI_NAMESPACE "http://www.w3.org/2001/XMLSchema-instance" diff --git a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.cpp b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.cpp index b17eb8b5e..64202ab21 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.cpp +++ b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.cpp @@ -2,33 +2,13 @@ #include "../../relation/card_relation.h" #include "../../relation/card_relation_type.h" -#include "libcockatrice/card/database/card_database_data.h" -#include "libcockatrice/card/database/parser/card_database_parser.h" -#include "libcockatrice/card/lazy_properties_hash.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include #include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include #include -class ICardSetPriorityController; - #define COCKATRICE_XML3_TAGNAME "cockatrice_carddatabase" #define COCKATRICE_XML3_TAGVER 3 #define COCKATRICE_XML3_SCHEMALOCATION \ diff --git a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.h b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.h index cb76e960d..83b736257 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.h +++ b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_3.h @@ -2,14 +2,9 @@ #define COCKATRICE_XML3_H #include "card_database_parser.h" -#include "libcockatrice/card/card_info.h" #include -#include -#include - -class ICardSetPriorityController; -class QXmlStreamReader; +#include inline Q_LOGGING_CATEGORY(CockatriceXml3Log, "cockatrice_xml.xml_3_parser"); diff --git a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.cpp b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.cpp index 4d975e533..19e972a7a 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.cpp +++ b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.cpp @@ -1,44 +1,22 @@ #include "cockatrice_xml_4.h" #include "../../relation/card_relation.h" -#include "libcockatrice/card/database/card_database_data.h" -#include "libcockatrice/card/database/parser/card_database_parser.h" -#include "libcockatrice/card/lazy_properties_hash.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/relation/card_relation_type.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/interfaces/interface_card_preference_provider.h" #include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include #include -#include -#include #include -class ICardSetPriorityController; - #define COCKATRICE_XML4_TAGNAME "cockatrice_carddatabase" #define COCKATRICE_XML4_TAGVER 4 #define COCKATRICE_XML4_SCHEMALOCATION \ "https://raw.githubusercontent.com/Cockatrice/Cockatrice/master/doc/carddatabase_v4/cards.xsd" -CockatriceXml4Parser::CockatriceXml4Parser(ICardSetPriorityController *_cardSetPriorityController) - : ICardDatabaseParser(_cardSetPriorityController) +CockatriceXml4Parser::CockatriceXml4Parser(ICardPreferenceProvider *_cardPreferenceProvider, + ICardSetPriorityController *_cardSetPriorityController) + : ICardDatabaseParser(_cardSetPriorityController), cardPreferenceProvider(_cardPreferenceProvider) { } @@ -283,6 +261,7 @@ QHash CockatriceXml4Parser::loadCardPropertiesFromXml(QXmlStre void CockatriceXml4Parser::loadCardsFromXml(QXmlStreamReader &xml) { + bool includeRebalancedCards = cardPreferenceProvider->getIncludeRebalancedCards(); while (!xml.atEnd()) { if (xml.readNext() == QXmlStreamReader::EndElement) { break; @@ -384,7 +363,17 @@ void CockatriceXml4Parser::loadCardsFromXml(QXmlStreamReader &xml) printingProps.insert(attrName, attr.value().toString()); } PrintingInfo printingInfo(set, LazyPropertiesHash(printingProps)); - _sets[setName].append(printingInfo); + + // This is very much a hack and not the right place to + // put this check, as it requires a reload of Cockatrice + // to be apply. + // + // However, this is also true of the `set->getEnabled()` + // check above (which is currently bugged as well), so + // we'll fix both at the same time. + if (includeRebalancedCards || printingInfo.getProperty("isRebalanced") != "true") { + _sets[setName].append(printingInfo); + } } // related cards } else if (xmlName == "related" || xmlName == "reverse-related") { diff --git a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.h b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.h index 390282796..55f7c5a3b 100644 --- a/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.h +++ b/libcockatrice_card/libcockatrice/card/database/parser/cockatrice_xml_4.h @@ -2,15 +2,10 @@ #define COCKATRICE_XML4_H #include "card_database_parser.h" -#include "libcockatrice/card/card_info.h" -#include #include -#include -#include - -class ICardSetPriorityController; -class QXmlStreamReader; +#include +#include inline Q_LOGGING_CATEGORY(CockatriceXml4Log, "cockatrice_xml.xml_4_parser"); @@ -26,6 +21,7 @@ inline Q_LOGGING_CATEGORY(CockatriceXml4Log, "cockatrice_xml.xml_4_parser"); * @note Differences from v3: * - Card properties are stored in blocks as a QHash. * - Sets can include a element. + * - Supports user preferences via ICardPreferenceProvider (e.g., skipping rebalanced cards). * - Related cards support persistent relations and multiple attach types (e.g., transform). * - More robust serialization; easier to extend schema in the future. */ @@ -33,7 +29,8 @@ class CockatriceXml4Parser : public ICardDatabaseParser { Q_OBJECT public: - explicit CockatriceXml4Parser(ICardSetPriorityController *cardSetPriorityController); + explicit CockatriceXml4Parser(ICardPreferenceProvider *cardPreferenceProvider, + ICardSetPriorityController *cardSetPriorityController); ~CockatriceXml4Parser() override = default; /** @@ -68,6 +65,8 @@ public: const QString &sourceVersion = "unknown") override; private: + ICardPreferenceProvider *cardPreferenceProvider; ///< Interface to handle user preferences + /** * @brief Loads a generic block from a element. * @param xml The open QXmlStreamReader positioned at a element. @@ -78,6 +77,7 @@ private: /** * @brief Load all elements from the XML stream. * @param xml The open QXmlStreamReader positioned at the element. + * Honors the user's preference regarding rebalanced cards. */ void loadCardsFromXml(QXmlStreamReader &xml); diff --git a/libcockatrice_card/libcockatrice/card/format/format_legality_rules.cpp b/libcockatrice_card/libcockatrice/card/format/format_legality_rules.cpp index 64785759e..a6b3bb038 100644 --- a/libcockatrice_card/libcockatrice/card/format/format_legality_rules.cpp +++ b/libcockatrice_card/libcockatrice/card/format/format_legality_rules.cpp @@ -1,9 +1,6 @@ #include "format_legality_rules.h" -#include -#include #include -#include bool cardMatchesCondition(const CardInfo &card, const CardCondition &cond) { diff --git a/libcockatrice_card/libcockatrice/card/format/format_legality_rules.h b/libcockatrice_card/libcockatrice/card/format/format_legality_rules.h index 15ba46728..8778ab17e 100644 --- a/libcockatrice_card/libcockatrice/card/format/format_legality_rules.h +++ b/libcockatrice_card/libcockatrice/card/format/format_legality_rules.h @@ -1,12 +1,11 @@ #ifndef COCKATRICE_FORMAT_LEGALITY_RULES_H #define COCKATRICE_FORMAT_LEGALITY_RULES_H -#include +#include #include #include class CardInfo; - using CardInfoPtr = QSharedPointer; struct CardCondition diff --git a/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp b/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp index 975f7f2d6..91ebd6647 100644 --- a/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp +++ b/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp @@ -2,14 +2,8 @@ #include "../database/card_database_manager.h" #include "../printing/exact_card.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include -#include #include -#include -#include -#include /** * @brief Resolves the complete display name of a card. diff --git a/libcockatrice_card/libcockatrice/card/lazy_properties_hash.cpp b/libcockatrice_card/libcockatrice/card/lazy_properties_hash.cpp index a12de469b..4d903a3bd 100644 --- a/libcockatrice_card/libcockatrice/card/lazy_properties_hash.cpp +++ b/libcockatrice_card/libcockatrice/card/lazy_properties_hash.cpp @@ -1,8 +1,6 @@ #include "lazy_properties_hash.h" -#include -#include -#include +#include LazyPropertiesHash::LazyPropertiesHash() : isMaterialized(true) { diff --git a/libcockatrice_card/libcockatrice/card/lazy_properties_hash.h b/libcockatrice_card/libcockatrice/card/lazy_properties_hash.h index 04f5d0251..0ed8c215b 100644 --- a/libcockatrice_card/libcockatrice/card/lazy_properties_hash.h +++ b/libcockatrice_card/libcockatrice/card/lazy_properties_hash.h @@ -1,10 +1,8 @@ #ifndef COCKATRICE_LAZY_PROPERTIES_HASH_H #define COCKATRICE_LAZY_PROPERTIES_HASH_H -#include #include #include -#include /** * @brief A property map that can lazily deserialize blobs to avoid loading overhead. diff --git a/libcockatrice_card/libcockatrice/card/printing/exact_card.cpp b/libcockatrice_card/libcockatrice/card/printing/exact_card.cpp index 19e902b27..993b5b96e 100644 --- a/libcockatrice_card/libcockatrice/card/printing/exact_card.cpp +++ b/libcockatrice_card/libcockatrice/card/printing/exact_card.cpp @@ -3,10 +3,6 @@ #include "../card_info.h" #include "printing_info.h" -#include -#include -#include - /** * Default constructor. * This will set the CardInfoPtr to null. diff --git a/libcockatrice_card/libcockatrice/card/printing/exact_card.h b/libcockatrice_card/libcockatrice/card/printing/exact_card.h index ea49072fb..74fc75da3 100644 --- a/libcockatrice_card/libcockatrice/card/printing/exact_card.h +++ b/libcockatrice_card/libcockatrice/card/printing/exact_card.h @@ -2,11 +2,6 @@ #define EXACT_CARD_H #include "../card_info.h" -#include "libcockatrice/card/printing/printing_info.h" - -#include -#include -#include /** * @class ExactCard diff --git a/libcockatrice_card/libcockatrice/card/printing/printing_info.cpp b/libcockatrice_card/libcockatrice/card/printing/printing_info.cpp index 654efac5e..3d185583a 100644 --- a/libcockatrice_card/libcockatrice/card/printing/printing_info.cpp +++ b/libcockatrice_card/libcockatrice/card/printing/printing_info.cpp @@ -2,6 +2,9 @@ #include "../set/card_set.h" +#include +#include + PrintingInfo::PrintingInfo(const CardSetPtr &_set, const LazyPropertiesHash &_properties) : set(_set), properties(_properties) { diff --git a/libcockatrice_card/libcockatrice/card/printing/printing_info.h b/libcockatrice_card/libcockatrice/card/printing/printing_info.h index 038960e86..974c7bb95 100644 --- a/libcockatrice_card/libcockatrice/card/printing/printing_info.h +++ b/libcockatrice_card/libcockatrice/card/printing/printing_info.h @@ -4,12 +4,9 @@ #include "../set/card_set.h" #include "libcockatrice/card/lazy_properties_hash.h" -#include #include #include #include -#include -#include class PrintingInfo; diff --git a/libcockatrice_card/libcockatrice/card/relation/card_relation.cpp b/libcockatrice_card/libcockatrice/card/relation/card_relation.cpp index 410b25682..8903c892d 100644 --- a/libcockatrice_card/libcockatrice/card/relation/card_relation.cpp +++ b/libcockatrice_card/libcockatrice/card/relation/card_relation.cpp @@ -1,5 +1,7 @@ #include "card_relation.h" +#include "card_relation_type.h" + CardRelation::CardRelation(const QString &_name, CardRelationType _attachType, bool _isCreateAllExclusion, diff --git a/libcockatrice_card/libcockatrice/card/relation/card_relation.h b/libcockatrice_card/libcockatrice/card/relation/card_relation.h index 3a1366f2b..a1864f5b2 100644 --- a/libcockatrice_card/libcockatrice/card/relation/card_relation.h +++ b/libcockatrice_card/libcockatrice/card/relation/card_relation.h @@ -5,7 +5,6 @@ #include #include -#include /** * @class CardRelation diff --git a/libcockatrice_card/libcockatrice/card/set/card_set.cpp b/libcockatrice_card/libcockatrice/card/set/card_set.cpp index e873eeeab..92060f6c4 100644 --- a/libcockatrice_card/libcockatrice/card/set/card_set.cpp +++ b/libcockatrice_card/libcockatrice/card/set/card_set.cpp @@ -1,7 +1,5 @@ #include "card_set.h" -#include "libcockatrice/interfaces/interface_card_set_priority_controller.h" - #include #include diff --git a/libcockatrice_card/libcockatrice/card/set/card_set.h b/libcockatrice_card/libcockatrice/card/set/card_set.h index 538d78852..8e16e01df 100644 --- a/libcockatrice_card/libcockatrice/card/set/card_set.h +++ b/libcockatrice_card/libcockatrice/card/set/card_set.h @@ -5,14 +5,12 @@ #include #include #include +#include class CardInfo; -class ICardSetPriorityController; - using CardInfoPtr = QSharedPointer; class CardSet; - using CardSetPtr = QSharedPointer; /** diff --git a/libcockatrice_card/libcockatrice/card/set/card_set_list.cpp b/libcockatrice_card/libcockatrice/card/set/card_set_list.cpp index 2e030adab..8d6aa7365 100644 --- a/libcockatrice_card/libcockatrice/card/set/card_set_list.cpp +++ b/libcockatrice_card/libcockatrice/card/set/card_set_list.cpp @@ -1,12 +1,5 @@ #include "card_set_list.h" -#include "libcockatrice/card/set/card_set.h" - -#include -#include -#include -#include - class CardSetList::KeyCompareFunctor { public: diff --git a/libcockatrice_card/libcockatrice/card/set/card_set_list.h b/libcockatrice_card/libcockatrice/card/set/card_set_list.h index b9c7b2a7a..81d605374 100644 --- a/libcockatrice_card/libcockatrice/card/set/card_set_list.h +++ b/libcockatrice_card/libcockatrice/card/set/card_set_list.h @@ -4,8 +4,6 @@ #include "card_set.h" #include -#include -#include /** * @class CardSetList diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.cpp index 821b53dff..90f63c09d 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.cpp @@ -2,26 +2,16 @@ #include "deck_list_memento.h" #include "deck_list_plain_text_parser.h" -#include "libcockatrice/deck_list/deck_list_node_tree.h" -#include "libcockatrice/deck_list/sideboard_plan.h" -#include "libcockatrice/utility/playmat_params.h" +#include "tree/abstract_deck_list_node.h" #include "tree/deck_list_card_node.h" #include "tree/inner_deck_list_node.h" -#include +#include #include +#include #include -#include -#include #include -#include -#include -#include -#include #include -#include -#include -#include static const QString CURRENT_SIDEBOARD_PLAN_KEY = ""; diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.h b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.h index 6796e9c33..199d3a9a8 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list.h @@ -12,24 +12,20 @@ #include "deck_list_memento.h" #include "deck_list_node_tree.h" -#include "libcockatrice/protocol/pb/move_card_to_zone.pb.h" -#include "libcockatrice/utility/card_ref.h" #include "sideboard_plan.h" #include "tree/inner_deck_list_node.h" -#include #include -#include -#include -#include -#include +#include +#include #include +class AbstractDecklistNode; class DecklistCardNode; +class CardDatabase; class QIODevice; class QTextStream; -class QXmlStreamReader; -class QXmlStreamWriter; +class InnerDecklistNode; /** * @class DeckList diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.cpp index cba926fd5..b6d0687b4 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.cpp @@ -1,10 +1,5 @@ #include "deck_list_history_manager.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/deck_list_memento.h" - -#include - void DeckListHistoryManager::save(const DeckListMemento &memento) { undoStack.push(memento); diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.h b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.h index dce9e0af8..6acdb199e 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_history_manager.h @@ -1,13 +1,11 @@ #ifndef COCKATRICE_DECK_LIST_HISTORY_MANAGER_H #define COCKATRICE_DECK_LIST_HISTORY_MANAGER_H +#include "deck_list.h" #include "deck_list_memento.h" #include #include -#include - -class DeckList; class DeckListHistoryManager : public QObject { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.cpp index 5c26030bf..66f228d19 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.cpp @@ -1,19 +1,9 @@ #include "deck_list_node_tree.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" #include "tree/deck_list_card_node.h" -#include -#include #include #include -#include -#include -#include -#include -#include -#include static constexpr int MAX_DECK_SIZE = 1e5; diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.h b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.h index 08b4b0d73..2c66b34ff 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_node_tree.h @@ -1,17 +1,11 @@ #ifndef COCKATRICE_DECKLIST_NODE_TREE_H #define COCKATRICE_DECKLIST_NODE_TREE_H +#include "libcockatrice/utility/card_ref.h" #include "tree/deck_list_card_node.h" #include "tree/inner_deck_list_node.h" -#include #include -#include -#include - -class AbstractDecklistNode; -class QXmlStreamReader; -class QXmlStreamWriter; class DecklistNodeTree { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.cpp index 61af36540..de50d743b 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.cpp @@ -1,17 +1,10 @@ #include "deck_list_plain_text_parser.h" #include "deck_list_node_tree.h" -#include "libcockatrice/deck_list/deck_list.h" #include "tree/inner_deck_list_node.h" -#include -#include #include -#include -#include #include -#include -#include namespace DeckListPlainText { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.h b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.h index 0845f7935..e0f456a18 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/deck_list_plain_text_parser.h @@ -3,11 +3,10 @@ #include "deck_list.h" +#include #include class QTextStream; -class DecklistNodeTree; -class QString; namespace DeckListPlainText { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.cpp index d1d44cca5..fd72fea0b 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.cpp @@ -1,12 +1,6 @@ #include "playmat_resolver.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/utility/card_ref.h" - -#include #include -#include PlaymatInfo resolveEffectivePlaymat(const DeckList &deck, const PlaymatInfo &force, diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.h b/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.h index 411ca81fd..59bc449c8 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/playmat_resolver.h @@ -1,13 +1,10 @@ #ifndef COCKATRICE_PLAYMAT_RESOLVER_H #define COCKATRICE_PLAYMAT_RESOLVER_H -#include "libcockatrice/utility/playmat_params.h" +#include "deck_list.h" #include -class DeckList; -template class QList; - /** * @brief Resolves the effective playmat for a deck per the resolution chain: * force override > deck-configured playmat > fallback list > none. diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.cpp index 3a47bf1a5..855062c18 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.cpp @@ -1,12 +1,6 @@ #include "sideboard_plan.h" -#include "libcockatrice/protocol/pb/move_card_to_zone.pb.h" - -#include -#include #include -#include -#include namespace { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.h b/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.h index ee29991d6..fff4ff2f3 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/sideboard_plan.h @@ -2,7 +2,6 @@ #define COCKATRICE_SIDEBOARD_PLAN_H #include -#include #include class QXmlStreamWriter; diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.cpp index 5c7b4bf84..685238d53 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.cpp @@ -1,10 +1,5 @@ #include "abstract_deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" - -#include -#include - bool AbstractDecklistCardNode::compare(AbstractDecklistNode *other) const { switch (sortMethod) { diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.h b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.h index ebfd9a0b6..0942a4601 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.h @@ -13,10 +13,6 @@ #include "abstract_deck_list_node.h" -#include - -class InnerDecklistNode; - /** * @class AbstractDecklistCardNode * @ingroup DeckModels diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_node.h b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_node.h index 406c6fb4d..38d1d44b8 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_node.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_node.h @@ -17,9 +17,7 @@ #ifndef COCKATRICE_ABSTRACT_DECK_LIST_NODE_H #define COCKATRICE_ABSTRACT_DECK_LIST_NODE_H -#include - -class QXmlStreamWriter; +#include /** * @enum DeckSortMethod diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.cpp index 803737f1e..1791c09a6 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.cpp @@ -1,9 +1,5 @@ #include "deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_card_node.h" - -class InnerDecklistNode; - DecklistCardNode::DecklistCardNode(DecklistCardNode *other, InnerDecklistNode *_parent) : AbstractDecklistCardNode(_parent), name(other->getName()), number(other->getNumber()), cardSetShortName(other->getCardSetShortName()), cardSetNumber(other->getCardCollectorNumber()), diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h b/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h index c96a764af..3bab5405a 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h @@ -14,11 +14,7 @@ #include "abstract_deck_list_card_node.h" -#include #include -#include - -class InnerDecklistNode; /** * @class DecklistCardNode diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.cpp b/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.cpp index b7b1e0b8f..86f7f5363 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.cpp +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.cpp @@ -1,18 +1,6 @@ #include "inner_deck_list_node.h" #include "deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_card_node.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include InnerDecklistNode::InnerDecklistNode(InnerDecklistNode *other, InnerDecklistNode *_parent) : AbstractDecklistNode(_parent), name(other->getName()) diff --git a/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.h b/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.h index 6086f9efa..8404d7116 100644 --- a/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.h +++ b/libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.h @@ -19,13 +19,7 @@ #include "abstract_deck_list_node.h" #include -#include #include -#include -#include -#include - -class QXmlStreamReader; /** @brief Constant for the "main" deck zone name. */ #define DECK_ZONE_MAIN "main" diff --git a/libcockatrice_filters/libcockatrice/filters/filter_card.cpp b/libcockatrice_filters/libcockatrice/filters/filter_card.cpp index 26cddd53c..5fdce7ae0 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_card.cpp +++ b/libcockatrice_filters/libcockatrice/filters/filter_card.cpp @@ -1,9 +1,6 @@ #include "filter_card.h" #include -#include -#include -#include QJsonObject CardFilter::toJson() const { diff --git a/libcockatrice_filters/libcockatrice/filters/filter_card.h b/libcockatrice_filters/libcockatrice/filters/filter_card.h index e6a37ee40..bb1e0ef53 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_card.h +++ b/libcockatrice_filters/libcockatrice/filters/filter_card.h @@ -7,10 +7,8 @@ #ifndef CARDFILTER_H #define CARDFILTER_H -#include #include #include -#include class CardFilter : public QObject { diff --git a/libcockatrice_filters/libcockatrice/filters/filter_string.cpp b/libcockatrice_filters/libcockatrice/filters/filter_string.cpp index bc137b0f6..df0c70ae7 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_string.cpp +++ b/libcockatrice_filters/libcockatrice/filters/filter_string.cpp @@ -1,35 +1,12 @@ #include "filter_string.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/card/set/card_set_list.h" - #include -#include -#include #include -#include -#include #include -#include -#include #include -#include -#include -#include -#include #include #include #include -#include -#include -#include -#include -#include -#include static peg::parser search(R"( Start <- QueryPartList diff --git a/libcockatrice_filters/libcockatrice/filters/filter_string.h b/libcockatrice_filters/libcockatrice/filters/filter_string.h index 2abe95201..015df0cf4 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_string.h +++ b/libcockatrice_filters/libcockatrice/filters/filter_string.h @@ -7,13 +7,15 @@ #ifndef FILTER_STRING_H #define FILTER_STRING_H +#include "filter_tree.h" + #include +#include #include #include #include #include - -struct CardSearchLanguage; +#include inline Q_LOGGING_CATEGORY(FilterStringLog, "filter_string"); @@ -27,7 +29,6 @@ namespace peg { template struct AstBase; struct EmptyType; - typedef AstBase Ast; } // namespace peg diff --git a/libcockatrice_filters/libcockatrice/filters/filter_tree.cpp b/libcockatrice_filters/libcockatrice/filters/filter_tree.cpp index 742b44e97..a5d91d9d3 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_tree.cpp +++ b/libcockatrice_filters/libcockatrice/filters/filter_tree.cpp @@ -1,16 +1,8 @@ #include "filter_tree.h" #include "filter_card.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include #include -#include -#include -#include -#include template FilterTreeNode *FilterTreeBranch::nodeAt(int i) const { diff --git a/libcockatrice_filters/libcockatrice/filters/filter_tree.h b/libcockatrice_filters/libcockatrice/filters/filter_tree.h index 0defd466b..dd47a1ebc 100644 --- a/libcockatrice_filters/libcockatrice/filters/filter_tree.h +++ b/libcockatrice_filters/libcockatrice/filters/filter_tree.h @@ -8,16 +8,13 @@ #define FILTERTREE_H #include "filter_card.h" -#include "libcockatrice/card/card_info.h" #include #include -#include -#include +#include +#include #include -struct CardSearchLanguage; - class FilterTreeNode { private: @@ -123,7 +120,6 @@ public: class FilterItemList; class FilterTree; - class LogicMap : public FilterTreeBranch { @@ -146,7 +142,6 @@ public: }; class FilterItem; - class FilterItemList : public FilterTreeBranch { private: diff --git a/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_preference_provider.h b/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_preference_provider.h index 2510919ca..a6cf941fb 100644 --- a/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_preference_provider.h +++ b/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_preference_provider.h @@ -8,6 +8,7 @@ class ICardPreferenceProvider public: virtual ~ICardPreferenceProvider() = default; [[nodiscard]] virtual QString getCardPreferenceOverride(const QString &cardName) const = 0; + [[nodiscard]] virtual bool getIncludeRebalancedCards() const = 0; }; #endif // COCKATRICE_INTERFACE_CARD_PREFERENCE_PROVIDER_H diff --git a/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_set_priority_controller.h b/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_set_priority_controller.h index 6b3e684d7..36e748006 100644 --- a/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_set_priority_controller.h +++ b/libcockatrice_interfaces/libcockatrice/interfaces/interface_card_set_priority_controller.h @@ -2,7 +2,6 @@ #define COCKATRICE_INTERFACE_CARD_SET_PRIORITY_CONTROLLER_H #include -#include class ICardSetPriorityController { @@ -47,16 +46,6 @@ public: */ virtual SetOptions getSetOptions(QString shortName) const = 0; - /** - * @brief Returns the short names of every set currently marked as enabled. - * - * Callers fold this into the card database cache source hash so that - * toggling set enablement invalidates the cache. - * - * @return The enabled set short names, sorted alphabetically. - */ - virtual QStringList getEnabledSetNames() const = 0; - virtual void saveSets(const QVector &data) = 0; }; diff --git a/libcockatrice_interfaces/libcockatrice/interfaces/interface_cards_display_settings_provider.h b/libcockatrice_interfaces/libcockatrice/interfaces/interface_cards_display_settings_provider.h index a5ab4fc37..2821fb96e 100644 --- a/libcockatrice_interfaces/libcockatrice/interfaces/interface_cards_display_settings_provider.h +++ b/libcockatrice_interfaces/libcockatrice/interfaces/interface_cards_display_settings_provider.h @@ -14,6 +14,7 @@ public: [[nodiscard]] virtual bool getBumpSetsWithCardsInDeckToTop() const = 0; [[nodiscard]] virtual int getPrintingSelectorSortOrder() const = 0; [[nodiscard]] virtual int getPrintingSelectorCardSize() const = 0; + [[nodiscard]] virtual bool getIncludeRebalancedCards() const = 0; [[nodiscard]] virtual bool getPrintingSelectorNavigationButtonsVisible() const = 0; [[nodiscard]] virtual bool getTapAnimation() const = 0; [[nodiscard]] virtual bool getArrowDrawAnimation() const = 0; diff --git a/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_preference_provider.h b/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_preference_provider.h index f846d51e8..3781f4b63 100644 --- a/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_preference_provider.h +++ b/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_preference_provider.h @@ -9,6 +9,11 @@ public: { return {}; } + + [[nodiscard]] bool getIncludeRebalancedCards() const override + { + return true; + } }; #endif // COCKATRICE_NOOP_CARD_PREFERENCE_PROVIDER_H diff --git a/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_set_priority_controller.h b/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_set_priority_controller.h index 94e1f0c9a..8cc2011bd 100644 --- a/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_set_priority_controller.h +++ b/libcockatrice_interfaces/libcockatrice/interfaces/noop_card_set_priority_controller.h @@ -34,11 +34,6 @@ public: return {0, true, true}; } - QStringList getEnabledSetNames() const override - { - return {}; - } - void saveSets(const QVector & /* data */) override { } diff --git a/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.cpp b/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.cpp index b99b8b0f7..f31463b50 100644 --- a/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.cpp @@ -1,14 +1,5 @@ #include "card_completer_proxy_model.h" -#include -#include -#include -#include -#include -#include - -class QObject; - CardCompleterProxyModel::CardCompleterProxyModel(QObject *parent) : QSortFilterProxyModel(parent) { } diff --git a/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.h b/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.h index 8aa671af7..91dc06335 100644 --- a/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card/card_completer_proxy_model.h @@ -8,9 +8,6 @@ #define CARD_COMPLETER_PROXY_MODEL_H #include -#include - -class QObject; class CardCompleterProxyModel : public QSortFilterProxyModel { diff --git a/libcockatrice_models/libcockatrice/models/database/card/card_search_model.cpp b/libcockatrice_models/libcockatrice/models/database/card/card_search_model.cpp index 5bde6e3fc..3a734ed37 100644 --- a/libcockatrice_models/libcockatrice/models/database/card/card_search_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card/card_search_model.cpp @@ -3,10 +3,6 @@ #include "../card_database_display_model.h" #include "../card_database_model.h" -#include -#include -#include -#include #include #include diff --git a/libcockatrice_models/libcockatrice/models/database/card/card_search_model.h b/libcockatrice_models/libcockatrice/models/database/card/card_search_model.h index 08d0e8636..b877a9385 100644 --- a/libcockatrice_models/libcockatrice/models/database/card/card_search_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card/card_search_model.h @@ -7,20 +7,9 @@ #ifndef CARD_SEARCH_MODEL_H #define CARD_SEARCH_MODEL_H -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/card_localization.h" +#include "../card_database_display_model.h" #include -#include -#include -#include -#include -#include -#include -#include - -class CardDatabaseDisplayModel; -class QObject; class CardSearchModel : public QAbstractListModel { diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_display_model.cpp b/libcockatrice_models/libcockatrice/models/database/card_database_display_model.cpp index 39bb8314c..7f89677c8 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_display_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card_database_display_model.cpp @@ -1,23 +1,6 @@ #include "card_database_display_model.h" #include "card_database_model.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/filters/filter_string.h" -#include "libcockatrice/filters/filter_tree.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -class QObject; CardDatabaseDisplayModel::CardDatabaseDisplayModel(QObject *parent) : QSortFilterProxyModel(parent), isToken(ShowAll), filterString(nullptr) diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_display_model.h b/libcockatrice_models/libcockatrice/models/database/card_database_display_model.h index d12dd1fb4..e6aadd8c6 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_display_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card_database_display_model.h @@ -8,21 +8,12 @@ #ifndef COCKATRICE_CARD_DATABASE_DISPLAY_MODEL_H #define COCKATRICE_CARD_DATABASE_DISPLAY_MODEL_H -#include "libcockatrice/card/card_info.h" - -#include -#include #include -#include #include #include #include -#include class FilterTree; -class QObject; -template class QMap; - class CardDatabaseDisplayModel : public QSortFilterProxyModel { Q_OBJECT diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_model.cpp b/libcockatrice_models/libcockatrice/models/database/card_database_model.cpp index 1ede554f8..ecd26a9f8 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card_database_model.cpp @@ -1,16 +1,8 @@ #include "card_database_model.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" - -#include -#include -#include -#include +#include #include -class QObject; - #define CARDDBMODEL_COLUMNS 6 CardDatabaseModel::CardDatabaseModel(CardDatabase *_db, bool _showOnlyCardsFromEnabledSets, QObject *parent) diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_model.h b/libcockatrice_models/libcockatrice/models/database/card_database_model.h index 208240109..ad84de6f4 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card_database_model.h @@ -7,17 +7,10 @@ #ifndef CARDDATABASEMODEL_H #define CARDDATABASEMODEL_H -#include "libcockatrice/card/card_info.h" - #include #include -#include #include -#include -#include - -class CardDatabase; -class QObject; +#include class CardDatabaseModel : public QAbstractListModel { diff --git a/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.cpp b/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.cpp index 1bc1b9e38..8fd5311f2 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.cpp @@ -1,19 +1,6 @@ #include "card_sets_model.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/interfaces/interface_card_set_priority_controller.h" - -#include -#include -#include -#include -#include -#include -#include #include -#include -#include SetsModel::SetsModel(CardDatabase *_db, QObject *parent) : QAbstractTableModel(parent), sets(_db->getSetList()) { diff --git a/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.h b/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.h index 354414dc8..2adf71def 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card_set/card_sets_model.h @@ -7,24 +7,13 @@ #ifndef SETSMODEL_H #define SETSMODEL_H -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/set/card_set_list.h" - #include -#include #include -#include -#include #include #include -#include -#include -#include -#include -#include +#include -class CardDatabase; -class QObject; +class SetsProxyModel; class SetsMimeData : public QMimeData { diff --git a/libcockatrice_models/libcockatrice/models/database/token/token_display_model.cpp b/libcockatrice_models/libcockatrice/models/database/token/token_display_model.cpp index e08183576..4282c6dc8 100644 --- a/libcockatrice_models/libcockatrice/models/database/token/token_display_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/token/token_display_model.cpp @@ -1,12 +1,6 @@ #include "token_display_model.h" #include "../card_database_model.h" -#include "card_database_display_model.h" -#include "libcockatrice/card/card_info.h" - -#include - -class QObject; TokenDisplayModel::TokenDisplayModel(QObject *parent) : CardDatabaseDisplayModel(parent) { diff --git a/libcockatrice_models/libcockatrice/models/database/token/token_display_model.h b/libcockatrice_models/libcockatrice/models/database/token/token_display_model.h index a8625368f..c8f767189 100644 --- a/libcockatrice_models/libcockatrice/models/database/token/token_display_model.h +++ b/libcockatrice_models/libcockatrice/models/database/token/token_display_model.h @@ -9,11 +9,6 @@ #include "../card_database_display_model.h" -#include -#include - -class QObject; - class TokenDisplayModel : public CardDatabaseDisplayModel { Q_OBJECT diff --git a/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.cpp b/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.cpp index 9636ed665..89a1f71b1 100644 --- a/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.cpp @@ -2,13 +2,9 @@ #include "../card_database_display_model.h" #include "../card_database_model.h" -#include "libcockatrice/card/set/card_set.h" -#include #include -class QObject; - TokenEditModel::TokenEditModel(QObject *parent) : CardDatabaseDisplayModel(parent) { } diff --git a/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.h b/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.h index 2f3398899..92dfaadd7 100644 --- a/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.h +++ b/libcockatrice_models/libcockatrice/models/database/token/token_edit_model.h @@ -9,11 +9,6 @@ #include "../card_database_display_model.h" -#include -#include - -class QObject; - class TokenEditModel : public CardDatabaseDisplayModel { Q_OBJECT diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp index 4b4088972..a5628a844 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp @@ -1,27 +1,6 @@ #include "deck_list_model.h" -#include "deck_list_model_custom_zones.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/format/format_legality_rules.h" -#include "libcockatrice/card/printing/exact_card.h" -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/deck_list_node_tree.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" -#include "libcockatrice/deck_list/tree/deck_list_card_node.h" - -#include -#include -#include -#include -#include -#include #include -#include -#include - -class QObject; DeckListModel::DeckListModel(QObject *parent) : QAbstractItemModel(parent), lastKnownColumn(1), lastKnownOrder(Qt::AscendingOrder) diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.h b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.h index 7334d48ef..ce6d7f8cb 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.h +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.h @@ -1,26 +1,18 @@ #ifndef DECKLISTMODEL_H #define DECKLISTMODEL_H -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "libcockatrice/utility/card_ref.h" +#include "deck_list_model_custom_zones.h" #include <../../../../libcockatrice_deck_list/libcockatrice/deck_list/tree/abstract_deck_list_card_node.h> #include <../../../../libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h> #include #include -#include -#include -#include -#include -#include -#include -#include +#include +#include -class AbstractDecklistNode; -class DeckList; -class ExactCard; -class QObject; +class CardDatabase; +class QPrinter; +class QTextCursor; /** * @namespace DeckRoles diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.cpp b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.cpp index 419c38b04..1dc745e63 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.cpp @@ -1,14 +1,10 @@ #include "deck_list_model_custom_zones.h" #include "deck_list_model.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" #include <../../../../libcockatrice_deck_list/libcockatrice/deck_list/tree/deck_list_card_node.h> #include -#include #include -#include namespace DeckListModelCustomZones { diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.h b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.h index 53bdeaa1e..518a9e1d2 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.h +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model_custom_zones.h @@ -4,10 +4,7 @@ #include <../../../../libcockatrice_deck_list/libcockatrice/deck_list/tree/inner_deck_list_node.h> #include #include -#include -#include - -class AbstractDecklistNode; +#include /** * @class DecklistModelSubZoneNode diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp index dcb294ec8..3d433153a 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp @@ -1,16 +1,6 @@ #include "deck_list_sort_filter_proxy_model.h" #include "deck_list_model.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_manager.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/printing/exact_card.h" - -#include -#include -#include -#include -#include bool DeckListSortFilterProxyModel::lessThan(const QModelIndex &left, const QModelIndex &right) const { diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h index 522ed1e23..1565417f0 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h @@ -7,13 +7,8 @@ #ifndef COCKATRICE_DECK_LIST_SORT_FILTER_PROXY_MODEL_H #define COCKATRICE_DECK_LIST_SORT_FILTER_PROXY_MODEL_H -#include #include -#include -#include -#include - -class QObject; +#include class DeckListSortFilterProxyModel : public QSortFilterProxyModel { diff --git a/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.cpp b/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.cpp index d66653fb1..687d93666 100644 --- a/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.cpp +++ b/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.cpp @@ -1,25 +1,6 @@ #include "abstract_client.h" -#include "libcockatrice/protocol/pb/admin_commands.pb.h" -#include "libcockatrice/protocol/pb/developer_commands.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/moderator_commands.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_commands.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" - -#include -#include -#include -#include -#include -#include -#include #include -#include #include #include #include diff --git a/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.h b/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.h index 442e96eb2..af22a5c9d 100644 --- a/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.h +++ b/libcockatrice_network/libcockatrice/network/client/abstract/abstract_client.h @@ -11,27 +11,10 @@ #include #include -#include #include -#include -#include -#include - -// IWYU pragma: keep -// ServerInfo_User appears in signal signatures, including inside QList, so the -// moc-generated code needs the complete type. -#include +#include +#include #include -#include - -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google -template class QList; inline Q_LOGGING_CATEGORY(AbstractClientLog, "abstract_client"); @@ -53,6 +36,7 @@ class Event_NotifyUser; class Event_ConnectionClosed; class Event_ServerShutdown; class Event_ReplayAdded; +class FeatureSet; enum ClientStatus { diff --git a/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.cpp b/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.cpp index bc6230621..98b353fdf 100644 --- a/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.cpp +++ b/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.cpp @@ -1,10 +1,7 @@ #include "latency_tracker.h" -#include -#include #include #include -#include void LatencyTracker::addSample(qint64 ms) { diff --git a/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.h b/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.h index cae11ea4d..75f18ac0c 100644 --- a/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.h +++ b/libcockatrice_network/libcockatrice/network/client/abstract/latency_tracker.h @@ -6,10 +6,8 @@ #ifndef LATENCY_TRACKER_H #define LATENCY_TRACKER_H -#include #include #include -#include #include /** diff --git a/libcockatrice_network/libcockatrice/network/client/local/local_client.cpp b/libcockatrice_network/libcockatrice/network/client/local/local_client.cpp index c1c1cc976..eefa3a2f3 100644 --- a/libcockatrice_network/libcockatrice/network/client/local/local_client.cpp +++ b/libcockatrice_network/libcockatrice/network/client/local/local_client.cpp @@ -1,17 +1,9 @@ #include "local_client.h" #include "../../server/local/local_server_interface.h" -#include "abstract_client.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" -#include -#include #include #include -#include - -class QObject; LocalClient::LocalClient(LocalServerInterface *_lsi, const QString &_playerName, diff --git a/libcockatrice_network/libcockatrice/network/client/local/local_client.h b/libcockatrice_network/libcockatrice/network/client/local/local_client.h index 3ae570255..9e1c89ddd 100644 --- a/libcockatrice_network/libcockatrice/network/client/local/local_client.h +++ b/libcockatrice_network/libcockatrice/network/client/local/local_client.h @@ -10,11 +10,6 @@ #include "../abstract/abstract_client.h" #include -#include -#include - -class QObject; -class ServerMessage; inline Q_LOGGING_CATEGORY(LocalClientLog, "local_client"); diff --git a/libcockatrice_network/libcockatrice/network/client/remote/remote_client.cpp b/libcockatrice_network/libcockatrice/network/client/remote/remote_client.cpp index feda9e3f4..de2cc720f 100644 --- a/libcockatrice_network/libcockatrice/network/client/remote/remote_client.cpp +++ b/libcockatrice_network/libcockatrice/network/client/remote/remote_client.cpp @@ -1,8 +1,5 @@ #include "remote_client.h" -#include "abstract_client.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include "version_string.h" #include @@ -10,21 +7,13 @@ #include #include #include -#include -#include -#include -#include -#include #include #include -#include #include -#include -#include -#include #include #include #include +#include #include #include #include @@ -33,10 +22,6 @@ #include #include #include -#include - -class Event_ConnectionClosed; -class QObject; static const unsigned int protocolVersion = 14; diff --git a/libcockatrice_network/libcockatrice/network/client/remote/remote_client.h b/libcockatrice_network/libcockatrice/network/client/remote/remote_client.h index 4d8c24fd2..862dac06e 100644 --- a/libcockatrice_network/libcockatrice/network/client/remote/remote_client.h +++ b/libcockatrice_network/libcockatrice/network/client/remote/remote_client.h @@ -8,23 +8,11 @@ #define REMOTECLIENT_H #include "../abstract/abstract_client.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include -#include #include -#include -#include #include -#include -#include - -class Event_ConnectionClosed; -class Event_ServerIdentification; -class INetworkSettingsProvider; -class QObject; -template class QList; +#include +#include inline Q_LOGGING_CATEGORY(RemoteClientLog, "remote_client"); diff --git a/libcockatrice_network/libcockatrice/network/server/local/local_server.cpp b/libcockatrice_network/libcockatrice/network/server/local/local_server.cpp index ebfc9bdeb..8f9d82aa4 100644 --- a/libcockatrice_network/libcockatrice/network/server/local/local_server.cpp +++ b/libcockatrice_network/libcockatrice/network/server/local/local_server.cpp @@ -1,17 +1,8 @@ #include "local_server.h" -#include "../remote/server.h" -#include "../remote/server_database_interface.h" -#include "../remote/server_protocolhandler.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include "local_server_interface.h" #include <../remote/server_room.h> -#include -#include -#include - -class QObject; LocalServer::LocalServer(QObject *parent) : Server(parent) { diff --git a/libcockatrice_network/libcockatrice/network/server/local/local_server.h b/libcockatrice_network/libcockatrice/network/server/local/local_server.h index ee8d487d2..0112afa72 100644 --- a/libcockatrice_network/libcockatrice/network/server/local/local_server.h +++ b/libcockatrice_network/libcockatrice/network/server/local/local_server.h @@ -9,11 +9,8 @@ #include <../remote/server.h> #include <../remote/server_database_interface.h> -#include -#include class LocalServerInterface; -class QObject; class LocalServer : public Server { diff --git a/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.cpp b/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.cpp index b7c8d4bfa..bb86198af 100644 --- a/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.cpp +++ b/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.cpp @@ -1,10 +1,8 @@ #include "local_server_interface.h" -#include "../remote/server_protocolhandler.h" #include "local_server.h" -class CommandContainer; -class Server_DatabaseInterface; +#include LocalServerInterface::LocalServerInterface(LocalServer *_server, Server_DatabaseInterface *_databaseInterface) : Server_ProtocolHandler(_server, _databaseInterface, _server) diff --git a/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.h b/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.h index 8aadb40ca..44e3b3e53 100644 --- a/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.h +++ b/libcockatrice_network/libcockatrice/network/server/local/local_server_interface.h @@ -8,13 +8,8 @@ #define LOCALSERVERINTERFACE_H #include <../remote/server_protocolhandler.h> -#include -#include class LocalServer; -class CommandContainer; -class ServerMessage; -class Server_DatabaseInterface; class LocalServerInterface : public Server_ProtocolHandler { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.cpp index 5b8d901bb..a6280ffa1 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.cpp @@ -4,16 +4,10 @@ #include "../server_abstractuserinterface.h" #include "../server_database_interface.h" #include "../server_room.h" -#include "game/server_abstract_player.h" -#include "libcockatrice/protocol/pb/event_leave.pb.h" -#include "libcockatrice/protocol/pb/game_commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" +#include "server_card.h" #include "server_game.h" -#include "server_response_containers.h" -#include "serverinfo_user_container.h" +#include "server_player.h" -#include -#include #include #include #include @@ -56,7 +50,6 @@ #include #include #include -#include Server_AbstractParticipant::Server_AbstractParticipant(Server_Game *_game, int _playerId, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.h index 195da9b7f..c78ae78c1 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_participant.h @@ -5,8 +5,8 @@ #include "server_arrowtarget.h" #include +#include #include -#include class Server_Game; class Server_AbstractUserInterface; @@ -17,6 +17,7 @@ class GameEventContainer; class GameEventStorage; class ResponseContainer; class GameCommand; + class Command_KickFromGame; class Command_LeaveGame; class Command_GameSay; diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.cpp index 47c810d0d..6b4101a99 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.cpp @@ -1,33 +1,14 @@ #include "server_abstract_player.h" -#include "game/server_abstract_participant.h" -#include "game/server_arrowtarget.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" -#include "libcockatrice/protocol/pb/color.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_arrow.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_card.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_cardcounter.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_zone.pb.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" #include "server_arrow.h" #include "server_card.h" #include "server_cardzone.h" #include "server_game.h" #include "server_move_card_struct.h" -#include "server_response_containers.h" -#include -#include -#include -#include -#include -#include -#include +#include +#include #include -#include -#include #include #include #include @@ -69,11 +50,8 @@ #include #include #include +#include #include -#include -#include - -class Server_AbstractUserInterface; Server_AbstractPlayer::Server_AbstractPlayer(Server_Game *_game, int _playerId, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.h index eff5034b4..4cc79c5fe 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_abstract_player.h @@ -1,32 +1,25 @@ #ifndef ABSTRACT_PLAYER_H #define ABSTRACT_PLAYER_H -#include "libcockatrice/protocol/pb/response.pb.h" +#include "../serverinfo_user_container.h" #include "server_abstract_participant.h" #include #include -#include class CardToMove; class DeckList; class Server_Arrow; class Server_Card; class Server_CardZone; +class Server_Counter; struct MoveCardStruct; -class GameEventStorage; -class ServerInfo_User; -class Server_AbstractUserInterface; -class Server_Game; -enum CardAttribute : int; -template class QList; class Server_AbstractPlayer : public Server_AbstractParticipant { Q_OBJECT private: class MoveCardCompareFunctor; - QMap arrows; void sendCreateTokenEvents(Server_CardZone *zone, Server_Card *card, int xCoord, int yCoord, GameEventStorage &ges); diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrow.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrow.cpp index b5ccff8fe..2ad38b977 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrow.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrow.cpp @@ -1,16 +1,10 @@ #include "server_arrow.h" -#include "game/server_abstract_player.h" -#include "game/server_arrowtarget.h" -#include "libcockatrice/protocol/pb/color.pb.h" #include "server_card.h" #include "server_cardzone.h" #include "server_player.h" -#include -#include #include -#include Server_Arrow::Server_Arrow(int _id, Server_Card *_startCard, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrowtarget.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrowtarget.h index c4da725c2..5a080018d 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrowtarget.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_arrowtarget.h @@ -2,7 +2,6 @@ #define SERVER_ARROWTARGET_H #include -#include class Server_ArrowTarget : public QObject { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.cpp index c79f13634..8c7feadba 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.cpp @@ -19,22 +19,16 @@ ***************************************************************************/ #include "server_card.h" -#include "game/server_abstract_player.h" -#include "libcockatrice/protocol/pb/card_attributes.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_cardcounter.pb.h" -#include "libcockatrice/utility/card_ref.h" #include "server_cardzone.h" +#include "server_player.h" -#include -#include #include -#include #include #include #include #include #include -#include +#include Server_Card::Server_Card(const CardRef &cardRef, int _id, int _coord_x, int _coord_y, Server_CardZone *_zone) : zone(_zone), id(_id), coord_x(_coord_x), coord_y(_coord_y), cardRef(cardRef), tapped(false), attacking(false), diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.h index cffd9eb40..a2698ad61 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_card.h @@ -22,18 +22,15 @@ #include "server_arrowtarget.h" -#include #include #include -#include +#include +#include #include -#include class Server_CardZone; class Event_SetCardCounter; class Event_SetCardAttr; -class ServerInfo_Card; -enum CardAttribute : int; class Server_Card : public Server_ArrowTarget { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.cpp index 5f40aa480..1db4f9c4c 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.cpp @@ -19,21 +19,13 @@ ***************************************************************************/ #include "server_cardzone.h" -#include "libcockatrice/protocol/pb/serverinfo_zone.pb.h" #include "server_abstract_player.h" #include "server_card.h" #include -#include -#include -#include #include -#include -#include #include #include -#include -#include Server_CardZone::Server_CardZone(Server_AbstractPlayer *_player, const QString &_name, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.h index 9ed39a159..77fea54ca 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_cardzone.h @@ -20,16 +20,15 @@ #ifndef SERVER_CARDZONE_H #define SERVER_CARDZONE_H -#include #include #include #include -#include #include class Server_Card; class Server_AbstractPlayer; class Server_AbstractParticipant; +class Server_Game; class GameEventStorage; class Server_CardZone diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_counter.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_counter.cpp index f3dcb0fb1..b18e11c2b 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_counter.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_counter.cpp @@ -1,9 +1,6 @@ #include "server_counter.h" -#include "libcockatrice/protocol/pb/color.pb.h" - #include -#include Server_Counter::Server_Counter(int _id, const QString &_name, const color &_counterColor, int _radius, int _count) : id(_id), name(_name), counterColor(_counterColor), radius(_radius), count(_count) diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.cpp index 330d473b2..131ff1077 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.cpp @@ -23,44 +23,21 @@ #include "../server_database_interface.h" #include "../server_protocolhandler.h" #include "../server_room.h" -#include "game/game_config.h" -#include "game/server_abstract_participant.h" -#include "game/server_arrowtarget.h" -#include "game/server_deck_validation_strategy.h" -#include "game/server_game_lifecycle_strategy.h" -#include "game/server_match_result_strategy.h" #include "libcockatrice/protocol/pb/command_move_card.pb.h" -#include "libcockatrice/protocol/pb/game_event.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_gametype.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay_match.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" #include "server_abstract_player.h" -#include "server_abstractuserinterface.h" #include "server_arrow.h" #include "server_card.h" #include "server_cardzone.h" #include "server_player.h" -#include "server_response_containers.h" #include "server_spectator.h" #include #include -#include -#include #include -#include -#include -#include #include #include -#include +#include +#include #include #include #include @@ -76,9 +53,6 @@ #include #include #include -#include -#include -#include Server_Game::Server_Game(const GameConfig &config, Server_Room *_room) : QObject(), room(_room), nextPlayerId(0), hostId(0), creatorInfo(new ServerInfo_User(config.creatorInfo)), diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.h index c7f8d0929..1ed4fe4ca 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_game.h @@ -21,25 +21,21 @@ #define SERVERGAME_H #include "../server_response_containers.h" -#include "libcockatrice/protocol/pb/game_event_context.pb.h" +#include "game_config.h" +#include "server_deck_validation_strategy.h" +#include "server_game_lifecycle_strategy.h" +#include "server_match_result_strategy.h" -// IWYU pragma: keep -// ServerInfo_Game is passed by value to the gameInfoChanged() signal, so the -// moc-generated code needs the complete type. #include -#include #include +#include #include -#include #include #include -#include -#include -#include +#include #include #include #include -#include class QTimer; class GameEventContainer; @@ -51,17 +47,6 @@ class ServerInfo_User; class ServerInfo_Game; class Server_AbstractUserInterface; class Event_GameStateChanged; -class Server_DeckValidationStrategy; -class Server_GameLifecycleStrategy; -class Server_MatchResultStrategy; -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google -struct GameConfig; class Server_Game : public QObject { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.cpp index a4c904c01..cafa33c07 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.cpp @@ -1,34 +1,23 @@ #include "server_player.h" #include "../server.h" +#include "../server_abstractuserinterface.h" #include "../server_database_interface.h" #include "../server_room.h" -#include "game/server_abstract_participant.h" -#include "game/server_abstract_player.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" -#include "libcockatrice/protocol/pb/color.pb.h" -#include "libcockatrice/protocol/pb/move_card_to_zone.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_card.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_counter.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_playerproperties.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_zone.pb.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" #include "server_card.h" #include "server_cardzone.h" #include "server_counter.h" #include "server_game.h" #include "server_move_card_struct.h" -#include "server_response_containers.h" -#include -#include -#include -#include -#include -#include +#include +#include +#include #include +#include +#include #include +#include #include #include #include @@ -54,15 +43,13 @@ #include #include #include +#include #include #include +#include #include #include #include -#include -#include - -class Server_AbstractUserInterface; Server_Player::Server_Player(Server_Game *_game, int _playerId, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.h index 5d514a344..c35428480 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_player.h @@ -1,19 +1,8 @@ #ifndef PLAYER_H #define PLAYER_H -#include "libcockatrice/protocol/pb/response.pb.h" #include "server_abstract_player.h" -#include -#include -#include - -class GameEventStorage; -class ServerInfo_User; -class Server_AbstractUserInterface; -class Server_Counter; -class Server_Game; - class Server_Player : public Server_AbstractPlayer { Q_OBJECT diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.cpp b/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.cpp index d1c369949..bc873e386 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.cpp @@ -1,11 +1,5 @@ #include "server_spectator.h" -#include "game/server_abstract_participant.h" - -class ServerInfo_User; -class Server_AbstractUserInterface; -class Server_Game; - Server_Spectator::Server_Spectator(Server_Game *_game, int _playerId, const ServerInfo_User &_userInfo, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.h b/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.h index 2a8995ec3..4d3928a63 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/game/server_spectator.h @@ -3,12 +3,6 @@ #include "server_abstract_participant.h" -#include - -class ServerInfo_User; -class Server_AbstractUserInterface; -class Server_Game; - class Server_Spectator : public Server_AbstractParticipant { Q_OBJECT diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server.cpp b/libcockatrice_network/libcockatrice/network/server/remote/server.cpp index 73b13e23e..7abccfca8 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/server.cpp @@ -19,36 +19,16 @@ ***************************************************************************/ #include "server.h" -#include "game/server_abstract_participant.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/game_commands.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_commands.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_ban.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_room.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "server_abstractuserinterface.h" +#include "game/server_player.h" #include "server_database_interface.h" #include "server_protocolhandler.h" #include "server_remoteuserinterface.h" -#include "server_response_containers.h" #include "server_room.h" -#include "serverinfo_user_container.h" -#include +#include #include -#include -#include -#include -#include -#include #include -#include -#include #include #include #include @@ -56,10 +36,6 @@ #include #include #include -#include -#include -#include -#include Server::Server(QObject *parent) : QObject(parent), nextLocalGameId(0), tcpUserCount(0), webSocketUserCount(0) { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server.h b/libcockatrice_network/libcockatrice/network/server/remote/server.h index 99247bb67..3d27f4210 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server.h @@ -3,32 +3,30 @@ #include "server_player_reference.h" -#include -#include #include #include -#include #include #include -#include -#include -#include +#include +#include +#include class Server_DatabaseInterface; +class Server_Game; class Server_Room; class Server_ProtocolHandler; class Server_AbstractUserInterface; +class GameReplay; class IslMessage; class SessionEvent; class RoomEvent; +class DeckList; class ServerInfo_Game; class ServerInfo_Room; class Response; class GameEventContainer; class CommandContainer; class Command_JoinGame; -class QThread; -class ServerInfo_User; enum AuthenticationResult { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.cpp b/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.cpp index 25aa415fc..31fa13d81 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.cpp @@ -1,13 +1,7 @@ #include "server_abstractuserinterface.h" -#include "game/server_abstract_participant.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" +#include "game/server_player.h" #include "server.h" #include "server_player_reference.h" #include "server_response_containers.h" @@ -15,13 +9,8 @@ #include #include -#include -#include -#include #include -#include -#include -#include +#include void Server_AbstractUserInterface::sendProtocolItemByType(ServerMessage::MessageType type, const ::google::protobuf::Message &item) diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.h b/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.h index a19475e34..2da72c01d 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_abstractuserinterface.h @@ -5,8 +5,6 @@ #include #include -#include -#include #include #include @@ -14,15 +12,9 @@ class SessionEvent; class GameEventContainer; class RoomEvent; class ResponseContainer; + class Server; class Server_Game; -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google class Server_AbstractUserInterface : public ServerInfo_User_Container { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_database_interface.h b/libcockatrice_network/libcockatrice/network/server/remote/server_database_interface.h index e0be7990b..1e4fc990b 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_database_interface.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_database_interface.h @@ -1,22 +1,9 @@ #ifndef SERVER_DATABASE_INTERFACE_H #define SERVER_DATABASE_INTERFACE_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" #include "server.h" -#include #include -#include -#include -#include -#include - -class DeckList; -class GameReplay; -class ServerInfo_Game; -class Server_ProtocolHandler; -template class QList; -template class QSet; class Server_DatabaseInterface : public QObject { diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.cpp b/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.cpp index fc5cfa148..8422d703d 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.cpp @@ -1,43 +1,20 @@ #include "server_protocolhandler.h" #include "game/game_config.h" -#include "game/server_abstract_participant.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/admin_commands.pb.h" -#include "libcockatrice/protocol/pb/developer_commands.pb.h" -#include "libcockatrice/protocol/pb/game_commands.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/moderator_commands.pb.h" -#include "libcockatrice/protocol/pb/room_commands.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_chat_message.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" +#include "game/server_player.h" #include "server_database_interface.h" -#include "server_response_containers.h" #include "server_room.h" -#include "serverinfo_user_container.h" -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include +#include #include #include #include #include +#include #include #include #include @@ -51,9 +28,6 @@ #include #include #include -#include -#include -#include Server_ProtocolHandler::Server_ProtocolHandler(Server *_server, Server_DatabaseInterface *_databaseInterface, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.h b/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.h index a12706757..2c8efe50e 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_protocolhandler.h @@ -4,24 +4,34 @@ #include "server.h" #include "server_abstractuserinterface.h" -#include -#include #include -#include #include -#include +#include +class Features; class Server_DatabaseInterface; +class Server_Player; +class ServerInfo_User; class Server_Room; +class QTimer; +class FeatureSet; + class ServerMessage; +class Response; +class SessionEvent; +class GameEventContainer; +class RoomEvent; class ResponseContainer; + class CommandContainer; class SessionCommand; class ModeratorCommand; class AdminCommand; class DeveloperCommand; + class Command_Ping; class Command_Login; +class Command_Register; class Command_Message; class Command_ListUsers; class Command_GetGamesOfUser; diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_remoteuserinterface.h b/libcockatrice_network/libcockatrice/network/server/remote/server_remoteuserinterface.h index 3bdf04220..d68656b9d 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_remoteuserinterface.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_remoteuserinterface.h @@ -3,9 +3,6 @@ #include "server_abstractuserinterface.h" -class Server; -class ServerInfo_User_Container; - class Server_RemoteUserInterface : public Server_AbstractUserInterface { public: diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.cpp b/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.cpp index 4c4f351c9..22fb199fb 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.cpp @@ -1,13 +1,8 @@ #include "server_response_containers.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/game_event.pb.h" -#include "libcockatrice/protocol/pb/game_event_container.pb.h" -#include "libcockatrice/protocol/pb/game_event_context.pb.h" #include -#include -#include GameEventStorageItem::GameEventStorageItem(const ::google::protobuf::Message &_event, int _playerId, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.h b/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.h index 32b7a80a2..118b32d38 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_response_containers.h @@ -1,14 +1,10 @@ #ifndef SERVER_RESPONSE_CONTAINERS_H #define SERVER_RESPONSE_CONTAINERS_H -#include #include #include -#include #include -class GameEvent; - namespace google { namespace protobuf diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_room.cpp b/libcockatrice_network/libcockatrice/network/server/remote/server_room.cpp index 614de8d63..1f29e62fb 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_room.cpp +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_room.cpp @@ -1,26 +1,11 @@ #include "server_room.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_gametype.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "server.h" -#include "server_abstractuserinterface.h" #include "server_protocolhandler.h" -#include "server_response_containers.h" -#include "serverinfo_user_container.h" #include -#include -#include -#include -#include -#include +#include #include -#include -#include #include #include #include @@ -31,10 +16,6 @@ #include #include #include -#include -#include -#include -#include Server_Room::Server_Room(int _id, int _chatHistorySize, diff --git a/libcockatrice_network/libcockatrice/network/server/remote/server_room.h b/libcockatrice_network/libcockatrice/network/server/remote/server_room.h index 5933894d5..3d9988f20 100644 --- a/libcockatrice_network/libcockatrice/network/server/remote/server_room.h +++ b/libcockatrice_network/libcockatrice/network/server/remote/server_room.h @@ -1,16 +1,16 @@ #ifndef SERVER_ROOM_H #define SERVER_ROOM_H -#include +#include "serverinfo_user_container.h" + #include +#include #include #include -#include -#include #include #include -#include +class Server_DatabaseInterface; class Server_ProtocolHandler; class RoomEvent; class ServerInfo_User; @@ -18,17 +18,10 @@ class ServerInfo_Room; class ServerInfo_Game; class Server_Game; class Server; + class Command_JoinGame; class ResponseContainer; class Server_AbstractUserInterface; -class ServerInfo_User_Container; -namespace google -{ -namespace protobuf -{ -class Message; -} // namespace protobuf -} // namespace google class Server_Room : public QObject { diff --git a/libcockatrice_protocol/libcockatrice/protocol/debug_pb_message.cpp b/libcockatrice_protocol/libcockatrice/protocol/debug_pb_message.cpp index f892c3f15..4d4889323 100644 --- a/libcockatrice_protocol/libcockatrice/protocol/debug_pb_message.cpp +++ b/libcockatrice_protocol/libcockatrice/protocol/debug_pb_message.cpp @@ -1,13 +1,11 @@ #include "debug_pb_message.h" +#include #include #include #include -#include #include #include -#include -#include // FastFieldValuePrinter is added in protobuf 3.4, going out of our way to add the old FieldValuePrinter is not worth it #if GOOGLE_PROTOBUF_VERSION > 3004000 diff --git a/libcockatrice_protocol/libcockatrice/protocol/featureset.cpp b/libcockatrice_protocol/libcockatrice/protocol/featureset.cpp index 0f8fd4210..3e687ef56 100644 --- a/libcockatrice_protocol/libcockatrice/protocol/featureset.cpp +++ b/libcockatrice_protocol/libcockatrice/protocol/featureset.cpp @@ -1,7 +1,6 @@ #include "featureset.h" #include -#include FeatureSet::FeatureSet() { diff --git a/libcockatrice_protocol/libcockatrice/protocol/get_pb_extension.cpp b/libcockatrice_protocol/libcockatrice/protocol/get_pb_extension.cpp index b9d2f18d0..a693ea5a7 100644 --- a/libcockatrice_protocol/libcockatrice/protocol/get_pb_extension.cpp +++ b/libcockatrice_protocol/libcockatrice/protocol/get_pb_extension.cpp @@ -2,7 +2,6 @@ #include #include -#include int getPbExtension(const ::google::protobuf::Message &message) { diff --git a/libcockatrice_protocol/libcockatrice/protocol/pending_command.cpp b/libcockatrice_protocol/libcockatrice/protocol/pending_command.cpp index 4a23fb6ef..62d35313e 100644 --- a/libcockatrice_protocol/libcockatrice/protocol/pending_command.cpp +++ b/libcockatrice_protocol/libcockatrice/protocol/pending_command.cpp @@ -1,8 +1,5 @@ #include "pending_command.h" -class CommandContainer; -class Response; - PendingCommand::PendingCommand(const CommandContainer &_commandContainer, QVariant _extraData) : commandContainer(_commandContainer), extraData(_extraData), ticks(0) { diff --git a/libcockatrice_protocol/libcockatrice/protocol/pending_command.h b/libcockatrice_protocol/libcockatrice/protocol/pending_command.h index 9ed8a863c..b8f861d08 100644 --- a/libcockatrice_protocol/libcockatrice/protocol/pending_command.h +++ b/libcockatrice_protocol/libcockatrice/protocol/pending_command.h @@ -8,13 +8,9 @@ #define PENDING_COMMAND_H #include -#include #include -#include #include -#include - -class Response; +#include class PendingCommand : public QObject { diff --git a/libcockatrice_rng/libcockatrice/rng/rng_abstract.cpp b/libcockatrice_rng/libcockatrice/rng/rng_abstract.cpp index 34a778ca9..82404d351 100644 --- a/libcockatrice_rng/libcockatrice/rng/rng_abstract.cpp +++ b/libcockatrice_rng/libcockatrice/rng/rng_abstract.cpp @@ -1,8 +1,6 @@ #include "rng_abstract.h" #include -#include -#include QVector RNG_Abstract::makeNumbersVector(int n, int min, int max) { diff --git a/libcockatrice_rng/libcockatrice/rng/rng_abstract.h b/libcockatrice_rng/libcockatrice/rng/rng_abstract.h index 49fb89612..903e6ef1a 100644 --- a/libcockatrice_rng/libcockatrice/rng/rng_abstract.h +++ b/libcockatrice_rng/libcockatrice/rng/rng_abstract.h @@ -3,7 +3,6 @@ #include #include -#include class RNG_Abstract : public QObject { diff --git a/libcockatrice_rng/libcockatrice/rng/rng_sfmt.cpp b/libcockatrice_rng/libcockatrice/rng/rng_sfmt.cpp index 13e6fe680..4c578b4e4 100644 --- a/libcockatrice_rng/libcockatrice/rng/rng_sfmt.cpp +++ b/libcockatrice_rng/libcockatrice/rng/rng_sfmt.cpp @@ -1,13 +1,8 @@ #include "rng_sfmt.h" -#include "libcockatrice/rng/rng_abstract.h" -#include "libcockatrice/rng/sfmt/SFMT.h" - -#include +#include +#include #include -#include - -class QObject; // This is from gcc sources, namely from fixincludes/inclhack.def // On C++11 systems, could be included instead. diff --git a/libcockatrice_rng/libcockatrice/rng/rng_sfmt.h b/libcockatrice_rng/libcockatrice/rng/rng_sfmt.h index e178812ab..a180dad99 100644 --- a/libcockatrice_rng/libcockatrice/rng/rng_sfmt.h +++ b/libcockatrice_rng/libcockatrice/rng/rng_sfmt.h @@ -5,10 +5,7 @@ #include "sfmt/SFMT.h" #include -#include -#include - -class QObject; +#include /** * This class encapsulates a state of the art PRNG and can be used diff --git a/libcockatrice_settings/libcockatrice/settings/appearance_settings.cpp b/libcockatrice_settings/libcockatrice/settings/appearance_settings.cpp index 14969dae6..839e33be4 100644 --- a/libcockatrice_settings/libcockatrice/settings/appearance_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/appearance_settings.cpp @@ -1,11 +1,5 @@ #include "appearance_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - AppearanceSettings::AppearanceSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "appearance.ini", "appearance", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/appearance_settings.h b/libcockatrice_settings/libcockatrice/settings/appearance_settings.h index 9d15caddd..a4504798e 100644 --- a/libcockatrice_settings/libcockatrice/settings/appearance_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/appearance_settings.h @@ -9,11 +9,6 @@ #include "settings_manager.h" -#include -#include - -class QObject; - class AppearanceSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.cpp b/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.cpp index aaea87791..c800cc024 100644 --- a/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.cpp @@ -1,11 +1,5 @@ #include "cache_storage_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - CacheStorageSettings::CacheStorageSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "cache_storage.ini", "cache_storage", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.h b/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.h index a4c8a197d..4a4e73461 100644 --- a/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/cache_storage_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; // In MB (Increments of 64) #define PIXMAPCACHE_SIZE_DEFAULT 2048 diff --git a/libcockatrice_settings/libcockatrice/settings/card_database_settings.cpp b/libcockatrice_settings/libcockatrice/settings/card_database_settings.cpp index acac1125f..b55c97909 100644 --- a/libcockatrice_settings/libcockatrice/settings/card_database_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/card_database_settings.cpp @@ -1,16 +1,6 @@ #include "card_database_settings.h" -#include "libcockatrice/interfaces/interface_card_set_priority_controller.h" -#include "libcockatrice/settings/settings_manager.h" - -#include #include -#include -#include -#include -#include - -class QObject; CardDatabaseSettings::CardDatabaseSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "cardDatabase.ini", QString(), QString(), parent) @@ -88,20 +78,6 @@ ICardSetPriorityController::SetOptions CardDatabaseSettings::getSetOptions(QStri return setOptionsCache.value(shortName); } -QStringList CardDatabaseSettings::getEnabledSetNames() const -{ - QMutexLocker lock(&setOptionsMutex); - ensureSetOptionsLoaded(); - QStringList names; - for (auto it = setOptionsCache.constBegin(); it != setOptionsCache.constEnd(); ++it) { - if (it.value().enabled) { - names << it.key(); - } - } - names.sort(); - return names; -} - void CardDatabaseSettings::saveSets(const QVector &data) { batchWrite([&](QSettings &s) { diff --git a/libcockatrice_settings/libcockatrice/settings/card_database_settings.h b/libcockatrice_settings/libcockatrice/settings/card_database_settings.h index 5bdf17aef..4553f197f 100644 --- a/libcockatrice_settings/libcockatrice/settings/card_database_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/card_database_settings.h @@ -12,12 +12,7 @@ #include #include -#include -#include #include -#include - -class QObject; class CardDatabaseSettings : public SettingsManager, public ICardSetPriorityController { @@ -35,8 +30,6 @@ public: SetOptions getSetOptions(QString shortName) const override; - QStringList getEnabledSetNames() const override; - void saveSets(const QVector &data) override; private: diff --git a/libcockatrice_settings/libcockatrice/settings/card_override_settings.cpp b/libcockatrice_settings/libcockatrice/settings/card_override_settings.cpp index 5a853a927..a61a4693b 100644 --- a/libcockatrice_settings/libcockatrice/settings/card_override_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/card_override_settings.cpp @@ -1,12 +1,5 @@ #include "card_override_settings.h" -#include "libcockatrice/settings/settings_manager.h" -#include "libcockatrice/utility/card_ref.h" - -#include - -class QObject; - CardOverrideSettings::CardOverrideSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "cardPreferenceOverrides.ini", "cards", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/card_override_settings.h b/libcockatrice_settings/libcockatrice/settings/card_override_settings.h index a9e8b2d69..cd515d4da 100644 --- a/libcockatrice_settings/libcockatrice/settings/card_override_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/card_override_settings.h @@ -9,11 +9,8 @@ #include "settings_manager.h" -#include -#include - -class QObject; -struct CardRef; +#include +#include class CardOverrideSettings : public SettingsManager { diff --git a/libcockatrice_settings/libcockatrice/settings/cards_display_settings.cpp b/libcockatrice_settings/libcockatrice/settings/cards_display_settings.cpp index f047973f0..3af607198 100644 --- a/libcockatrice_settings/libcockatrice/settings/cards_display_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/cards_display_settings.cpp @@ -1,13 +1,5 @@ #include "cards_display_settings.h" -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; - CardsDisplaySettings::CardsDisplaySettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "cards_display.ini", "cards", QString(), parent) { @@ -43,6 +35,11 @@ int CardsDisplaySettings::getPrintingSelectorCardSize() const return getValue("printingSelector", "cards", "cardSize", 100).toInt(); } +bool CardsDisplaySettings::getIncludeRebalancedCards() const +{ + return getValue("includerebalancedcards", QString(), QString(), true).toBool(); +} + bool CardsDisplaySettings::getPrintingSelectorNavigationButtonsVisible() const { return getValue("navigationButtonsVisible", "cards", "printingSelector", true).toBool(); @@ -162,6 +159,15 @@ void CardsDisplaySettings::setPrintingSelectorCardSize(int _printingSelectorCard emit printingSelectorCardSizeChanged(); } +void CardsDisplaySettings::setIncludeRebalancedCards(bool _includeRebalancedCards) +{ + if (_includeRebalancedCards == getIncludeRebalancedCards()) { + return; + } + setValue(_includeRebalancedCards, "includerebalancedcards"); + emit includeRebalancedCardsChanged(_includeRebalancedCards); +} + void CardsDisplaySettings::setPrintingSelectorNavigationButtonsVisible(bool _navigationButtonsVisible) { setValue(_navigationButtonsVisible, "navigationButtonsVisible", "cards", "printingSelector"); diff --git a/libcockatrice_settings/libcockatrice/settings/cards_display_settings.h b/libcockatrice_settings/libcockatrice/settings/cards_display_settings.h index 961550d3c..77924d14c 100644 --- a/libcockatrice_settings/libcockatrice/settings/cards_display_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/cards_display_settings.h @@ -3,11 +3,8 @@ #include "settings_manager.h" -#include +#include #include -#include - -class QObject; class CardsDisplaySettings : public SettingsManager, public ICardsDisplaySettingsProvider { @@ -21,6 +18,7 @@ public: [[nodiscard]] bool getBumpSetsWithCardsInDeckToTop() const override; [[nodiscard]] int getPrintingSelectorSortOrder() const override; [[nodiscard]] int getPrintingSelectorCardSize() const override; + [[nodiscard]] bool getIncludeRebalancedCards() const override; [[nodiscard]] bool getPrintingSelectorNavigationButtonsVisible() const override; [[nodiscard]] bool getTapAnimation() const override; [[nodiscard]] bool getArrowDrawAnimation() const override; @@ -44,6 +42,7 @@ public: void setBumpSetsWithCardsInDeckToTop(bool _bumpSetsWithCardsInDeckToTop); void setPrintingSelectorSortOrder(int _printingSelectorSortOrder); void setPrintingSelectorCardSize(int _printingSelectorCardSize); + void setIncludeRebalancedCards(bool _includeRebalancedCards); void setPrintingSelectorNavigationButtonsVisible(bool _navigationButtonsVisible); void setTapAnimation(bool _tapAnimation); void setArrowDrawAnimation(bool _arrowDrawAnimation); @@ -68,6 +67,7 @@ signals: void bumpSetsWithCardsInDeckToTopChanged(); void printingSelectorSortOrderChanged(); void printingSelectorCardSizeChanged(); + void includeRebalancedCardsChanged(bool _includeRebalancedCards); void printingSelectorNavigationButtonsVisibleChanged(); void visualDeckStorageCardSizeChanged(); void visualDatabaseDisplayCardSizeChanged(); diff --git a/libcockatrice_settings/libcockatrice/settings/chat_settings.cpp b/libcockatrice_settings/libcockatrice/settings/chat_settings.cpp index d9ae0ddac..0ee29b4f5 100644 --- a/libcockatrice_settings/libcockatrice/settings/chat_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/chat_settings.cpp @@ -1,11 +1,5 @@ #include "chat_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - ChatSettings::ChatSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "chat.ini", "chat", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/chat_settings.h b/libcockatrice_settings/libcockatrice/settings/chat_settings.h index e00da4527..d928b23b7 100644 --- a/libcockatrice_settings/libcockatrice/settings/chat_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/chat_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; class ChatSettings : public SettingsManager, public IChatSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.cpp b/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.cpp index eb692fe81..0c5f5521e 100644 --- a/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.cpp @@ -1,16 +1,6 @@ #include "commander_bracket_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include #include -#include -#include -#include -#include - -class QObject; QVariantList CommanderBracketSettings::defaultDefinitions() { diff --git a/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.h b/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.h index ad012fc30..5a29f5dc7 100644 --- a/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/commander_bracket_settings.h @@ -4,11 +4,9 @@ #include "settings_manager.h" #include +#include #include #include -#include - -class QObject; struct CommanderBracketDefinition { diff --git a/libcockatrice_settings/libcockatrice/settings/debug_settings.cpp b/libcockatrice_settings/libcockatrice/settings/debug_settings.cpp index c36e7187e..5bf6eca30 100644 --- a/libcockatrice_settings/libcockatrice/settings/debug_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/debug_settings.cpp @@ -1,11 +1,6 @@ #include "debug_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; +#include DebugSettings::DebugSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "debug.ini", "debug", QString(), parent) diff --git a/libcockatrice_settings/libcockatrice/settings/debug_settings.h b/libcockatrice_settings/libcockatrice/settings/debug_settings.h index 9521a7738..acb5cf313 100644 --- a/libcockatrice_settings/libcockatrice/settings/debug_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/debug_settings.h @@ -8,11 +8,6 @@ #define DEBUG_SETTINGS_H #include "settings_manager.h" -#include -#include - -class QObject; - class DebugSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.cpp b/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.cpp index ee570ed67..44cdcd86f 100644 --- a/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.cpp @@ -1,11 +1,5 @@ #include "deck_editor_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - DeckEditorSettings::DeckEditorSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "deck_editor.ini", "deckeditor", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.h b/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.h index aa024910d..0c87a270a 100644 --- a/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/deck_editor_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; enum commanderSpellbookIntegrationEnabledIndex { diff --git a/libcockatrice_settings/libcockatrice/settings/download_settings.cpp b/libcockatrice_settings/libcockatrice/settings/download_settings.cpp index 84a6a7509..6e22a84f4 100644 --- a/libcockatrice_settings/libcockatrice/settings/download_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/download_settings.cpp @@ -2,14 +2,6 @@ #include "settings_manager.h" -#include -#include -#include -#include -#include - -class QObject; - const QStringList DownloadSettings::DEFAULT_DOWNLOAD_URLS = { "https://cards.scryfall.io/large/!prop:side!/!set:uuid_substr_0_1!/!set:uuid_substr_1_1!/!set:uuid!.jpg", "https://api.scryfall.com/cards/!set:uuid!?format=image&face=!prop:side!&lang=!sflang!", diff --git a/libcockatrice_settings/libcockatrice/settings/download_settings.h b/libcockatrice_settings/libcockatrice/settings/download_settings.h index f7cf482e1..7eca77df6 100644 --- a/libcockatrice_settings/libcockatrice/settings/download_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/download_settings.h @@ -10,11 +10,6 @@ #include "settings_manager.h" #include -#include -#include -#include - -class QObject; class DownloadSettings : public SettingsManager { diff --git a/libcockatrice_settings/libcockatrice/settings/game_filters_settings.cpp b/libcockatrice_settings/libcockatrice/settings/game_filters_settings.cpp index 79d1bc9e2..0edba44dd 100644 --- a/libcockatrice_settings/libcockatrice/settings/game_filters_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/game_filters_settings.cpp @@ -1,15 +1,7 @@ #include "game_filters_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include #include -#include -#include #include -#include - -class QObject; GameFiltersSettings::GameFiltersSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "gamefilters.ini", "filter_games", QString(), parent) diff --git a/libcockatrice_settings/libcockatrice/settings/game_filters_settings.h b/libcockatrice_settings/libcockatrice/settings/game_filters_settings.h index ec5e3fdc2..11480d483 100644 --- a/libcockatrice_settings/libcockatrice/settings/game_filters_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/game_filters_settings.h @@ -10,13 +10,6 @@ #include "settings_manager.h" -#include -#include -#include -#include - -class QObject; - class GameFiltersSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/game_settings.cpp b/libcockatrice_settings/libcockatrice/settings/game_settings.cpp index c8c6463e3..dfd67c98a 100644 --- a/libcockatrice_settings/libcockatrice/settings/game_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/game_settings.cpp @@ -1,11 +1,5 @@ #include "game_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - GameSettings::GameSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "game.ini", QString(), QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/game_settings.h b/libcockatrice_settings/libcockatrice/settings/game_settings.h index 3e64234fc..e0a484bac 100644 --- a/libcockatrice_settings/libcockatrice/settings/game_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/game_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; class GameSettings : public SettingsManager, public IGameSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/interface_settings.cpp b/libcockatrice_settings/libcockatrice/settings/interface_settings.cpp index 256d9eb26..b92a5fdec 100644 --- a/libcockatrice_settings/libcockatrice/settings/interface_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/interface_settings.cpp @@ -1,16 +1,5 @@ #include "interface_settings.h" -#include "libcockatrice/settings/settings_manager.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" - -#include -#include -#include -#include - -class QObject; - namespace { const QChar PLAYMAT_FIELD_SEP = QChar(0x1F); ///< Separator between PlaymatInfo fields. @@ -48,7 +37,7 @@ InterfaceSettings::InterfaceSettings(const QString &settingPath, QObject *parent bool InterfaceSettings::getUseTearOffMenus() const { - return getValue("useTearOffMenus", QString(), QString(), false).toBool(); + return getValue("useTearOffMenus", QString(), QString(), true).toBool(); } int InterfaceSettings::getCardViewInitialRowsMax() const diff --git a/libcockatrice_settings/libcockatrice/settings/interface_settings.h b/libcockatrice_settings/libcockatrice/settings/interface_settings.h index 41bb6ee17..6b226f307 100644 --- a/libcockatrice_settings/libcockatrice/settings/interface_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/interface_settings.h @@ -3,15 +3,7 @@ #include "settings_manager.h" -#include -#include -#include #include -#include - -class QObject; -struct PlaymatInfo; -template class QList; class InterfaceSettings : public SettingsManager, public IInterfaceSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/layouts_settings.cpp b/libcockatrice_settings/libcockatrice/settings/layouts_settings.cpp index aba620026..e914dc2d8 100644 --- a/libcockatrice_settings/libcockatrice/settings/layouts_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/layouts_settings.cpp @@ -1,11 +1,5 @@ #include "layouts_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - const static QString STATE_PROP = "state"; const static QString GEOMETRY_PROP = "geometry"; const static QString SIZE_PROP = "widgetSize"; diff --git a/libcockatrice_settings/libcockatrice/settings/layouts_settings.h b/libcockatrice_settings/libcockatrice/settings/layouts_settings.h index 91b0a2ea6..d5f26b61b 100644 --- a/libcockatrice_settings/libcockatrice/settings/layouts_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/layouts_settings.h @@ -9,11 +9,7 @@ #include "settings_manager.h" -#include -#include -#include - -class QObject; +#include class LayoutsSettings : public SettingsManager { diff --git a/libcockatrice_settings/libcockatrice/settings/message_settings.cpp b/libcockatrice_settings/libcockatrice/settings/message_settings.cpp index ca77246ef..50da39df6 100644 --- a/libcockatrice_settings/libcockatrice/settings/message_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/message_settings.cpp @@ -1,11 +1,5 @@ #include "message_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - MessageSettings::MessageSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "messages.ini", "messages", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/message_settings.h b/libcockatrice_settings/libcockatrice/settings/message_settings.h index 83513d562..8276aa39d 100644 --- a/libcockatrice_settings/libcockatrice/settings/message_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/message_settings.h @@ -9,11 +9,6 @@ #include "settings_manager.h" -#include -#include - -class QObject; - class MessageSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/network_settings.cpp b/libcockatrice_settings/libcockatrice/settings/network_settings.cpp index 6d0fa9d1c..2d34d47ad 100644 --- a/libcockatrice_settings/libcockatrice/settings/network_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/network_settings.cpp @@ -1,11 +1,5 @@ #include "network_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - NetworkSettings::NetworkSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "network.ini", "network", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/network_settings.h b/libcockatrice_settings/libcockatrice/settings/network_settings.h index 4367f9cb3..446bb51d3 100644 --- a/libcockatrice_settings/libcockatrice/settings/network_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/network_settings.h @@ -9,11 +9,6 @@ #include "settings_manager.h" -#include -#include - -class QObject; - class NetworkSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/paths_settings.cpp b/libcockatrice_settings/libcockatrice/settings/paths_settings.cpp index 5f5725395..67032e38f 100644 --- a/libcockatrice_settings/libcockatrice/settings/paths_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/paths_settings.cpp @@ -1,10 +1,7 @@ #include "paths_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; +#include +#include PathsSettings::PathsSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "paths.ini", "paths", QString(), parent) diff --git a/libcockatrice_settings/libcockatrice/settings/paths_settings.h b/libcockatrice_settings/libcockatrice/settings/paths_settings.h index 399337bbb..ab1ea05c8 100644 --- a/libcockatrice_settings/libcockatrice/settings/paths_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/paths_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; class PathsSettings : public SettingsManager, public IPathsSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/personal_settings.cpp b/libcockatrice_settings/libcockatrice/settings/personal_settings.cpp index 682144485..d1cb74d09 100644 --- a/libcockatrice_settings/libcockatrice/settings/personal_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/personal_settings.cpp @@ -1,12 +1,5 @@ #include "personal_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; - PersonalSettings::PersonalSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "personal.ini", "personal", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/personal_settings.h b/libcockatrice_settings/libcockatrice/settings/personal_settings.h index 0819af41b..04eab2a8a 100644 --- a/libcockatrice_settings/libcockatrice/settings/personal_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/personal_settings.h @@ -3,12 +3,9 @@ #include "settings_manager.h" -#include +#include +#include #include -#include - -class QObject; -template class QList; class PersonalSettings : public SettingsManager, public IPersonalSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/recents_settings.cpp b/libcockatrice_settings/libcockatrice/settings/recents_settings.cpp index 4f2c06c88..5f16af179 100644 --- a/libcockatrice_settings/libcockatrice/settings/recents_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/recents_settings.cpp @@ -1,12 +1,5 @@ #include "recents_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; - #define MAX_RECENT_DECK_COUNT 10 RecentsSettings::RecentsSettings(const QString &settingPath, QObject *parent) diff --git a/libcockatrice_settings/libcockatrice/settings/recents_settings.h b/libcockatrice_settings/libcockatrice/settings/recents_settings.h index dc5853908..01b2a37bc 100644 --- a/libcockatrice_settings/libcockatrice/settings/recents_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/recents_settings.h @@ -9,12 +9,6 @@ #include "settings_manager.h" -#include -#include -#include - -class QObject; - class RecentsSettings : public SettingsManager { Q_OBJECT diff --git a/libcockatrice_settings/libcockatrice/settings/servers_settings.cpp b/libcockatrice_settings/libcockatrice/settings/servers_settings.cpp index c5c4b2592..436e260c5 100644 --- a/libcockatrice_settings/libcockatrice/settings/servers_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/servers_settings.cpp @@ -1,17 +1,8 @@ #include "servers_settings.h" -#include "libcockatrice/settings/settings_manager.h" - #include -#include -#include -#include -#include -#include #include -class QObject; - ServersSettings::ServersSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "servers.ini", "server", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/servers_settings.h b/libcockatrice_settings/libcockatrice/settings/servers_settings.h index 40648baa9..93651c813 100644 --- a/libcockatrice_settings/libcockatrice/settings/servers_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/servers_settings.h @@ -10,12 +10,7 @@ #include "settings_manager.h" #include -#include -#include -#include - -class QObject; - +#include #define SERVERSETTINGS_DEFAULT_HOST "server.cockatrice.us" #define SERVERSETTINGS_DEFAULT_PORT "4748" diff --git a/libcockatrice_settings/libcockatrice/settings/settings_manager.h b/libcockatrice_settings/libcockatrice/settings/settings_manager.h index 8d3110106..3d3c95d3e 100644 --- a/libcockatrice_settings/libcockatrice/settings/settings_manager.h +++ b/libcockatrice_settings/libcockatrice/settings/settings_manager.h @@ -7,12 +7,9 @@ #ifndef SETTINGSMANAGER_H #define SETTINGSMANAGER_H -#include #include -#include +#include #include -#include -#include class SettingsManager : public QObject { diff --git a/libcockatrice_settings/libcockatrice/settings/settings_migration.cpp b/libcockatrice_settings/libcockatrice/settings/settings_migration.cpp index c3f299f40..c22bd3c02 100644 --- a/libcockatrice_settings/libcockatrice/settings/settings_migration.cpp +++ b/libcockatrice_settings/libcockatrice/settings/settings_migration.cpp @@ -1,25 +1,15 @@ #include "settings_migration.h" -#include #include -#include #include #include #include #include -#include -#include -#include #include #include -#include #include -#include #include -#include -#include #include -#include inline Q_LOGGING_CATEGORY(SettingsMigrationLog, "settings_migration"); @@ -259,6 +249,7 @@ static void migrateCardsDisplaySettings(const QString &settingsPath, QSettings & {"cards/roundcardcorners", "cards/roundCardCorners"}, {"cards/overrideallcardartwithpersonalpreference", "cards/overrideAllCardArtWithPersonalPreference"}, {"cards/bumpsetswithcardsindecktotop", "cards/bumpSetsWithCardsInDeckToTop"}, + {"cards/includerebalancedcards", "cards/includerebalancedcards"}, {"cards/tapanimation", "cards/tapAnimation"}, {"cards/autorotatesidewayslayoutcards", "cards/autoRotateSidewaysLayoutCards"}, {"cards/scaleCards", "cards/scaleCards"}, @@ -570,15 +561,9 @@ static void migrateLegacySets(const QString &settingsPath) QSettings cardDbIni(settingsPath + "cardDatabase.ini", QSettings::IniFormat); for (const auto &shortName : groups) { legacySetting.beginGroup(shortName); - if (legacySetting.contains("sortkey")) { - cardDbIni.setValue("sets/" + shortName + "/sortKey", legacySetting.value("sortkey")); - } - if (legacySetting.contains("enabled")) { - cardDbIni.setValue("sets/" + shortName + "/enabled", legacySetting.value("enabled")); - } - if (legacySetting.contains("isknown")) { - cardDbIni.setValue("sets/" + shortName + "/isKnown", legacySetting.value("isknown")); - } + cardDbIni.setValue("sets/" + shortName + "/sortKey", legacySetting.value("sortkey")); + cardDbIni.setValue("sets/" + shortName + "/enabled", legacySetting.value("enabled")); + cardDbIni.setValue("sets/" + shortName + "/isKnown", legacySetting.value("isknown")); legacySetting.endGroup(); } legacySetting.endGroup(); diff --git a/libcockatrice_settings/libcockatrice/settings/sound_settings.cpp b/libcockatrice_settings/libcockatrice/settings/sound_settings.cpp index 5de7f9105..82b724a07 100644 --- a/libcockatrice_settings/libcockatrice/settings/sound_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/sound_settings.cpp @@ -1,11 +1,5 @@ #include "sound_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include - -class QObject; - SoundSettings::SoundSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "sound.ini", "sound", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/sound_settings.h b/libcockatrice_settings/libcockatrice/settings/sound_settings.h index df6332cae..ffaed2a7c 100644 --- a/libcockatrice_settings/libcockatrice/settings/sound_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/sound_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; class SoundSettings : public SettingsManager, public ISoundSettingsProvider { diff --git a/libcockatrice_settings/libcockatrice/settings/tabs_settings.cpp b/libcockatrice_settings/libcockatrice/settings/tabs_settings.cpp index 7ed6c4433..cf5bfd81a 100644 --- a/libcockatrice_settings/libcockatrice/settings/tabs_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/tabs_settings.cpp @@ -1,12 +1,5 @@ #include "tabs_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; - TabsSettings::TabsSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "tabs.ini", "tabs", QString(), parent) { diff --git a/libcockatrice_settings/libcockatrice/settings/tabs_settings.h b/libcockatrice_settings/libcockatrice/settings/tabs_settings.h index 5411a6721..eb78d311b 100644 --- a/libcockatrice_settings/libcockatrice/settings/tabs_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/tabs_settings.h @@ -3,11 +3,7 @@ #include "settings_manager.h" -#include #include -#include - -class QObject; /** * @brief The tab the application selects after launch. diff --git a/libcockatrice_settings/libcockatrice/settings/updates_settings.cpp b/libcockatrice_settings/libcockatrice/settings/updates_settings.cpp index 9ea22ed7c..166bc0aa8 100644 --- a/libcockatrice_settings/libcockatrice/settings/updates_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/updates_settings.cpp @@ -1,13 +1,6 @@ #include "updates_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include #include -#include -#include - -class QObject; UpdatesSettings::UpdatesSettings(const QString &settingPath, QObject *parent) : SettingsManager(settingPath + "updates.ini", "updates", QString(), parent) @@ -60,11 +53,6 @@ bool UpdatesSettings::getNotifyAboutNewVersion() const return getValue("newVersionNotification", QString(), QString(), true).toBool(); } -bool UpdatesSettings::getCardDatabaseUpdateTrayNotification() const -{ - return getValue("cardDatabaseUpdateTrayNotification", QString(), QString(), true).toBool(); -} - int UpdatesSettings::getUpdateReleaseChannelIndex() const { return getValue("updateReleaseChannel", QString(), QString(), 0).toInt(); @@ -110,11 +98,6 @@ void UpdatesSettings::setNotifyAboutNewVersion(bool _notifyaboutnewversion) setValue(_notifyaboutnewversion, "newVersionNotification"); } -void UpdatesSettings::setCardDatabaseUpdateTrayNotification(bool value) -{ - setValue(value, "cardDatabaseUpdateTrayNotification"); -} - void UpdatesSettings::setUpdateReleaseChannelIndex(int value) { setValue(value, "updateReleaseChannel"); diff --git a/libcockatrice_settings/libcockatrice/settings/updates_settings.h b/libcockatrice_settings/libcockatrice/settings/updates_settings.h index 490dca14e..6df0f8ce4 100644 --- a/libcockatrice_settings/libcockatrice/settings/updates_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/updates_settings.h @@ -3,12 +3,8 @@ #include "settings_manager.h" -#include +#include #include -#include - -class QDate; -class QObject; class UpdatesSettings : public SettingsManager, public IUpdatesSettingsProvider { @@ -25,7 +21,6 @@ public: [[nodiscard]] bool getAlwaysEnableNewSets() const override; [[nodiscard]] bool getNotifyAboutUpdates() const override; [[nodiscard]] bool getNotifyAboutNewVersion() const override; - [[nodiscard]] bool getCardDatabaseUpdateTrayNotification() const; [[nodiscard]] int getUpdateReleaseChannelIndex() const override; void setCheckUpdatesOnStartup(bool value); @@ -36,7 +31,6 @@ public: void setAlwaysEnableNewSets(bool value); void setNotifyAboutUpdates(bool _notifyaboutupdate); void setNotifyAboutNewVersion(bool _notifyaboutnewversion); - void setCardDatabaseUpdateTrayNotification(bool value); void setUpdateReleaseChannelIndex(int value); public: diff --git a/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.cpp b/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.cpp index 4667a278c..3320598d8 100644 --- a/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.cpp +++ b/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.cpp @@ -1,12 +1,5 @@ #include "visual_deck_storage_settings.h" -#include "libcockatrice/settings/settings_manager.h" - -#include -#include - -class QObject; - namespace { QStringList defaultTags = { diff --git a/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.h b/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.h index 12b96fd8b..9bc9d4172 100644 --- a/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.h +++ b/libcockatrice_settings/libcockatrice/settings/visual_deck_storage_settings.h @@ -3,12 +3,8 @@ #include "settings_manager.h" -#include #include #include -#include - -class QObject; class VisualDeckStorageSettings : public SettingsManager, public IVisualDeckStorageSettingsProvider { diff --git a/libcockatrice_utility/CMakeLists.txt b/libcockatrice_utility/CMakeLists.txt index d986214d7..41f1bfa0f 100644 --- a/libcockatrice_utility/CMakeLists.txt +++ b/libcockatrice_utility/CMakeLists.txt @@ -22,7 +22,6 @@ set(UTILITY_HEADERS libcockatrice/utility/cryptoutil.h libcockatrice/utility/expression.h libcockatrice/utility/levenshtein.h - libcockatrice/utility/local_server_name.h libcockatrice/utility/macros.h libcockatrice/utility/passwordhasher.h libcockatrice/utility/playmat_params.h diff --git a/libcockatrice_utility/libcockatrice/utility/cryptoutil.cpp b/libcockatrice_utility/libcockatrice/utility/cryptoutil.cpp index fb59022de..416ef261b 100644 --- a/libcockatrice_utility/libcockatrice/utility/cryptoutil.cpp +++ b/libcockatrice_utility/libcockatrice/utility/cryptoutil.cpp @@ -1,7 +1,6 @@ #include "cryptoutil.h" #include -#include namespace CryptoUtil { diff --git a/libcockatrice_utility/libcockatrice/utility/expression.cpp b/libcockatrice_utility/libcockatrice/utility/expression.cpp index 85d1cdddc..718b0fe18 100644 --- a/libcockatrice_utility/libcockatrice/utility/expression.cpp +++ b/libcockatrice_utility/libcockatrice/utility/expression.cpp @@ -5,12 +5,7 @@ #include #include #include -#include #include -#include -#include -#include -#include peg::parser math(R"( EXPRESSION <- P0 diff --git a/libcockatrice_utility/libcockatrice/utility/levenshtein.cpp b/libcockatrice_utility/libcockatrice/utility/levenshtein.cpp index f7d8459cb..f39d325fb 100644 --- a/libcockatrice_utility/libcockatrice/utility/levenshtein.cpp +++ b/libcockatrice_utility/libcockatrice/utility/levenshtein.cpp @@ -1,7 +1,5 @@ #include "levenshtein.h" -#include -#include #include #include diff --git a/libcockatrice_utility/libcockatrice/utility/local_server_name.h b/libcockatrice_utility/libcockatrice/utility/local_server_name.h deleted file mode 100644 index a5797fba1..000000000 --- a/libcockatrice_utility/libcockatrice/utility/local_server_name.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef COCKATRICE_LOCAL_SERVER_NAME_H -#define COCKATRICE_LOCAL_SERVER_NAME_H - -#include -#include -#include - -/** - * @brief Builds a QLocalServer/QLocalSocket name scoped to the current user. - * - * On Linux the default local socket namespace is system-wide, so an unscoped name - * would let one user's process talk to — or hijack — another user's session. - * @param prefix application specific socket name prefix - * @return the scoped socket name - */ -inline QString scopedLocalServerName(const QString &prefix) -{ - QString userName = qEnvironmentVariable("USER"); - if (userName.isEmpty()) { - userName = qEnvironmentVariable("USERNAME"); - } - if (userName.isEmpty()) { - userName = QDir::home().dirName(); - } - return prefix + QLatin1Char('-') + userName; -} - -#endif // COCKATRICE_LOCAL_SERVER_NAME_H diff --git a/libcockatrice_utility/libcockatrice/utility/passwordhasher.cpp b/libcockatrice_utility/libcockatrice/utility/passwordhasher.cpp index b4a412fa6..1c22fdcfa 100644 --- a/libcockatrice_utility/libcockatrice/utility/passwordhasher.cpp +++ b/libcockatrice_utility/libcockatrice/utility/passwordhasher.cpp @@ -1,7 +1,5 @@ #include "passwordhasher.h" -#include -#include #include #include diff --git a/libcockatrice_utility/libcockatrice/utility/passwordhasher.h b/libcockatrice_utility/libcockatrice/utility/passwordhasher.h index 8ad83f089..811ecef15 100644 --- a/libcockatrice_utility/libcockatrice/utility/passwordhasher.h +++ b/libcockatrice_utility/libcockatrice/utility/passwordhasher.h @@ -1,7 +1,7 @@ #ifndef PASSWORDHASHER_H #define PASSWORDHASHER_H -#include +#include class PasswordHasher { diff --git a/libcockatrice_utility/libcockatrice/utility/report_categories.cpp b/libcockatrice_utility/libcockatrice/utility/report_categories.cpp index f3576d7fd..8551c1ca1 100644 --- a/libcockatrice_utility/libcockatrice/utility/report_categories.cpp +++ b/libcockatrice_utility/libcockatrice/utility/report_categories.cpp @@ -1,8 +1,5 @@ #include "report_categories.h" -#include -#include - namespace ReportCategories { const QStringList &keys() diff --git a/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.cpp b/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.cpp index 50340c350..2a1e3b283 100644 --- a/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.cpp +++ b/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.cpp @@ -1,9 +1,5 @@ #include "server_rate_limiter.h" -#include -#include -#include - bool ServerRateLimiter::isRateLimited(const QString &host, const QDateTime &now) const { auto it = backoffUntil.constFind(host); diff --git a/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.h b/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.h index cae26983d..e071b9189 100644 --- a/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.h +++ b/libcockatrice_utility/libcockatrice/utility/server_rate_limiter.h @@ -4,7 +4,6 @@ #include #include #include -#include /** * @class ServerRateLimiter diff --git a/libcockatrice_utility/libcockatrice/utility/translation_loader.cpp b/libcockatrice_utility/libcockatrice/utility/translation_loader.cpp index 41c6107b3..b06bcffc6 100644 --- a/libcockatrice_utility/libcockatrice/utility/translation_loader.cpp +++ b/libcockatrice_utility/libcockatrice/utility/translation_loader.cpp @@ -1,23 +1,13 @@ #include "translation_loader.h" -#include #include -#include #include #include -#include #include -#include #include -#include #include -#include -#include -#include #include -#include #include -#include // Kept under the historical category name so existing QT_LOGGING_RULES filters keep working. Q_LOGGING_CATEGORY(TranslationLoaderLog, "qt_translator") diff --git a/libcockatrice_utility/libcockatrice/utility/warning_categories.cpp b/libcockatrice_utility/libcockatrice/utility/warning_categories.cpp index ad0fc86f0..b5ca563ff 100644 --- a/libcockatrice_utility/libcockatrice/utility/warning_categories.cpp +++ b/libcockatrice_utility/libcockatrice/utility/warning_categories.cpp @@ -1,9 +1,5 @@ #include "warning_categories.h" -#include -#include -#include - QList parseWarningCategories(const QString &value) { QList categories; diff --git a/oracle/src/main.cpp b/oracle/src/main.cpp index cae2ee37d..103c72784 100644 --- a/oracle/src/main.cpp +++ b/oracle/src/main.cpp @@ -5,12 +5,8 @@ #include <../../cockatrice/src/client/settings/cache_settings.h> #include -#include #include -#include -#include #include -#include #include #include #include diff --git a/oracle/src/oracleimporter.cpp b/oracle/src/oracleimporter.cpp index 3382e36d6..88b522197 100644 --- a/oracle/src/oracleimporter.cpp +++ b/oracle/src/oracleimporter.cpp @@ -1,35 +1,20 @@ #include "oracleimporter.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/format/format_legality_rules.h" -#include "libcockatrice/card/lazy_properties_hash.h" -#include "libcockatrice/card/relation/card_relation_type.h" +#include "libcockatrice/interfaces/noop_card_preference_provider.h" #include "libcockatrice/interfaces/noop_card_set_priority_controller.h" #include "parsehelpers.h" -#include #include #include #include #include -#include -#include -#include -#include #include -#include #include -#include -#include -#include #include #include #include #include #include -#include - -class ICardSetPriorityController; static const QList kConstructedCounts = {{4, "legal"}, {0, "banned"}}; @@ -301,9 +286,9 @@ CardInfoPtr OracleImporter::addCard(QString name, static QString getJsonString(const QJsonObject &obj, const QString &key) { - // QVariant coerces numbers to text, while QJsonValue::toString() returns a - // null string for them — MTGJSON fields like manaValue and convertedManaCost - // carry those types. + // QVariant coerces numbers and booleans to text, while QJsonValue::toString() + // returns a null string for them — some MTGJSON fields (manaValue, + // convertedManaCost, isOnlineOnly, isRebalanced) carry those types. return obj.value(key).toVariant().toString(); } @@ -412,8 +397,11 @@ int OracleImporter::importCardsFromSet(const CardSetPtr ¤tSet, const QJson }; // mtgjson name => xml name - static const QMap setInfoProperties{ - {"number", "num"}, {"rarity", "rarity"}, {"artist", "artist"}}; + static const QMap setInfoProperties{{"number", "num"}, + {"rarity", "rarity"}, + {"isOnlineOnly", "isOnlineOnly"}, + {"isRebalanced", "isRebalanced"}, + {"artist", "artist"}}; // mtgjson name => xml name static const QMap identifierProperties{{"multiverseId", "muid"}, {"scryfallId", "uuid"}}; @@ -848,7 +836,7 @@ int OracleImporter::startImport() bool OracleImporter::saveToFile(const QString &fileName, const QString &sourceUrl, const QString &sourceVersion) { - CockatriceXml4Parser parser(new NoopCardSetPriorityController()); + CockatriceXml4Parser parser(new NoopCardPreferenceProvider(), new NoopCardSetPriorityController()); return parser.saveToFile(createDefaultMagicFormats(), sets, cards, fileName, sourceUrl, sourceVersion); } diff --git a/oracle/src/oracleimporter.h b/oracle/src/oracleimporter.h index d872e184e..c8d3a19bf 100644 --- a/oracle/src/oracleimporter.h +++ b/oracle/src/oracleimporter.h @@ -1,29 +1,18 @@ #ifndef ORACLEIMPORTER_H #define ORACLEIMPORTER_H -#include "libcockatrice/card/printing/printing_info.h" -#include "libcockatrice/card/set/card_set.h" #include "raw_json_scanner.h" #include #include -#include -#include #include #include -#include #include -#include -#include -#include +#include +#include #include -#include -#include #include -class CardRelation; -class QRegularExpression; - // many users prefer not to see these sets with non english arts // they will given priority PriorityLowest const QStringList nonEnglishSets = {"4BB", "FBB", "PS11", "PSAL", "REN", "RIN"}; @@ -185,10 +174,9 @@ private: /** * Whether readSetsFromByteArray() should report scan progress via - * dataReadProgress. The wizard streams that signal to stdout (for the - * hosting Cockatrice client to parse) in both interactive and background - * runs; the flag exists to skip the scanner instrumentation entirely when - * no consumer needs it. + * dataReadProgress. A background run routes that signal to stdout (for the + * hosting Cockatrice client to parse); the flag exists to skip the scanner + * instrumentation entirely when no consumer needs it. */ bool progressReporting = true; @@ -256,9 +244,9 @@ public: * @brief Controls whether readSetsFromByteArray() instruments the raw scan. * * When enabled (the default) the raw scanner reports progress via - * dataReadProgress(), which the wizard streams to stdout (so the hosting - * Cockatrice client can show it) and also displays on its own progress bar. - * Switch it off only when nothing will consume scan progress. + * dataReadProgress(), which an interactive wizard shows on its progress bar + * and a background run routes to stdout for the hosting client. Switch it + * off only when nothing will consume scan progress. */ void setProgressReporting(bool enabled) { diff --git a/oracle/src/oraclewizard.cpp b/oracle/src/oraclewizard.cpp index 05f08ce64..9ce0d7b51 100644 --- a/oracle/src/oraclewizard.cpp +++ b/oracle/src/oraclewizard.cpp @@ -6,28 +6,17 @@ #include "pages.h" #include "pagetemplates.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include -#include -#include - -class QWidget; OracleWizard::OracleWizard(QWidget *parent) : QWizard(parent) { @@ -75,7 +64,6 @@ OracleWizard::OracleWizard(QWidget *parent) : QWizard(parent) } retranslateUi(); - startRaiseServer(); } /** @@ -144,54 +132,6 @@ void OracleWizard::runInBackground() currentPage()->initializePage(); } -void OracleWizard::startRaiseServer() -{ - // Scope the socket name to the current user, mirroring the hosting client. - raiseServer = new QLocalServer(this); - connect(raiseServer, &QLocalServer::newConnection, this, &OracleWizard::handleRaiseRequest); - const QString serverName = scopedLocalServerName(QStringLiteral("CockatriceOracleRaise")); - if (raiseServer->listen(serverName)) { - return; - } - // A stale socket left behind by a crashed run holds the name: take it back. - QLocalServer::removeServer(serverName); - if (!raiseServer->listen(serverName)) { - qWarning() << "Oracle: could not listen for raise requests on" << serverName; - delete raiseServer; - raiseServer = nullptr; - } -} - -void OracleWizard::handleRaiseRequest() -{ - while (raiseServer && raiseServer->hasPendingConnections()) { - QLocalSocket *socket = raiseServer->nextPendingConnection(); - connect(socket, &QLocalSocket::readyRead, this, [this, socket]() { - socket->readAll(); - socket->deleteLater(); - raiseWizard(); - }); - connect(socket, &QLocalSocket::disconnected, socket, &QLocalSocket::deleteLater); - } - raiseWizard(); -} - -void OracleWizard::raiseWizard() -{ - // An ongoing background run is hidden; the user asked to see it, so promote it to a window. - if (backgroundMode && !isVisible()) { - show(); - } - if (isMinimized()) { - showNormal(); - } - raise(); - activateWindow(); - if (windowHandle()) { - windowHandle()->requestActivate(); - } -} - void OracleWizard::enableButtons() { button(QWizard::NextButton)->setDisabled(false); diff --git a/oracle/src/oraclewizard.h b/oracle/src/oraclewizard.h index ea652bdc5..9a509ce5e 100644 --- a/oracle/src/oraclewizard.h +++ b/oracle/src/oraclewizard.h @@ -1,17 +1,21 @@ #ifndef ORACLEWIZARD_H #define ORACLEWIZARD_H -#include -#include #include -#include #include +class QCheckBox; +class QGroupBox; +class QComboBox; +class QLabel; +class QLineEdit; +class QRadioButton; +class QProgressBar; class QNetworkAccessManager; +class QTextEdit; +class QVBoxLayout; class OracleImporter; -class QLocalServer; class QSettings; -class QWidget; class OracleWizard : public QWizard { @@ -61,7 +65,6 @@ public: private slots: void updateLanguage(); - void handleRaiseRequest(); private: QByteArray tokensData; @@ -69,13 +72,6 @@ private: QString cardSourceVersion; void migrateOracleSettings(); - /** - * @brief Starts the local socket the hosting Cockatrice client uses to bring this wizard forward. - */ - void startRaiseServer(); - /** @brief Shows, raises and activates the wizard window. */ - void raiseWizard(); - QLocalServer *raiseServer = nullptr; ///< listens for raise requests from the hosting client protected: void changeEvent(QEvent *event) override; diff --git a/oracle/src/pages.cpp b/oracle/src/pages.cpp index 8c286fb46..566c88520 100644 --- a/oracle/src/pages.cpp +++ b/oracle/src/pages.cpp @@ -4,59 +4,36 @@ #include "main.h" #include "oracleimporter.h" #include "oraclewizard.h" +#include "pages.h" #include "pagetemplates.h" #include "version_string.h" +#include #include #include #include -#include #include #include -#include #include -#include #include -#include -#include -#include #include #include -#include -#include #include #include #include -#include -#include #include #include #include #include #include -#include -#include +#include #include #include -#include -#include -#include -#include -#include -#include -#include +#include +#include #include -#include #include #include -#include -#include -#include -#include -#include -#include - -class QWidget; #ifdef HAS_LZMA #include "lzma/decompress.h" @@ -82,12 +59,13 @@ class QWidget; #endif /** - * @brief Emits one machine-readable progress line to stdout. + * @brief Emits one machine-readable background-run progress line to stdout. * - * The hosting Cockatrice client parses these lines to drive a determinate - * progress bar. stderr stays reserved for human-readable log output. + * Used only in background mode, so the hosting Cockatrice client can parse these + * lines to drive a determinate progress bar. stderr stays reserved for + * human-readable log output. */ -static void emitProgress(const char *stage, qint64 done, qint64 total) +static void emitBackgroundProgress(const char *stage, qint64 done, qint64 total) { QTextStream out(stdout); out << "PROGRESS " << stage << ' ' << done << ' ' << total << '\n'; @@ -472,7 +450,9 @@ void LoadSetsPage::downloadSetsFile(const QUrl &url) void LoadSetsPage::actDownloadProgressSetsFile(qint64 received, qint64 total) { - emitProgress("download", received, total); + if (wizard()->backgroundMode) { + emitBackgroundProgress("download", received, total); + } if (total > 0) { progressBar->setMaximum(static_cast(total)); progressBar->setValue(static_cast(received)); @@ -531,7 +511,7 @@ void LoadSetsPage::updateParsingProgress(int bytesRead, int totalBytes) void LoadSetsPage::scanProgressToStdout(int bytesRead, int totalBytes) { - emitProgress("scan", bytesRead, totalBytes); + emitBackgroundProgress("scan", bytesRead, totalBytes); } void LoadSetsPage::beginLoadSets(bool compressedFile) @@ -838,18 +818,18 @@ void SaveSetsPage::updateTotalProgress(int cardsImported, int setIndex, const QS const int cardCount = wizard()->importer->getCardList().size(); if (wizard()->backgroundMode) { qInfo() << tr("Import finished: %1 cards.").arg(cardCount); + emitBackgroundProgress("import", totalSets, totalSets); } else { messageLog->append("" + tr("Import finished: %1 cards.").arg(cardCount) + ""); } - emitProgress("import", totalSets, totalSets); } else { progressBar->setValue(setIndex); if (wizard()->backgroundMode) { qInfo() << tr("%1: %2 cards imported").arg(setName).arg(cardsImported); + emitBackgroundProgress("import", setIndex, totalSets); } else { messageLog->append(tr("%1: %2 cards imported").arg(setName).arg(cardsImported)); } - emitProgress("import", setIndex, totalSets); } messageLog->verticalScrollBar()->setValue(messageLog->verticalScrollBar()->maximum()); diff --git a/oracle/src/pages.h b/oracle/src/pages.h index 221f032d3..d0a9fcd43 100644 --- a/oracle/src/pages.h +++ b/oracle/src/pages.h @@ -7,20 +7,22 @@ #include #include #include -#include -#include -#include +#include +#include +#include class QCheckBox; +class QGroupBox; class QComboBox; class QLabel; class QLineEdit; class QRadioButton; class QProgressBar; +class QNetworkAccessManager; class QTextEdit; -class QPushButton; -class QUrl; -class QWidget; +class QVBoxLayout; +class OracleImporter; +class QSettings; class IntroPage : public OracleWizardPage { diff --git a/oracle/src/pagetemplates.cpp b/oracle/src/pagetemplates.cpp index d37818dcb..0ffeabbb3 100644 --- a/oracle/src/pagetemplates.cpp +++ b/oracle/src/pagetemplates.cpp @@ -3,32 +3,17 @@ #include "oraclewizard.h" #include -#include #include -#include #include -#include #include -#include #include #include -#include #include -#include #include -#include -#include #include #include #include -#include -#include -#include -#include -#include -#include - -class QWidget; +#include SimpleDownloadFilePage::SimpleDownloadFilePage(QWidget *parent) : OracleWizardPage(parent) { diff --git a/oracle/src/pagetemplates.h b/oracle/src/pagetemplates.h index 2a996801d..ccad7ec62 100644 --- a/oracle/src/pagetemplates.h +++ b/oracle/src/pagetemplates.h @@ -1,21 +1,15 @@ #ifndef PAGETEMPLATES_H #define PAGETEMPLATES_H -#include -#include #include -#include -#include +class QFile; class QRadioButton; class OracleWizard; class QCheckBox; class QLabel; class QLineEdit; class QProgressBar; -class QPushButton; -class QUrl; -class QWidget; class OracleWizardPage : public QWizardPage { diff --git a/oracle/src/parsehelpers.cpp b/oracle/src/parsehelpers.cpp index 2c897031f..ee7c4eb2e 100644 --- a/oracle/src/parsehelpers.cpp +++ b/oracle/src/parsehelpers.cpp @@ -1,11 +1,7 @@ #include "parsehelpers.h" #include -#include #include -#include -#include -#include /** * Parses the card text to determine if the card should have the cipt tag diff --git a/oracle/src/raw_json_scanner.cpp b/oracle/src/raw_json_scanner.cpp index 2396b59ae..8c4633598 100644 --- a/oracle/src/raw_json_scanner.cpp +++ b/oracle/src/raw_json_scanner.cpp @@ -1,9 +1,5 @@ #include "raw_json_scanner.h" -#include -#include -#include -#include #include #include diff --git a/oracle/src/raw_json_scanner.h b/oracle/src/raw_json_scanner.h index 18030d834..04fcc52e4 100644 --- a/oracle/src/raw_json_scanner.h +++ b/oracle/src/raw_json_scanner.h @@ -1,13 +1,11 @@ #ifndef RAW_JSON_SCANNER_H #define RAW_JSON_SCANNER_H +#include #include #include -#include #include -class QByteArray; - namespace RawJson { diff --git a/qt6.imp b/qt6.imp deleted file mode 100644 index 4f09d6406..000000000 --- a/qt6.imp +++ /dev/null @@ -1,2471 +0,0 @@ -# Do not edit! Generated by generate_qt_mappings.py from -# /usr/include/qt6 -[ - { "symbol": [ "QAbstractAnimation", "private", "", "public"] }, - { "symbol": [ "QAbstractButton", "private", "", "public"] }, - { "symbol": [ "QAbstractEventDispatcher", "private", "", "public"] }, - { "symbol": [ "QAbstractEventDispatcherV2", "private", "", "public"] }, - { "symbol": [ "QAbstractFileIconProvider", "private", "", "public"] }, - { "symbol": [ "QAbstractGraphicsShapeItem", "private", "", "public"] }, - { "symbol": [ "QAbstractItemDelegate", "private", "", "public"] }, - { "symbol": [ "QAbstractItemModel", "private", "", "public"] }, - { "symbol": [ "QAbstractItemModelTester", "private", "", "public"] }, - { "symbol": [ "QAbstractItemView", "private", "", "public"] }, - { "symbol": [ "QAbstractListModel", "private", "", "public"] }, - { "symbol": [ "QAbstractNativeEventFilter", "private", "", "public"] }, - { "symbol": [ "QAbstractNetworkCache", "private", "", "public"] }, - { "symbol": [ "QAbstractOAuth", "private", "", "public"] }, - { "symbol": [ "QAbstractOAuth2", "private", "", "public"] }, - { "symbol": [ "QAbstractOAuthReplyHandler", "private", "", "public"] }, - { "symbol": [ "QAbstractPrintDialog", "private", "", "public"] }, - { "symbol": [ "QAbstractProxyModel", "private", "", "public"] }, - { "symbol": [ "QAbstractScrollArea", "private", "", "public"] }, - { "symbol": [ "QAbstractSlider", "private", "", "public"] }, - { "symbol": [ "QAbstractSocket", "private", "", "public"] }, - { "symbol": [ "QAbstractSpinBox", "private", "", "public"] }, - { "symbol": [ "QAbstractState", "private", "", "public"] }, - { "symbol": [ "QAbstractTableModel", "private", "", "public"] }, - { "symbol": [ "QAbstractTextDocumentLayout", "private", "", "public"] }, - { "symbol": [ "QAbstractTransition", "private", "", "public"] }, - { "symbol": [ "QAbstractUndoItem", "private", "", "public"] }, - { "symbol": [ "QAbstractVideoBuffer", "private", "", "public"] }, - { "symbol": [ "QAccessibilityHints", "private", "", "public"] }, - { "symbol": [ "QAccessible", "private", "", "public"] }, - { "symbol": [ "QAccessibleActionInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleAnnouncementEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleApplication", "private", "", "public"] }, - { "symbol": [ "QAccessibleAttributesInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleBridge", "private", "", "public"] }, - { "symbol": [ "QAccessibleBridgePlugin", "private", "", "public"] }, - { "symbol": [ "QAccessibleEditableTextInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleHyperlinkInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleImageInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleObject", "private", "", "public"] }, - { "symbol": [ "QAccessiblePlugin", "private", "", "public"] }, - { "symbol": [ "QAccessibleSelectionInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleStateChangeEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTableCellInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleTableInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleTableModelChangeEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextCursorEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextInsertEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextRemoveEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextSelectionEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleTextUpdateEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleValueChangeEvent", "private", "", "public"] }, - { "symbol": [ "QAccessibleValueInterface", "private", "", "public"] }, - { "symbol": [ "QAccessibleWidget", "private", "", "public"] }, - { "symbol": [ "QAccessibleWidgetV2", "private", "", "public"] }, - { "symbol": [ "QAction", "private", "", "public"] }, - { "symbol": [ "QActionEvent", "private", "", "public"] }, - { "symbol": [ "QActionGroup", "private", "", "public"] }, - { "symbol": [ "QAmbientSound", "private", "", "public"] }, - { "symbol": [ "QAnimationDriver", "private", "", "public"] }, - { "symbol": [ "QAnimationGroup", "private", "", "public"] }, - { "symbol": [ "QAnyStringView", "private", "", "public"] }, - { "symbol": [ "QApplication", "private", "", "public"] }, - { "symbol": [ "QApplicationStateChangeEvent", "private", "", "public"] }, - { "symbol": [ "QApplicationStatic", "private", "", "public"] }, - { "symbol": [ "QArgument", "private", "", "public"] }, - { "symbol": [ "QArrayData", "private", "", "public"] }, - { "symbol": [ "QArrayDataOps", "private", "", "public"] }, - { "symbol": [ "QArrayDataPointer", "private", "", "public"] }, - { "symbol": [ "QAssociativeConstIterator", "private", "", "public"] }, - { "symbol": [ "QAssociativeIterable", "private", "", "public"] }, - { "symbol": [ "QAssociativeIterator", "private", "", "public"] }, - { "symbol": [ "QAtomicInt", "private", "", "public"] }, - { "symbol": [ "QAtomicInteger", "private", "", "public"] }, - { "symbol": [ "QAtomicPointer", "private", "", "public"] }, - { "symbol": [ "QAtomicScopedValueRollback", "private", "", "public"] }, - { "symbol": [ "QAudio", "private", "", "public"] }, - { "symbol": [ "QAudioBuffer", "private", "", "public"] }, - { "symbol": [ "QAudioBufferInput", "private", "", "public"] }, - { "symbol": [ "QAudioBufferOutput", "private", "", "public"] }, - { "symbol": [ "QAudioDecoder", "private", "", "public"] }, - { "symbol": [ "QAudioDevice", "private", "", "public"] }, - { "symbol": [ "QAudioEngine", "private", "", "public"] }, - { "symbol": [ "QAudioFormat", "private", "", "public"] }, - { "symbol": [ "QAudioFrame", "private", "", "public"] }, - { "symbol": [ "QAudioInput", "private", "", "public"] }, - { "symbol": [ "QAudioListener", "private", "", "public"] }, - { "symbol": [ "QAudioOutput", "private", "", "public"] }, - { "symbol": [ "QAudioRoom", "private", "", "public"] }, - { "symbol": [ "QAudioSink", "private", "", "public"] }, - { "symbol": [ "QAudioSource", "private", "", "public"] }, - { "symbol": [ "QAuthenticator", "private", "", "public"] }, - { "symbol": [ "QBEInteger", "private", "", "public"] }, - { "symbol": [ "QBackingStore", "private", "", "public"] }, - { "symbol": [ "QBaseIterator", "private", "", "public"] }, - { "symbol": [ "QBasicMutex", "private", "", "public"] }, - { "symbol": [ "QBasicReadWriteLock", "private", "", "public"] }, - { "symbol": [ "QBasicTimer", "private", "", "public"] }, - { "symbol": [ "QBasicUtf8StringView", "private", "", "public"] }, - { "symbol": [ "QBigEndianStorageType", "private", "", "public"] }, - { "symbol": [ "QBinaryJson", "private", "", "public"] }, - { "symbol": [ "QBindable", "private", "", "public"] }, - { "symbol": [ "QBindingStatus", "private", "", "public"] }, - { "symbol": [ "QBindingStorage", "private", "", "public"] }, - { "symbol": [ "QBitArray", "private", "", "public"] }, - { "symbol": [ "QBitRef", "private", "", "public"] }, - { "symbol": [ "QBitmap", "private", "", "public"] }, - { "symbol": [ "QBluetoothAddress", "private", "", "public"] }, - { "symbol": [ "QBluetoothDeviceDiscoveryAgent", "private", "", "public"] }, - { "symbol": [ "QBluetoothDeviceInfo", "private", "", "public"] }, - { "symbol": [ "QBluetoothHostInfo", "private", "", "public"] }, - { "symbol": [ "QBluetoothLocalDevice", "private", "", "public"] }, - { "symbol": [ "QBluetoothPermission", "private", "", "public"] }, - { "symbol": [ "QBluetoothServer", "private", "", "public"] }, - { "symbol": [ "QBluetoothServiceDiscoveryAgent", "private", "", "public"] }, - { "symbol": [ "QBluetoothServiceInfo", "private", "", "public"] }, - { "symbol": [ "QBluetoothSocket", "private", "", "public"] }, - { "symbol": [ "QBluetoothUuid", "private", "", "public"] }, - { "symbol": [ "QBoxLayout", "private", "", "public"] }, - { "symbol": [ "QBrush", "private", "", "public"] }, - { "symbol": [ "QBrushData", "private", "", "public"] }, - { "symbol": [ "QBrushDataPointerDeleter", "private", "", "public"] }, - { "symbol": [ "QBuffer", "private", "", "public"] }, - { "symbol": [ "QButtonGroup", "private", "", "public"] }, - { "symbol": [ "QByteArray", "private", "", "public"] }, - { "symbol": [ "QByteArrayAlgorithms", "private", "", "public"] }, - { "symbol": [ "QByteArrayList", "private", "", "public"] }, - { "symbol": [ "QByteArrayListIterator", "private", "", "public"] }, - { "symbol": [ "QByteArrayMatcher", "private", "", "public"] }, - { "symbol": [ "QByteArrayView", "private", "", "public"] }, - { "symbol": [ "QCache", "private", "", "public"] }, - { "symbol": [ "QCalendar", "private", "", "public"] }, - { "symbol": [ "QCalendarPermission", "private", "", "public"] }, - { "symbol": [ "QCalendarWidget", "private", "", "public"] }, - { "symbol": [ "QCamera", "private", "", "public"] }, - { "symbol": [ "QCameraDevice", "private", "", "public"] }, - { "symbol": [ "QCameraFormat", "private", "", "public"] }, - { "symbol": [ "QCapturableWindow", "private", "", "public"] }, - { "symbol": [ "QCborArray", "private", "", "public"] }, - { "symbol": [ "QCborError", "private", "", "public"] }, - { "symbol": [ "QCborMap", "private", "", "public"] }, - { "symbol": [ "QCborParserError", "private", "", "public"] }, - { "symbol": [ "QCborStreamReader", "private", "", "public"] }, - { "symbol": [ "QCborStreamWriter", "private", "", "public"] }, - { "symbol": [ "QCborValue", "private", "", "public"] }, - { "symbol": [ "QCborValueConstRef", "private", "", "public"] }, - { "symbol": [ "QCborValueRef", "private", "", "public"] }, - { "symbol": [ "QChar", "private", "", "public"] }, - { "symbol": [ "QCheckBox", "private", "", "public"] }, - { "symbol": [ "QChildEvent", "private", "", "public"] }, - { "symbol": [ "QChildWindowEvent", "private", "", "public"] }, - { "symbol": [ "QChronoTimer", "private", "", "public"] }, - { "symbol": [ "QClipboard", "private", "", "public"] }, - { "symbol": [ "QCloseEvent", "private", "", "public"] }, - { "symbol": [ "QCollator", "private", "", "public"] }, - { "symbol": [ "QCollatorSortKey", "private", "", "public"] }, - { "symbol": [ "QColor", "private", "", "public"] }, - { "symbol": [ "QColorDialog", "private", "", "public"] }, - { "symbol": [ "QColorSpace", "private", "", "public"] }, - { "symbol": [ "QColorTransform", "private", "", "public"] }, - { "symbol": [ "QColormap", "private", "", "public"] }, - { "symbol": [ "QColumnView", "private", "", "public"] }, - { "symbol": [ "QComboBox", "private", "", "public"] }, - { "symbol": [ "QCommandLineOption", "private", "", "public"] }, - { "symbol": [ "QCommandLineParser", "private", "", "public"] }, - { "symbol": [ "QCommandLinkButton", "private", "", "public"] }, - { "symbol": [ "QCommonStyle", "private", "", "public"] }, - { "symbol": [ "QCompleter", "private", "", "public"] }, - { "symbol": [ "QCompressedHelpInfo", "private", "", "public"] }, - { "symbol": [ "QConcatenateTablesProxyModel", "private", "", "public"] }, - { "symbol": [ "QConicalGradient", "private", "", "public"] }, - { "symbol": [ "QConstIterator", "private", "", "public"] }, - { "symbol": [ "QContactsPermission", "private", "", "public"] }, - { "symbol": [ "QContextMenuEvent", "private", "", "public"] }, - { "symbol": [ "QContiguousCache", "private", "", "public"] }, - { "symbol": [ "QContiguousCacheData", "private", "", "public"] }, - { "symbol": [ "QContiguousCacheTypedData", "private", "", "public"] }, - { "symbol": [ "QCoreApplication", "private", "", "public"] }, - { "symbol": [ "QCryptographicHash", "private", "", "public"] }, - { "symbol": [ "QCursor", "private", "", "public"] }, - { "symbol": [ "QDBusAbstractAdaptor", "private", "", "public"] }, - { "symbol": [ "QDBusAbstractInterface", "private", "", "public"] }, - { "symbol": [ "QDBusAbstractInterfaceBase", "private", "", "public"] }, - { "symbol": [ "QDBusArgument", "private", "", "public"] }, - { "symbol": [ "QDBusConnection", "private", "", "public"] }, - { "symbol": [ "QDBusConnectionInterface", "private", "", "public"] }, - { "symbol": [ "QDBusContext", "private", "", "public"] }, - { "symbol": [ "QDBusError", "private", "", "public"] }, - { "symbol": [ "QDBusInterface", "private", "", "public"] }, - { "symbol": [ "QDBusMessage", "private", "", "public"] }, - { "symbol": [ "QDBusMetaType", "private", "", "public"] }, - { "symbol": [ "QDBusObjectPath", "private", "", "public"] }, - { "symbol": [ "QDBusPendingCall", "private", "", "public"] }, - { "symbol": [ "QDBusPendingCallWatcher", "private", "", "public"] }, - { "symbol": [ "QDBusPendingReply", "private", "", "public"] }, - { "symbol": [ "QDBusPendingReplyBase", "private", "", "public"] }, - { "symbol": [ "QDBusReply", "private", "", "public"] }, - { "symbol": [ "QDBusServer", "private", "", "public"] }, - { "symbol": [ "QDBusServiceWatcher", "private", "", "public"] }, - { "symbol": [ "QDBusSignature", "private", "", "public"] }, - { "symbol": [ "QDBusUnixFileDescriptor", "private", "", "public"] }, - { "symbol": [ "QDBusVariant", "private", "", "public"] }, - { "symbol": [ "QDBusVirtualObject", "private", "", "public"] }, - { "symbol": [ "QDataStream", "private", "", "public"] }, - { "symbol": [ "QDataWidgetMapper", "private", "", "public"] }, - { "symbol": [ "QDate", "private", "", "public"] }, - { "symbol": [ "QDateEdit", "private", "", "public"] }, - { "symbol": [ "QDateTime", "private", "", "public"] }, - { "symbol": [ "QDateTimeEdit", "private", "", "public"] }, - { "symbol": [ "QDeadlineTimer", "private", "", "public"] }, - { "symbol": [ "QDebug", "private", "", "public"] }, - { "symbol": [ "QDebugStateSaver", "private", "", "public"] }, - { "symbol": [ "QDesignerExportWidget", "private", "", "public"] }, - { "symbol": [ "QDesktopServices", "private", "", "public"] }, - { "symbol": [ "QDial", "private", "", "public"] }, - { "symbol": [ "QDialog", "private", "", "public"] }, - { "symbol": [ "QDialogButtonBox", "private", "", "public"] }, - { "symbol": [ "QDir", "private", "", "public"] }, - { "symbol": [ "QDirIterator", "private", "", "public"] }, - { "symbol": [ "QDirListing", "private", "", "public"] }, - { "symbol": [ "QDnsDomainNameRecord", "private", "", "public"] }, - { "symbol": [ "QDnsHostAddressRecord", "private", "", "public"] }, - { "symbol": [ "QDnsLookup", "private", "", "public"] }, - { "symbol": [ "QDnsMailExchangeRecord", "private", "", "public"] }, - { "symbol": [ "QDnsServiceRecord", "private", "", "public"] }, - { "symbol": [ "QDnsTextRecord", "private", "", "public"] }, - { "symbol": [ "QDnsTlsAssociationRecord", "private", "", "public"] }, - { "symbol": [ "QDockWidget", "private", "", "public"] }, - { "symbol": [ "QDomAttr", "private", "", "public"] }, - { "symbol": [ "QDomCDATASection", "private", "", "public"] }, - { "symbol": [ "QDomCharacterData", "private", "", "public"] }, - { "symbol": [ "QDomComment", "private", "", "public"] }, - { "symbol": [ "QDomDocument", "private", "", "public"] }, - { "symbol": [ "QDomDocumentFragment", "private", "", "public"] }, - { "symbol": [ "QDomDocumentType", "private", "", "public"] }, - { "symbol": [ "QDomElement", "private", "", "public"] }, - { "symbol": [ "QDomEntity", "private", "", "public"] }, - { "symbol": [ "QDomEntityReference", "private", "", "public"] }, - { "symbol": [ "QDomImplementation", "private", "", "public"] }, - { "symbol": [ "QDomNamedNodeMap", "private", "", "public"] }, - { "symbol": [ "QDomNode", "private", "", "public"] }, - { "symbol": [ "QDomNodeList", "private", "", "public"] }, - { "symbol": [ "QDomNotation", "private", "", "public"] }, - { "symbol": [ "QDomProcessingInstruction", "private", "", "public"] }, - { "symbol": [ "QDomText", "private", "", "public"] }, - { "symbol": [ "QDoubleSpinBox", "private", "", "public"] }, - { "symbol": [ "QDoubleValidator", "private", "", "public"] }, - { "symbol": [ "QDrag", "private", "", "public"] }, - { "symbol": [ "QDragEnterEvent", "private", "", "public"] }, - { "symbol": [ "QDragLeaveEvent", "private", "", "public"] }, - { "symbol": [ "QDragMoveEvent", "private", "", "public"] }, - { "symbol": [ "QDropEvent", "private", "", "public"] }, - { "symbol": [ "QDtls", "private", "", "public"] }, - { "symbol": [ "QDtlsClientVerifier", "private", "", "public"] }, - { "symbol": [ "QDynamicPropertyChangeEvent", "private", "", "public"] }, - { "symbol": [ "QEasingCurve", "private", "", "public"] }, - { "symbol": [ "QElapsedTimer", "private", "", "public"] }, - { "symbol": [ "QEnableSharedFromThis", "private", "", "public"] }, - { "symbol": [ "QEnterEvent", "private", "", "public"] }, - { "symbol": [ "QErrorMessage", "private", "", "public"] }, - { "symbol": [ "QEvent", "private", "", "public"] }, - { "symbol": [ "QEventLoop", "private", "", "public"] }, - { "symbol": [ "QEventLoopLocker", "private", "", "public"] }, - { "symbol": [ "QEventPoint", "private", "", "public"] }, - { "symbol": [ "QEventTransition", "private", "", "public"] }, - { "symbol": [ "QException", "private", "", "public"] }, - { "symbol": [ "QExplicitlySharedDataPointer", "private", "", "public"] }, - { "symbol": [ "QExposeEvent", "private", "", "public"] }, - { "symbol": [ "QFactoryInterface", "private", "", "public"] }, - { "symbol": [ "QFile", "private", "", "public"] }, - { "symbol": [ "QFileDevice", "private", "", "public"] }, - { "symbol": [ "QFileDialog", "private", "", "public"] }, - { "symbol": [ "QFileIconProvider", "private", "", "public"] }, - { "symbol": [ "QFileInfo", "private", "", "public"] }, - { "symbol": [ "QFileInfoList", "private", "", "public"] }, - { "symbol": [ "QFileOpenEvent", "private", "", "public"] }, - { "symbol": [ "QFileSelector", "private", "", "public"] }, - { "symbol": [ "QFileSystemModel", "private", "", "public"] }, - { "symbol": [ "QFileSystemWatcher", "private", "", "public"] }, - { "symbol": [ "QFinalState", "private", "", "public"] }, - { "symbol": [ "QFlag", "private", "", "public"] }, - { "symbol": [ "QFlags", "private", "", "public"] }, - { "symbol": [ "QFloat16", "private", "", "public"] }, - { "symbol": [ "QFocusEvent", "private", "", "public"] }, - { "symbol": [ "QFocusFrame", "private", "", "public"] }, - { "symbol": [ "QFont", "private", "", "public"] }, - { "symbol": [ "QFontComboBox", "private", "", "public"] }, - { "symbol": [ "QFontDatabase", "private", "", "public"] }, - { "symbol": [ "QFontDialog", "private", "", "public"] }, - { "symbol": [ "QFontInfo", "private", "", "public"] }, - { "symbol": [ "QFontMetrics", "private", "", "public"] }, - { "symbol": [ "QFontMetricsF", "private", "", "public"] }, - { "symbol": [ "QFontVariableAxis", "private", "", "public"] }, - { "symbol": [ "QForeach", "private", "", "public"] }, - { "symbol": [ "QFormDataBuilder", "private", "", "public"] }, - { "symbol": [ "QFormDataPartBuilder", "private", "", "public"] }, - { "symbol": [ "QFormLayout", "private", "", "public"] }, - { "symbol": [ "QFrame", "private", "", "public"] }, - { "symbol": [ "QFunctionPointer", "private", "", "public"] }, - { "symbol": [ "QFuture", "private", "", "public"] }, - { "symbol": [ "QFutureInterface", "private", "", "public"] }, - { "symbol": [ "QFutureInterfaceBase", "private", "", "public"] }, - { "symbol": [ "QFutureIterator", "private", "", "public"] }, - { "symbol": [ "QFutureSynchronizer", "private", "", "public"] }, - { "symbol": [ "QFutureWatcher", "private", "", "public"] }, - { "symbol": [ "QFutureWatcherBase", "private", "", "public"] }, - { "symbol": [ "QGenericArgument", "private", "", "public"] }, - { "symbol": [ "QGenericMatrix", "private", "", "public"] }, - { "symbol": [ "QGenericPlugin", "private", "", "public"] }, - { "symbol": [ "QGenericPluginFactory", "private", "", "public"] }, - { "symbol": [ "QGenericReturnArgument", "private", "", "public"] }, - { "symbol": [ "QGesture", "private", "", "public"] }, - { "symbol": [ "QGestureEvent", "private", "", "public"] }, - { "symbol": [ "QGestureRecognizer", "private", "", "public"] }, - { "symbol": [ "QGlobalStatic", "private", "", "public"] }, - { "symbol": [ "QGlyphRun", "private", "", "public"] }, - { "symbol": [ "QGradient", "private", "", "public"] }, - { "symbol": [ "QGradientStop", "private", "", "public"] }, - { "symbol": [ "QGradientStops", "private", "", "public"] }, - { "symbol": [ "QGraphicsAnchor", "private", "", "public"] }, - { "symbol": [ "QGraphicsAnchorLayout", "private", "", "public"] }, - { "symbol": [ "QGraphicsBlurEffect", "private", "", "public"] }, - { "symbol": [ "QGraphicsColorizeEffect", "private", "", "public"] }, - { "symbol": [ "QGraphicsDropShadowEffect", "private", "", "public"] }, - { "symbol": [ "QGraphicsEffect", "private", "", "public"] }, - { "symbol": [ "QGraphicsEllipseItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsGridLayout", "private", "", "public"] }, - { "symbol": [ "QGraphicsItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsItemAnimation", "private", "", "public"] }, - { "symbol": [ "QGraphicsItemGroup", "private", "", "public"] }, - { "symbol": [ "QGraphicsLayout", "private", "", "public"] }, - { "symbol": [ "QGraphicsLayoutItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsLineItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsLinearLayout", "private", "", "public"] }, - { "symbol": [ "QGraphicsObject", "private", "", "public"] }, - { "symbol": [ "QGraphicsOpacityEffect", "private", "", "public"] }, - { "symbol": [ "QGraphicsPathItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsPixmapItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsPolygonItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsProxyWidget", "private", "", "public"] }, - { "symbol": [ "QGraphicsRectItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsRotation", "private", "", "public"] }, - { "symbol": [ "QGraphicsScale", "private", "", "public"] }, - { "symbol": [ "QGraphicsScene", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneContextMenuEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneDragDropEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneHelpEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneHoverEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneMouseEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneMoveEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneResizeEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSceneWheelEvent", "private", "", "public"] }, - { "symbol": [ "QGraphicsSimpleTextItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsSvgItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsTextItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsTransform", "private", "", "public"] }, - { "symbol": [ "QGraphicsVideoItem", "private", "", "public"] }, - { "symbol": [ "QGraphicsView", "private", "", "public"] }, - { "symbol": [ "QGraphicsWidget", "private", "", "public"] }, - { "symbol": [ "QGridLayout", "private", "", "public"] }, - { "symbol": [ "QGroupBox", "private", "", "public"] }, - { "symbol": [ "QGuiApplication", "private", "", "public"] }, - { "symbol": [ "QHBoxLayout", "private", "", "public"] }, - { "symbol": [ "QHash", "private", "", "public"] }, - { "symbol": [ "QHashDummyValue", "private", "", "public"] }, - { "symbol": [ "QHashFunctions", "private", "", "public"] }, - { "symbol": [ "QHashHeterogeneousSearch", "private", "", "public"] }, - { "symbol": [ "QHashIterator", "private", "", "public"] }, - { "symbol": [ "QHashSeed", "private", "", "public"] }, - { "symbol": [ "QHeaderView", "private", "", "public"] }, - { "symbol": [ "QHelpContentItem", "private", "", "public"] }, - { "symbol": [ "QHelpContentModel", "private", "", "public"] }, - { "symbol": [ "QHelpContentWidget", "private", "", "public"] }, - { "symbol": [ "QHelpEngine", "private", "", "public"] }, - { "symbol": [ "QHelpEngineCore", "private", "", "public"] }, - { "symbol": [ "QHelpEvent", "private", "", "public"] }, - { "symbol": [ "QHelpFilterData", "private", "", "public"] }, - { "symbol": [ "QHelpFilterEngine", "private", "", "public"] }, - { "symbol": [ "QHelpFilterSettingsWidget", "private", "", "public"] }, - { "symbol": [ "QHelpGlobal", "private", "", "public"] }, - { "symbol": [ "QHelpIndexModel", "private", "", "public"] }, - { "symbol": [ "QHelpIndexWidget", "private", "", "public"] }, - { "symbol": [ "QHelpLink", "private", "", "public"] }, - { "symbol": [ "QHelpSearchEngine", "private", "", "public"] }, - { "symbol": [ "QHelpSearchEngineCore", "private", "", "public"] }, - { "symbol": [ "QHelpSearchQuery", "private", "", "public"] }, - { "symbol": [ "QHelpSearchQueryWidget", "private", "", "public"] }, - { "symbol": [ "QHelpSearchResult", "private", "", "public"] }, - { "symbol": [ "QHelpSearchResultWidget", "private", "", "public"] }, - { "symbol": [ "QHideEvent", "private", "", "public"] }, - { "symbol": [ "QHistoryState", "private", "", "public"] }, - { "symbol": [ "QHostAddress", "private", "", "public"] }, - { "symbol": [ "QHostInfo", "private", "", "public"] }, - { "symbol": [ "QHoverEvent", "private", "", "public"] }, - { "symbol": [ "QHstsPolicy", "private", "", "public"] }, - { "symbol": [ "QHttp1Configuration", "private", "", "public"] }, - { "symbol": [ "QHttp2Configuration", "private", "", "public"] }, - { "symbol": [ "QHttpHeaders", "private", "", "public"] }, - { "symbol": [ "QHttpMultiPart", "private", "", "public"] }, - { "symbol": [ "QHttpPart", "private", "", "public"] }, - { "symbol": [ "QIODevice", "private", "", "public"] }, - { "symbol": [ "QIODeviceBase", "private", "", "public"] }, - { "symbol": [ "QIPv6Address", "private", "", "public"] }, - { "symbol": [ "QIcon", "private", "", "public"] }, - { "symbol": [ "QIconDragEvent", "private", "", "public"] }, - { "symbol": [ "QIconEngine", "private", "", "public"] }, - { "symbol": [ "QIconEnginePlugin", "private", "", "public"] }, - { "symbol": [ "QIdentityProxyModel", "private", "", "public"] }, - { "symbol": [ "QImage", "private", "", "public"] }, - { "symbol": [ "QImageCapture", "private", "", "public"] }, - { "symbol": [ "QImageCleanupFunction", "private", "", "public"] }, - { "symbol": [ "QImageIOHandler", "private", "", "public"] }, - { "symbol": [ "QImageIOPlugin", "private", "", "public"] }, - { "symbol": [ "QImageReader", "private", "", "public"] }, - { "symbol": [ "QImageWriter", "private", "", "public"] }, - { "symbol": [ "QIncompatibleFlag", "private", "", "public"] }, - { "symbol": [ "QInputDevice", "private", "", "public"] }, - { "symbol": [ "QInputDialog", "private", "", "public"] }, - { "symbol": [ "QInputEvent", "private", "", "public"] }, - { "symbol": [ "QInputMethod", "private", "", "public"] }, - { "symbol": [ "QInputMethodEvent", "private", "", "public"] }, - { "symbol": [ "QInputMethodQueryEvent", "private", "", "public"] }, - { "symbol": [ "QIntValidator", "private", "", "public"] }, - { "symbol": [ "QInternal", "private", "", "public"] }, - { "symbol": [ "QItemDelegate", "private", "", "public"] }, - { "symbol": [ "QItemEditorCreator", "private", "", "public"] }, - { "symbol": [ "QItemEditorCreatorBase", "private", "", "public"] }, - { "symbol": [ "QItemEditorFactory", "private", "", "public"] }, - { "symbol": [ "QItemSelection", "private", "", "public"] }, - { "symbol": [ "QItemSelectionModel", "private", "", "public"] }, - { "symbol": [ "QItemSelectionRange", "private", "", "public"] }, - { "symbol": [ "QIterable", "private", "", "public"] }, - { "symbol": [ "QIterator", "private", "", "public"] }, - { "symbol": [ "QJSEngine", "private", "", "public"] }, - { "symbol": [ "QJSList", "private", "", "public"] }, - { "symbol": [ "QJSListForInIterator", "private", "", "public"] }, - { "symbol": [ "QJSListForOfIterator", "private", "", "public"] }, - { "symbol": [ "QJSListIndexClamp", "private", "", "public"] }, - { "symbol": [ "QJSManagedValue", "private", "", "public"] }, - { "symbol": [ "QJSNumberCoercion", "private", "", "public"] }, - { "symbol": [ "QJSPrimitiveValue", "private", "", "public"] }, - { "symbol": [ "QJSValue", "private", "", "public"] }, - { "symbol": [ "QJSValueIterator", "private", "", "public"] }, - { "symbol": [ "QJSValueList", "private", "", "public"] }, - { "symbol": [ "QJsonArray", "private", "", "public"] }, - { "symbol": [ "QJsonDocument", "private", "", "public"] }, - { "symbol": [ "QJsonObject", "private", "", "public"] }, - { "symbol": [ "QJsonParseError", "private", "", "public"] }, - { "symbol": [ "QJsonValue", "private", "", "public"] }, - { "symbol": [ "QJsonValueConstRef", "private", "", "public"] }, - { "symbol": [ "QJsonValueRef", "private", "", "public"] }, - { "symbol": [ "QKeyCombination", "private", "", "public"] }, - { "symbol": [ "QKeyEvent", "private", "", "public"] }, - { "symbol": [ "QKeyEventTransition", "private", "", "public"] }, - { "symbol": [ "QKeySequence", "private", "", "public"] }, - { "symbol": [ "QKeySequenceEdit", "private", "", "public"] }, - { "symbol": [ "QKeyValueIterator", "private", "", "public"] }, - { "symbol": [ "QLCDNumber", "private", "", "public"] }, - { "symbol": [ "QLEInteger", "private", "", "public"] }, - { "symbol": [ "QLabel", "private", "", "public"] }, - { "symbol": [ "QLatin1Char", "private", "", "public"] }, - { "symbol": [ "QLatin1String", "private", "", "public"] }, - { "symbol": [ "QLatin1StringMatcher", "private", "", "public"] }, - { "symbol": [ "QLatin1StringView", "private", "", "public"] }, - { "symbol": [ "QLayout", "private", "", "public"] }, - { "symbol": [ "QLayoutItem", "private", "", "public"] }, - { "symbol": [ "QLibrary", "private", "", "public"] }, - { "symbol": [ "QLibraryInfo", "private", "", "public"] }, - { "symbol": [ "QLine", "private", "", "public"] }, - { "symbol": [ "QLineEdit", "private", "", "public"] }, - { "symbol": [ "QLineF", "private", "", "public"] }, - { "symbol": [ "QLinearGradient", "private", "", "public"] }, - { "symbol": [ "QLinkedList", "private", "", "public"] }, - { "symbol": [ "QLinkedListData", "private", "", "public"] }, - { "symbol": [ "QLinkedListIterator", "private", "", "public"] }, - { "symbol": [ "QLinkedListNode", "private", "", "public"] }, - { "symbol": [ "QList", "private", "", "public"] }, - { "symbol": [ "QListIterator", "private", "", "public"] }, - { "symbol": [ "QListSpecialMethods", "private", "", "public"] }, - { "symbol": [ "QListSpecialMethodsBase", "private", "", "public"] }, - { "symbol": [ "QListView", "private", "", "public"] }, - { "symbol": [ "QListWidget", "private", "", "public"] }, - { "symbol": [ "QListWidgetItem", "private", "", "public"] }, - { "symbol": [ "QLittleEndianStorageType", "private", "", "public"] }, - { "symbol": [ "QLocalServer", "private", "", "public"] }, - { "symbol": [ "QLocalSocket", "private", "", "public"] }, - { "symbol": [ "QLocale", "private", "", "public"] }, - { "symbol": [ "QLocationPermission", "private", "", "public"] }, - { "symbol": [ "QLockFile", "private", "", "public"] }, - { "symbol": [ "QLoggingCategory", "private", "", "public"] }, - { "symbol": [ "QLowEnergyAdvertisingData", "private", "", "public"] }, - { "symbol": [ "QLowEnergyAdvertisingParameters", "private", "", "public"] }, - { "symbol": [ "QLowEnergyCharacteristic", "private", "", "public"] }, - { "symbol": [ "QLowEnergyCharacteristicData", "private", "", "public"] }, - { "symbol": [ "QLowEnergyConnectionParameters", "private", "", "public"] }, - { "symbol": [ "QLowEnergyController", "private", "", "public"] }, - { "symbol": [ "QLowEnergyDescriptor", "private", "", "public"] }, - { "symbol": [ "QLowEnergyDescriptorData", "private", "", "public"] }, - { "symbol": [ "QLowEnergyHandle", "private", "", "public"] }, - { "symbol": [ "QLowEnergyService", "private", "", "public"] }, - { "symbol": [ "QLowEnergyServiceData", "private", "", "public"] }, - { "symbol": [ "QMainWindow", "private", "", "public"] }, - { "symbol": [ "QMap", "private", "", "public"] }, - { "symbol": [ "QMapData", "private", "", "public"] }, - { "symbol": [ "QMapIterator", "private", "", "public"] }, - { "symbol": [ "QMargins", "private", "", "public"] }, - { "symbol": [ "QMarginsF", "private", "", "public"] }, - { "symbol": [ "QMaskGenerator", "private", "", "public"] }, - { "symbol": [ "QMatrix2x2", "private", "", "public"] }, - { "symbol": [ "QMatrix2x3", "private", "", "public"] }, - { "symbol": [ "QMatrix2x4", "private", "", "public"] }, - { "symbol": [ "QMatrix3x2", "private", "", "public"] }, - { "symbol": [ "QMatrix3x3", "private", "", "public"] }, - { "symbol": [ "QMatrix3x4", "private", "", "public"] }, - { "symbol": [ "QMatrix4x2", "private", "", "public"] }, - { "symbol": [ "QMatrix4x3", "private", "", "public"] }, - { "symbol": [ "QMatrix4x4", "private", "", "public"] }, - { "symbol": [ "QMdiArea", "private", "", "public"] }, - { "symbol": [ "QMdiSubWindow", "private", "", "public"] }, - { "symbol": [ "QMediaCaptureSession", "private", "", "public"] }, - { "symbol": [ "QMediaDevices", "private", "", "public"] }, - { "symbol": [ "QMediaFormat", "private", "", "public"] }, - { "symbol": [ "QMediaMetaData", "private", "", "public"] }, - { "symbol": [ "QMediaPlayer", "private", "", "public"] }, - { "symbol": [ "QMediaRecorder", "private", "", "public"] }, - { "symbol": [ "QMediaTimeRange", "private", "", "public"] }, - { "symbol": [ "QMenu", "private", "", "public"] }, - { "symbol": [ "QMenuBar", "private", "", "public"] }, - { "symbol": [ "QMessageAuthenticationCode", "private", "", "public"] }, - { "symbol": [ "QMessageBox", "private", "", "public"] }, - { "symbol": [ "QMessageLogContext", "private", "", "public"] }, - { "symbol": [ "QMessageLogger", "private", "", "public"] }, - { "symbol": [ "QMetaAssociation", "private", "", "public"] }, - { "symbol": [ "QMetaClassInfo", "private", "", "public"] }, - { "symbol": [ "QMetaContainer", "private", "", "public"] }, - { "symbol": [ "QMetaEnum", "private", "", "public"] }, - { "symbol": [ "QMetaMethod", "private", "", "public"] }, - { "symbol": [ "QMetaMethodArgument", "private", "", "public"] }, - { "symbol": [ "QMetaMethodReturnArgument", "private", "", "public"] }, - { "symbol": [ "QMetaObject", "private", "", "public"] }, - { "symbol": [ "QMetaProperty", "private", "", "public"] }, - { "symbol": [ "QMetaSequence", "private", "", "public"] }, - { "symbol": [ "QMetaType", "private", "", "public"] }, - { "symbol": [ "QMetaTypeId", "private", "", "public"] }, - { "symbol": [ "QMetaTypeId2", "private", "", "public"] }, - { "symbol": [ "QMetaTypeIdQObject", "private", "", "public"] }, - { "symbol": [ "QMethodRawArguments", "private", "", "public"] }, - { "symbol": [ "QMimeData", "private", "", "public"] }, - { "symbol": [ "QMimeDatabase", "private", "", "public"] }, - { "symbol": [ "QMimeType", "private", "", "public"] }, - { "symbol": [ "QModelIndex", "private", "", "public"] }, - { "symbol": [ "QModelIndexList", "private", "", "public"] }, - { "symbol": [ "QModelRoleData", "private", "", "public"] }, - { "symbol": [ "QModelRoleDataSpan", "private", "", "public"] }, - { "symbol": [ "QMouseEvent", "private", "", "public"] }, - { "symbol": [ "QMouseEventTransition", "private", "", "public"] }, - { "symbol": [ "QMoveEvent", "private", "", "public"] }, - { "symbol": [ "QMovie", "private", "", "public"] }, - { "symbol": [ "QMultiHash", "private", "", "public"] }, - { "symbol": [ "QMultiHashIterator", "private", "", "public"] }, - { "symbol": [ "QMultiMap", "private", "", "public"] }, - { "symbol": [ "QMultiMapIterator", "private", "", "public"] }, - { "symbol": [ "QMutableByteArrayListIterator", "private", "", "public"] }, - { "symbol": [ "QMutableFutureIterator", "private", "", "public"] }, - { "symbol": [ "QMutableHashIterator", "private", "", "public"] }, - { "symbol": [ "QMutableLinkedListIterator", "private", "", "public"] }, - { "symbol": [ "QMutableListIterator", "private", "", "public"] }, - { "symbol": [ "QMutableMapIterator", "private", "", "public"] }, - { "symbol": [ "QMutableMultiHashIterator", "private", "", "public"] }, - { "symbol": [ "QMutableMultiMapIterator", "private", "", "public"] }, - { "symbol": [ "QMutableSetIterator", "private", "", "public"] }, - { "symbol": [ "QMutableVectorIterator", "private", "", "public"] }, - { "symbol": [ "QMutex", "private", "", "public"] }, - { "symbol": [ "QMutexLocker", "private", "", "public"] }, - { "symbol": [ "QNativeGestureEvent", "private", "", "public"] }, - { "symbol": [ "QNativeIpcKey", "private", "", "public"] }, - { "symbol": [ "QNetworkAccessManager", "private", "", "public"] }, - { "symbol": [ "QNetworkAddressEntry", "private", "", "public"] }, - { "symbol": [ "QNetworkCacheMetaData", "private", "", "public"] }, - { "symbol": [ "QNetworkCookie", "private", "", "public"] }, - { "symbol": [ "QNetworkCookieJar", "private", "", "public"] }, - { "symbol": [ "QNetworkDatagram", "private", "", "public"] }, - { "symbol": [ "QNetworkDiskCache", "private", "", "public"] }, - { "symbol": [ "QNetworkInformation", "private", "", "public"] }, - { "symbol": [ "QNetworkInterface", "private", "", "public"] }, - { "symbol": [ "QNetworkProxy", "private", "", "public"] }, - { "symbol": [ "QNetworkProxyFactory", "private", "", "public"] }, - { "symbol": [ "QNetworkProxyQuery", "private", "", "public"] }, - { "symbol": [ "QNetworkReply", "private", "", "public"] }, - { "symbol": [ "QNetworkRequest", "private", "", "public"] }, - { "symbol": [ "QNetworkRequestFactory", "private", "", "public"] }, - { "symbol": [ "QNoDebug", "private", "", "public"] }, - { "symbol": [ "QNtfsPermissionCheckGuard", "private", "", "public"] }, - { "symbol": [ "QOAuth1", "private", "", "public"] }, - { "symbol": [ "QOAuth1Signature", "private", "", "public"] }, - { "symbol": [ "QOAuth2AuthorizationCodeFlow", "private", "", "public"] }, - { "symbol": [ "QOAuth2DeviceAuthorizationFlow", "private", "", "public"] }, - { "symbol": [ "QOAuthHttpServerReplyHandler", "private", "", "public"] }, - { "symbol": [ "QOAuthOobReplyHandler", "private", "", "public"] }, - { "symbol": [ "QOAuthUriSchemeReplyHandler", "private", "", "public"] }, - { "symbol": [ "QObject", "private", "", "public"] }, - { "symbol": [ "QObjectBindableProperty", "private", "", "public"] }, - { "symbol": [ "QObjectCleanupHandler", "private", "", "public"] }, - { "symbol": [ "QObjectComputedProperty", "private", "", "public"] }, - { "symbol": [ "QObjectData", "private", "", "public"] }, - { "symbol": [ "QObjectList", "private", "", "public"] }, - { "symbol": [ "QOcspResponse", "private", "", "public"] }, - { "symbol": [ "QOffscreenSurface", "private", "", "public"] }, - { "symbol": [ "QOpenGLBuffer", "private", "", "public"] }, - { "symbol": [ "QOpenGLContext", "private", "", "public"] }, - { "symbol": [ "QOpenGLContextGroup", "private", "", "public"] }, - { "symbol": [ "QOpenGLDebugLogger", "private", "", "public"] }, - { "symbol": [ "QOpenGLDebugMessage", "private", "", "public"] }, - { "symbol": [ "QOpenGLExtraFunctions", "private", "", "public"] }, - { "symbol": [ "QOpenGLExtraFunctionsPrivate", "private", "", "public"] }, - { "symbol": [ "QOpenGLFramebufferObject", "private", "", "public"] }, - { "symbol": [ "QOpenGLFramebufferObjectFormat", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctionsPrivate", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_0", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_1", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_2", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_3", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_4", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_1_5", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_2_0", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_2_1", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_0", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_1", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_2_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_2_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_3_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_3_3_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_0_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_0_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_1_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_1_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_2_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_2_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_3_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_3_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_4_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_4_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_5_Compatibility", "private", "", "public"] }, - { "symbol": [ "QOpenGLFunctions_4_5_Core", "private", "", "public"] }, - { "symbol": [ "QOpenGLPaintDevice", "private", "", "public"] }, - { "symbol": [ "QOpenGLPixelTransferOptions", "private", "", "public"] }, - { "symbol": [ "QOpenGLShader", "private", "", "public"] }, - { "symbol": [ "QOpenGLShaderProgram", "private", "", "public"] }, - { "symbol": [ "QOpenGLTexture", "private", "", "public"] }, - { "symbol": [ "QOpenGLTextureBlitter", "private", "", "public"] }, - { "symbol": [ "QOpenGLTimeMonitor", "private", "", "public"] }, - { "symbol": [ "QOpenGLTimerQuery", "private", "", "public"] }, - { "symbol": [ "QOpenGLVersionFunctions", "private", "", "public"] }, - { "symbol": [ "QOpenGLVersionFunctionsFactory", "private", "", "public"] }, - { "symbol": [ "QOpenGLVersionProfile", "private", "", "public"] }, - { "symbol": [ "QOpenGLVertexArrayObject", "private", "", "public"] }, - { "symbol": [ "QOpenGLWidget", "private", "", "public"] }, - { "symbol": [ "QOpenGLWindow", "private", "", "public"] }, - { "symbol": [ "QOperatingSystemVersion", "private", "", "public"] }, - { "symbol": [ "QOperatingSystemVersionBase", "private", "", "public"] }, - { "symbol": [ "QOperatingSystemVersionUnexported", "private", "", "public"] }, - { "symbol": [ "QPageLayout", "private", "", "public"] }, - { "symbol": [ "QPageRanges", "private", "", "public"] }, - { "symbol": [ "QPageSetupDialog", "private", "", "public"] }, - { "symbol": [ "QPageSize", "private", "", "public"] }, - { "symbol": [ "QPagedPaintDevice", "private", "", "public"] }, - { "symbol": [ "QPaintDevice", "private", "", "public"] }, - { "symbol": [ "QPaintDeviceWindow", "private", "", "public"] }, - { "symbol": [ "QPaintEngine", "private", "", "public"] }, - { "symbol": [ "QPaintEngineState", "private", "", "public"] }, - { "symbol": [ "QPaintEvent", "private", "", "public"] }, - { "symbol": [ "QPainter", "private", "", "public"] }, - { "symbol": [ "QPainterPath", "private", "", "public"] }, - { "symbol": [ "QPainterPathStroker", "private", "", "public"] }, - { "symbol": [ "QPainterStateGuard", "private", "", "public"] }, - { "symbol": [ "QPair", "private", "", "public"] }, - { "symbol": [ "QPalette", "private", "", "public"] }, - { "symbol": [ "QPanGesture", "private", "", "public"] }, - { "symbol": [ "QParallelAnimationGroup", "private", "", "public"] }, - { "symbol": [ "QPartialOrdering", "private", "", "public"] }, - { "symbol": [ "QPasswordDigestor", "private", "", "public"] }, - { "symbol": [ "QPauseAnimation", "private", "", "public"] }, - { "symbol": [ "QPdfBookmarkModel", "private", "", "public"] }, - { "symbol": [ "QPdfDocument", "private", "", "public"] }, - { "symbol": [ "QPdfDocumentRenderOptions", "private", "", "public"] }, - { "symbol": [ "QPdfLink", "private", "", "public"] }, - { "symbol": [ "QPdfLinkModel", "private", "", "public"] }, - { "symbol": [ "QPdfOutputIntent", "private", "", "public"] }, - { "symbol": [ "QPdfPageNavigator", "private", "", "public"] }, - { "symbol": [ "QPdfPageRenderer", "private", "", "public"] }, - { "symbol": [ "QPdfPageSelector", "private", "", "public"] }, - { "symbol": [ "QPdfSearchModel", "private", "", "public"] }, - { "symbol": [ "QPdfSelection", "private", "", "public"] }, - { "symbol": [ "QPdfView", "private", "", "public"] }, - { "symbol": [ "QPdfWriter", "private", "", "public"] }, - { "symbol": [ "QPen", "private", "", "public"] }, - { "symbol": [ "QPermission", "private", "", "public"] }, - { "symbol": [ "QPermissions", "private", "", "public"] }, - { "symbol": [ "QPersistentModelIndex", "private", "", "public"] }, - { "symbol": [ "QPicture", "private", "", "public"] }, - { "symbol": [ "QPinchGesture", "private", "", "public"] }, - { "symbol": [ "QPixelFormat", "private", "", "public"] }, - { "symbol": [ "QPixmap", "private", "", "public"] }, - { "symbol": [ "QPixmapCache", "private", "", "public"] }, - { "symbol": [ "QPlainTextDocumentLayout", "private", "", "public"] }, - { "symbol": [ "QPlainTextEdit", "private", "", "public"] }, - { "symbol": [ "QPlatformSurfaceEvent", "private", "", "public"] }, - { "symbol": [ "QPlaybackOptions", "private", "", "public"] }, - { "symbol": [ "QPluginLoader", "private", "", "public"] }, - { "symbol": [ "QPluginMetaData", "private", "", "public"] }, - { "symbol": [ "QPluginMetaDataV2", "private", "", "public"] }, - { "symbol": [ "QPoint", "private", "", "public"] }, - { "symbol": [ "QPointF", "private", "", "public"] }, - { "symbol": [ "QPointer", "private", "", "public"] }, - { "symbol": [ "QPointerEvent", "private", "", "public"] }, - { "symbol": [ "QPointingDevice", "private", "", "public"] }, - { "symbol": [ "QPointingDeviceUniqueId", "private", "", "public"] }, - { "symbol": [ "QPolygon", "private", "", "public"] }, - { "symbol": [ "QPolygonF", "private", "", "public"] }, - { "symbol": [ "QPrintDialog", "private", "", "public"] }, - { "symbol": [ "QPrintEngine", "private", "", "public"] }, - { "symbol": [ "QPrintPreviewDialog", "private", "", "public"] }, - { "symbol": [ "QPrintPreviewWidget", "private", "", "public"] }, - { "symbol": [ "QPrinter", "private", "", "public"] }, - { "symbol": [ "QPrinterInfo", "private", "", "public"] }, - { "symbol": [ "QProcess", "private", "", "public"] }, - { "symbol": [ "QProcessEnvironment", "private", "", "public"] }, - { "symbol": [ "QProgressBar", "private", "", "public"] }, - { "symbol": [ "QProgressDialog", "private", "", "public"] }, - { "symbol": [ "QPromise", "private", "", "public"] }, - { "symbol": [ "QProperty", "private", "", "public"] }, - { "symbol": [ "QPropertyAnimation", "private", "", "public"] }, - { "symbol": [ "QPropertyBinding", "private", "", "public"] }, - { "symbol": [ "QPropertyBindingError", "private", "", "public"] }, - { "symbol": [ "QPropertyBindingPrivatePtr", "private", "", "public"] }, - { "symbol": [ "QPropertyBindingSourceLocation", "private", "", "public"] }, - { "symbol": [ "QPropertyChangeHandler", "private", "", "public"] }, - { "symbol": [ "QPropertyData", "private", "", "public"] }, - { "symbol": [ "QPropertyNotifier", "private", "", "public"] }, - { "symbol": [ "QPropertyObserver", "private", "", "public"] }, - { "symbol": [ "QPropertyObserverBase", "private", "", "public"] }, - { "symbol": [ "QPropertyProxyBindingData", "private", "", "public"] }, - { "symbol": [ "QProxyStyle", "private", "", "public"] }, - { "symbol": [ "QPushButton", "private", "", "public"] }, - { "symbol": [ "QQmlAbstractUrlInterceptor", "private", "", "public"] }, - { "symbol": [ "QQmlApplicationEngine", "private", "", "public"] }, - { "symbol": [ "QQmlComponent", "private", "", "public"] }, - { "symbol": [ "QQmlContext", "private", "", "public"] }, - { "symbol": [ "QQmlDebuggingEnabler", "private", "", "public"] }, - { "symbol": [ "QQmlEngine", "private", "", "public"] }, - { "symbol": [ "QQmlEngineExtensionInterface", "private", "", "public"] }, - { "symbol": [ "QQmlEngineExtensionPlugin", "private", "", "public"] }, - { "symbol": [ "QQmlError", "private", "", "public"] }, - { "symbol": [ "QQmlExpression", "private", "", "public"] }, - { "symbol": [ "QQmlExtensionInterface", "private", "", "public"] }, - { "symbol": [ "QQmlExtensionPlugin", "private", "", "public"] }, - { "symbol": [ "QQmlFile", "private", "", "public"] }, - { "symbol": [ "QQmlFileSelector", "private", "", "public"] }, - { "symbol": [ "QQmlImageProviderBase", "private", "", "public"] }, - { "symbol": [ "QQmlIncubationController", "private", "", "public"] }, - { "symbol": [ "QQmlIncubator", "private", "", "public"] }, - { "symbol": [ "QQmlInfo", "private", "", "public"] }, - { "symbol": [ "QQmlListProperty", "private", "", "public"] }, - { "symbol": [ "QQmlListReference", "private", "", "public"] }, - { "symbol": [ "QQmlModuleRegistration", "private", "", "public"] }, - { "symbol": [ "QQmlNetworkAccessManagerFactory", "private", "", "public"] }, - { "symbol": [ "QQmlParserStatus", "private", "", "public"] }, - { "symbol": [ "QQmlProperties", "private", "", "public"] }, - { "symbol": [ "QQmlProperty", "private", "", "public"] }, - { "symbol": [ "QQmlPropertyMap", "private", "", "public"] }, - { "symbol": [ "QQmlPropertyValueSource", "private", "", "public"] }, - { "symbol": [ "QQmlScriptString", "private", "", "public"] }, - { "symbol": [ "QQmlTypeInfo", "private", "", "public"] }, - { "symbol": [ "QQmlTypeNotAvailable", "private", "", "public"] }, - { "symbol": [ "QQmlTypesExtensionInterface", "private", "", "public"] }, - { "symbol": [ "QQmlWebChannel", "private", "", "public"] }, - { "symbol": [ "QQuaternion", "private", "", "public"] }, - { "symbol": [ "QQueue", "private", "", "public"] }, - { "symbol": [ "QQuick3D", "private", "", "public"] }, - { "symbol": [ "QQuick3DGeometry", "private", "", "public"] }, - { "symbol": [ "QQuick3DInstancing", "private", "", "public"] }, - { "symbol": [ "QQuick3DObject", "private", "", "public"] }, - { "symbol": [ "QQuick3DRenderExtension", "private", "", "public"] }, - { "symbol": [ "QQuick3DTextureData", "private", "", "public"] }, - { "symbol": [ "QQuick3DTextureProviderExtension", "private", "", "public"] }, - { "symbol": [ "QQuickAsyncImageProvider", "private", "", "public"] }, - { "symbol": [ "QQuickAttachedPropertyPropagator", "private", "", "public"] }, - { "symbol": [ "QQuickFramebufferObject", "private", "", "public"] }, - { "symbol": [ "QQuickGraphicsConfiguration", "private", "", "public"] }, - { "symbol": [ "QQuickGraphicsDevice", "private", "", "public"] }, - { "symbol": [ "QQuickImageProvider", "private", "", "public"] }, - { "symbol": [ "QQuickImageResponse", "private", "", "public"] }, - { "symbol": [ "QQuickItem", "private", "", "public"] }, - { "symbol": [ "QQuickItemGrabResult", "private", "", "public"] }, - { "symbol": [ "QQuickOpenGLUtils", "private", "", "public"] }, - { "symbol": [ "QQuickPaintedItem", "private", "", "public"] }, - { "symbol": [ "QQuickRenderControl", "private", "", "public"] }, - { "symbol": [ "QQuickRenderTarget", "private", "", "public"] }, - { "symbol": [ "QQuickRhiItem", "private", "", "public"] }, - { "symbol": [ "QQuickRhiItemRenderer", "private", "", "public"] }, - { "symbol": [ "QQuickStyle", "private", "", "public"] }, - { "symbol": [ "QQuickTextDocument", "private", "", "public"] }, - { "symbol": [ "QQuickTextureFactory", "private", "", "public"] }, - { "symbol": [ "QQuickTransform", "private", "", "public"] }, - { "symbol": [ "QQuickView", "private", "", "public"] }, - { "symbol": [ "QQuickWebEngineDownloadRequest", "private", "", "public"] }, - { "symbol": [ "QQuickWebEngineProfile", "private", "", "public"] }, - { "symbol": [ "QQuickWidget", "private", "", "public"] }, - { "symbol": [ "QQuickWindow", "private", "", "public"] }, - { "symbol": [ "QRadialGradient", "private", "", "public"] }, - { "symbol": [ "QRadioButton", "private", "", "public"] }, - { "symbol": [ "QRandomGenerator", "private", "", "public"] }, - { "symbol": [ "QRandomGenerator64", "private", "", "public"] }, - { "symbol": [ "QRangeModel", "private", "", "public"] }, - { "symbol": [ "QRangeModelAdapter", "private", "", "public"] }, - { "symbol": [ "QRasterWindow", "private", "", "public"] }, - { "symbol": [ "QRawFont", "private", "", "public"] }, - { "symbol": [ "QReadLocker", "private", "", "public"] }, - { "symbol": [ "QReadWriteLock", "private", "", "public"] }, - { "symbol": [ "QRect", "private", "", "public"] }, - { "symbol": [ "QRectF", "private", "", "public"] }, - { "symbol": [ "QRecursiveMutex", "private", "", "public"] }, - { "symbol": [ "QRegExp", "private", "", "public"] }, - { "symbol": [ "QRegion", "private", "", "public"] }, - { "symbol": [ "QRegularExpression", "private", "", "public"] }, - { "symbol": [ "QRegularExpressionMatch", "private", "", "public"] }, - { "symbol": [ "QRegularExpressionMatchIterator", "private", "", "public"] }, - { "symbol": [ "QRegularExpressionValidator", "private", "", "public"] }, - { "symbol": [ "QResizeEvent", "private", "", "public"] }, - { "symbol": [ "QResource", "private", "", "public"] }, - { "symbol": [ "QRestAccessManager", "private", "", "public"] }, - { "symbol": [ "QRestReply", "private", "", "public"] }, - { "symbol": [ "QReturnArgument", "private", "", "public"] }, - { "symbol": [ "QRgb", "private", "", "public"] }, - { "symbol": [ "QRgba64", "private", "", "public"] }, - { "symbol": [ "QRgbaFloat", "private", "", "public"] }, - { "symbol": [ "QRgbaFloat16", "private", "", "public"] }, - { "symbol": [ "QRgbaFloat32", "private", "", "public"] }, - { "symbol": [ "QRhiWidget", "private", "", "public"] }, - { "symbol": [ "QRubberBand", "private", "", "public"] }, - { "symbol": [ "QRunnable", "private", "", "public"] }, - { "symbol": [ "QSGBasicGeometryNode", "private", "", "public"] }, - { "symbol": [ "QSGClipNode", "private", "", "public"] }, - { "symbol": [ "QSGDynamicTexture", "private", "", "public"] }, - { "symbol": [ "QSGFlatColorMaterial", "private", "", "public"] }, - { "symbol": [ "QSGGeometry", "private", "", "public"] }, - { "symbol": [ "QSGGeometryNode", "private", "", "public"] }, - { "symbol": [ "QSGImageNode", "private", "", "public"] }, - { "symbol": [ "QSGMaterial", "private", "", "public"] }, - { "symbol": [ "QSGMaterialShader", "private", "", "public"] }, - { "symbol": [ "QSGNinePatchNode", "private", "", "public"] }, - { "symbol": [ "QSGNode", "private", "", "public"] }, - { "symbol": [ "QSGNodeVisitor", "private", "", "public"] }, - { "symbol": [ "QSGOpacityNode", "private", "", "public"] }, - { "symbol": [ "QSGOpaqueTextureMaterial", "private", "", "public"] }, - { "symbol": [ "QSGRectangleNode", "private", "", "public"] }, - { "symbol": [ "QSGRenderNode", "private", "", "public"] }, - { "symbol": [ "QSGRendererInterface", "private", "", "public"] }, - { "symbol": [ "QSGRootNode", "private", "", "public"] }, - { "symbol": [ "QSGSimpleRectNode", "private", "", "public"] }, - { "symbol": [ "QSGSimpleTextureNode", "private", "", "public"] }, - { "symbol": [ "QSGTextNode", "private", "", "public"] }, - { "symbol": [ "QSGTexture", "private", "", "public"] }, - { "symbol": [ "QSGTextureMaterial", "private", "", "public"] }, - { "symbol": [ "QSGTextureProvider", "private", "", "public"] }, - { "symbol": [ "QSGTransformNode", "private", "", "public"] }, - { "symbol": [ "QSGVertexColorMaterial", "private", "", "public"] }, - { "symbol": [ "QSaveFile", "private", "", "public"] }, - { "symbol": [ "QScopeGuard", "private", "", "public"] }, - { "symbol": [ "QScopedArrayPointer", "private", "", "public"] }, - { "symbol": [ "QScopedPointer", "private", "", "public"] }, - { "symbol": [ "QScopedPointerArrayDeleter", "private", "", "public"] }, - { "symbol": [ "QScopedPointerDeleteLater", "private", "", "public"] }, - { "symbol": [ "QScopedPointerDeleter", "private", "", "public"] }, - { "symbol": [ "QScopedPointerObjectDeleteLater", "private", "", "public"] }, - { "symbol": [ "QScopedPointerPodDeleter", "private", "", "public"] }, - { "symbol": [ "QScopedPropertyUpdateGroup", "private", "", "public"] }, - { "symbol": [ "QScopedValueRollback", "private", "", "public"] }, - { "symbol": [ "QScreen", "private", "", "public"] }, - { "symbol": [ "QScreenCapture", "private", "", "public"] }, - { "symbol": [ "QScreenOrientationChangeEvent", "private", "", "public"] }, - { "symbol": [ "QScrollArea", "private", "", "public"] }, - { "symbol": [ "QScrollBar", "private", "", "public"] }, - { "symbol": [ "QScrollEvent", "private", "", "public"] }, - { "symbol": [ "QScrollPrepareEvent", "private", "", "public"] }, - { "symbol": [ "QScroller", "private", "", "public"] }, - { "symbol": [ "QScrollerProperties", "private", "", "public"] }, - { "symbol": [ "QScxmlCompiler", "private", "", "public"] }, - { "symbol": [ "QScxmlCppDataModel", "private", "", "public"] }, - { "symbol": [ "QScxmlDataModel", "private", "", "public"] }, - { "symbol": [ "QScxmlDynamicScxmlServiceFactory", "private", "", "public"] }, - { "symbol": [ "QScxmlError", "private", "", "public"] }, - { "symbol": [ "QScxmlEvent", "private", "", "public"] }, - { "symbol": [ "QScxmlInvokableService", "private", "", "public"] }, - { "symbol": [ "QScxmlInvokableServiceFactory", "private", "", "public"] }, - { "symbol": [ "QScxmlNullDataModel", "private", "", "public"] }, - { "symbol": [ "QScxmlStateMachine", "private", "", "public"] }, - { "symbol": [ "QScxmlStaticScxmlServiceFactory", "private", "", "public"] }, - { "symbol": [ "QScxmlTableData", "private", "", "public"] }, - { "symbol": [ "QSemaphore", "private", "", "public"] }, - { "symbol": [ "QSemaphoreReleaser", "private", "", "public"] }, - { "symbol": [ "QSequentialAnimationGroup", "private", "", "public"] }, - { "symbol": [ "QSequentialConstIterator", "private", "", "public"] }, - { "symbol": [ "QSequentialIterable", "private", "", "public"] }, - { "symbol": [ "QSequentialIterator", "private", "", "public"] }, - { "symbol": [ "QSessionManager", "private", "", "public"] }, - { "symbol": [ "QSet", "private", "", "public"] }, - { "symbol": [ "QSetIterator", "private", "", "public"] }, - { "symbol": [ "QSettings", "private", "", "public"] }, - { "symbol": [ "QSharedData", "private", "", "public"] }, - { "symbol": [ "QSharedDataPointer", "private", "", "public"] }, - { "symbol": [ "QSharedDataPointerBase", "private", "", "public"] }, - { "symbol": [ "QSharedMemory", "private", "", "public"] }, - { "symbol": [ "QSharedPointer", "private", "", "public"] }, - { "symbol": [ "QShortcut", "private", "", "public"] }, - { "symbol": [ "QShortcutEvent", "private", "", "public"] }, - { "symbol": [ "QShowEvent", "private", "", "public"] }, - { "symbol": [ "QSignalBlocker", "private", "", "public"] }, - { "symbol": [ "QSignalMapper", "private", "", "public"] }, - { "symbol": [ "QSignalSpy", "private", "", "public"] }, - { "symbol": [ "QSignalTransition", "private", "", "public"] }, - { "symbol": [ "QSinglePointEvent", "private", "", "public"] }, - { "symbol": [ "QSize", "private", "", "public"] }, - { "symbol": [ "QSizeF", "private", "", "public"] }, - { "symbol": [ "QSizeGrip", "private", "", "public"] }, - { "symbol": [ "QSizePolicy", "private", "", "public"] }, - { "symbol": [ "QSlider", "private", "", "public"] }, - { "symbol": [ "QSocketDescriptor", "private", "", "public"] }, - { "symbol": [ "QSocketNotifier", "private", "", "public"] }, - { "symbol": [ "QSortFilterProxyModel", "private", "", "public"] }, - { "symbol": [ "QSoundEffect", "private", "", "public"] }, - { "symbol": [ "QSpacerItem", "private", "", "public"] }, - { "symbol": [ "QSpan", "private", "", "public"] }, - { "symbol": [ "QSpatialSound", "private", "", "public"] }, - { "symbol": [ "QSpecialInteger", "private", "", "public"] }, - { "symbol": [ "QSpinBox", "private", "", "public"] }, - { "symbol": [ "QSplashScreen", "private", "", "public"] }, - { "symbol": [ "QSplitter", "private", "", "public"] }, - { "symbol": [ "QSplitterHandle", "private", "", "public"] }, - { "symbol": [ "QSpontaneKeyEvent", "private", "", "public"] }, - { "symbol": [ "QSql", "private", "", "public"] }, - { "symbol": [ "QSqlDatabase", "private", "", "public"] }, - { "symbol": [ "QSqlDatabaseDefaultConnectionName", "private", "", "public"] }, - { "symbol": [ "QSqlDriver", "private", "", "public"] }, - { "symbol": [ "QSqlDriverCreator", "private", "", "public"] }, - { "symbol": [ "QSqlDriverCreatorBase", "private", "", "public"] }, - { "symbol": [ "QSqlDriverPlugin", "private", "", "public"] }, - { "symbol": [ "QSqlError", "private", "", "public"] }, - { "symbol": [ "QSqlField", "private", "", "public"] }, - { "symbol": [ "QSqlIndex", "private", "", "public"] }, - { "symbol": [ "QSqlQuery", "private", "", "public"] }, - { "symbol": [ "QSqlQueryModel", "private", "", "public"] }, - { "symbol": [ "QSqlRecord", "private", "", "public"] }, - { "symbol": [ "QSqlRelation", "private", "", "public"] }, - { "symbol": [ "QSqlRelationalDelegate", "private", "", "public"] }, - { "symbol": [ "QSqlRelationalTableModel", "private", "", "public"] }, - { "symbol": [ "QSqlResult", "private", "", "public"] }, - { "symbol": [ "QSqlTableModel", "private", "", "public"] }, - { "symbol": [ "QSsl", "private", "", "public"] }, - { "symbol": [ "QSslCertificate", "private", "", "public"] }, - { "symbol": [ "QSslCertificateExtension", "private", "", "public"] }, - { "symbol": [ "QSslCipher", "private", "", "public"] }, - { "symbol": [ "QSslConfiguration", "private", "", "public"] }, - { "symbol": [ "QSslDiffieHellmanParameters", "private", "", "public"] }, - { "symbol": [ "QSslEllipticCurve", "private", "", "public"] }, - { "symbol": [ "QSslError", "private", "", "public"] }, - { "symbol": [ "QSslKey", "private", "", "public"] }, - { "symbol": [ "QSslPreSharedKeyAuthenticator", "private", "", "public"] }, - { "symbol": [ "QSslServer", "private", "", "public"] }, - { "symbol": [ "QSslSocket", "private", "", "public"] }, - { "symbol": [ "QStack", "private", "", "public"] }, - { "symbol": [ "QStackedLayout", "private", "", "public"] }, - { "symbol": [ "QStackedWidget", "private", "", "public"] }, - { "symbol": [ "QStandardItem", "private", "", "public"] }, - { "symbol": [ "QStandardItemEditorCreator", "private", "", "public"] }, - { "symbol": [ "QStandardItemModel", "private", "", "public"] }, - { "symbol": [ "QStandardPaths", "private", "", "public"] }, - { "symbol": [ "QState", "private", "", "public"] }, - { "symbol": [ "QStateMachine", "private", "", "public"] }, - { "symbol": [ "QStaticByteArrayMatcher", "private", "", "public"] }, - { "symbol": [ "QStaticByteArrayMatcherBase", "private", "", "public"] }, - { "symbol": [ "QStaticLatin1StringMatcher", "private", "", "public"] }, - { "symbol": [ "QStaticPlugin", "private", "", "public"] }, - { "symbol": [ "QStaticText", "private", "", "public"] }, - { "symbol": [ "QStatusBar", "private", "", "public"] }, - { "symbol": [ "QStatusTipEvent", "private", "", "public"] }, - { "symbol": [ "QStorageInfo", "private", "", "public"] }, - { "symbol": [ "QString", "private", "", "public"] }, - { "symbol": [ "QStringAlgorithms", "private", "", "public"] }, - { "symbol": [ "QStringBuilder", "private", "", "public"] }, - { "symbol": [ "QStringConverter", "private", "", "public"] }, - { "symbol": [ "QStringConverterBase", "private", "", "public"] }, - { "symbol": [ "QStringDecoder", "private", "", "public"] }, - { "symbol": [ "QStringEncoder", "private", "", "public"] }, - { "symbol": [ "QStringList", "private", "", "public"] }, - { "symbol": [ "QStringListModel", "private", "", "public"] }, - { "symbol": [ "QStringLiteral", "private", "", "public"] }, - { "symbol": [ "QStringMatcher", "private", "", "public"] }, - { "symbol": [ "QStringRef", "private", "", "public"] }, - { "symbol": [ "QStringTokenizer", "private", "", "public"] }, - { "symbol": [ "QStringTokenizerBase", "private", "", "public"] }, - { "symbol": [ "QStringTokenizerBaseBase", "private", "", "public"] }, - { "symbol": [ "QStringView", "private", "", "public"] }, - { "symbol": [ "QStyle", "private", "", "public"] }, - { "symbol": [ "QStyleFactory", "private", "", "public"] }, - { "symbol": [ "QStyleHintReturn", "private", "", "public"] }, - { "symbol": [ "QStyleHintReturnMask", "private", "", "public"] }, - { "symbol": [ "QStyleHintReturnVariant", "private", "", "public"] }, - { "symbol": [ "QStyleHints", "private", "", "public"] }, - { "symbol": [ "QStyleOption", "private", "", "public"] }, - { "symbol": [ "QStyleOptionButton", "private", "", "public"] }, - { "symbol": [ "QStyleOptionComboBox", "private", "", "public"] }, - { "symbol": [ "QStyleOptionComplex", "private", "", "public"] }, - { "symbol": [ "QStyleOptionDockWidget", "private", "", "public"] }, - { "symbol": [ "QStyleOptionFocusRect", "private", "", "public"] }, - { "symbol": [ "QStyleOptionFrame", "private", "", "public"] }, - { "symbol": [ "QStyleOptionGraphicsItem", "private", "", "public"] }, - { "symbol": [ "QStyleOptionGroupBox", "private", "", "public"] }, - { "symbol": [ "QStyleOptionHeader", "private", "", "public"] }, - { "symbol": [ "QStyleOptionHeaderV2", "private", "", "public"] }, - { "symbol": [ "QStyleOptionMenuItem", "private", "", "public"] }, - { "symbol": [ "QStyleOptionMenuItemV2", "private", "", "public"] }, - { "symbol": [ "QStyleOptionProgressBar", "private", "", "public"] }, - { "symbol": [ "QStyleOptionRubberBand", "private", "", "public"] }, - { "symbol": [ "QStyleOptionSizeGrip", "private", "", "public"] }, - { "symbol": [ "QStyleOptionSlider", "private", "", "public"] }, - { "symbol": [ "QStyleOptionSpinBox", "private", "", "public"] }, - { "symbol": [ "QStyleOptionTab", "private", "", "public"] }, - { "symbol": [ "QStyleOptionTabBarBase", "private", "", "public"] }, - { "symbol": [ "QStyleOptionTabWidgetFrame", "private", "", "public"] }, - { "symbol": [ "QStyleOptionTitleBar", "private", "", "public"] }, - { "symbol": [ "QStyleOptionToolBar", "private", "", "public"] }, - { "symbol": [ "QStyleOptionToolBox", "private", "", "public"] }, - { "symbol": [ "QStyleOptionToolButton", "private", "", "public"] }, - { "symbol": [ "QStyleOptionViewItem", "private", "", "public"] }, - { "symbol": [ "QStylePainter", "private", "", "public"] }, - { "symbol": [ "QStylePlugin", "private", "", "public"] }, - { "symbol": [ "QStyledItemDelegate", "private", "", "public"] }, - { "symbol": [ "QSurface", "private", "", "public"] }, - { "symbol": [ "QSurfaceFormat", "private", "", "public"] }, - { "symbol": [ "QSvgGenerator", "private", "", "public"] }, - { "symbol": [ "QSvgRenderer", "private", "", "public"] }, - { "symbol": [ "QSvgWidget", "private", "", "public"] }, - { "symbol": [ "QSwipeGesture", "private", "", "public"] }, - { "symbol": [ "QSyntaxHighlighter", "private", "", "public"] }, - { "symbol": [ "QSysInfo", "private", "", "public"] }, - { "symbol": [ "QSystemSemaphore", "private", "", "public"] }, - { "symbol": [ "QSystemTrayIcon", "private", "", "public"] }, - { "symbol": [ "QTabBar", "private", "", "public"] }, - { "symbol": [ "QTabWidget", "private", "", "public"] }, - { "symbol": [ "QTableView", "private", "", "public"] }, - { "symbol": [ "QTableWidget", "private", "", "public"] }, - { "symbol": [ "QTableWidgetItem", "private", "", "public"] }, - { "symbol": [ "QTableWidgetSelectionRange", "private", "", "public"] }, - { "symbol": [ "QTabletEvent", "private", "", "public"] }, - { "symbol": [ "QTaggedIterator", "private", "", "public"] }, - { "symbol": [ "QTaggedPointer", "private", "", "public"] }, - { "symbol": [ "QTapAndHoldGesture", "private", "", "public"] }, - { "symbol": [ "QTapGesture", "private", "", "public"] }, - { "symbol": [ "QTcpServer", "private", "", "public"] }, - { "symbol": [ "QTcpSocket", "private", "", "public"] }, - { "symbol": [ "QTemplatedMetaMethodReturnArgument", "private", "", "public"] }, - { "symbol": [ "QTemporaryDir", "private", "", "public"] }, - { "symbol": [ "QTemporaryFile", "private", "", "public"] }, - { "symbol": [ "QTest", "private", "", "public"] }, - { "symbol": [ "QTestAccessibility", "private", "", "public"] }, - { "symbol": [ "QTestData", "private", "", "public"] }, - { "symbol": [ "QTestDelayEvent", "private", "", "public"] }, - { "symbol": [ "QTestEvent", "private", "", "public"] }, - { "symbol": [ "QTestEventList", "private", "", "public"] }, - { "symbol": [ "QTestEventLoop", "private", "", "public"] }, - { "symbol": [ "QTestKeyClicksEvent", "private", "", "public"] }, - { "symbol": [ "QTestKeyEvent", "private", "", "public"] }, - { "symbol": [ "QTestMouseEvent", "private", "", "public"] }, - { "symbol": [ "QTextBlock", "private", "", "public"] }, - { "symbol": [ "QTextBlockFormat", "private", "", "public"] }, - { "symbol": [ "QTextBlockGroup", "private", "", "public"] }, - { "symbol": [ "QTextBlockUserData", "private", "", "public"] }, - { "symbol": [ "QTextBoundaryFinder", "private", "", "public"] }, - { "symbol": [ "QTextBrowser", "private", "", "public"] }, - { "symbol": [ "QTextCharFormat", "private", "", "public"] }, - { "symbol": [ "QTextCodec", "private", "", "public"] }, - { "symbol": [ "QTextCursor", "private", "", "public"] }, - { "symbol": [ "QTextDecoder", "private", "", "public"] }, - { "symbol": [ "QTextDocument", "private", "", "public"] }, - { "symbol": [ "QTextDocumentFragment", "private", "", "public"] }, - { "symbol": [ "QTextDocumentWriter", "private", "", "public"] }, - { "symbol": [ "QTextEdit", "private", "", "public"] }, - { "symbol": [ "QTextEncoder", "private", "", "public"] }, - { "symbol": [ "QTextFormat", "private", "", "public"] }, - { "symbol": [ "QTextFragment", "private", "", "public"] }, - { "symbol": [ "QTextFrame", "private", "", "public"] }, - { "symbol": [ "QTextFrameFormat", "private", "", "public"] }, - { "symbol": [ "QTextFrameLayoutData", "private", "", "public"] }, - { "symbol": [ "QTextImageFormat", "private", "", "public"] }, - { "symbol": [ "QTextInlineObject", "private", "", "public"] }, - { "symbol": [ "QTextItem", "private", "", "public"] }, - { "symbol": [ "QTextLayout", "private", "", "public"] }, - { "symbol": [ "QTextLength", "private", "", "public"] }, - { "symbol": [ "QTextLine", "private", "", "public"] }, - { "symbol": [ "QTextList", "private", "", "public"] }, - { "symbol": [ "QTextListFormat", "private", "", "public"] }, - { "symbol": [ "QTextObject", "private", "", "public"] }, - { "symbol": [ "QTextObjectInterface", "private", "", "public"] }, - { "symbol": [ "QTextOption", "private", "", "public"] }, - { "symbol": [ "QTextStream", "private", "", "public"] }, - { "symbol": [ "QTextStreamFunction", "private", "", "public"] }, - { "symbol": [ "QTextStreamManipulator", "private", "", "public"] }, - { "symbol": [ "QTextTable", "private", "", "public"] }, - { "symbol": [ "QTextTableCell", "private", "", "public"] }, - { "symbol": [ "QTextTableCellFormat", "private", "", "public"] }, - { "symbol": [ "QTextTableFormat", "private", "", "public"] }, - { "symbol": [ "QThread", "private", "", "public"] }, - { "symbol": [ "QThreadPool", "private", "", "public"] }, - { "symbol": [ "QThreadStorage", "private", "", "public"] }, - { "symbol": [ "QThreadStorageData", "private", "", "public"] }, - { "symbol": [ "QThreadStorageTraits", "private", "", "public"] }, - { "symbol": [ "QTileRules", "private", "", "public"] }, - { "symbol": [ "QTime", "private", "", "public"] }, - { "symbol": [ "QTimeEdit", "private", "", "public"] }, - { "symbol": [ "QTimeLine", "private", "", "public"] }, - { "symbol": [ "QTimeZone", "private", "", "public"] }, - { "symbol": [ "QTimer", "private", "", "public"] }, - { "symbol": [ "QTimerEvent", "private", "", "public"] }, - { "symbol": [ "QToolBar", "private", "", "public"] }, - { "symbol": [ "QToolBarChangeEvent", "private", "", "public"] }, - { "symbol": [ "QToolBox", "private", "", "public"] }, - { "symbol": [ "QToolButton", "private", "", "public"] }, - { "symbol": [ "QToolTip", "private", "", "public"] }, - { "symbol": [ "QTouchEvent", "private", "", "public"] }, - { "symbol": [ "QTransform", "private", "", "public"] }, - { "symbol": [ "QTranslator", "private", "", "public"] }, - { "symbol": [ "QTransposeProxyModel", "private", "", "public"] }, - { "symbol": [ "QTreeView", "private", "", "public"] }, - { "symbol": [ "QTreeWidget", "private", "", "public"] }, - { "symbol": [ "QTreeWidgetItem", "private", "", "public"] }, - { "symbol": [ "QTreeWidgetItemIterator", "private", "", "public"] }, - { "symbol": [ "QTypeInfo", "private", "", "public"] }, - { "symbol": [ "QTypeInfoMerger", "private", "", "public"] }, - { "symbol": [ "QTypeRevision", "private", "", "public"] }, - { "symbol": [ "QTypedArrayAllocationResult", "private", "", "public"] }, - { "symbol": [ "QTypedArrayData", "private", "", "public"] }, - { "symbol": [ "QUdpSocket", "private", "", "public"] }, - { "symbol": [ "QUiLoader", "private", "", "public"] }, - { "symbol": [ "QUndoCommand", "private", "", "public"] }, - { "symbol": [ "QUndoGroup", "private", "", "public"] }, - { "symbol": [ "QUndoStack", "private", "", "public"] }, - { "symbol": [ "QUndoView", "private", "", "public"] }, - { "symbol": [ "QUnhandledException", "private", "", "public"] }, - { "symbol": [ "QUntypedBindable", "private", "", "public"] }, - { "symbol": [ "QUntypedPropertyBinding", "private", "", "public"] }, - { "symbol": [ "QUntypedPropertyData", "private", "", "public"] }, - { "symbol": [ "QUrl", "private", "", "public"] }, - { "symbol": [ "QUrlQuery", "private", "", "public"] }, - { "symbol": [ "QUrlTwoFlags", "private", "", "public"] }, - { "symbol": [ "QUtf8StringView", "private", "", "public"] }, - { "symbol": [ "QUuid", "private", "", "public"] }, - { "symbol": [ "QVBoxLayout", "private", "", "public"] }, - { "symbol": [ "QValidator", "private", "", "public"] }, - { "symbol": [ "QVarLengthArray", "private", "", "public"] }, - { "symbol": [ "QVariant", "private", "", "public"] }, - { "symbol": [ "QVariantAnimation", "private", "", "public"] }, - { "symbol": [ "QVariantHash", "private", "", "public"] }, - { "symbol": [ "QVariantList", "private", "", "public"] }, - { "symbol": [ "QVariantMap", "private", "", "public"] }, - { "symbol": [ "QVector", "private", "", "public"] }, - { "symbol": [ "QVector2D", "private", "", "public"] }, - { "symbol": [ "QVector3D", "private", "", "public"] }, - { "symbol": [ "QVector4D", "private", "", "public"] }, - { "symbol": [ "QVectorIterator", "private", "", "public"] }, - { "symbol": [ "QVersionNumber", "private", "", "public"] }, - { "symbol": [ "QVideoFrame", "private", "", "public"] }, - { "symbol": [ "QVideoFrameFormat", "private", "", "public"] }, - { "symbol": [ "QVideoFrameInput", "private", "", "public"] }, - { "symbol": [ "QVideoSink", "private", "", "public"] }, - { "symbol": [ "QVideoWidget", "private", "", "public"] }, - { "symbol": [ "QVulkanDeviceFunctions", "private", "", "public"] }, - { "symbol": [ "QVulkanExtension", "private", "", "public"] }, - { "symbol": [ "QVulkanFunctions", "private", "", "public"] }, - { "symbol": [ "QVulkanInfoVector", "private", "", "public"] }, - { "symbol": [ "QVulkanInstance", "private", "", "public"] }, - { "symbol": [ "QVulkanLayer", "private", "", "public"] }, - { "symbol": [ "QVulkanWindow", "private", "", "public"] }, - { "symbol": [ "QVulkanWindowRenderer", "private", "", "public"] }, - { "symbol": [ "QWaitCondition", "private", "", "public"] }, - { "symbol": [ "QWaveDecoder", "private", "", "public"] }, - { "symbol": [ "QWaylandBufferRef", "private", "", "public"] }, - { "symbol": [ "QWaylandClient", "private", "", "public"] }, - { "symbol": [ "QWaylandClientExtension", "private", "", "public"] }, - { "symbol": [ "QWaylandClientExtensionTemplate", "private", "", "public"] }, - { "symbol": [ "QWaylandCompositor", "private", "", "public"] }, - { "symbol": [ "QWaylandCompositorExtension", "private", "", "public"] }, - { "symbol": [ "QWaylandCompositorExtensionTemplate", "private", "", "public"] }, - { "symbol": [ "QWaylandDestroyListener", "private", "", "public"] }, - { "symbol": [ "QWaylandDrag", "private", "", "public"] }, - { "symbol": [ "QWaylandIdleInhibitManagerV1", "private", "", "public"] }, - { "symbol": [ "QWaylandInputMethodControl", "private", "", "public"] }, - { "symbol": [ "QWaylandIviApplication", "private", "", "public"] }, - { "symbol": [ "QWaylandIviSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandKeyboard", "private", "", "public"] }, - { "symbol": [ "QWaylandKeymap", "private", "", "public"] }, - { "symbol": [ "QWaylandObject", "private", "", "public"] }, - { "symbol": [ "QWaylandOutput", "private", "", "public"] }, - { "symbol": [ "QWaylandOutputMode", "private", "", "public"] }, - { "symbol": [ "QWaylandPointer", "private", "", "public"] }, - { "symbol": [ "QWaylandQtTextInputMethod", "private", "", "public"] }, - { "symbol": [ "QWaylandQtTextInputMethodManager", "private", "", "public"] }, - { "symbol": [ "QWaylandQtWindowManager", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickCompositor", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickExtension", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickItem", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickOutput", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickShellIntegration", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickShellSurfaceItem", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandQuickXdgOutputV1", "private", "", "public"] }, - { "symbol": [ "QWaylandResource", "private", "", "public"] }, - { "symbol": [ "QWaylandSeat", "private", "", "public"] }, - { "symbol": [ "QWaylandShell", "private", "", "public"] }, - { "symbol": [ "QWaylandShellSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandShellSurfaceTemplate", "private", "", "public"] }, - { "symbol": [ "QWaylandShellTemplate", "private", "", "public"] }, - { "symbol": [ "QWaylandSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandSurfaceGrabber", "private", "", "public"] }, - { "symbol": [ "QWaylandSurfaceRole", "private", "", "public"] }, - { "symbol": [ "QWaylandTextInput", "private", "", "public"] }, - { "symbol": [ "QWaylandTextInputManager", "private", "", "public"] }, - { "symbol": [ "QWaylandTextInputManagerV3", "private", "", "public"] }, - { "symbol": [ "QWaylandTextInputV3", "private", "", "public"] }, - { "symbol": [ "QWaylandTouch", "private", "", "public"] }, - { "symbol": [ "QWaylandView", "private", "", "public"] }, - { "symbol": [ "QWaylandViewporter", "private", "", "public"] }, - { "symbol": [ "QWaylandWlShell", "private", "", "public"] }, - { "symbol": [ "QWaylandWlShellSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgDecorationManagerV1", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgOutputManagerV1", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgOutputV1", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgPopup", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgShell", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgSurface", "private", "", "public"] }, - { "symbol": [ "QWaylandXdgToplevel", "private", "", "public"] }, - { "symbol": [ "QWeakPointer", "private", "", "public"] }, - { "symbol": [ "QWebChannel", "private", "", "public"] }, - { "symbol": [ "QWebChannelAbstractTransport", "private", "", "public"] }, - { "symbol": [ "QWebEngineCertificateError", "private", "", "public"] }, - { "symbol": [ "QWebEngineClientCertificateSelection", "private", "", "public"] }, - { "symbol": [ "QWebEngineClientCertificateStore", "private", "", "public"] }, - { "symbol": [ "QWebEngineClientHints", "private", "", "public"] }, - { "symbol": [ "QWebEngineContextMenuRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineCookieStore", "private", "", "public"] }, - { "symbol": [ "QWebEngineDesktopMediaRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineDownloadRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineExtensionInfo", "private", "", "public"] }, - { "symbol": [ "QWebEngineExtensionManager", "private", "", "public"] }, - { "symbol": [ "QWebEngineFileSystemAccessRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineFindTextResult", "private", "", "public"] }, - { "symbol": [ "QWebEngineFrame", "private", "", "public"] }, - { "symbol": [ "QWebEngineFullScreenRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineGlobalSettings", "private", "", "public"] }, - { "symbol": [ "QWebEngineHistory", "private", "", "public"] }, - { "symbol": [ "QWebEngineHistoryItem", "private", "", "public"] }, - { "symbol": [ "QWebEngineHistoryModel", "private", "", "public"] }, - { "symbol": [ "QWebEngineHttpRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineLoadingInfo", "private", "", "public"] }, - { "symbol": [ "QWebEngineNavigationRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineNewWindowRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineNotification", "private", "", "public"] }, - { "symbol": [ "QWebEnginePage", "private", "", "public"] }, - { "symbol": [ "QWebEnginePermission", "private", "", "public"] }, - { "symbol": [ "QWebEngineProfile", "private", "", "public"] }, - { "symbol": [ "QWebEngineProfileBuilder", "private", "", "public"] }, - { "symbol": [ "QWebEngineQuotaRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineRegisterProtocolHandlerRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineScript", "private", "", "public"] }, - { "symbol": [ "QWebEngineScriptCollection", "private", "", "public"] }, - { "symbol": [ "QWebEngineSettings", "private", "", "public"] }, - { "symbol": [ "QWebEngineUrlRequestInfo", "private", "", "public"] }, - { "symbol": [ "QWebEngineUrlRequestInterceptor", "private", "", "public"] }, - { "symbol": [ "QWebEngineUrlRequestJob", "private", "", "public"] }, - { "symbol": [ "QWebEngineUrlScheme", "private", "", "public"] }, - { "symbol": [ "QWebEngineUrlSchemeHandler", "private", "", "public"] }, - { "symbol": [ "QWebEngineView", "private", "", "public"] }, - { "symbol": [ "QWebEngineWebAuthPinRequest", "private", "", "public"] }, - { "symbol": [ "QWebEngineWebAuthUxRequest", "private", "", "public"] }, - { "symbol": [ "QWebSocket", "private", "", "public"] }, - { "symbol": [ "QWebSocketCorsAuthenticator", "private", "", "public"] }, - { "symbol": [ "QWebSocketHandshakeOptions", "private", "", "public"] }, - { "symbol": [ "QWebSocketProtocol", "private", "", "public"] }, - { "symbol": [ "QWebSocketServer", "private", "", "public"] }, - { "symbol": [ "QWhatsThis", "private", "", "public"] }, - { "symbol": [ "QWhatsThisClickedEvent", "private", "", "public"] }, - { "symbol": [ "QWheelEvent", "private", "", "public"] }, - { "symbol": [ "QWidget", "private", "", "public"] }, - { "symbol": [ "QWidgetAction", "private", "", "public"] }, - { "symbol": [ "QWidgetData", "private", "", "public"] }, - { "symbol": [ "QWidgetItem", "private", "", "public"] }, - { "symbol": [ "QWidgetItemV2", "private", "", "public"] }, - { "symbol": [ "QWidgetList", "private", "", "public"] }, - { "symbol": [ "QWidgetMapper", "private", "", "public"] }, - { "symbol": [ "QWidgetSet", "private", "", "public"] }, - { "symbol": [ "QWinEventNotifier", "private", "", "public"] }, - { "symbol": [ "QWindow", "private", "", "public"] }, - { "symbol": [ "QWindowCapture", "private", "", "public"] }, - { "symbol": [ "QWindowList", "private", "", "public"] }, - { "symbol": [ "QWindowStateChangeEvent", "private", "", "public"] }, - { "symbol": [ "QWizard", "private", "", "public"] }, - { "symbol": [ "QWizardPage", "private", "", "public"] }, - { "symbol": [ "QWriteLocker", "private", "", "public"] }, - { "symbol": [ "QXmlAttributes", "private", "", "public"] }, - { "symbol": [ "QXmlContentHandler", "private", "", "public"] }, - { "symbol": [ "QXmlDTDHandler", "private", "", "public"] }, - { "symbol": [ "QXmlDeclHandler", "private", "", "public"] }, - { "symbol": [ "QXmlDefaultHandler", "private", "", "public"] }, - { "symbol": [ "QXmlEntityResolver", "private", "", "public"] }, - { "symbol": [ "QXmlErrorHandler", "private", "", "public"] }, - { "symbol": [ "QXmlInputSource", "private", "", "public"] }, - { "symbol": [ "QXmlLexicalHandler", "private", "", "public"] }, - { "symbol": [ "QXmlLocator", "private", "", "public"] }, - { "symbol": [ "QXmlNamespaceSupport", "private", "", "public"] }, - { "symbol": [ "QXmlParseException", "private", "", "public"] }, - { "symbol": [ "QXmlReader", "private", "", "public"] }, - { "symbol": [ "QXmlSimpleReader", "private", "", "public"] }, - { "symbol": [ "QXmlStreamAttribute", "private", "", "public"] }, - { "symbol": [ "QXmlStreamAttributes", "private", "", "public"] }, - { "symbol": [ "QXmlStreamEntityDeclaration", "private", "", "public"] }, - { "symbol": [ "QXmlStreamEntityDeclarations", "private", "", "public"] }, - { "symbol": [ "QXmlStreamEntityResolver", "private", "", "public"] }, - { "symbol": [ "QXmlStreamNamespaceDeclaration", "private", "", "public"] }, - { "symbol": [ "QXmlStreamNamespaceDeclarations", "private", "", "public"] }, - { "symbol": [ "QXmlStreamNotationDeclaration", "private", "", "public"] }, - { "symbol": [ "QXmlStreamNotationDeclarations", "private", "", "public"] }, - { "symbol": [ "QXmlStreamReader", "private", "", "public"] }, - { "symbol": [ "QXmlStreamWriter", "private", "", "public"] }, - { "symbol": [ "Q_IPV6ADDR", "private", "", "public"] }, - { "symbol": [ "Qt", "private", "", "public"] }, - { "symbol": [ "QtAlgorithms", "private", "", "public"] }, - { "symbol": [ "QtAudio", "private", "", "public"] }, - { "symbol": [ "QtBluetoothVersion", "private", "", "public"] }, - { "symbol": [ "QtCborCommon", "private", "", "public"] }, - { "symbol": [ "QtCleanUpFunction", "private", "", "public"] }, - { "symbol": [ "QtCompare", "private", "", "public"] }, - { "symbol": [ "QtCompilerDetection", "private", "", "public"] }, - { "symbol": [ "QtConcurrentFilter", "private", "", "public"] }, - { "symbol": [ "QtConcurrentMap", "private", "", "public"] }, - { "symbol": [ "QtConcurrentRun", "private", "", "public"] }, - { "symbol": [ "QtConcurrentTask", "private", "", "public"] }, - { "symbol": [ "QtConcurrentVersion", "private", "", "public"] }, - { "symbol": [ "QtConfig", "private", "", "public"] }, - { "symbol": [ "QtConnectivityVersion", "private", "", "public"] }, - { "symbol": [ "QtConstructorMacros", "private", "", "public"] }, - { "symbol": [ "QtContainerFwd", "private", "", "public"] }, - { "symbol": [ "QtCore5CompatVersion", "private", "", "public"] }, - { "symbol": [ "QtCoreGlobal", "private", "", "public"] }, - { "symbol": [ "QtCoreVersion", "private", "", "public"] }, - { "symbol": [ "QtCoverageScanner", "private", "", "public"] }, - { "symbol": [ "QtDBusVersion", "private", "", "public"] }, - { "symbol": [ "QtDarwinHelpers", "private", "", "public"] }, - { "symbol": [ "QtDebug", "private", "", "public"] }, - { "symbol": [ "QtDeprecationMarkers", "private", "", "public"] }, - { "symbol": [ "QtDeviceDiscoverySupportVersion", "private", "", "public"] }, - { "symbol": [ "QtEndian", "private", "", "public"] }, - { "symbol": [ "QtEvents", "private", "", "public"] }, - { "symbol": [ "QtExceptionHandling", "private", "", "public"] }, - { "symbol": [ "QtFFmpegMediaPluginImplVersion", "private", "", "public"] }, - { "symbol": [ "QtFbSupportVersion", "private", "", "public"] }, - { "symbol": [ "QtGlobal", "private", "", "public"] }, - { "symbol": [ "QtGuiVersion", "private", "", "public"] }, - { "symbol": [ "QtHelpVersion", "private", "", "public"] }, - { "symbol": [ "QtInputSupportVersion", "private", "", "public"] }, - { "symbol": [ "QtKmsSupportVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsAnimationVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsFolderListModelVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsPlatformVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsQmlModelsVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsSettingsVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsSharedImageVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsStyleKitImplVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsStyleKitVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsSynchronizerVersion", "private", "", "public"] }, - { "symbol": [ "QtLabsWavefrontMeshVersion", "private", "", "public"] }, - { "symbol": [ "QtLogging", "private", "", "public"] }, - { "symbol": [ "QtMalloc", "private", "", "public"] }, - { "symbol": [ "QtMath", "private", "", "public"] }, - { "symbol": [ "QtMessageHandler", "private", "", "public"] }, - { "symbol": [ "QtMultimediaQuickVersion", "private", "", "public"] }, - { "symbol": [ "QtMultimediaTestLibVersion", "private", "", "public"] }, - { "symbol": [ "QtMultimediaVersion", "private", "", "public"] }, - { "symbol": [ "QtMultimediaWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtNetworkAuthVersion", "private", "", "public"] }, - { "symbol": [ "QtNetworkVersion", "private", "", "public"] }, - { "symbol": [ "QtNumeric", "private", "", "public"] }, - { "symbol": [ "QtOpenGLVersion", "private", "", "public"] }, - { "symbol": [ "QtOpenGLWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtPacketProtocolVersion", "private", "", "public"] }, - { "symbol": [ "QtPdfQuickVersion", "private", "", "public"] }, - { "symbol": [ "QtPdfVersion", "private", "", "public"] }, - { "symbol": [ "QtPdfWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtPlugin", "private", "", "public"] }, - { "symbol": [ "QtPluginInstanceFunction", "private", "", "public"] }, - { "symbol": [ "QtPluginMetaDataFunction", "private", "", "public"] }, - { "symbol": [ "QtPrintSupportVersion", "private", "", "public"] }, - { "symbol": [ "QtPrivate", "private", "", "public"] }, - { "symbol": [ "QtProcessorDetection", "private", "", "public"] }, - { "symbol": [ "QtQmlCompilerVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlCoreVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlDebugVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlDomVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlFormatVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlIntegrationVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlLocalStorageVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlMetaVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlModelsVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlNetworkVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlToolingSettingsVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlTypeRegistrarVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlWorkerScriptVersion", "private", "", "public"] }, - { "symbol": [ "QtQmlXmlListModelVersion", "private", "", "public"] }, - { "symbol": [ "QtQmltcVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DAssetImportVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DAssetUtilsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DGlslParserVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DHelpersImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DHelpersVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DIblBakerVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DParticlesVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DRuntimeRenderVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DSpatialAudioVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DUtilsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuick3DVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2BasicStyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2BasicVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2FluentWinUI3StyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2FusionStyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2FusionVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2ImagineStyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2ImagineVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2ImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2MaterialStyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2MaterialVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2UniversalStyleImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2UniversalVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickControls2Version", "private", "", "public"] }, - { "symbol": [ "QtQuickControlsTestUtilsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickDialogs2QuickImplVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickDialogs2UtilsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickDialogs2Version", "private", "", "public"] }, - { "symbol": [ "QtQuickEffectsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickLayoutsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickParticlesVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickShapesDesignHelpersVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickShapesVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickTemplates2Version", "private", "", "public"] }, - { "symbol": [ "QtQuickTestUtilsVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickTestVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickTimelineBlendTreesVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickTimelineVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickVectorImageGeneratorVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickVectorImageHelpersVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickVectorImageVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickVersion", "private", "", "public"] }, - { "symbol": [ "QtQuickWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtResource", "private", "", "public"] }, - { "symbol": [ "QtScxmlGlobalVersion", "private", "", "public"] }, - { "symbol": [ "QtScxmlQmlVersion", "private", "", "public"] }, - { "symbol": [ "QtScxmlVersion", "private", "", "public"] }, - { "symbol": [ "QtShaderToolsVersion", "private", "", "public"] }, - { "symbol": [ "QtSpatialAudioVersion", "private", "", "public"] }, - { "symbol": [ "QtSqlVersion", "private", "", "public"] }, - { "symbol": [ "QtStartUpFunction", "private", "", "public"] }, - { "symbol": [ "QtStateMachineQmlVersion", "private", "", "public"] }, - { "symbol": [ "QtStateMachineVersion", "private", "", "public"] }, - { "symbol": [ "QtStdLibDetection", "private", "", "public"] }, - { "symbol": [ "QtSvgVersion", "private", "", "public"] }, - { "symbol": [ "QtSvgWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtSwap", "private", "", "public"] }, - { "symbol": [ "QtSystemDetection", "private", "", "public"] }, - { "symbol": [ "QtTestGui", "private", "", "public"] }, - { "symbol": [ "QtTestNetwork", "private", "", "public"] }, - { "symbol": [ "QtTestVersion", "private", "", "public"] }, - { "symbol": [ "QtTestWidgets", "private", "", "public"] }, - { "symbol": [ "QtToolsVersion", "private", "", "public"] }, - { "symbol": [ "QtTypeTraits", "private", "", "public"] }, - { "symbol": [ "QtUiPluginVersion", "private", "", "public"] }, - { "symbol": [ "QtUiToolsVersion", "private", "", "public"] }, - { "symbol": [ "QtVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandClientVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandCompositorIviapplicationVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandCompositorPresentationTimeVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandCompositorVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandCompositorWLShellVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandCompositorXdgShellVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandEglCompositorHwIntegrationVersion", "private", "", "public"] }, - { "symbol": [ "QtWaylandGlobalVersion", "private", "", "public"] }, - { "symbol": [ "QtWebChannelQuickVersion", "private", "", "public"] }, - { "symbol": [ "QtWebChannelVersion", "private", "", "public"] }, - { "symbol": [ "QtWebEngineCoreVersion", "private", "", "public"] }, - { "symbol": [ "QtWebEngineQuickVersion", "private", "", "public"] }, - { "symbol": [ "QtWebEngineWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtWebSocketsVersion", "private", "", "public"] }, - { "symbol": [ "QtWidgetsVersion", "private", "", "public"] }, - { "symbol": [ "QtWlShellIntegrationVersion", "private", "", "public"] }, - { "symbol": [ "QtXmlVersion", "private", "", "public"] }, - { "symbol": [ "operator==", "private", "", "public"] }, - { "symbol": [ "operator!=", "private", "", "public"] }, - { "symbol": [ "operator<", "private", "", "public"] }, - { "symbol": [ "operator<=", "private", "", "public"] }, - { "symbol": [ "operator>", "private", "", "public"] }, - { "symbol": [ "operator>=", "private", "", "public"] }, - { "symbol": [ "comparesEqual", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothaddress\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothdevicediscoveryagent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothdeviceinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothhostinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothlocaldevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothservicediscoveryagent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothserviceinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qbluetoothuuid\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergyadvertisingdata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergyadvertisingparameters\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergycharacteristic\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergycharacteristicdata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergyconnectionparameters\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergycontroller\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergydescriptor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergydescriptordata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergyservice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qlowenergyservicedata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtBluetooth/)?qtbluetoothversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConcurrent/)?qtconcurrentfilter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConcurrent/)?qtconcurrentmap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConcurrent/)?qtconcurrentrun\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConcurrent/)?qtconcurrenttask\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConcurrent/)?qtconcurrentversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtConnectivity/)?qtconnectivityversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qabstractanimation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qabstracteventdispatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qabstractitemmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qabstractnativeeventfilter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qabstractproxymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qanimationgroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qanystringview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qapplicationstatic\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qarraydata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qarraydataops\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qarraydatapointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qassert\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qassociativeiterable\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qatomicscopedvaluerollback\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbasictimer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbindingstorage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbitarray\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbuffer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbytearray\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbytearrayalgorithms\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbytearraylist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbytearraymatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qbytearrayview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcache\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcalendar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcborarray\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcbormap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcborstreamreader\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcborstreamwriter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcborvalue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qchar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qchronotimer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcollator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcommandlineoption\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcommandlineparser\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qconcatenatetablesproxymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcontiguouscache\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcoreapplication\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qcryptographichash\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdatastream\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdatetime\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdeadlinetimer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdebug\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdir\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdiriterator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qdirlisting\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qeasingcurve\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qelapsedtimer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qeventloop\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qexception\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfactoryinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfiledevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfileinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfileselector\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfilesystemwatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qflags\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfloat16\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qforeach\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfunctionpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfuture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfutureinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfuturesynchronizer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qfuturewatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qglobalstatic\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qhash\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qhashfunctions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qidentityproxymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qiodevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qiodevicebase\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qitemselectionmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qiterable\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qjsonarray\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qjsondocument\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qjsonobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qjsonparseerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qjsonvalue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlatin1stringmatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlatin1stringview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlibrary\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlibraryinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qline\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlocale\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qlockfile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qloggingcategory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmargins\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmessageauthenticationcode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmetaassociation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmetacontainer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmetasequence\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmetatype\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmimedata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmimedatabase\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmimetype\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qminmax\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qmutex\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qobjectcleanuphandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qoperatingsystemversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qoverload\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpair\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qparallelanimationgroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpauseanimation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpermissions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpluginloader\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpoint\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qprocess\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpromise\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qproperty\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qpropertyanimation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qqueue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qrangemodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qrangemodeladapter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qreadwritelock\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qrect\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qregularexpression\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qresource\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qrunnable\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsavefile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qscopedpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qscopedvaluerollback\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qscopeguard\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsemaphore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsequentialanimationgroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsequentialiterable\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qset\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsettings\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qshareddata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsharedmemory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsharedpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsignalmapper\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsize\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsocketnotifier\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsortfilterproxymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qspan\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstack\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstandardpaths\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstaticlatin1stringmatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstorageinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstring\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringalgorithms\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringbuilder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringconverter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringlist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringlistmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringliteral\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringmatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringtokenizer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qstringview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsysinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qsystemsemaphore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtaggedpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtclasshelpermacros\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtcoreglobal\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtcoreversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtdeprecationmarkers\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtemporarydir\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtemporaryfile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtenvironmentvariables\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtextboundaryfinder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtextstream\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qthread\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qthreadpool\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qthreadstorage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtimeline\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtimer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtimezone\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtpreprocessorsupport\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtranslator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtransposeproxymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtresource\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qttranslation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qttypetraits\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtversionchecks\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtypeinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtyperevision\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qtypes\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qurl\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qurlquery\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qutf8stringview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?quuid\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvariant\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvariantanimation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvarianthash\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvariantlist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvariantmap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvarlengtharray\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qvector\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qversionnumber\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qwaitcondition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore/)?qwineventnotifier\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qbinaryjson\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qlinkedlist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qregexp\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qstringref\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qtcore5compatversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtCore5Compat/)?qtextcodec\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusabstractadaptor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusabstractinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusargument\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusconnection\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusconnectioninterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbuscontext\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbuserror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusmessage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusmetatype\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbuspendingcall\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbuspendingreply\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusreply\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusservicewatcher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusunixfiledescriptor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qdbusvirtualobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDBus/)?qtdbusversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtDeviceDiscoverySupport/)?qtdevicediscoverysupportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtFFmpegMediaPluginImpl/)?qtffmpegmediapluginimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtFbSupport/)?qtfbsupportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qabstractfileiconprovider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qabstracttextdocumentlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaccessibilityhints\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaccessible\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaccessiblebridge\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaccessibleobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaccessibleplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qaction\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qactiongroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qbackingstore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qbitmap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qbrush\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qclipboard\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qcolor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qcolorspace\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qcolortransform\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qcursor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qdesktopservices\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qdrag\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qeventpoint\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfilesystemmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfont\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfontdatabase\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfontinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfontmetrics\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qfontvariableaxis\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qgenericmatrix\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qgenericplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qgenericpluginfactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qglyphrun\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qguiapplication\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qicon\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qiconengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qiconengineplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qimage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qimageiohandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qimagereader\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qimagewriter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qinputdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qinputmethod\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qkeysequence\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qmatrix4x4\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qmovie\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qoffscreensurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qopenglcontext\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qopenglextrafunctions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qopenglfunctions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpagedpaintdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpagelayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpageranges\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpagesize\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpaintdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpaintdevicewindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpaintengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpainter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpainterpath\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpainterstateguard\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpalette\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpdfoutputintent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpdfwriter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpen\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpicture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpixelformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpixmap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpixmapcache\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpointingdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qpolygon\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qquaternion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qrasterwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qrawfont\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qregion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qrgb\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qrgba64\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qrgbafloat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qscreen\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qsessionmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qshortcut\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qstandarditemmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qstatictext\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qstylehints\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qsurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qsurfaceformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qsyntaxhighlighter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextcursor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextdocument\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextdocumentfragment\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextdocumentwriter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextlist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtextoption\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtexttable\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtguiversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qtransform\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qundogroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qundostack\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qvalidator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qvulkanfunctions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qvulkaninstance\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qvulkanwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtGui/)?qwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qcompressedhelpinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpcontentitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpcontentwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpenginecore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpfilterdata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpfilterengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpfiltersettingswidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpindexwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelplink\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpsearchengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpsearchenginecore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpsearchquerywidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpsearchresult\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qhelpsearchresultwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtHelp/)?qthelpversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtInputSupport/)?qtinputsupportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtKmsSupport/)?qtkmssupportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsAnimation/)?qtlabsanimationversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsFolderListModel/)?qtlabsfolderlistmodelversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsPlatform/)?qtlabsplatformversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsQmlModels/)?qtlabsqmlmodelsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsSettings/)?qtlabssettingsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsSharedImage/)?qtlabssharedimageversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsStyleKit/)?qtlabsstylekitversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsStyleKitImpl/)?qtlabsstylekitimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsSynchronizer/)?qtlabssynchronizerversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtLabsWavefrontMesh/)?qtlabswavefrontmeshversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qabstractvideobuffer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudio\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiobuffer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiobufferinput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiobufferoutput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiodecoder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiodevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudioformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudioinput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiooutput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiosink\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qaudiosource\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qcamera\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qcameradevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qcapturablewindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qimagecapture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediacapturesession\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediadevices\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediaformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediametadata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediaplayer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediarecorder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qmediatimerange\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qplaybackoptions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qscreencapture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qsoundeffect\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qtaudio\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qtmultimediaversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qvideoframe\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qvideoframeformat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qvideoframeinput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qvideosink\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qwavedecoder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimedia/)?qwindowcapture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimediaQuick/)?qtmultimediaquickversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimediaTestLib/)?qtmultimediatestlibversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimediaWidgets/)?qgraphicsvideoitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimediaWidgets/)?qtmultimediawidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtMultimediaWidgets/)?qvideowidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qabstractnetworkcache\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qabstractsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qauthenticator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qdnslookup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qdtls\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qformdatabuilder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhostaddress\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhostinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhstspolicy\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhttp1configuration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhttp2configuration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhttpheaders\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qhttpmultipart\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qlocalserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qlocalsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkaccessmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkcookie\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkcookiejar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkdatagram\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkdiskcache\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkinformation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkproxy\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkreply\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qnetworkrequestfactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qocspresponse\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qpassworddigestor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qrestaccessmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qrestreply\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qssl\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslcertificate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslcertificateextension\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslcipher\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslconfiguration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qssldiffiehellmanparameters\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslellipticcurve\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslkey\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslpresharedkeyauthenticator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qsslsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qtcpserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qtcpsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qtnetworkversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetwork/)?qudpsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qabstractoauth\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qabstractoauth2\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qabstractoauthreplyhandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauth1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauth1signature\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauth2authorizationcodeflow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauth2deviceauthorizationflow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauthhttpserverreplyhandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauthoobreplyhandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qoauthurischemereplyhandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtNetworkAuth/)?qtnetworkauthversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglbuffer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglframebufferobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_0\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_2\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_3\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_4\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_1_5\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_2_0\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_2_1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_0\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_2_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_2_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_3_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_3_3_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_0_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_0_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_1_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_1_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_2_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_2_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_3_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_3_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_4_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_4_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_5_compatibility\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglfunctions_4_5_core\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglpaintdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglpixeltransferoptions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglshaderprogram\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopengltexture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopengltextureblitter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopengltimerquery\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglversionfunctions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglversionfunctionsfactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglversionprofile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglvertexarrayobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qopenglwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGL/)?qtopenglversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGLWidgets/)?qopenglwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtOpenGLWidgets/)?qtopenglwidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPacketProtocol/)?qtpacketprotocolversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfbookmarkmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfdocument\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfdocumentrenderoptions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdflink\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdflinkmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfpagenavigator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfpagerenderer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfsearchmodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qpdfselection\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdf/)?qtpdfversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdfQuick/)?qtpdfquickversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdfWidgets/)?qpdfpageselector\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdfWidgets/)?qpdfview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPdfWidgets/)?qtpdfwidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qabstractprintdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qpagesetupdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprintdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprintengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprinter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprinterinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprintpreviewdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qprintpreviewwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtPrintSupport/)?qtprintsupportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjslist\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsmanagedvalue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsnumbercoercion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsprimitivevalue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsvalue\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qjsvalueiterator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlabstracturlinterceptor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlapplicationengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlcomponent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlcontext\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlexpression\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlextensioninterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlextensionplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlfile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlfileselector\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlincubator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlmoduleregistration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlnetworkaccessmanagerfactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlparserstatus\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlproperty\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlpropertymap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlpropertyvaluesource\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qqmlscriptstring\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQml/)?qtqmlversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlCompiler/)?qtqmlcompilerversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlCore/)?qtqmlcoreversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlDebug/)?qtqmldebugversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlDom/)?qtqmldomversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlFormat/)?qtqmlformatversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlIntegration/)?qtqmlintegrationversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlLocalStorage/)?qtqmllocalstorageversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlMeta/)?qtqmlmetaversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlModels/)?qtqmlmodelsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlNetwork/)?qtqmlnetworkversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlToolingSettings/)?qtqmltoolingsettingsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlTypeRegistrar/)?qtqmltyperegistrarversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlWorkerScript/)?qtqmlworkerscriptversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmlXmlListModel/)?qtqmlxmllistmodelversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQmltc/)?qtqmltcversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickframebufferobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickgraphicsconfiguration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickgraphicsdevice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickimageprovider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickitemgrabresult\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickopenglutils\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickpainteditem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickrendercontrol\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickrendertarget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickrhiitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquicktextdocument\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qquickwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgflatcolormaterial\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsggeometry\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgimagenode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgmaterial\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgmaterialshader\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgninepatchnode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgnode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgrectanglenode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgrendererinterface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgrendernode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgsimplerectnode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgsimpletexturenode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgtextnode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgtexture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgtexturematerial\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgtextureprovider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qsgvertexcolormaterial\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick/)?qtquickversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3d\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3dgeometry\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3dinstancing\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3dobject\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3dtexturedata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qquick3dtextureproviderextension\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3D/)?qtquick3dversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DAssetImport/)?qtquick3dassetimportversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DAssetUtils/)?qtquick3dassetutilsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DGlslParser/)?qtquick3dglslparserversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DHelpers/)?qtquick3dhelpersversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DHelpersImpl/)?qtquick3dhelpersimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DIblBaker/)?qtquick3diblbakerversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DParticles/)?qtquick3dparticlesversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DRuntimeRender/)?qtquick3druntimerenderversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DSpatialAudio/)?qtquick3dspatialaudioversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuick3DUtils/)?qtquick3dutilsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2/)?qquickattachedpropertypropagator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2/)?qquickstyle\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2/)?qtquickcontrols2version\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Basic/)?qtquickcontrols2basicversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2BasicStyleImpl/)?qtquickcontrols2basicstyleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2FluentWinUI3StyleImpl/)?qtquickcontrols2fluentwinui3styleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Fusion/)?qtquickcontrols2fusionversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2FusionStyleImpl/)?qtquickcontrols2fusionstyleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Imagine/)?qtquickcontrols2imagineversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2ImagineStyleImpl/)?qtquickcontrols2imaginestyleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Impl/)?qtquickcontrols2implversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Material/)?qtquickcontrols2materialversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2MaterialStyleImpl/)?qtquickcontrols2materialstyleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2Universal/)?qtquickcontrols2universalversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControls2UniversalStyleImpl/)?qtquickcontrols2universalstyleimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickControlsTestUtils/)?qtquickcontrolstestutilsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickDialogs2/)?qtquickdialogs2version\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickDialogs2QuickImpl/)?qtquickdialogs2quickimplversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickDialogs2Utils/)?qtquickdialogs2utilsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickEffects/)?qtquickeffectsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickLayouts/)?qtquicklayoutsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickParticles/)?qtquickparticlesversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickShapes/)?qtquickshapesversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickShapesDesignHelpers/)?qtquickshapesdesignhelpersversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickTemplates2/)?qtquicktemplates2version\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickTest/)?qtquicktestversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickTestUtils/)?qtquicktestutilsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickTimeline/)?qtquicktimelineversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickTimelineBlendTrees/)?qtquicktimelineblendtreesversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickVectorImage/)?qtquickvectorimageversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickVectorImageGenerator/)?qtquickvectorimagegeneratorversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickVectorImageHelpers/)?qtquickvectorimagehelpersversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickWidgets/)?qquickwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtQuickWidgets/)?qtquickwidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlcompiler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlcppdatamodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmldatamodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlevent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlinvokableservice\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlnulldatamodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmlstatemachine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qscxmltabledata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxml/)?qtscxmlversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxmlGlobal/)?qtscxmlglobalversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtScxmlQml/)?qtscxmlqmlversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtShaderTools/)?qtshadertoolsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qambientsound\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qaudioengine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qaudiolistener\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qaudioroom\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qspatialsound\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSpatialAudio/)?qtspatialaudioversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqldatabase\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqldriver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqldriverplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlfield\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlindex\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlquery\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlquerymodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlrecord\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlrelationaldelegate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlrelationaltablemodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqlresult\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qsqltablemodel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSql/)?qtsqlversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qabstractstate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qabstracttransition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qeventtransition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qfinalstate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qhistorystate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qkeyeventtransition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qmouseeventtransition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qsignaltransition\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qstate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qstatemachine\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachine/)?qtstatemachineversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtStateMachineQml/)?qtstatemachineqmlversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvg/)?qsvggenerator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvg/)?qsvgrenderer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvg/)?qtsvgversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvgWidgets/)?qgraphicssvgitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvgWidgets/)?qsvgwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtSvgWidgets/)?qtsvgwidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qabstractitemmodeltester\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qsignalspy\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qtest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qtestdata\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qtestevent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qtesteventloop\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTest/)?qttestversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtTools/)?qttoolsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtUiPlugin/)?qdesignerexportwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtUiPlugin/)?qtuipluginversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtUiTools/)?qtuitoolsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtUiTools/)?quiloader\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandClient/)?qtwaylandclientversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandClient/)?qwaylandclientextension\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qtwaylandcompositorversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandbufferref\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandclient\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandcompositor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandcompositorextension\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylanddestroylistener\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylanddrag\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandinputmethodcontrol\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandiviapplication\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandivisurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandkeyboard\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandkeymap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandoutput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandoutputmode\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandpointer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandqttextinputmethod\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandqttextinputmethodmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandqtwindowmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickcompositor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickextension\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickoutput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickshellintegration\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickshellsurfaceitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquicksurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandquickxdgoutputv1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandresource\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandseat\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandshell\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandshellsurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandsurface\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandsurfacegrabber\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandtextinput\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandtextinputmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandtextinputmanagerv3\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandtextinputv3\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandtouch\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandviewporter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandwlshell\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandxdgoutputv1\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositor/)?qwaylandxdgshell\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositorIviapplication/)?qtwaylandcompositoriviapplicationversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositorPresentationTime/)?qtwaylandcompositorpresentationtimeversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositorWLShell/)?qtwaylandcompositorwlshellversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandCompositorXdgShell/)?qtwaylandcompositorxdgshellversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandEglCompositorHwIntegration/)?qtwaylandeglcompositorhwintegrationversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWaylandGlobal/)?qtwaylandglobalversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebChannel/)?qtwebchannelversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebChannel/)?qwebchannel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebChannel/)?qwebchannelabstracttransport\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebChannelQuick/)?qqmlwebchannel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebChannelQuick/)?qtwebchannelquickversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qtwebenginecoreversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginecertificateerror\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineclientcertificateselection\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineclientcertificatestore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineclienthints\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginecontextmenurequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginecookiestore\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginedesktopmediarequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginedownloadrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineextensioninfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineextensionmanager\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginefilesystemaccessrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginefindtextresult\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineframe\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginefullscreenrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineglobalsettings\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginehistory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginehttprequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineloadinginfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginenavigationrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginenewwindowrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginenotification\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginepage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginepermission\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineprofile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineprofilebuilder\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginequotarequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineregisterprotocolhandlerrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginescript\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginescriptcollection\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginesettings\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineurlrequestinfo\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineurlrequestinterceptor\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineurlrequestjob\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineurlscheme\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebengineurlschemehandler\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineCore/)?qwebenginewebauthuxrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineQuick/)?qquickwebenginedownloadrequest\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineQuick/)?qquickwebengineprofile\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineQuick/)?qtwebenginequickversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineWidgets/)?qtwebenginewidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebEngineWidgets/)?qwebengineview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qmaskgenerator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qtwebsocketsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qwebsocket\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qwebsocketcorsauthenticator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qwebsockethandshakeoptions\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qwebsocketprotocol\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWebSockets/)?qwebsocketserver\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractbutton\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractitemdelegate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractitemview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractscrollarea\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractslider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qabstractspinbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qaccessiblewidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qapplication\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qboxlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qbuttongroup\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcalendarwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcheckbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcolordialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcolormap\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcolumnview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcombobox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcommandlinkbutton\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcommonstyle\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qcompleter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdatawidgetmapper\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdatetimeedit\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdial\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdialogbuttonbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qdockwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qerrormessage\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qfiledialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qfileiconprovider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qfocusframe\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qfontcombobox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qfontdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qformlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qframe\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgesture\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgesturerecognizer\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsanchorlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicseffect\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsgridlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsitemanimation\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicslayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicslayoutitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicslinearlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsproxywidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsscene\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicssceneevent\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicstransform\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicsview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgraphicswidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgridlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qgroupbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qheaderview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qinputdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qitemdelegate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qitemeditorfactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qkeysequenceedit\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlabel\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlayoutitem\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlcdnumber\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlineedit\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlistview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qlistwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmainwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmdiarea\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmdisubwindow\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmenu\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmenubar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qmessagebox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qplaintextedit\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qprogressbar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qprogressdialog\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qproxystyle\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qpushbutton\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qradiobutton\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qrhiwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qrubberband\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qscrollarea\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qscrollbar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qscroller\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qscrollerproperties\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qsizegrip\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qsizepolicy\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qslider\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qspinbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qsplashscreen\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qsplitter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstackedlayout\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstackedwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstatusbar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstyle\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstyleditemdelegate\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstylefactory\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstyleoption\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstylepainter\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qstyleplugin\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qsystemtrayicon\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtabbar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtableview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtablewidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtabwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtextbrowser\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtextedit\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtoolbar\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtoolbox\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtoolbutton\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtooltip\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtreeview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtreewidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtreewidgetitemiterator\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qtwidgetsversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qundoview\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qwhatsthis\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qwidget\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qwidgetaction\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWidgets/)?qwizard\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtWlShellIntegration/)?qtwlshellintegrationversion\\.h[\">]", "private", "", "public"] }, - { "include": [ "@[\"<](QtXml/)?qtxmlversion\\.h[\">]", "private", "", "public"] } -] diff --git a/servatrice/servatrice.ini.example b/servatrice/servatrice.ini.example index c625705da..ccd4f3c3f 100644 --- a/servatrice/servatrice.ini.example +++ b/servatrice/servatrice.ini.example @@ -41,12 +41,6 @@ websocket_host=any ; The TCP port number servatrice will listen on for websockets clients; default is 4748 websocket_port=4748 -; If websockets are served through a reverse proxy (e.g. nginx), the real client address can be -; read from an HTTP header such as X-Forwarded-For. The header is ONLY trusted when the websocket -; connection itself originates from an address listed in security/trusted_sources (default 127.0.0.1,::1), -; so that clients cannot spoof their address to bypass bans or rate limits. -web_socket_ip_header= - ; When database is enabled, servatrice writes the server status in the "update" database table; this ; setting defines every how many milliseconds servatrice will update its status; default is 15000 (15 secs) statusupdate=15000 diff --git a/servatrice/src/email_parser.cpp b/servatrice/src/email_parser.cpp index 44c788e67..d8c30d852 100644 --- a/servatrice/src/email_parser.cpp +++ b/servatrice/src/email_parser.cpp @@ -1,8 +1,6 @@ #include "email_parser.h" #include -#include -#include #include QPair EmailParser::parseEmailAddress(const QString &dirtyEmailAddress) diff --git a/servatrice/src/event_loop_watchdog.cpp b/servatrice/src/event_loop_watchdog.cpp index a2f20ff1c..e50bd4201 100644 --- a/servatrice/src/event_loop_watchdog.cpp +++ b/servatrice/src/event_loop_watchdog.cpp @@ -8,8 +8,6 @@ #include "servatrice.h" #include -#include -#include EventLoopWatchdog::EventLoopWatchdog(Servatrice *_servatrice, QString _threadName) : QObject(nullptr), servatrice(_servatrice), threadName(std::move(_threadName)) diff --git a/servatrice/src/event_loop_watchdog.h b/servatrice/src/event_loop_watchdog.h index d05430eaa..b9061ff97 100644 --- a/servatrice/src/event_loop_watchdog.h +++ b/servatrice/src/event_loop_watchdog.h @@ -9,7 +9,6 @@ #include #include #include -#include class Servatrice; class QTimer; diff --git a/servatrice/src/isl_interface.cpp b/servatrice/src/isl_interface.cpp index a78ee9e72..b0ee201bf 100644 --- a/servatrice/src/isl_interface.cpp +++ b/servatrice/src/isl_interface.cpp @@ -1,34 +1,11 @@ #include "isl_interface.h" -#include "libcockatrice/protocol/pb/commands.pb.h" -#include "libcockatrice/protocol/pb/room_commands.pb.h" -#include "libcockatrice/protocol/pb/room_event.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_room.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" #include "main.h" -#include "servatrice.h" -#include "server_abstractuserinterface.h" #include "server_logger.h" -#include "serverinfo_user_container.h" -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include #include -#include -#include #include #include #include @@ -40,15 +17,11 @@ #include #include #include +#include #include -#include -#include #include #include -// Maximum size of a single ISL message. -static const int MAX_ISL_MESSAGE_SIZE = 4 * 1024 * 1024; - inline Q_LOGGING_CATEGORY(IslInterfaceLog, "isl_interface"); void IslInterface::sharedCtor(const QSslCertificate &cert, const QSslKey &privateKey) @@ -270,13 +243,6 @@ void IslInterface::readClient() (((quint32)(unsigned char)inputBuffer[1]) << 16) + (((quint32)(unsigned char)inputBuffer[2]) << 8) + ((quint32)(unsigned char)inputBuffer[3]); - // Reject implausible lengths instead of buffering until they arrive. - // This also handles lengths that overflow into negative int values. - if (messageLength < 0 || messageLength > MAX_ISL_MESSAGE_SIZE) { - qCWarning(IslInterfaceLog) << "Invalid message length" << messageLength << "from" << peerAddress; - socket->disconnectFromHost(); - return; - } inputBuffer.remove(0, 4); messageInProgress = true; } else { diff --git a/servatrice/src/isl_interface.h b/servatrice/src/isl_interface.h index f7680c0a2..27e5b8293 100644 --- a/servatrice/src/isl_interface.h +++ b/servatrice/src/isl_interface.h @@ -1,26 +1,21 @@ #ifndef ISL_INTERFACE_H #define ISL_INTERFACE_H -#include -#include -#include -#include -#include -#include +#include "servatrice.h" -// IWYU pragma: keep -// ServerInfo_User and ServerInfo_Game are passed by value to signals, so the -// moc-generated code needs the complete types. -#include +#include +#include #include +#include #include -#include class Servatrice; class QSslSocket; class QSslKey; class IslMessage; + class Event_ServerCompleteList; +class Event_UserMessage; class Event_UserJoined; class Event_UserLeft; class Event_JoinRoom; @@ -29,11 +24,6 @@ class Event_RoomSay; class Event_ListGames; class Event_RemoveMessages; class Command_JoinGame; -class CommandContainer; -class GameEventContainer; -class Response; -class RoomEvent; -class SessionEvent; class IslInterface : public QObject { diff --git a/servatrice/src/main.cpp b/servatrice/src/main.cpp index eb019a2b7..13bf95a82 100644 --- a/servatrice/src/main.cpp +++ b/servatrice/src/main.cpp @@ -18,7 +18,6 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -#include "libcockatrice/rng/rng_abstract.h" #include "servatrice.h" #include "server_logger.h" #include "settingscache.h" @@ -26,29 +25,16 @@ #include "smtpclient.h" #include "version_string.h" -#include #include #include #include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include +#include #include #include #include #include -#include -#include -#include RNG_Abstract *rng; ServerLogger *logger; diff --git a/servatrice/src/metrics_registry.cpp b/servatrice/src/metrics_registry.cpp index 51abb7e3e..99ce390f1 100644 --- a/servatrice/src/metrics_registry.cpp +++ b/servatrice/src/metrics_registry.cpp @@ -1,7 +1,6 @@ #include "metrics_registry.h" #include -#include void MetricsRegistry::observeCommand(int typeId, qint64 elapsedMs) { diff --git a/servatrice/src/metrics_registry.h b/servatrice/src/metrics_registry.h index 1175d03c4..4df1057c2 100644 --- a/servatrice/src/metrics_registry.h +++ b/servatrice/src/metrics_registry.h @@ -7,7 +7,7 @@ #define METRICS_REGISTRY_H #include -#include +#include #include #include diff --git a/servatrice/src/servatrice.cpp b/servatrice/src/servatrice.cpp index 0329a31fd..3dd7ab510 100644 --- a/servatrice/src/servatrice.cpp +++ b/servatrice/src/servatrice.cpp @@ -22,14 +22,10 @@ #include "email_parser.h" #include "event_loop_watchdog.h" #include "isl_interface.h" -#include "libcockatrice/protocol/pb/response_report_stats.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" #include "main.h" #include "servatrice_connection_pool.h" #include "servatrice_database_interface.h" -#include "server.h" #include "server_logger.h" -#include "server_protocolhandler.h" #include "serversocketinterface.h" #include "settingscache.h" #include "smtpclient.h" @@ -37,37 +33,20 @@ #include #include #include -#include -#include -#include -#include -#include #include -#include -#include -#include #include -#include #include #include -#include #include -#include #include -#include -#include -#include #include -#include +#include +#include #include #include #include #include -#include -#include -#include #include -#include Servatrice_GameServer::Servatrice_GameServer(Servatrice *_server, int _numberPools, diff --git a/servatrice/src/servatrice.h b/servatrice/src/servatrice.h index 242d445ad..f39a44d51 100644 --- a/servatrice/src/servatrice.h +++ b/servatrice/src/servatrice.h @@ -22,44 +22,34 @@ #include "metrics_registry.h" -#include #include #include -#include -#include #include #include -#include #include +#include #include #include -#include - -// IWYU pragma: keep -// Q_DECLARE_METATYPE below needs the complete type. -#include #include #include -#include #include #include #include -#include #include #include -class QObject; -class QThread; -class SessionEvent; - Q_DECLARE_METATYPE(QSqlDatabase) +class QSqlQuery; class QTimer; + +class GameReplay; class Servatrice; class Servatrice_ConnectionPool; class Servatrice_DatabaseInterface; class AbstractServerSocketInterface; class IslInterface; +class FeatureSet; class Servatrice_GameServer : public QTcpServer { diff --git a/servatrice/src/servatrice_connection_pool.h b/servatrice/src/servatrice_connection_pool.h index ddd12fc95..7479122cf 100644 --- a/servatrice/src/servatrice_connection_pool.h +++ b/servatrice/src/servatrice_connection_pool.h @@ -4,7 +4,6 @@ #include #include #include -#include class Servatrice_DatabaseInterface; diff --git a/servatrice/src/servatrice_database_interface.cpp b/servatrice/src/servatrice_database_interface.cpp index ac3a19c8e..bb67d78eb 100644 --- a/servatrice/src/servatrice_database_interface.cpp +++ b/servatrice/src/servatrice_database_interface.cpp @@ -1,46 +1,24 @@ #include "servatrice_database_interface.h" #include "deck_tag_serialization.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_chat_message.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_game.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_moderator_login.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user_alt.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_user_session.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_warning.pb.h" #include "servatrice.h" -#include "server.h" -#include "server_protocolhandler.h" +#include "serversocketinterface.h" #include "settingscache.h" -#include #include #include #include +#include #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include #include #include #include -#include -#include -#include #include #include #include #include -#include -#include -#include inline Q_LOGGING_CATEGORY(DatabaseInterfaceLog, "database_interface"); diff --git a/servatrice/src/servatrice_database_interface.h b/servatrice/src/servatrice_database_interface.h index 0509d1a03..ce51a2474 100644 --- a/servatrice/src/servatrice_database_interface.h +++ b/servatrice/src/servatrice_database_interface.h @@ -1,26 +1,18 @@ #ifndef SERVATRICE_DATABASE_INTERFACE_H #define SERVATRICE_DATABASE_INTERFACE_H -#include "libcockatrice/protocol/pb/serverinfo_user.pb.h" - +#include #include -#include +#include #include -#include -#include -#include -#include #include #include #include #include #include -#include #include #include -class QSqlQuery; - #define DATABASE_SCHEMA_VERSION 37 class Servatrice; diff --git a/servatrice/src/server_logger.cpp b/servatrice/src/server_logger.cpp index 1972444f1..620780052 100644 --- a/servatrice/src/server_logger.cpp +++ b/servatrice/src/server_logger.cpp @@ -6,16 +6,8 @@ #include #include #include -#include -#include #include -#include -#include -#include #include -#include -#include -#include ServerLogger::ServerLogger(bool _logToConsole, QObject *parent) : QObject(parent), logToConsole(_logToConsole), flushRunning(false) diff --git a/servatrice/src/server_logger.h b/servatrice/src/server_logger.h index f2875a6a3..0ad092b66 100644 --- a/servatrice/src/server_logger.h +++ b/servatrice/src/server_logger.h @@ -1,14 +1,14 @@ #ifndef SERVER_LOGGER_H #define SERVER_LOGGER_H -#include #include #include -#include #include -#include +#include +#include class QFile; +class Server_ProtocolHandler; class ServerLogger : public QObject { diff --git a/servatrice/src/serversocketinterface.cpp b/servatrice/src/serversocketinterface.cpp index d46a9b0ee..a8d13675d 100644 --- a/servatrice/src/serversocketinterface.cpp +++ b/servatrice/src/serversocketinterface.cpp @@ -22,63 +22,28 @@ #include "deck_tag_serialization.h" #include "email_parser.h" -#include "libcockatrice/protocol/pb/admin_commands.pb.h" -#include "libcockatrice/protocol/pb/developer_commands.pb.h" -#include "libcockatrice/protocol/pb/moderator_commands.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_deck_share_item.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_deck_share_summary.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_replay_match.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_report.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_warning.pb.h" -#include "libcockatrice/protocol/pb/session_commands.pb.h" -#include "libcockatrice/protocol/pb/session_event.pb.h" -#include "libcockatrice/utility/card_ref.h" #include "main.h" -#include "metrics_registry.h" #include "servatrice.h" #include "servatrice_database_interface.h" -#include "server.h" -#include "server_database_interface.h" #include "server_logger.h" -#include "server_protocolhandler.h" #include "settingscache.h" #include "version_string.h" -#include -#include #include #include #include #include #include #include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include +#include #include #include #include -#include -#include -#include -#include #include -#include +#include #include -#include -#include -#include -#include #include #include #include @@ -120,6 +85,8 @@ #include #include #include +#include +#include #include #include #include @@ -164,16 +131,9 @@ #include #include #include -#include -#include -#include #include #include -#include #include -#include - -class QObject; inline Q_LOGGING_CATEGORY(AbstractServerSocketInterfaceLog, "abstract_server_socket_interface"); inline Q_LOGGING_CATEGORY(TcpServerSocketInterfaceLog, "tcp_server_socket_interface"); @@ -181,9 +141,6 @@ inline Q_LOGGING_CATEGORY(WebsocketServerSocketInterfaceLog, "websocket_server_s static const int protocolVersion = 14; -// Maximum size of a single TCP protocol message. Matches the websocket limit. -static const int MAX_TCP_MESSAGE_SIZE = 1500000; - AbstractServerSocketInterface::AbstractServerSocketInterface(Servatrice *_server, Servatrice_DatabaseInterface *_databaseInterface, QObject *parent) @@ -4229,21 +4186,13 @@ void TcpServerSocketInterface::readClient() (((quint32)(unsigned char)inputBuffer[1]) << 16) + (((quint32)(unsigned char)inputBuffer[2]) << 8) + ((quint32)(unsigned char)inputBuffer[3]); - // Reject implausible lengths instead of buffering until they arrive. - // This also handles lengths that overflow into negative int values. - if (messageLength < 0 || messageLength > MAX_TCP_MESSAGE_SIZE) { - qCWarning(TcpServerSocketInterfaceLog) - << "Invalid message length" << messageLength << "from" << getAddress(); - prepareDestroy(); - return; - } inputBuffer.remove(0, 4); messageInProgress = true; } else { return; } } - if (inputBuffer.size() < messageLength) { + if (inputBuffer.size() < messageLength || messageLength < 0) { return; } @@ -4349,15 +4298,10 @@ void WebsocketServerSocketInterface::initConnection(void *_socket) QByteArray websocketIPHeader = settingsCache->value("server/web_socket_ip_header", "").toByteArray(); if (websocketIPHeader.length() > 0 && socket->request().hasRawHeader(websocketIPHeader)) { - // Only trust the forwarded header if the connection itself comes from a trusted proxy, - // otherwise a client could spoof its address to bypass bans and rate limits. - QString trustedSources = settingsCache->value("security/trusted_sources", "127.0.0.1,::1").toString(); - if (trustedSources.contains(socket->peerAddress().toString(), Qt::CaseInsensitive)) { - QString header(socket->request().rawHeader(websocketIPHeader)); - QHostAddress parsed(header); - if (!parsed.isNull()) { - address = parsed; - } + QString header(socket->request().rawHeader(websocketIPHeader)); + QHostAddress parsed(header); + if (!parsed.isNull()) { + address = parsed; } } diff --git a/servatrice/src/serversocketinterface.h b/servatrice/src/serversocketinterface.h index 27708ed27..36b900d28 100644 --- a/servatrice/src/serversocketinterface.h +++ b/servatrice/src/serversocketinterface.h @@ -20,26 +20,28 @@ #ifndef SERVERSOCKETINTERFACE_H #define SERVERSOCKETINTERFACE_H -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" - -#include -#include #include -#include #include -#include -#include #include #include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include class Servatrice; class Servatrice_DatabaseInterface; class DeckList; class ServerInfo_DeckStorage_Folder; + class Command_AddToList; class Command_RemoveFromList; class Command_DeckList; @@ -62,51 +64,16 @@ class Command_ReplayModifyMatch; class Command_ReplayDeleteMatch; class Command_ReplayGetCode; class Command_ReplaySubmitCode; + class Command_BanFromServer; class Command_UpdateServerMessage; class Command_ShutdownServer; class Command_ReloadConfig; class Command_ReplayDownloadByGameId; + class Command_AccountEdit; class Command_AccountImage; class Command_AccountPassword; -class Command_Activate; -class Command_AddCardArtRule; -class Command_AdjustMod; -class Command_ForceActivateUser; -class Command_ForgotPasswordChallenge; -class Command_ForgotPasswordRequest; -class Command_ForgotPasswordReset; -class Command_GetAdminNotes; -class Command_GetBanHistory; -class Command_GetModeratorLastLogins; -class Command_GetServerStats; -class Command_GetUserAlts; -class Command_GetUserSessions; -class Command_GetWarnHistory; -class Command_GetWarnList; -class Command_GrantReplayAccess; -class Command_ListCardArtRules; -class Command_Register; -class Command_RemoveCardArtRule; -class Command_RemoveUserAvatar; -class Command_Report; -class Command_ReportAddComment; -class Command_ReportAssign; -class Command_ReportDetails; -class Command_ReportList; -class Command_ReportMyList; -class Command_ReportResolve; -class Command_ReportStats; -class Command_ReportUserInfo; -class Command_RequestPasswordSalt; -class Command_ResetUserPassword; -class Command_SetCardArtParams; -class Command_UpdateAdminNotes; -class Command_ViewLogHistory; -class Command_WarnUser; -class QObject; -class ResponseContainer; class AbstractServerSocketInterface : public Server_ProtocolHandler { diff --git a/servatrice/src/settingscache.cpp b/servatrice/src/settingscache.cpp index 4ecac7319..f6c862904 100644 --- a/servatrice/src/settingscache.cpp +++ b/servatrice/src/settingscache.cpp @@ -4,13 +4,6 @@ #include #include #include -#include -#include -#include -#include -#include - -class QObject; SettingsCache::SettingsCache(const QString &fileName, QSettings::Format format, QObject *parent) : QSettings(fileName, format, parent) diff --git a/servatrice/src/settingscache.h b/servatrice/src/settingscache.h index 817a62bfa..6922d3508 100644 --- a/servatrice/src/settingscache.h +++ b/servatrice/src/settingscache.h @@ -5,9 +5,6 @@ #include #include #include -#include - -class QObject; class SettingsCache : public QSettings { diff --git a/servatrice/src/signalhandler.cpp b/servatrice/src/signalhandler.cpp index 32cd5b206..b4513979f 100644 --- a/servatrice/src/signalhandler.cpp +++ b/servatrice/src/signalhandler.cpp @@ -5,10 +5,6 @@ #include "settingscache.h" #include -#include -#include -#include -#include #ifdef Q_OS_UNIX #include diff --git a/servatrice/src/signalhandler.h b/servatrice/src/signalhandler.h index 82652a43a..bf8d9e52a 100644 --- a/servatrice/src/signalhandler.h +++ b/servatrice/src/signalhandler.h @@ -2,7 +2,6 @@ #define SIGNALHANDLER_H #include -#include class QSocketNotifier; diff --git a/servatrice/src/smtpclient.cpp b/servatrice/src/smtpclient.cpp index a45588b8b..3ec333413 100644 --- a/servatrice/src/smtpclient.cpp +++ b/servatrice/src/smtpclient.cpp @@ -1,18 +1,10 @@ #include "smtpclient.h" #include "settingscache.h" -#include "smtp/qxtmailmessage.h" #include "smtp/qxtsmtp.h" -#include -#include -#include -#include #include #include -#include -#include -#include SmtpClient::SmtpClient(QObject *parent) : QObject(parent) { diff --git a/servatrice/src/smtpclient.h b/servatrice/src/smtpclient.h index 8fc4e35cb..be97ed44d 100644 --- a/servatrice/src/smtpclient.h +++ b/servatrice/src/smtpclient.h @@ -2,11 +2,9 @@ #define SMTPCLIENT_H #include -#include -#include class QxtSmtp; -class QByteArray; +class QxtMailMessage; class SmtpClient : public QObject { diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 6e7ad64f7..cacb04446 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -252,15 +252,6 @@ cockatrice_add_test( LABELS server ) -cockatrice_add_test( - NAME - card_update_progress_test - SOURCES - ${CMAKE_SOURCE_DIR}/cockatrice/src/interface/card_database_update/card_update_progress.cpp - card_update_progress_test.cpp - INCLUDE_DIRS - ${CMAKE_SOURCE_DIR}/cockatrice/src -) cockatrice_add_test( NAME loader_local_matching_test @@ -335,7 +326,6 @@ if(WITH_CLIENT) single_instance_manager_test.cpp INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/cockatrice/src - ${CMAKE_SOURCE_DIR}/libcockatrice_utility ) endif() diff --git a/tests/card_update_progress_test.cpp b/tests/card_update_progress_test.cpp deleted file mode 100644 index 849cf623c..000000000 --- a/tests/card_update_progress_test.cpp +++ /dev/null @@ -1,93 +0,0 @@ -#include "interface/card_database_update/card_update_progress.h" - -#include -#include -#include - -namespace -{ -std::optional parseLine(const QByteArray &line) -{ - return CardUpdateProgress::fromProtocolLine(line); -} -} // namespace - -TEST(CardUpdateProgressTest, ParsesAValidDownloadLine) -{ - const std::optional progress = parseLine("PROGRESS download 42 100"); - ASSERT_TRUE(progress.has_value()); - EXPECT_EQ(CardUpdateStage::Download, progress->stage); - EXPECT_EQ(42, progress->done); - EXPECT_EQ(100, progress->total); -} - -TEST(CardUpdateProgressTest, ParsesTrailingNewline) -{ - const std::optional progress = parseLine("PROGRESS scan 7 99\n"); - ASSERT_TRUE(progress.has_value()); - EXPECT_EQ(CardUpdateStage::Scan, progress->stage); - EXPECT_EQ(7, progress->done); - EXPECT_EQ(99, progress->total); -} - -TEST(CardUpdateProgressTest, ParsesWithSurroundingWhitespace) -{ - const std::optional progress = parseLine(QByteArray(" PROGRESS import 3 10 ")); - ASSERT_TRUE(progress.has_value()); - EXPECT_EQ(CardUpdateStage::Import, progress->stage); - EXPECT_EQ(3, progress->done); - EXPECT_EQ(10, progress->total); -} - -TEST(CardUpdateProgressTest, AcceptsZeroProgress) -{ - const std::optional progress = parseLine("PROGRESS download 0 0"); - ASSERT_TRUE(progress.has_value()); - EXPECT_EQ(0, progress->done); - EXPECT_EQ(0, progress->total); -} - -TEST(CardUpdateProgressTest, RejectsLinesWithoutProgressPrefix) -{ - EXPECT_FALSE(parseLine("download 42 100").has_value()); - EXPECT_FALSE(parseLine("PROGRESSdownload 42 100").has_value()); - EXPECT_FALSE(parseLine("").has_value()); -} - -TEST(CardUpdateProgressTest, RejectsMalformedLines) -{ - EXPECT_FALSE(parseLine("PROGRESS").has_value()); - EXPECT_FALSE(parseLine("PROGRESS download").has_value()); - EXPECT_FALSE(parseLine("PROGRESS download 42 100 extra").has_value()); - EXPECT_FALSE(parseLine("PROGRESS download 42").has_value()); - EXPECT_FALSE(parseLine("PROGRESS download notANumber 100").has_value()); -} - -TEST(CardUpdateProgressTest, RejectsNegativeValues) -{ - EXPECT_FALSE(parseLine("PROGRESS download -1 100").has_value()); - EXPECT_FALSE(parseLine("PROGRESS download 42 -100").has_value()); -} - -TEST(CardUpdateProgressTest, AcceptsUnknownStagesSchemalessly) -{ - const std::optional progress = parseLine("PROGRESS spoilers 1 2"); - ASSERT_TRUE(progress.has_value()); - EXPECT_EQ(CardUpdateStage::Unknown, progress->stage); - EXPECT_EQ(1, progress->done); - EXPECT_EQ(2, progress->total); -} - -TEST(CardUpdateProgressTest, StageTokensRoundTrip) -{ - EXPECT_EQ("download", CardUpdateProgress{CardUpdateStage::Download}.stageToken()); - EXPECT_EQ("scan", CardUpdateProgress{CardUpdateStage::Scan}.stageToken()); - EXPECT_EQ("import", CardUpdateProgress{CardUpdateStage::Import}.stageToken()); - EXPECT_EQ("unknown", CardUpdateProgress{CardUpdateStage::Unknown}.stageToken()); -} - -int main(int argc, char **argv) -{ - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} \ No newline at end of file diff --git a/tests/card_zone_algorithms/card_zone_algorithms_test.cpp b/tests/card_zone_algorithms/card_zone_algorithms_test.cpp index 4f5282235..8fab42566 100644 --- a/tests/card_zone_algorithms/card_zone_algorithms_test.cpp +++ b/tests/card_zone_algorithms/card_zone_algorithms_test.cpp @@ -1,7 +1,6 @@ #include "card_zone_algorithms.h" #include -#include #include struct MockCardRef diff --git a/tests/carddatabase/carddatabase_test.cpp b/tests/carddatabase/carddatabase_test.cpp index 1ac259d9b..392f6395a 100644 --- a/tests/carddatabase/carddatabase_test.cpp +++ b/tests/carddatabase/carddatabase_test.cpp @@ -1,36 +1,15 @@ -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/set/card_set.h" -#include "libcockatrice/card/set/card_set_list.h" +#include "mocks.h" #include "test_card_database_path_provider.h" #include "gtest/gtest.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include #include #include #include #include #include -#include -#include #include #include -#include - namespace { @@ -85,11 +64,12 @@ TEST(CardDatabaseTest, Xml4LocalizedDataRoundTrip) QTemporaryDir tempDir; const QString fileName = tempDir.filePath("cards.xml"); - CockatriceXml4Parser writer(&controller); + NoopCardPreferenceProvider prefProvider; + CockatriceXml4Parser writer(&prefProvider, &controller); ASSERT_TRUE(writer.saveToFile({}, sets, cards, fileName)); CardDatabaseData data; - CockatriceXml4Parser parser(&controller); + CockatriceXml4Parser parser(&prefProvider, &controller); QFile file(fileName); ASSERT_TRUE(file.open(QIODevice::ReadOnly)); parser.parseFileInto(file, data); @@ -101,280 +81,6 @@ TEST(CardDatabaseTest, Xml4LocalizedDataRoundTrip) ASSERT_EQ(loaded->getLocalizedText("de"), "Blitzschlag fügt 3 Schadenspunkte zu."); ASSERT_EQ(loaded->getLocalizedText("fr"), "Deal 3 damage."); } - -/** - * @brief Path provider serving a sandboxed copy of the test card database. - */ -class SandboxPathProvider : public ICardDatabasePathProvider -{ -public: - explicit SandboxPathProvider(const QString &_root) : root(_root) - { - } - - QString getCardDatabasePath() const override - { - return root + "/cards.xml"; - } - - QString getCustomCardDatabasePath() const override - { - return root + "/customsets/"; - } - - QString getTokenDatabasePath() const override - { - return root + "/tokens.xml"; - } - - QString getSpoilerCardDatabasePath() const override - { - return root + "/spoiler.xml"; - } - -private: - QString root; -}; - -/** - * @brief Set priority controller whose enablement state the test drives directly. - * - * Seeded short names behave like entries present in cardDatabase.ini (enabled, - * known). Anything the parser discovers but the test did not seed falls back to - * the default SetOptions, i.e. disabled and unknown, mirroring - * CardDatabaseSettings for sets without an ini group. - */ -class SeededSetPriorityController : public ICardSetPriorityController -{ -public: - void seed(const QStringList &shortNames) - { - for (const QString &shortName : shortNames) { - SetOptions options; - options.enabled = true; - options.isKnown = true; - setOptions.insert(shortName, options); - } - } - - void setSortKey(QString shortName, unsigned int sortKey) override - { - setOptions[shortName].sortKey = sortKey; - } - - void setEnabled(QString shortName, bool enabled) override - { - setOptions[shortName].enabled = enabled; - } - - void setIsKnown(QString shortName, bool isknown) override - { - setOptions[shortName].isKnown = isknown; - } - - unsigned int getSortKey(QString shortName) const override - { - return setOptions.value(shortName).sortKey; - } - - bool isEnabled(QString shortName) const override - { - return setOptions.value(shortName).enabled; - } - - bool isKnown(QString shortName) const override - { - return setOptions.value(shortName).isKnown; - } - - SetOptions getSetOptions(QString shortName) const override - { - return setOptions.value(shortName); - } - - QStringList getEnabledSetNames() const override - { - QStringList names; - for (auto it = setOptions.constBegin(); it != setOptions.constEnd(); ++it) { - if (it.value().enabled) { - names << it.key(); - } - } - names.sort(); - return names; - } - - void saveSets(const QVector &data) override - { - for (const SetSaveData &entry : data) { - setOptions[entry.shortName].sortKey = entry.sortKey; - setOptions[entry.shortName].enabled = entry.enabled; - } - } - -private: - QHash setOptions; -}; - -/** - * @brief Sandboxed card database plus enablement controller for cache tests. - * - * Copies the checked-in fixture XML into a temporary directory so each test - * owns the files (and the binary cache written next to them). - */ -class CardDatabaseCacheInvalidationTest : public ::testing::Test -{ -protected: - void SetUp() override - { - ASSERT_TRUE(tempDir.isValid()); - root = tempDir.path(); - ASSERT_TRUE(QFile::copy(QString(CARDDB_DATADIR) + "cards.xml", root + "/cards.xml")); - ASSERT_TRUE(QFile::copy(QString(CARDDB_DATADIR) + "tokens.xml", root + "/tokens.xml")); - ASSERT_TRUE(QDir(root).mkpath("customsets")); - ASSERT_TRUE( - QFile::copy(QString(CARDDB_DATADIR) + "customsets/customset1.xml", root + "/customsets/customset1.xml")); - controller.seed({"CAT", "DOG", "WHO", " Not a Card", "BRD"}); - } - - /** - * @brief Contents of the binary cache written next to cards.xml. - * @return The cache file bytes, or an empty array if no cache exists. - */ - QByteArray cacheContents() const - { - QFile file(root + "/cards.xml.cache"); - if (!file.open(QIODevice::ReadOnly)) { - return {}; - } - return file.readAll(); - } - - QTemporaryDir tempDir; - QString root; - SeededSetPriorityController controller; -}; - -TEST_F(CardDatabaseCacheInvalidationTest, DisablingSetBustsCacheAndDropsPrintings) -{ - NoopCardPreferenceProvider prefs; - SandboxPathProvider pathProvider(root); - CardDatabase db(nullptr, &prefs, &pathProvider, &controller); - - db.loadCardDatabases(); - const QByteArray initialCache = cacheContents(); - ASSERT_FALSE(initialCache.isEmpty()) << "first load must write the binary cache"; - ASSERT_FALSE(db.getCardList().value("Cat").isNull()); - ASSERT_TRUE(db.getCardList().value("Cat")->getSets().contains("CAT")); - - // A cache-aware load with unchanged inputs keeps the cache: the parse - // result would be identical, so there is nothing to invalidate. - db.loadCardDatabases(); - EXPECT_EQ(initialCache, cacheContents()) << "load with unchanged inputs must keep the cache"; - - // Disabling a set changes the source hash, so the next load re-parses and - // the set's printings disappear everywhere. - controller.setEnabled("CAT", false); - db.reloadCardDatabasesAndNotify(); - EXPECT_NE(initialCache, cacheContents()) << "toggling set enablement must bust the cache"; - ASSERT_FALSE(db.getCardList().value("Cat").isNull()); - EXPECT_FALSE(db.getCardList().value("Cat")->getSets().contains("CAT")) << "disabled set printings must be dropped"; - ASSERT_FALSE(db.getCardList().value("Kitten").isNull()); - EXPECT_FALSE(db.getCardList().value("Kitten")->getSets().contains("CAT")); -} - -TEST_F(CardDatabaseCacheInvalidationTest, AddingAndEnablingCustomSetBustsCache) -{ - NoopCardPreferenceProvider prefs; - SandboxPathProvider pathProvider(root); - CardDatabase db(nullptr, &prefs, &pathProvider, &controller); - - db.loadCardDatabases(); - const QByteArray initialCache = cacheContents(); - ASSERT_FALSE(initialCache.isEmpty()) << "first load must write the binary cache"; - - // Drop a new custom set in: the input file list changes, so the next load - // must re-parse. BRD2 is unknown, so its set starts disabled. - QFile customSetFile(root + "/customsets/customset2.xml"); - ASSERT_TRUE(customSetFile.open(QIODevice::WriteOnly | QIODevice::Truncate)); - customSetFile.write("\n" - "\n" - " \n" - " \n" - " Finch\n" - " BRD2\n" - " 0\n" - " Chirp!\n" - " \n" - " \n" - "\n"); - customSetFile.close(); - - db.reloadCardDatabasesAndNotify(); - const QByteArray afterCustomSetAdded = cacheContents(); - EXPECT_NE(initialCache, afterCustomSetAdded) << "adding a custom card database must bust the cache"; - ASSERT_FALSE(db.getCardList().value("Finch").isNull()) << "the custom card must be loaded"; - EXPECT_TRUE(db.getCardList().value("Finch")->getSets().isEmpty()) - << "BRD2 starts disabled, so Finch has no printings yet"; - - // Enabling the freshly discovered set busts the cache again, so the next - // load finally parses its printings (#7455). - controller.setEnabled("BRD2", true); - db.reloadCardDatabasesAndNotify(); - EXPECT_NE(afterCustomSetAdded, cacheContents()) << "enabling a set must bust the cache"; - ASSERT_FALSE(db.getCardList().value("Finch").isNull()); - EXPECT_TRUE(db.getCardList().value("Finch")->getSets().contains("BRD2")); -} - -TEST_F(CardDatabaseCacheInvalidationTest, ExplicitReloadBypassesCache) -{ - NoopCardPreferenceProvider prefs; - SandboxPathProvider pathProvider(root); - CardDatabase db(nullptr, &prefs, &pathProvider, &controller); - - db.loadCardDatabases(); - ASSERT_FALSE(db.getCardList().value("Cat").isNull()); - ASSERT_TRUE(db.getCardList().value("Cat")->getSets().contains("CAT")); - - // Move Cat to the DOG set in place, keeping the file size identical and - // restoring the modification time afterwards: the source hash (path, size, - // mtime) still matches, so the cache stays valid by construction and only - // an explicit reload can pick the edit up. - const QString cardsPath = root + "/cards.xml"; - QFile file(cardsPath); - ASSERT_TRUE(file.open(QIODevice::ReadOnly)); - const qint64 stampedSecs = QFileInfo(cardsPath).lastModified().toSecsSinceEpoch(); - QByteArray contents = file.readAll(); - file.close(); - const QByteArray oldSetCode("CAT"); - const QByteArray newSetCode("DOG"); - ASSERT_EQ(contents.count(oldSetCode), 1) << "fixture must contain exactly one CAT printing"; - contents.replace(contents.indexOf(oldSetCode), oldSetCode.size(), newSetCode); - ASSERT_TRUE(file.open(QIODevice::ReadWrite)); - ASSERT_EQ(file.write(contents), contents.size()); - // Flush the pending write before stamping the time: close() would otherwise - // flush it afterwards and bump the modification time again, invalidating the - // cache on platforms that buffer writes (e.g. macOS). - ASSERT_TRUE(file.flush()); - ASSERT_TRUE(file.setFileTime(QDateTime::fromSecsSinceEpoch(stampedSecs), QFileDevice::FileModificationTime)); - file.close(); - ASSERT_EQ(QFileInfo(cardsPath).lastModified().toSecsSinceEpoch(), stampedSecs) - << "the sandbox file's modification time must be restored for the cache to stay valid"; - - // The cache is still valid for a regular load, which serves the stale data. - db.loadCardDatabases(); - ASSERT_FALSE(db.getCardList().value("Cat").isNull()); - EXPECT_TRUE(db.getCardList().value("Cat")->getSets().contains("CAT")) << "regular load must hit the cache"; - EXPECT_FALSE(db.getCardList().value("Cat")->getSets().contains("DOG")); - - // The explicit reload ignores the cache and re-reads the file. - const QByteArray staleCache = cacheContents(); - db.reloadCardDatabasesAndNotify(); - EXPECT_NE(staleCache, cacheContents()) << "explicit reload must rewrite the cache from disk"; - ASSERT_FALSE(db.getCardList().value("Cat").isNull()); - EXPECT_FALSE(db.getCardList().value("Cat")->getSets().contains("CAT")); - EXPECT_TRUE(db.getCardList().value("Cat")->getSets().contains("DOG")); -} } // namespace int main(int argc, char **argv) diff --git a/tests/carddatabase/filter_string_test.cpp b/tests/carddatabase/filter_string_test.cpp index 95225e28c..dcf1cf0a2 100644 --- a/tests/carddatabase/filter_string_test.cpp +++ b/tests/carddatabase/filter_string_test.cpp @@ -1,29 +1,13 @@ -#include "libcockatrice/card/card_localization.h" -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/card/database/card_database_querier.h" -#include "libcockatrice/card/set/card_set.h" +#include "mocks.h" #include "test_card_database_path_provider.h" #include "gtest/gtest.h" -#include -#include -#include -#include -#include -#include #include #include #include #include #include #include -#include -#include - -namespace -{ -class CardQuery; -} #define QUERY(name, card, query, match) \ TEST_F(CardQuery, name) \ diff --git a/tests/carddatabase/load_benchmark.cpp b/tests/carddatabase/load_benchmark.cpp index 5492b9531..8e9e80e4d 100644 --- a/tests/carddatabase/load_benchmark.cpp +++ b/tests/carddatabase/load_benchmark.cpp @@ -12,30 +12,25 @@ * (~/.local/share/Cockatrice/Cockatrice/...). */ -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/set/card_set_list.h" +#include "mocks.h" +#include "gtest/gtest.h" #include #include -#include +#include #include #include +#include #include -#include -#include #include -#include -#include -#include #include -#include +#include #include #include #include #include #include #include -#include static QString defaultXdgPath(const QString &file) { diff --git a/tests/carddatabase/mocks.h b/tests/carddatabase/mocks.h index b7cfe8243..016642005 100644 --- a/tests/carddatabase/mocks.h +++ b/tests/carddatabase/mocks.h @@ -7,7 +7,7 @@ #define PICTURELOADER_H -#include "libcockatrice/card/card_info.h" +#include class CardPictureLoader { diff --git a/tests/clamped_arithmetic_test.cpp b/tests/clamped_arithmetic_test.cpp index e5fd070b0..2471d5870 100644 --- a/tests/clamped_arithmetic_test.cpp +++ b/tests/clamped_arithmetic_test.cpp @@ -6,7 +6,6 @@ #include #include #include -#include TEST(AddClamped, AddsWithinBounds) { diff --git a/tests/deck_hash_performance_test.cpp b/tests/deck_hash_performance_test.cpp index 135c218c5..154283e8e 100644 --- a/tests/deck_hash_performance_test.cpp +++ b/tests/deck_hash_performance_test.cpp @@ -1,10 +1,6 @@ #include "gtest/gtest.h" -#include -#include -#include -#include +#include #include -#include static constexpr int amount = 1e5; QString repeatDeck; diff --git a/tests/deck_list_model/deck_list_model_custom_zones_test.cpp b/tests/deck_list_model/deck_list_model_custom_zones_test.cpp index 95df74702..7f4ab81e1 100644 --- a/tests/deck_list_model/deck_list_model_custom_zones_test.cpp +++ b/tests/deck_list_model/deck_list_model_custom_zones_test.cpp @@ -9,19 +9,10 @@ * full model and card database machinery. */ -#include "deck_list_model_custom_zones.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" - -#include -#include -#include #include #include #include #include -#include -#include -#include namespace { diff --git a/tests/deck_list_model/deck_list_model_zone_integration_test.cpp b/tests/deck_list_model/deck_list_model_zone_integration_test.cpp index 63c904910..a4562c95d 100644 --- a/tests/deck_list_model/deck_list_model_zone_integration_test.cpp +++ b/tests/deck_list_model/deck_list_model_zone_integration_test.cpp @@ -1,12 +1,3 @@ -#include "libcockatrice/card/database/card_database.h" -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" - -#include -#include -#include -#include -#include -#include #include #include #include @@ -17,10 +8,6 @@ #include #include #include -#include -#include - -class QModelIndex; namespace { diff --git a/tests/deck_list_zones/deck_list_zones_test.cpp b/tests/deck_list_zones/deck_list_zones_test.cpp index 1903b70df..801f226a9 100644 --- a/tests/deck_list_zones/deck_list_zones_test.cpp +++ b/tests/deck_list_zones/deck_list_zones_test.cpp @@ -7,20 +7,12 @@ * "main" are still mainboard cards for hashing, sideboard size, legality and export. */ -#include "libcockatrice/deck_list/tree/abstract_deck_list_node.h" - -#include -#include -#include -#include #include -#include #include #include #include #include #include -#include namespace { diff --git a/tests/expression_test.cpp b/tests/expression_test.cpp index b3c4b586c..4fbe98cb9 100644 --- a/tests/expression_test.cpp +++ b/tests/expression_test.cpp @@ -1,7 +1,6 @@ #include "gtest/gtest.h" #include #include -#include #define TEST_EXPR(name, a, b) \ TEST(ExpressionTest, name) \ diff --git a/tests/lag_monitor_test.cpp b/tests/lag_monitor_test.cpp index b404a2c9e..9948eeabb 100644 --- a/tests/lag_monitor_test.cpp +++ b/tests/lag_monitor_test.cpp @@ -5,8 +5,6 @@ #include #include #include -#include -#include namespace { diff --git a/tests/latency_tracker_test.cpp b/tests/latency_tracker_test.cpp index a77051799..68631b7ca 100644 --- a/tests/latency_tracker_test.cpp +++ b/tests/latency_tracker_test.cpp @@ -1,9 +1,5 @@ -#include -#include #include -#include #include -#include TEST(LatencyTrackerTest, EmptyTrackerYieldsZeroedStats) { diff --git a/tests/loader_local_matching_test.cpp b/tests/loader_local_matching_test.cpp index 13d3e5bb3..6ce684fdd 100644 --- a/tests/loader_local_matching_test.cpp +++ b/tests/loader_local_matching_test.cpp @@ -1,11 +1,7 @@ #include "client/settings/cache_settings.h" #include "interface/card_picture_loader/card_picture_loader_local.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/printing/printing_info.h" #include "gtest/gtest.h" -#include -#include #include #include #include @@ -13,18 +9,13 @@ #include #include #include -#include #include -#include #include -#include #include #include #include #include #include -#include -#include namespace { diff --git a/tests/loading_from_clipboard/clipboard_testing.cpp b/tests/loading_from_clipboard/clipboard_testing.cpp index 3f652a495..a9977b800 100644 --- a/tests/loading_from_clipboard/clipboard_testing.cpp +++ b/tests/loading_from_clipboard/clipboard_testing.cpp @@ -1,12 +1,6 @@ #include "clipboard_testing.h" -#include "libcockatrice/deck_list/deck_list.h" -#include "libcockatrice/deck_list/tree/inner_deck_list_node.h" - -#include #include -#include -#include #include #include diff --git a/tests/loading_from_clipboard/clipboard_testing.h b/tests/loading_from_clipboard/clipboard_testing.h index c9852e5d7..41d8ea794 100644 --- a/tests/loading_from_clipboard/clipboard_testing.h +++ b/tests/loading_from_clipboard/clipboard_testing.h @@ -1,11 +1,8 @@ #ifndef CLIPBOARD_TESTING_H #define CLIPBOARD_TESTING_H -#include -#include -#include -#include -#include +#include "gtest/gtest.h" +#include // using std types because qt types aren't understood by gtest (without this you'll get less nice errors) using CardRows = QVector>; diff --git a/tests/loading_from_clipboard/loading_from_clipboard_test.cpp b/tests/loading_from_clipboard/loading_from_clipboard_test.cpp index 840d926ff..fcfbb22db 100644 --- a/tests/loading_from_clipboard/loading_from_clipboard_test.cpp +++ b/tests/loading_from_clipboard/loading_from_clipboard_test.cpp @@ -1,11 +1,5 @@ #include "clipboard_testing.h" -#include -#include -#include -#include -#include - // Testing is done by using the DeckList::loadFromString_Plain function in common/decklist.h // It does not check if cards are in the database at all, so no comparisons to the database will be made. diff --git a/tests/metrics_registry_test.cpp b/tests/metrics_registry_test.cpp index 39a8f8aaf..1abef58e1 100644 --- a/tests/metrics_registry_test.cpp +++ b/tests/metrics_registry_test.cpp @@ -2,7 +2,6 @@ #include #include #include -#include TEST(MetricsRegistryTest, EmptyRegistryHasZeroedCounters) { diff --git a/tests/movecard_tests/reverse_card_move_test.cpp b/tests/movecard_tests/reverse_card_move_test.cpp index 6bed20d18..64c93078c 100644 --- a/tests/movecard_tests/reverse_card_move_test.cpp +++ b/tests/movecard_tests/reverse_card_move_test.cpp @@ -3,20 +3,15 @@ #include "game/server_card.h" #include "game/server_cardzone.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/serverinfo_zone.pb.h" #include "server_response_containers.h" #include "server_room.h" #include "server_test_helpers.h" -#include -#include #include #include #include #include #include -#include RNG_Abstract *rng = nullptr; // this needs to be defined due to other functions in server diff --git a/tests/oracle/oracle_importer_benchmark_test.cpp b/tests/oracle/oracle_importer_benchmark_test.cpp index c2a4aaf4b..633c9e40a 100644 --- a/tests/oracle/oracle_importer_benchmark_test.cpp +++ b/tests/oracle/oracle_importer_benchmark_test.cpp @@ -1,37 +1,21 @@ #include "../../oracle/src/oracleimporter.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/set/card_set.h" #include "gtest/gtest.h" #include -#include -#include #include #include #include #include #include -#include #include #include #include -#include -#include -#include #include #include #include -#include -#include -#include #include #include -#include #include -#include -#include -#include -#include #if defined(HAS_LZMA) #include "../../oracle/src/lzma/decompress.h" @@ -62,10 +46,12 @@ static QByteArray buildSyntheticData(int numSets, int cardsPerSet) card["colors"] = QJsonArray{"W"}; card["colorIdentity"] = QJsonArray{"W"}; card["types"] = QJsonArray{"Creature"}; - // Real MTGJSON types: floats, not strings. This + // Real MTGJSON types: floats and booleans, not strings. This // exercises the QVariant coercion in the property reader. card["convertedManaCost"] = 1.0; card["manaValue"] = 1.0; + card["isOnlineOnly"] = false; + card["isRebalanced"] = false; QJsonObject legalities; legalities["standard"] = "legal"; diff --git a/tests/oracle/oracle_importer_test.cpp b/tests/oracle/oracle_importer_test.cpp index 83d77d465..f66616e37 100644 --- a/tests/oracle/oracle_importer_test.cpp +++ b/tests/oracle/oracle_importer_test.cpp @@ -1,34 +1,15 @@ #include "../../oracle/src/oracleimporter.h" -#include "../../oracle/src/raw_json_scanner.h" -#include "libcockatrice/card/card_info.h" #include "gtest/gtest.h" -#include -#include -#include #include #include #include -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include #include #include -#include -#include class OracleImporterTest : public ::testing::Test { diff --git a/tests/oracle/parse_cipt_test.cpp b/tests/oracle/parse_cipt_test.cpp index 10268d659..f5036f962 100644 --- a/tests/oracle/parse_cipt_test.cpp +++ b/tests/oracle/parse_cipt_test.cpp @@ -1,7 +1,6 @@ #include "../../oracle/src/parsehelpers.h" #include "gtest/gtest.h" -#include TEST(ParseCiptTest, parsesThisEntersTapped) { diff --git a/tests/password_hash_test.cpp b/tests/password_hash_test.cpp index 2a504b81c..2b8f8bdb7 100644 --- a/tests/password_hash_test.cpp +++ b/tests/password_hash_test.cpp @@ -1,9 +1,6 @@ #include "gtest/gtest.h" -#include -#include #include #include -#include namespace { diff --git a/tests/picture_loader_benchmark/picture_loader_benchmark.cpp b/tests/picture_loader_benchmark/picture_loader_benchmark.cpp index 587cef65f..f991f2ec0 100644 --- a/tests/picture_loader_benchmark/picture_loader_benchmark.cpp +++ b/tests/picture_loader_benchmark/picture_loader_benchmark.cpp @@ -25,34 +25,22 @@ #include "client/settings/cache_settings.h" #include "interface/card_picture_loader/card_picture_loader_worker.h" #include "interface/card_picture_loader/card_picture_to_load.h" -#include "libcockatrice/card/card_info.h" -#include "libcockatrice/card/database/card_database_loader.h" -#include #include #include #include #include #include -#include #include -#include #include #include #include #include -#include -#include -#include -#include -#include -#include #include #include #include #include -#include -#include +#include #include #include #include @@ -63,8 +51,6 @@ #include #include #include -#include -#include class BenchmarkCardDatabasePathProvider : public ICardDatabasePathProvider { diff --git a/tests/picture_loader_benchmark/settings_cache_mock.cpp b/tests/picture_loader_benchmark/settings_cache_mock.cpp index 13e831b62..d93c7e002 100644 --- a/tests/picture_loader_benchmark/settings_cache_mock.cpp +++ b/tests/picture_loader_benchmark/settings_cache_mock.cpp @@ -17,21 +17,15 @@ #include "client/settings/cache_settings.h" #include "interface/card_picture_loader/card_picture_loader_cache_method.h" -#include #include #include -#include -#include #include -#include #include -#include -#include #include #include #include #include -#include +#include QString SettingsCache::getDataPath() { diff --git a/tests/playmat_resolver_test.cpp b/tests/playmat_resolver_test.cpp index 6730ec137..a931c0647 100644 --- a/tests/playmat_resolver_test.cpp +++ b/tests/playmat_resolver_test.cpp @@ -1,15 +1,6 @@ -#include "libcockatrice/interfaces/interface_interface_settings_provider.h" -#include "libcockatrice/utility/card_ref.h" -#include "libcockatrice/utility/playmat_params.h" - -#include -#include -#include -#include #include #include #include -#include namespace { diff --git a/tests/report_categories_test.cpp b/tests/report_categories_test.cpp index 1e08938db..790b2cff6 100644 --- a/tests/report_categories_test.cpp +++ b/tests/report_categories_test.cpp @@ -3,7 +3,6 @@ #include #include #include -#include TEST(ReportCategoriesTest, CanonicalListIsNonEmptyAndStable) { diff --git a/tests/server_card_counter_test.cpp b/tests/server_card_counter_test.cpp index 6308d80b9..c8bc43f8f 100644 --- a/tests/server_card_counter_test.cpp +++ b/tests/server_card_counter_test.cpp @@ -3,14 +3,12 @@ * @ingroup Tests */ -#include -#include #include #include #include #include #include -#include +#include TEST(ServerCardCounter, IncrementNewCounter) { diff --git a/tests/server_counter_test.cpp b/tests/server_counter_test.cpp index 492aecf66..0f41f2cbd 100644 --- a/tests/server_counter_test.cpp +++ b/tests/server_counter_test.cpp @@ -3,13 +3,9 @@ * @ingroup Tests */ -#include "libcockatrice/protocol/pb/color.pb.h" - -#include #include #include #include -#include TEST(ServerCounter, IncrementDoesNotOverflow) { diff --git a/tests/server_developer_role_test.cpp b/tests/server_developer_role_test.cpp index c77fc5b21..127f606a8 100644 --- a/tests/server_developer_role_test.cpp +++ b/tests/server_developer_role_test.cpp @@ -3,10 +3,6 @@ * @ingroup Tests */ -#include "libcockatrice/protocol/pb/response.pb.h" -#include "libcockatrice/protocol/pb/server_message.pb.h" - -#include #include #include #include @@ -15,8 +11,6 @@ #include #include #include -#include -#include // The server_remote library references the global RNG, which is normally // defined by the servatrice/client executable main(). Provide a stub so the diff --git a/tests/server_game_join_test.cpp b/tests/server_game_join_test.cpp index 8a2ae8c45..c84e4e066 100644 --- a/tests/server_game_join_test.cpp +++ b/tests/server_game_join_test.cpp @@ -3,19 +3,14 @@ * @ingroup Tests */ -#include "game/game_config.h" #include "game/server_game.h" -#include "libcockatrice/protocol/pb/response.pb.h" #include "server.h" #include "server_database_interface.h" #include "server_room.h" -#include -#include #include #include #include -#include RNG_Abstract *rng = nullptr; // referenced by the server_remote library diff --git a/tests/server_rate_limiter_test.cpp b/tests/server_rate_limiter_test.cpp index 8459c9690..bc15ca421 100644 --- a/tests/server_rate_limiter_test.cpp +++ b/tests/server_rate_limiter_test.cpp @@ -1,11 +1,7 @@ #include "gtest/gtest.h" #include -#include #include -#include -#include #include -#include namespace { diff --git a/tests/settings/settings_defaults_test.cpp b/tests/settings/settings_defaults_test.cpp index 65e41af76..379f6cd84 100644 --- a/tests/settings/settings_defaults_test.cpp +++ b/tests/settings/settings_defaults_test.cpp @@ -1,10 +1,5 @@ -#include "libcockatrice/card/card_localization.h" - #include "gtest/gtest.h" -#include -#include -#include -#include +#include #include #include #include @@ -20,8 +15,6 @@ #include #include #include -#include -#include namespace { @@ -166,12 +159,6 @@ TEST_F(SettingsDefaultsTest, Updates_NotifyAboutNewVersion_Default) ASSERT_EQ(s.getNotifyAboutNewVersion(), true); } -TEST_F(SettingsDefaultsTest, Updates_CardDatabaseUpdateTrayNotification_Default) -{ - UpdatesSettings s(settingsPath, nullptr); - ASSERT_EQ(s.getCardDatabaseUpdateTrayNotification(), true); -} - TEST_F(SettingsDefaultsTest, Updates_UpdateReleaseChannelIndex_Default) { UpdatesSettings s(settingsPath, nullptr); diff --git a/tests/settings/settings_manager_test.cpp b/tests/settings/settings_manager_test.cpp index 23d27aa78..51eb66dbb 100644 --- a/tests/settings/settings_manager_test.cpp +++ b/tests/settings/settings_manager_test.cpp @@ -1,11 +1,7 @@ #include "gtest/gtest.h" #include -#include #include -#include -#include #include -#include namespace { diff --git a/tests/settings/settings_migration_test.cpp b/tests/settings/settings_migration_test.cpp index 440e49b74..84b948d2e 100644 --- a/tests/settings/settings_migration_test.cpp +++ b/tests/settings/settings_migration_test.cpp @@ -1,24 +1,13 @@ #include "gtest/gtest.h" -#include -#include -#include #include #include #include #include #include -#include -#include #include -#include #include -#include #include -#include -#include #include -#include -#include namespace { @@ -236,6 +225,7 @@ TEST_F(SettingsMigrationTest, MigratesAllSettingsGroups) g.setValue("cards/roundcardcorners", false); g.setValue("cards/overrideallcardartwithpersonalpreference", true); g.setValue("cards/bumpsetswithcardsindecktotop", false); + g.setValue("cards/includerebalancedcards", false); g.setValue("cards/autorotatesidewayslayoutcards", false); g.setValue("cards/tapanimation", true); g.setValue("cards/scaleCards", false); @@ -394,6 +384,7 @@ TEST_F(SettingsMigrationTest, MigratesAllSettingsGroups) ASSERT_EQ(readFromIni("cards_display.ini", "cards/roundCardCorners"), QVariant(false)); ASSERT_EQ(readFromIni("cards_display.ini", "cards/overrideAllCardArtWithPersonalPreference"), QVariant(true)); ASSERT_EQ(readFromIni("cards_display.ini", "cards/bumpSetsWithCardsInDeckToTop"), QVariant(false)); + ASSERT_EQ(readFromIni("cards_display.ini", "cards/includerebalancedcards"), QVariant(false)); ASSERT_EQ(readFromIni("cards_display.ini", "cards/autoRotateSidewaysLayoutCards"), QVariant(false)); ASSERT_EQ(readFromIni("cards_display.ini", "cards/tapAnimation"), QVariant(true)); ASSERT_EQ(readFromIni("cards_display.ini", "cards/scaleCards"), QVariant(false)); diff --git a/tests/single_instance_manager_test.cpp b/tests/single_instance_manager_test.cpp index bc8074580..49193850d 100644 --- a/tests/single_instance_manager_test.cpp +++ b/tests/single_instance_manager_test.cpp @@ -1,18 +1,12 @@ #include "single_instance_manager.h" -#include #include #include #include -#include -#include #include #include -#include #include -#include #include -#include namespace { diff --git a/tests/test_age_formatting.cpp b/tests/test_age_formatting.cpp index 8602ffdc0..6a9d5d4af 100644 --- a/tests/test_age_formatting.cpp +++ b/tests/test_age_formatting.cpp @@ -1,8 +1,5 @@ #include "gtest/gtest.h" -#include -#include #include -#include namespace { diff --git a/tests/theme_migration/theme_migration_test.cpp b/tests/theme_migration/theme_migration_test.cpp index d77c2f62d..147833630 100644 --- a/tests/theme_migration/theme_migration_test.cpp +++ b/tests/theme_migration/theme_migration_test.cpp @@ -1,15 +1,11 @@ #include "interface/theme_manager.h" -#include #include #include #include -#include #include -#include #include #include -#include // Owned by main.cpp in the real application; pixel_map_generator.cpp references // it, so the test binary needs a definition even though it never renders. diff --git a/tests/translation_loader_test.cpp b/tests/translation_loader_test.cpp index 745cd04bc..d54001ad3 100644 --- a/tests/translation_loader_test.cpp +++ b/tests/translation_loader_test.cpp @@ -1,17 +1,12 @@ #include "gtest/gtest.h" -#include #include #include #include -#include #include #include -#include -#include #include #include #include -#include // The directory holding translation_loader_test_de.qm, compiled from translation_loader_test.ts by the // build. QTranslator rejects anything that is not a real .qm file, so a stub cannot stand in here. diff --git a/tests/warning_categories_test.cpp b/tests/warning_categories_test.cpp index 549c373b5..432885dd9 100644 --- a/tests/warning_categories_test.cpp +++ b/tests/warning_categories_test.cpp @@ -1,8 +1,6 @@ #include "gtest/gtest.h" -#include #include #include -#include TEST(WarningCategoriesTest, EmptyValueYieldsNoCategories) { diff --git a/tools/generate_qt_mappings.py b/tools/generate_qt_mappings.py deleted file mode 100755 index 42836b6da..000000000 --- a/tools/generate_qt_mappings.py +++ /dev/null @@ -1,208 +0,0 @@ -#!/usr/bin/env python3 -"""Generate an include-what-you-use mapping file for Qt 6 headers. - -Qt 6 ships a capital forwarding header (e.g. ) for each lowercase -private header (e.g. qwidget.h). include-what-you-use resolves symbols to the -lowercase header by default, so this script emits a mapping that makes IWYU -prefer the canonical capital includes, mirroring the qt5_11.imp bundled with -IWYU but adapted to the Qt 6 module layout. - -For every capital header that forwards to exactly one lowercase header: - -* a "symbol" mapping is emitted so IWYU suggests when the definition - of a class is needed, and -* an "include" mapping is emitted so a literal `#include ` in source - is rewritten to its canonical capital header. - -A lowercase header can be forwarded to by several capital headers (e.g. -qevent.h provides QCloseEvent, QMouseEvent, ...). In that case the include -mapping targets the primary class, i.e. the capital header whose lowercased -name equals the private header (QWidget for qwidget.h); headers with no such -primary (aggregates like qevent.h) get no include mapping and are left alone. - -Usage: - tools/generate_qt_mappings.py [QT_INSTALL_HEADERS] - -QT_INSTALL_HEADERS defaults to `qmake6 -query QT_INSTALL_HEADERS` (falling back -to common locations). The mapping is written to stdout. -""" - -import argparse -import os -import re -import subprocess -import sys - -INCLUDE_RE = re.compile(r'^\s*#include\s*<\s*Qt[A-Za-z0-9_]+/+\s*([^>\s]+)>') -CAPITAL_NAME_RE = re.compile(r'^Q[A-Za-z0-9_]+$') -PRIVATE_NAME_RE = re.compile(r'^q[a-z0-9_]+\.h$') - -# Private Qt headers whose public spelling has to be named explicitly. Keep an -# entry here only if the target header exists in every Qt we support; IWYU would -# otherwise keep suggesting the private lowercase include, which is correct only -# for headers that have shipped publicly since Qt 5. -PORTABLE_WRAPPERS = { - # Qt 6.5 split the declarations that used to live in qglobal.h out into - # separate headers, under both a QtFoo wrapper and a qfoo.h private name. - # Neither spelling exists on the oldest Qt we support (6.4.2), and qtypes.h - # itself only appeared in Qt 6.9, so all of them are hard compile errors - # there. QtGlobal has been public since Qt 5, defines these declarations - # itself up to Qt 6.4, and includes the split headers from Qt 6.5 on, so it - # is the one spelling that resolves across the whole supported range. - 'qtypes.h': 'QtGlobal', - 'qtpreprocessorsupport.h': 'QtGlobal', - 'qtversionchecks.h': 'QtGlobal', - 'qassert.h': 'QtGlobal', - 'qminmax.h': 'QtGlobal', - 'qtclasshelpermacros.h': 'QtGlobal', - 'qtenvironmentvariables.h': 'QtGlobal', - 'qttranslation.h': 'QtGlobal', - 'qoverload.h': 'QtGlobal', -} - - -def run_or_empty(cmd): - try: - return subprocess.run(cmd, capture_output=True, text=True, - check=True).stdout.strip() - except (OSError, subprocess.CalledProcessError): - return '' - - -def default_qt_headers_dir(): - for cmd in (['qmake6', '-query', 'QT_INSTALL_HEADERS'], - ['qmake', '-query', 'QT_INSTALL_HEADERS']): - path = run_or_empty(cmd) - if path: - return path - for path in ('/usr/include/qt6', '/usr/lib64/qt6/include', - '/usr/local/include/qt6'): - if os.path.isdir(path): - return path - return '' - - -def collect_mappings(qt_headers_dir): - forwarders = {} # (module_dir, private) -> [capital names] - symbols = {} # capital name -> (module_dir, private) - for entry in sorted(os.listdir(qt_headers_dir)): - module_dir = os.path.join(qt_headers_dir, entry) - if not entry.startswith('Qt') or not os.path.isdir(module_dir): - continue - for name in sorted(os.listdir(module_dir)): - path = os.path.join(module_dir, name) - if not os.path.isfile(path) or not CAPITAL_NAME_RE.match(name): - continue - forwarded = [] - with open(path, 'r', encoding='utf-8', errors='replace') as f: - for line in f: - match = INCLUDE_RE.match(line) - if match: - forwarded.append(match.group(1)) - if len(forwarded) > 1: - break - if len(forwarded) != 1: - continue - private = forwarded[0] - if not PRIVATE_NAME_RE.match(private): - continue - forwarders.setdefault((module_dir, private), []).append(name) - symbols[name] = (module_dir, private) - return forwarders, symbols - - -def primary_include_mappings(forwarders): - mappings = {} - for (module_dir, private), names in sorted(forwarders.items()): - # Curated overrides win over the name rule below. They exist to redirect - # an include to a header that is valid across our whole supported Qt - # range, which the name rule cannot know about because it is generated - # from whatever Qt happens to be installed. - curated = PORTABLE_WRAPPERS.get(private) - if curated is not None: - mappings[(module_dir, private)] = curated - continue - # Prefer the forwarder whose name mirrors the private header - # (QAbstractAnimation -> qabstractanimation.h). - primary = next((n for n in names if n.lower() + '.h' == private), None) - if primary is not None: - mappings[(module_dir, private)] = primary - return mappings - - -def main(): - parser = argparse.ArgumentParser(description=__doc__) - parser.add_argument('qt_headers_dir', nargs='?', default=None, - help='Qt 6 headers dir (default: qmake query)') - args = parser.parse_args() - - qt_headers_dir = args.qt_headers_dir or default_qt_headers_dir() - if not qt_headers_dir or not os.path.isdir(qt_headers_dir): - sys.stderr.write('error: could not locate Qt headers, pass the include ' - 'dir\n') - return 1 - - forwarders, symbols = collect_mappings(qt_headers_dir) - includes = primary_include_mappings(forwarders) - - # A curated key that matches nothing is almost always a typo, and it fails - # silently: the entry just falls back to the name rule and emits the - # version-incompatible wrapper the override was meant to prevent. - known_private = {private for (_module_dir, private) in forwarders} - unknown = sorted(set(PORTABLE_WRAPPERS) - known_private) - if unknown: - sys.stderr.write('error: PORTABLE_WRAPPERS keys not found in the Qt ' - 'headers: %s\n' % ', '.join(unknown)) - return 1 - - entries = [] - # Headers we redirect in PORTABLE_WRAPPERS do not exist on the oldest - # supported Qt, so do not advertise them as the home of a symbol either. - redirected = {name - for (module_dir, private), names in forwarders.items() - if private in PORTABLE_WRAPPERS - for name in names} - for name in sorted(symbols): - if name in redirected: - continue - entries.append( - f' {{ "symbol": [ "{name}", "private", "<{name}>", "public"] }},') - - # Free operators of QSharedPointer/QWeakPointer live in qsharedpointer.h. - # IWYU does not apply "include" mappings when *adding* an include for an - # operator or other non-class symbol, so map them to the canonical capital - # header explicitly. A use is only reported when the operator is not - # already covered by an included header, so this does not mis-attribute - # comparison operators of other types (which are provided by their own - # type headers). - for name in ('operator==', 'operator!=', 'operator<', 'operator<=', - 'operator>', 'operator>=', 'comparesEqual'): - entries.append( - f' {{ "symbol": [ "{name}", "private", "", "public"] }},') - for (module_dir, private), public in sorted(includes.items()): - module = os.path.basename(module_dir) - # IWYU's .imp tokenizer treats the value as a JSON-ish string: - # '\"' becomes a quote and '\\' becomes a backslash for the regex. - quoted = '\\"' # \" -- a JSON-escaped double quote in the .imp file - dotted = re.escape(private).replace('\\', '\\\\') - pattern = ('@[' + quoted + '<](' + re.escape(module) + r'/)?' + - dotted + '[' + quoted + '>]') - entries.append( - f' {{ "include": [ "{pattern}", "private", "<{public}>", "public"] }},') - - if not entries: - sys.stderr.write('error: no Qt header mappings found\n') - return 1 - - print(f'# Do not edit! Generated by {os.path.basename(__file__)} from') - print(f'# {qt_headers_dir}') - print('[') - for entry in entries[:-1]: - print(entry) - print(entries[-1].rstrip(',')) - print(']') - return 0 - - -if __name__ == '__main__': - sys.exit(main())