File indexing completed on 2024-04-14 05:35:08

0001 #!/bin/bash
0002 # SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
0003 # SPDX-License-Identifier: CC0-1.0
0004 
0005 #
0006 # Determine used namespaces
0007 #
0008 QQC2_NS=`cat $1 | grep '^import QtQuick.Controls 2' | grep ' as ' | perl -p -e 's/import QtQuick.Controls 2.\d{1,2} as (.*)/\1./'`
0009 
0010 
0011 #
0012 # Changes compatible with Qt 5.15
0013 #
0014 
0015 # migrate from ApplicationWindow.overlay to Overlay.overlay
0016 # (needs current QQC2 import version!)
0017 perl -p -i -e "s/(?:\w+\.)?ApplicationWindow\.overlay/applicationWindow().${QQC2_NS}Overlay.overlay/g" $1
0018 perl -p -i -e "s/applicationWindow\(\)\.overlay/applicationWindow().${QQC2_NS}Overlay.overlay/g" $1
0019 
0020 
0021 #
0022 # Changes incompatible with Qt 5
0023 #
0024 
0025 # Kirigami.BasicListItem icon property changes
0026 perl -0777 -p -i -e 's/(BasicListItem \{[^\}]*?)(icon): /\1icon.name: /sg' $1
0027 
0028 # QtGraphicalEffects
0029 # rename import
0030 perl -p -i -e 's/import QtGraphicalEffects 1\.\d+/import Qt5Compat.GraphicalEffects 6.0/' $1
0031 # remove obsolete samples: property
0032 perl -0777 -p -i -e 's/((?:DropShadow|GaussianBlur) \{[^\}].*?)\n\s*samples: .*?\n/\1\n/sg' $1
0033 
0034 # QtQuick.Dialogs
0035 perl -p -i -e 's/^import QtQuick.Dialogs 1.\d/import QtQuick.Dialogs 6.3/' $1
0036 # remove obsolete properties
0037 perl -0777 -p -i -e 's/(FileDialog \{[^\}].*?)\n\s*selectExisting: false\n/\1\n/sg' $1
0038 perl -0777 -p -i -e 's/(FileDialog \{[^\}].*?)\n\s*selectMultiple: false\n/\1\n/sg' $1
0039 perl -0777 -p -i -e 's/(FileDialog \{[^\}].*?)\n\s*selectFolder: false\n/\1\n/sg' $1