aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtSvg
diff options
context:
space:
mode:
authorCarlos Goncalves <mail@cgoncalves.info>2010-02-28 02:21:13 +0000
committerMarcelo Lira <marcelo.lira@openbossa.org>2010-03-02 21:02:17 -0300
commit8bc7aa50c6e875461787ce9c6b5e2edb01de78bc (patch)
treea83614d46d878b849798a6c780bd0535e370a511 /PySide/QtSvg
parent0d9b1dca7fcdae9ceb1d31c2f21926c2b06e7802 (diff)
Initial QtSvg bindings
Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Marcelo Lira <marcelo.lira@openbossa.org>
Diffstat (limited to 'PySide/QtSvg')
-rw-r--r--PySide/QtSvg/CMakeLists.txt60
-rw-r--r--PySide/QtSvg/typesystem_svg.xml34
2 files changed, 94 insertions, 0 deletions
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&amp;, QGraphicsItem*)">
+ <modify-argument index="this">
+ <parent index="2" action="add"/>
+ </modify-argument>
+ </modify-function>
+ </object-type>
+</typesystem>