Skip to content

Commit

Permalink
Merge pull request #57834 from m-kuhn/no_pyuic
Browse files Browse the repository at this point in the history
[plugins] Remove dependency on pyuic
  • Loading branch information
m-kuhn authored Jun 30, 2024
2 parents efd29ee + 305cd60 commit 52f98f8
Show file tree
Hide file tree
Showing 14 changed files with 67 additions and 125 deletions.
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1100,7 +1100,6 @@ if (WITH_CORE AND WITH_BINDINGS)

find_package(Qsci REQUIRED)
include(PythonMacros)
include(PyQtMacros)
include(SIPMacros)

set(SIP_INCLUDES ${PYQT_SIP_DIR} ${CMAKE_SOURCE_DIR}/python)
Expand Down
98 changes: 0 additions & 98 deletions cmake/PyQtMacros.cmake

This file was deleted.

24 changes: 18 additions & 6 deletions python/console/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,32 @@ set(PY_CONSOLE_FILES
__init__.py
)

file(GLOB UI_FILES *.ui)
PYQT_WRAP_UI(PYUI_FILES ${UI_FILES})
add_custom_target(pyconsole ALL DEPENDS ${PYUI_FILES})
set(UI_FILES
console_compile_apis.ui
console_settings.ui)

foreach(pyfile ${PY_CONSOLE_FILES} ${PYUI_FILES})
add_custom_target(pyconsole ALL)

add_custom_command(TARGET pyconsole
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTHON_OUTPUT_DIRECTORY}/console
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
add_custom_command(TARGET pyconsole
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${UI_FILES} ${PYTHON_OUTPUT_DIRECTORY}/console
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${UI_FILES}
)
foreach(pyfile ${PY_CONSOLE_FILES})
add_custom_command(TARGET pyconsole
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTHON_OUTPUT_DIRECTORY}/console
COMMAND ${CMAKE_COMMAND} -E copy ${pyfile} ${PYTHON_OUTPUT_DIRECTORY}/console
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${pyfile}
)
endforeach(pyfile)
PY_COMPILE(pyconsole "${PYTHON_OUTPUT_DIRECTORY}/console")

install(FILES ${PY_CONSOLE_FILES} ${PYUI_FILES} DESTINATION "${QGIS_CONSOLE_DIR}")
install(FILES ${PY_CONSOLE_FILES} ${UI_FILES} DESTINATION "${QGIS_CONSOLE_DIR}")

5 changes: 4 additions & 1 deletion python/console/console_compile_apis.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@

import os

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt.Qsci import QsciAPIs, QsciLexerPython
from qgis.PyQt.QtWidgets import QDialog, QDialogButtonBox
from qgis.PyQt.QtCore import QCoreApplication

from .ui_console_compile_apis import Ui_APIsDialogPythonConsole
Ui_APIsDialogPythonConsole, _ = uic.loadUiType(Path(__file__).parent / 'console_compile_apis.ui')


class PrepareAPIDialog(QDialog):
Expand Down
6 changes: 5 additions & 1 deletion python/console/console_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@
Some portions of code were taken from https://code.google.com/p/pydee/
"""

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt.QtCore import QCoreApplication, QUrl
from qgis.PyQt.QtWidgets import QWidget, QFileDialog, QMessageBox, QTableWidgetItem, QHBoxLayout
from qgis.PyQt.QtGui import QIcon, QDesktopServices
Expand All @@ -26,7 +29,8 @@
from qgis.gui import QgsOptionsPageWidget, QgsOptionsWidgetFactory

from .console_compile_apis import PrepareAPIDialog
from .ui_console_settings import Ui_SettingsDialogPythonConsole

Ui_SettingsDialogPythonConsole, _ = uic.loadUiType(Path(__file__).parent / 'console_settings.ui')


class ConsoleOptionsFactory(QgsOptionsWidgetFactory):
Expand Down
2 changes: 1 addition & 1 deletion python/plugins/db_manager/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ file(GLOB PY_FILES *.py)

file(GLOB UI_FILES ui/*.ui)

PLUGIN_INSTALL(db_manager . ${OTHER_FILES} ${PY_FILES} ${PYRC_FILES} metadata.txt)
PLUGIN_INSTALL(db_manager . ${OTHER_FILES} ${PY_FILES} metadata.txt)
PLUGIN_INSTALL(db_manager ui ${UI_FILES})
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
file(GLOB PY_FILES *.py)
file(GLOB UI_FILES *.ui)
PYQT_WRAP_UI(PYUI_FILES ${UI_FILES})
PLUGIN_INSTALL(db_manager db_plugins/postgis/plugins/versioning ${PY_FILES} ${PYUI_FILES})
PLUGIN_INSTALL(db_manager db_plugins/postgis/plugins/versioning ${PY_FILES} ${UI_FILES})
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,17 @@
***************************************************************************/
"""

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt.QtCore import Qt
from qgis.PyQt.QtWidgets import QDialog, QDialogButtonBox, QMessageBox, QApplication

from .ui_DlgVersioning import Ui_DlgVersioning

from .....dlg_db_error import DlgDbError
from ....plugin import BaseError, Table

Ui_DlgVersioning, _ = uic.loadUiType(Path(__file__).parent / 'DlgVersioining.ui')


class DlgVersioning(QDialog, Ui_DlgVersioning):

Expand Down
17 changes: 10 additions & 7 deletions python/pyplugin_installer/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,26 +14,29 @@ set(PY_PLUGININSTALLER_FILES
version_compare.py
)

# file(GLOB UI_FILES *.ui)
# PYQT_WRAP_UI(PYUI_FILES ${UI_FILES})

