File indexing completed on 2024-05-12 15:55:27

0001 #!/bin/bash
0002 # SPDX-FileCopyrightText: none
0003 # SPDX-License-Identifier: CC0-1.0
0004 ##
0005 # A quick and dirty script to extract all(?) hardcoded icon names and check if they are available on the current system.
0006 
0007 BASEDIR="$(dirname "$0")/../.."
0008 
0009 
0010 getIconList() {
0011         cd "$BASEDIR" || return
0012         # QIcon::fromTheme:
0013         git grep 'QIcon::fromTheme[(]' | sed 's/.*QIcon::fromTheme[(][^"]*"\([^"]*\)".*/\1/' | grep -v fromTheme
0014 
0015         # KIconLoader::global()->loadIcon:
0016         git grep 'KIconLoader::global()->loadIcon[(]' | sed 's/.*KIconLoader::global()->loadIcon[(][^"]*"\([^"]*\)".*/\1/'  | grep -v KIconLoader::
0017 
0018         # Via wrapper smallIcon:
0019         git grep 'smallIcon[(]' | sed 's/.*smallIcon[(][^"]*"\([^"]*\)".*/\1/' | grep -v smallIcon
0020 
0021         # From SettingsDialog:
0022         sed -n '/Data data/,/};/ { s/[^,]*,[^,]*, "\([^"]*\)".*/\1/ ; p }' Settings/SettingsDialog.cpp | grep '^[a-z]'
0023 
0024         # Special categories:
0025         grep "new DB::Category" DB/XML/FileReader.cpp | sed 's/.*new DB::Category([^,]*,[^"]*"\([^"]*\)".*/\1/' | grep -v DB::Category
0026 
0027 }
0028 
0029 getIconList | sort -u | {
0030         while read -r icon
0031         do
0032                 kiconfinder5 "$icon" || echo "MISSING: $icon"
0033         done
0034 }