diff options
Diffstat (limited to 'PySide')
-rw-r--r-- | PySide/CMakeLists.txt | 1 | ||||
-rw-r--r-- | PySide/QtSvg/CMakeLists.txt | 60 | ||||
-rw-r--r-- | PySide/QtSvg/typesystem_svg.xml | 34 |
3 files changed, 95 insertions, 0 deletions
diff --git a/PySide/CMakeLists.txt b/PySide/CMakeLists.txt index c6caddc60..416a107e7 100644 --- a/PySide/CMakeLists.txt +++ b/PySide/CMakeLists.txt @@ -34,3 +34,4 @@ HAS_QT_MODULE(QT_QTCORE_FOUND QtCore) HAS_QT_MODULE(QT_QTGUI_FOUND QtGui) HAS_QT_MODULE(QT_QTNETWORK_FOUND QtNetwork) HAS_QT_MODULE(QT_QTWEBKIT_FOUND QtWebKit) +HAS_QT_MODULE(QT_QTSVG_FOUND QtSvg) diff --git a/PySide/QtSvg/CMakeLists.txt b/PySide/QtSvg/CMakeLists.txt new file mode 100644 index 000000000..0d0a3152a --- /dev/null +++ b/PySide/QtSvg/CMakeLists.txt @@ -0,0 +1,60 @@ +project(QtSvg) + +if(Q_WS_X11) + set(MODULE_NAME svg_x11) + set(SPECIFIC_OS_FILES + ) +elseif(Q_WS_MAC) + set(MODULE_NAME svg_mac) + set(SPECIFIC_OS_FILES + ) +else() + message(FATAL_ERROR "OS not supported") +endif(Q_WS_X11) + +if (${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} LESS 6) + set (QtSvg_46_SRC ) +else () + set(QtSvg_46_SRC + ) +endif (${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} LESS 6) + +set(QtSvg_SRC +${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/qgraphicssvgitem_wrapper.cpp +${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/qsvggenerator_wrapper.cpp +${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/qsvgrenderer_wrapper.cpp +${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/qsvgwidget_wrapper.cpp +${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/qtsvg_module_wrapper.cpp + +${SPECIFIC_OS_FILES} +${QtSvg_46_SRC} +) + +execute_generator(svg QtSvg_SRC "${CMAKE_CURRENT_BINARY_DIR}:${QtCore_SOURCE_DIR}:${QtGui_SOURCE_DIR}") + +include_directories(${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR}/PySide/QtSvg/ + ${QT_INCLUDE_DIR} + ${QT_QTCORE_INCLUDE_DIR} + ${QT_QTGUI_INCLUDE_DIR} + ${QT_QTSVG_INCLUDE_DIR} + ${SHIBOKEN_INCLUDE_DIR} + ${libpyside_SOURCE_DIR} + ${PYTHON_INCLUDE_PATH} + ${QtCore_BINARY_DIR}/PySide/QtCore/ + ${QtGui_BINARY_DIR}/PySide/QtGui/ + ) + +add_library(QtSvg MODULE ${QtSvg_SRC}) +set_property(TARGET QtSvg PROPERTY PREFIX "") +target_link_libraries(QtSvg + pyside + ${PYTHON_LIBRARIES} + ${SHIBOKEN_LIBRARY} + ${QT_QTSVG_LIBRARY} + ) +add_dependencies(QtSvg QtGui) + +# install +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/QtSvg.so + DESTINATION ${SITE_PACKAGE}/PySide) diff --git a/PySide/QtSvg/typesystem_svg.xml b/PySide/QtSvg/typesystem_svg.xml new file mode 100644 index 000000000..f7932ba6d --- /dev/null +++ b/PySide/QtSvg/typesystem_svg.xml @@ -0,0 +1,34 @@ +<?xml version="1.0"?> +<typesystem package="PySide.QtSvg"> + <load-typesystem name="typesystem_gui.xml.in" generate="no"/> + + <object-type name="QSvgRenderer" /> + <object-type name="QSvgWidget" /> + + <object-type name="QSvgGenerator"> + <modify-function signature="setOutputDevice(QIODevice*)"> + <modify-argument index="1"> + <reference-count action="add"/> + </modify-argument> + </modify-function> + + <modify-function signature="outputDevice() const"> + <modify-argument index="return"> + <define-ownership class="target" owner="default"/> + </modify-argument> + </modify-function> + </object-type> + + <object-type name="QGraphicsSvgItem"> + <modify-function signature="QGraphicsSvgItem(QGraphicsItem*)"> + <modify-argument index="this"> + <parent index="1" action="add"/> + </modify-argument> + </modify-function> + <modify-function signature="QGraphicsSvgItem(const QString&, QGraphicsItem*)"> + <modify-argument index="this"> + <parent index="2" action="add"/> + </modify-argument> + </modify-function> + </object-type> +</typesystem> |