PYQT_WRAP_UI(PYUI_FILES
set(UI_FILES
qgsplugininstallerfetchingbase.ui
qgsplugininstallerinstallingbase.ui
qgsplugininstallerpluginerrorbase.ui
qgsplugininstallerrepositorybase.ui
qgsplugindependenciesdialogbase.ui
)

add_custom_target(pyplugin-installer ALL DEPENDS ${PYUI_FILES})
add_custom_target(pyplugin-installer ALL)

add_custom_command(TARGET pyplugin-installer
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTHON_OUTPUT_DIRECTORY}/pyplugin_installer
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
add_custom_command(TARGET pyplugin-installer
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${UI_FILES} ${PYTHON_OUTPUT_DIRECTORY}/pyplugin_installer
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${UI_FILES}
)

foreach(pyfile ${PY_PLUGININSTALLER_FILES} ${PYUI_FILES})
foreach(pyfile ${PY_PLUGININSTALLER_FILES})
add_custom_command(TARGET pyplugin-installer
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${pyfile} ${PYTHON_OUTPUT_DIRECTORY}/pyplugin_installer
Expand All @@ -43,4 +46,4 @@ foreach(pyfile ${PY_PLUGININSTALLER_FILES} ${PYUI_FILES})
endforeach(pyfile)
PY_COMPILE(pyplugin-installer "${PYTHON_OUTPUT_DIRECTORY}/pyplugin_installer")

install(FILES ${PY_PLUGININSTALLER_FILES} ${PYUI_FILES} DESTINATION "${QGIS_PLUGININSTALLER_DIR}")
install(FILES ${PY_PLUGININSTALLER_FILES} ${UI_FILES} DESTINATION "${QGIS_PLUGININSTALLER_DIR}")
7 changes: 5 additions & 2 deletions python/pyplugin_installer/qgsplugindependenciesdialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,16 @@
__date__ = '2018-09-19'
__copyright__ = 'Copyright 2018, GISCE-TI S.L.'


import os

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt import QtWidgets, QtCore
from .ui_qgsplugindependenciesdialogbase import Ui_QgsPluginDependenciesDialogBase
from qgis.utils import iface

Ui_QgsPluginDependenciesDialogBase, _ = uic.loadUiType(Path(__file__).parent / 'qgsplugindependenciesdialogbase.ui')


class QgsPluginDependenciesDialog(QtWidgets.QDialog, Ui_QgsPluginDependenciesDialogBase):
"""A dialog that shows plugin dependencies and offers a way to install or upgrade the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,16 @@
***************************************************************************/
"""

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt.QtCore import Qt, QCoreApplication
from qgis.PyQt.QtWidgets import QDialog, QTreeWidgetItem

from .ui_qgsplugininstallerfetchingbase import Ui_QgsPluginInstallerFetchingDialogBase
from .installer_data import repositories

from qgis.gui import QgsGui
Ui_QgsPluginInstallerFetchingDialogBase, _ = uic.loadUiType(Path(__file__).parent / 'qgsplugininstallerfetchingbase.ui')


class QgsPluginInstallerFetchingDialog(QDialog, Ui_QgsPluginInstallerFetchingDialogBase):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,21 @@
"""
from builtins import str

from pathlib import Path

from qgis.PyQt import uic
from qgis.PyQt.QtCore import QDir, QUrl, QFile, QCoreApplication
from qgis.PyQt.QtWidgets import QDialog
from qgis.PyQt.QtNetwork import QNetworkRequest, QNetworkReply

from qgis.core import QgsNetworkAccessManager, QgsApplication, QgsNetworkRequestParameters
from qgis.utils import HOME_PLUGIN_PATH

from .ui_qgsplugininstallerinstallingbase import Ui_QgsPluginInstallerInstallingDialogBase
from .installer_data import removeDir, repositories
from .unzip import unzip

Ui_QgsPluginInstallerInstallingDialogBase, _ = uic.loadUiType(Path(__file__).parent / 'qgsplugininstallerinstallingbase.ui')


class QgsPluginInstallerInstallingDialog(QDialog, Ui_QgsPluginInstallerInstallingDialogBase):
# ----------------------------------------- #
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,11 @@

from qgis.PyQt.QtWidgets import QDialog

from .ui_qgsplugininstallerpluginerrorbase import Ui_QgsPluginInstallerPluginErrorDialogBase
from pathlib import Path

from qgis.PyQt import uic

Ui_QgsPluginInstallerPluginErrorDialogBase, _ = uic.loadUiType(Path(__file__).parent / 'qgsplugininstallerpluginerrorbase.ui')


class QgsPluginInstallerPluginErrorDialog(QDialog, Ui_QgsPluginInstallerPluginErrorDialogBase):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,14 @@
***************************************************************************/
"""

from pathlib import Path

from qgis.PyQt import uic
from qgis.gui import QgsAuthConfigSelect
from qgis.PyQt.QtWidgets import QDialog, QDialogButtonBox, QVBoxLayout
from qgis.PyQt.QtCore import Qt

from .ui_qgsplugininstallerrepositorybase import Ui_QgsPluginInstallerRepositoryDetailsDialogBase
Ui_QgsPluginInstallerRepositoryDetailsDialogBase, _ = uic.loadUiType(Path(__file__).parent / 'qgsplugininstallerrepositorybase.ui')


class QgsPluginInstallerRepositoryDialog(QDialog, Ui_QgsPluginInstallerRepositoryDetailsDialogBase):
Expand Down

0 comments on commit 52f98f8

Please sign in to comment.