2012-10-17 18:17:14 -06:00
|
|
|
# Concatenation/editing of QScintilla API files for PyQGIS
|
|
|
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
#
|
|
|
|
# Copyright (c) 2012, Larry Shaffer <larrys@dakotacarto.com>
|
|
|
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
|
|
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
|
|
|
|
2012-10-03 11:31:40 -06:00
|
|
|
SET(QGIS_PYTHON_API_FILE "${CMAKE_BINARY_DIR}/python/qsci_apis/PyQGIS.api")
|
|
|
|
|
2013-08-29 18:04:43 -06:00
|
|
|
# create empty destination api file
|
|
|
|
FILE(WRITE "${QGIS_PYTHON_API_FILE}" "")
|
|
|
|
|
2012-10-03 11:31:40 -06:00
|
|
|
IF(EXISTS "${CMAKE_BINARY_DIR}/python/qgis.gui.api")
|
|
|
|
FILE(READ "${CMAKE_BINARY_DIR}/python/qgis.gui.api" FILE_CONTENT)
|
|
|
|
STRING(REGEX MATCHALL "gui\\.QgisInterface([^\n]+)" MATCHED_CONTENT "${FILE_CONTENT}")
|
|
|
|
FOREACH(matchedLine ${MATCHED_CONTENT})
|
|
|
|
STRING(REGEX REPLACE "gui\\.QgisInterface(.*)" "qgis.utils.iface\\1\n" MODIFIED_MATCH "${matchedLine}")
|
|
|
|
FILE(APPEND "${QGIS_PYTHON_API_FILE}" "${MODIFIED_MATCH}")
|
|
|
|
ENDFOREACH(matchedLine)
|
|
|
|
ENDIF(EXISTS "${CMAKE_BINARY_DIR}/python/qgis.gui.api")
|
|
|
|
|
2013-08-29 18:04:43 -06:00
|
|
|
# add qgis.core.NULL attribute defined in <src>/python/__init__.py for QPyNullVariant
|
|
|
|
FILE(APPEND "${QGIS_PYTHON_API_FILE}" "qgis.core.NULL?7\n")
|
|
|
|
|
2023-01-25 00:31:36 +01:00
|
|
|
FOREACH(api ${APIS})
|
2012-10-03 11:31:40 -06:00
|
|
|
IF(EXISTS "${api}")
|
|
|
|
FILE(READ "${api}" FILE_CONTENT)
|
|
|
|
STRING(REGEX REPLACE "([^\n]+)" "qgis.\\1" MODIFIED_CONTENT "${FILE_CONTENT}")
|
2014-06-18 18:03:40 +02:00
|
|
|
STRING(REPLACE "qgis._" "qgis." REPLACE_CONTENT "${MODIFIED_CONTENT}")
|
|
|
|
FILE(APPEND "${QGIS_PYTHON_API_FILE}" "${REPLACE_CONTENT}")
|
2012-10-03 11:31:40 -06:00
|
|
|
ENDIF(EXISTS "${api}")
|
2023-01-25 00:31:36 +01:00
|
|
|
ENDFOREACH(api)
|